/* Shared Admin presentation. Store Network adds queue-specific rules after this file. */
:root {
  color-scheme: light;
  --ink: #241c14;
  --muted: #665b51;
  --line: #d7c6b2;
  --cream: #f1e9de;
  --paper: #f7f0e6;
  --copper: #8b4513;
  --copper-dark: #74380e;
  font-size: 16px;
  line-height: 1.5;
}

body { background: var(--cream); }
.dashboard { display: block; min-width: 0; background: var(--cream); }
.workspace { min-width: 0; background: var(--cream); }
.sidebar { position: static; display: flex; flex-direction: row; align-items: center; gap: clamp(12px, 2vw, 28px); width: 100%; height: auto; min-height: 72px; padding: 12px clamp(16px, 2.5vw, 38px); border-right: 0; color: #f7ecde; background: #241912; }
.sidebar-brand { flex: 0 0 auto; min-height: 0; margin: 0; color: #f7ecde; font-size: 23px; }
.sidebar-brand .brand-logo { width: 38px; height: 38px; }
.sidebar-nav { display: flex; flex: 1 1 auto; align-items: center; gap: 5px; min-width: 0; overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; }
.nav-item { display: flex; flex: 0 0 auto; align-items: center; width: auto; min-height: 44px; border: 0; border-radius: 10px; padding: 0 13px; color: #e0ccbd; background: transparent; font-size: 14px; font-weight: 700; white-space: nowrap; }
.nav-item > span:first-child { display: none; }
.nav-item:hover { color: #fff8ef; background: rgba(255,255,255,.095); }
.nav-item.is-active { color: #fff8ef; background: rgba(255,255,255,.09); box-shadow: inset 0 -3px 0 var(--copper); }
.sidebar-foot { flex: 0 0 auto; margin: 0 0 0 auto; padding: 0; }
.sidebar-foot .nav-item { min-height: 44px; color: #e0ccbd; text-align: center; }
.nav-item:focus-visible { outline: 3px solid #d7a774; outline-offset: -3px; }
.topbar { min-height: 82px; padding: 16px clamp(20px, 3vw, 44px); border-color: var(--line); background: #f3ebe0; }
.topbar-heading { min-width: 0; }
.topbar-title { color: var(--ink); font-size: 21px; }
.topbar-subtitle { color: var(--muted); font-size: 14px; line-height: 1.4; }
.topbar-actions { min-width: 0; }
.workspace:has(#catalog-view.is-hidden) .search-field { display: none; }
.search-field { width: min(32vw, 390px); }
.search-field input { min-height: 44px; border-color: var(--line); background: var(--paper); font-size: 15px; }
.profile-button { width: 42px; height: 42px; background: var(--copper); }
.profile-menu { width: min(280px, calc(100vw - 32px)); padding: 16px; border-color: var(--line); background: var(--paper); }
.profile-email, .profile-sign-out { font-size: 14px; }
.profile-sign-out { min-height: 42px; }

.view { width: 100%; min-width: 0; padding: clamp(24px, 3vw, 42px) clamp(18px, 3vw, 44px) 72px; }
.view > :first-child { min-width: 0; }
.overview-intro { max-width: none; padding: 0 0 24px; }
.overview-intro h2, .growth-intro h2, .architecture-map-intro h2, .candidate-intro h2 { color: var(--ink); font-size: clamp(32px, 3.3vw, 46px); line-height: 1.12; letter-spacing: -.045em; }
.overview-intro p, .growth-intro p:not(.dialog-label), .architecture-map-intro p:not(.dialog-label), .candidate-intro p:not(.dialog-label) { max-width: 75ch; color: var(--muted); font-size: 17px; line-height: 1.55; }
.dialog-label { color: var(--copper); font-size: 12px; letter-spacing: .08em; }
.overview-group { max-width: 1060px; margin: 0 0 30px; }
.overview-group h3 { margin: 0 0 12px; color: var(--ink); font-size: 21px; letter-spacing: -.025em; }
.overview-list { max-width: none; grid-template-columns: 1fr; gap: 10px; }
.overview-row { min-height: 94px; grid-template-columns: minmax(0, 1fr) auto; align-content: center; align-items: center; gap: 2px 18px; padding: 17px 24px; border-color: var(--line); background: var(--paper); box-shadow: 0 7px 20px rgba(70,43,18,.04); }
.overview-row > span { grid-column: 1; color: var(--ink); font-size: 19px; font-weight: 750; }
.overview-row strong { grid-column: 2; grid-row: 1 / span 2; margin: 0; color: var(--copper); font-size: 23px; text-align: right; }
.overview-row small { grid-column: 1; color: var(--muted); font-size: 14px; }
.overview-row:hover { border-color: var(--copper); background: #f9f3eb; }

.button { min-height: 44px; border-radius: 11px; padding: 0 18px; font-size: 14px; font-weight: 750; }
.button:hover { transform: none; }
.button-primary { background: var(--copper); box-shadow: none; }
.button-primary:hover { background: var(--copper-dark); }
.button-quiet { border-color: #bfa78f; color: var(--copper); background: transparent; }
.button-quiet:hover { background: #f8eee4; }
.button-danger { box-shadow: none; }
.text-button { min-height: 42px; color: var(--copper); font-size: 14px; }
.filter-button { min-height: 42px; border-color: var(--line); padding: 9px 15px; color: var(--network-muted, var(--muted)); background: var(--paper); font-size: 14px; }
.filter-button:hover, .filter-button.is-active { border-color: var(--copper); color: #fff8f1; background: var(--copper); }
.catalog-count { color: var(--muted); font-size: 14px; }
.catalog-toolbar { gap: 18px; margin-bottom: 20px; }
.catalog-filters, .candidate-toolbar { gap: 14px; margin: 0 0 20px; padding: 18px; border-color: var(--line); border-radius: 15px; background: var(--paper); }
.catalog-filter { min-width: 190px; gap: 7px; color: var(--ink); font-size: 13px; letter-spacing: .04em; }
.catalog-filter-number { min-width: 220px; }
.catalog-filter input, .catalog-filter select, .candidate-sort select { min-height: 44px; border-color: var(--line); border-radius: 10px; padding: 9px 12px; color: var(--ink); background: #fffdf9; font-size: 14px; }
.catalog-clear { min-height: 44px; }
.candidate-sort { color: var(--ink); font-size: 14px; }
.candidate-toolbar .filter-group { max-width: 100%; }
.candidate-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
.candidate-toolbar > .catalog-count { grid-column: 1 / -1; }
.candidate-toolbar > .filter-group { grid-column: 1; }
.candidate-toolbar > .candidate-sort { grid-column: 2; }

input, select, textarea { border-color: var(--line); color: var(--ink); background: #fffdf9; font-size: 15px; }
input:focus-visible, select:focus-visible, textarea:focus-visible, button:focus-visible, a:focus-visible { outline: 3px solid rgba(139,69,19,.65); outline-offset: 2px; }
label { gap: 8px; color: var(--ink); font-size: 14px; font-weight: 700; letter-spacing: 0; }
.catalog-shell { min-width: 0; border-color: var(--line); background: var(--paper); box-shadow: 0 8px 24px rgba(70,43,18,.05); }
.table-wrap { min-width: 0; overflow: auto; }
.catalog-table { min-width: 880px; }
.catalog-table th { padding: 16px 15px; border-color: var(--line); color: #6b5443; background: #ebddcc; font-size: 12px; letter-spacing: .055em; }
.catalog-table td { padding: 15px; border-color: #e4d6c5; color: #4b3c30; font-size: 14px; line-height: 1.45; }
.catalog-table tbody tr:hover, .catalog-table tbody tr.is-selected { background: #f8e9d8; }
.catalog-table tbody tr.catalog-inspector-row, .catalog-table tbody tr.catalog-inspector-row:hover { background: var(--paper); }
.bottle-name { max-width: 290px; color: var(--ink); font-size: 15px; }
.bottle-key, .candidate-meta, .candidate-samples { color: var(--muted); font-size: 12px; line-height: 1.5; }
.bottle-thumb { width: 44px; height: 54px; background: #eee0d0; }
.rarity-pill, .candidate-state { padding: 6px 10px; font-size: 12px; }
.candidate-table { min-width: 1120px; }
.candidate-actions .text-button { min-height: 36px; padding: 7px 10px; font-size: 12px; }
.candidate-suggestion { padding: 12px; border-color: var(--line); background: #f9ebdc; font-size: 13px; }
.candidate-suggestion span, .candidate-link-option span { color: var(--muted); font-size: 12px; }
.candidate-suggestion .text-button { font-size: 12px; }
.table-footer { gap: 18px; color: var(--muted); font-size: 14px; }
.empty-state { color: var(--muted); font-size: 15px; }
.empty-state strong { color: var(--ink); font-size: 17px; }
.empty-state span { font-size: 14px; }
.view > .empty-state { position: static; min-height: 180px; }

.growth-metrics { gap: 16px; margin: 22px 0 26px; }
.growth-detail-grid { grid-template-columns: minmax(0, 1.5fr) minmax(330px, .75fr); }
.growth-metric { min-height: 160px; gap: 9px; padding: 22px; border-color: var(--line); background: var(--paper); box-shadow: 0 7px 20px rgba(70,43,18,.04); }
.growth-metric > span { color: var(--muted); font-size: 14px; }
.growth-metric strong { color: var(--ink); font-size: 34px; }
.growth-metric small { color: var(--muted); font-size: 13px; }
.growth-panel-heading { padding: 22px 24px 16px; }
.growth-panel-heading h3, .growth-definition h3 { color: var(--ink); font-size: 22px; }
.growth-panel-heading > span { color: var(--muted); font-size: 13px; }
.growth-table { min-width: 650px; }
.growth-definition { padding: 24px; border-color: var(--line); background: #eee1d0; color: var(--muted); }
.growth-definition p { font-size: 14px; }

.directory-list { grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 18px; }
.directory-card { min-height: 170px; padding: 24px; border-color: var(--line); background: var(--paper); box-shadow: 0 7px 20px rgba(70,43,18,.04); }
.directory-card h3 { color: var(--ink); font-size: 20px; }
.directory-card p { color: var(--muted); font-size: 14px; line-height: 1.5; }
.directory-card footer { flex-wrap: wrap; color: var(--copper); font-size: 13px; }
.distillery-toolbar { display: grid; grid-template-columns: minmax(240px, 440px) auto; align-items: end; justify-content: start; gap: 12px; margin: 0 0 24px; }
.distillery-search { font-size: 14px; }
.distillery-search input { min-height: 46px; border-color: var(--line); background: #fffdf9; font-size: 15px; }
.distillery-toolbar #clear-distillery-search { min-height: 46px; }
.distillery-toolbar #distillery-results { grid-column: 1 / -1; margin: 0; }
.audit-batch-card { max-width: 1080px; padding: clamp(24px, 3vw, 38px); border-color: var(--line); background: var(--paper); }
.audit-batch-card h2 { color: var(--ink); font-size: clamp(27px, 2.7vw, 36px); letter-spacing: -.035em; }
.audit-batch-card > p { color: var(--muted); font-size: 16px; }
.audit-batch-card .inspector-form { padding: 0; }
.audit-batch-card textarea { font-size: 14px; line-height: 1.5; }
.audit-batch-card .inspector-actions { display: block; }
.audit-batch-card textarea { min-height: 300px; }

.inspector { border-color: var(--line); background: var(--paper); }
.inspector-head { padding: 25px 28px 18px; }
.inspector-head h2, .modal-card h2 { color: var(--ink); font-size: 25px; }
.inspector-head p:not(.dialog-label) { color: var(--muted); font-size: 13px; }
.inspector-image { height: 190px; margin: 0 28px 24px; border-color: var(--line); background: #ede0d0; }
.inspector-image img { width: 115px; height: 150px; }
.upload-control { min-height: 38px; align-items: center; padding: 8px 12px; font-size: 13px; }
.inspector-form { gap: 16px; padding: 0 28px 28px; }
.inspector-form label { color: var(--ink); font-size: 14px; }
.inspector-form input, .inspector-form select, .inspector-form textarea { min-height: 44px; padding: 10px 12px; border-color: var(--line); font-size: 15px; }
.inspector-form textarea { min-height: 100px; }
#audit-batch-actions { min-height: 300px; }
.compact-fields { grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 12px; }
.inspector-actions { gap: 12px; }
.inspector-section { padding: 25px 28px; border-color: var(--line); }
.section-heading { align-items: center; gap: 14px; margin-bottom: 12px; }
.section-heading h3 { color: var(--ink); font-size: 19px; }
.section-heading span, .section-copy { color: var(--muted); font-size: 13px; }
.evidence-heading h4 { font-size: 16px; }
.evidence-heading p, .evidence-row, .evidence-empty, .inspector-danger p, .inspector-merge p { color: var(--muted); font-size: 13px; line-height: 1.5; }
.evidence-row, .barcode-row, .history-row { padding: 12px; border-color: var(--line); background: #fffaf3; font-size: 13px; }
.barcode-meta, .history-row small, .history-row strong { font-size: 12px; }
.inspector-danger { background: #f9ebe6; }
.inspector-merge { background: #eef0e7; }
.key-link { min-height: 44px; border-color: var(--line); font-size: 14px; }
.key-link::after { font-size: 12px; }

.modal { width: min(94vw, 820px); }
.modal-small { width: min(94vw, 560px); }
.modal-card { gap: 20px; max-height: min(92dvh, 900px); padding: clamp(24px, 3vw, 36px); border-color: var(--line); background: var(--paper); }
.modal-card header, .modal-card footer { align-items: flex-start; }
.modal-card footer { flex-wrap: wrap; justify-content: flex-end; padding-top: 18px; border-top: 1px solid var(--line); }
.modal-card .form-grid { gap: 18px; }
.modal-card label { color: var(--ink); font-size: 14px; }
.modal-card input, .modal-card select, .modal-card textarea { min-height: 44px; padding: 10px 12px; font-size: 15px; }
.modal-card textarea { min-height: 100px; }
.modal-copy { color: var(--muted); font-size: 15px; line-height: 1.55; }
.icon-button { width: 40px; height: 40px; border-color: var(--line); background: #fffaf4; }
.form-message { min-height: 0; color: #8f3d33; font-size: 14px; }
.form-message:empty { display: none; }
.suggestion-menu, .candidate-link-suggestions { border-color: var(--line); background: #fffaf3; }
.suggestion-option, .candidate-link-option { min-height: 44px; font-size: 14px; }
.suggestion-option strong { font-size: 14px; }
.suggestion-option span, .suggestion-empty { font-size: 12px; }

.auth-screen { background: #241912; }
.auth-card { width: min(100%, 520px); padding: clamp(28px, 4vw, 48px); border: 1px solid var(--line); background: var(--paper); color: var(--ink); box-shadow: 0 24px 70px rgba(0,0,0,.26); }
.auth-logo { width: 58px; height: 58px; }
.product-name { color: var(--copper); font-size: 13px; }
.auth-card h1 { color: var(--ink); font-size: clamp(34px, 3vw, 44px); }
.auth-copy, .auth-divider, .auth-help, .mfa-intro { color: var(--muted); font-size: 15px; }
.auth-form { gap: 18px; }
.auth-form label { color: var(--ink); }
.auth-form input { min-height: 48px; border-color: var(--line); color: var(--ink); background: #fffdf9; }
.auth-divider span { background: var(--line); }
.auth-link-button { color: var(--copper); border-color: var(--line); background: transparent; }
.auth-card .apple-sign-in { border: 1px solid var(--line); box-shadow: none; }

@media (max-width: 980px) {
  .growth-detail-grid { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .sidebar { gap: 10px; min-height: 60px; padding: 8px 14px; overflow-x: auto; }
  .sidebar-nav { flex: 1 0 auto; }
  .topbar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
  .topbar-actions { margin-left: auto; }
  .topbar { padding: 16px 20px; }
  .view { padding: 24px 20px 60px; }
}
@media (max-width: 600px) {
  .topbar-actions { width: 100%; margin-left: 0; }
  .search-field { flex: 1 1 180px; min-width: 0; width: auto; }
  .view { padding: 22px 16px 52px; }
  .overview-row { padding: 17px 18px; }
  .overview-row > span { font-size: 16px; }
  .overview-row strong { font-size: 20px; }
  .distillery-toolbar { grid-template-columns: minmax(0, 1fr) auto; }
  .distillery-search { min-width: 0; }
  .distillery-toolbar #clear-distillery-search { padding: 0 12px; }
  .growth-metrics { grid-template-columns: 1fr; }
  .growth-panel-heading { align-items: flex-start; flex-direction: column; gap: 6px; }
  .growth-panel-heading > span { text-align: left; }
  .growth-actions { flex-direction: row; flex-wrap: wrap; }
  .growth-window { flex-direction: row; }
  .growth-window .filter-button { width: auto; }
  .catalog-toolbar { align-items: flex-start; flex-direction: column; }
  .catalog-filters { align-items: stretch; }
  .catalog-filter, .catalog-filter-number { flex: 1 1 100%; min-width: 0; }
  .catalog-clear { margin-left: 0; }
  .candidate-toolbar { align-items: stretch; }
  .candidate-toolbar { grid-template-columns: 1fr; }
  .candidate-toolbar > .filter-group, .candidate-toolbar > .candidate-sort { grid-column: 1; }
  .candidate-sort { width: 100%; }
  .candidate-sort select { flex: 1; min-width: 0; }
  .form-grid { grid-template-columns: 1fr; }
  .audit-batch-card .compact-fields { grid-template-columns: 1fr; }
  .directory-card { min-height: 122px; padding: 20px; }
  .directory-list { gap: 12px; }
  .modal-card footer .button { flex: 1 1 140px; }
  .inspector-head, .inspector-section { padding-left: 20px; padding-right: 20px; }
  .inspector-form { padding-left: 20px; padding-right: 20px; }
  .inspector-image { margin-left: 20px; margin-right: 20px; }
  .catalog-inspector-row .inspector { width: calc(100vw - 34px); max-width: 100%; }
  .architecture-map-shell { min-height: 720px; }
}
@media (max-width: 520px) {
  .topbar-actions #add-distillery:not(.is-hidden) { display: inline-flex; }
}
@media (max-width: 360px) {
  .distillery-toolbar { grid-template-columns: 1fr; }
  .distillery-toolbar #clear-distillery-search { justify-self: start; }
}
@media (prefers-reduced-motion: reduce) {
  .button, .nav-item, .catalog-table tbody tr { transition: none; }
}
