:root{color-scheme:dark;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#260e15;color:#f5e6d5}
*{box-sizing:border-box}
body{margin:0;min-height:100dvh;background:radial-gradient(circle at 50% -10%,#4a1a29 0,#241019 34%,#14090e 88%)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
button:disabled{opacity:.55;cursor:wait}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e4ad6e;outline-offset:3px}
.audit-header{position:sticky;top:0;z-index:20;padding:calc(6px + env(safe-area-inset-top)) 12px 6px;background:linear-gradient(180deg,#4b1d28,#260d18);border-bottom:1px solid #a77a4e;box-shadow:0 3px 12px #0007,inset 0 1px #ffe3aa1c}
.audit-header-inner{max-width:520px;margin:auto;display:grid;grid-template-columns:70px minmax(0,1fr) 70px;align-items:center;gap:8px}
.audit-header h1{margin:0;overflow:hidden;color:#f5d5a0;font-family:Georgia,serif;font-size:clamp(1.1rem,4.8vw,1.5rem);font-weight:500;line-height:1.1;text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 4px #0009}
.audit-nav-button{min-height:38px;display:flex;align-items:center;justify-content:center;gap:3px;border:1px solid #ae8153;border-radius:999px;background:linear-gradient(180deg,#6a2637,#391321);box-shadow:inset 0 1px #ffe6bc30,0 2px 5px #0006;color:#f3d6a6;font-size:.72rem;font-weight:800;text-decoration:none}
.audit-nav-button svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.audit-exit{grid-column:3}.eyebrow{font-size:.67rem;letter-spacing:.19em;color:#d5ab7b;font-weight:800}.icon-button{width:42px;height:42px;border:1px solid #8b6659;border-radius:50%;background:#361721;color:#f5e6d5;font-size:1.7rem}
main{max-width:1120px;margin:auto;padding:24px 18px 80px}.message{margin:0 0 10px;min-height:1.4rem;color:#ddc5a9}.message:empty{display:none}.message.error,#exceptionError{color:#ffb7a4}
.access-panel,.summary,.controls{border:1px solid #805346;border-radius:18px;background:linear-gradient(145deg,#341720,#211017);box-shadow:0 14px 35px #07020455}.access-panel{max-width:440px;margin:7vh auto;padding:28px}.access-panel h2{font-family:Georgia,serif;font-size:1.8rem;font-weight:500;margin:0}.access-panel p{color:#d4bea8;line-height:1.5}.access-panel form{display:flex;gap:10px}.access-panel input{width:110px;font-size:1.2rem;letter-spacing:.2em}
.access-panel button,.primary-button{border:0;border-radius:11px;background:#d8ad77;color:#2b0d17;padding:13px 18px;font-weight:850;min-height:46px}.primary-button:hover,.access-panel button:hover{background:#f1c891}
.summary{padding:20px}.summary-line{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:.86rem;color:#d8bea3}.summary-line strong{font-size:1.2rem;color:#fff2df}.progress-track{margin:16px 0 12px;height:9px;border-radius:20px;background:#10070b;overflow:hidden}.progress-track div{height:100%;width:0;background:linear-gradient(90deg,#aa654f,#efc38b);border-radius:20px;transition:width .25s}.counts{color:#d3b79a;line-height:1.5;font-size:.79rem}.roster-notice{background:#5a371a;color:#ffe2b8;border-radius:9px;padding:11px;line-height:1.45}.summary button{margin:16px 8px 0 0}.quiet-button{border:1px solid #987159;border-radius:11px;padding:11px 15px;background:#321720;color:#f2d8b7;min-height:46px;font-weight:700}
.audit-instruction{margin:0 0 9px;color:#ead5b9;font-size:.83rem;line-height:1.45}
.controls{display:grid;gap:10px;margin:18px 0 14px;padding:16px}.search-label{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#d8ad77}.controls input,.controls select,.access-panel input,.exception-dialog input,.exception-dialog textarea{min-height:46px;border:1px solid #916a58;border-radius:10px;background:#160b10;color:#fff0dc;padding:10px 12px;width:100%}.controls input::placeholder,.exception-dialog input::placeholder,.exception-dialog textarea::placeholder{color:#a68d83}.control-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.control-row label{font-size:.76rem;color:#d8ad77;font-weight:700;display:grid;gap:5px}
.sections{display:flex;gap:8px;overflow:auto;padding:3px 0 12px;scrollbar-width:thin}.sections button{white-space:nowrap;min-height:44px;border:1px solid #7a5349;border-radius:24px;background:#2d1720;color:#efdbc6;padding:9px 14px;font-weight:800}.sections button.selected{background:#e4b982;color:#2b0d17;border-color:#f2d0a7}.sections span{font-size:.8rem;margin-left:5px;opacity:.8}.result-count{color:#cdb39b;font-size:.78rem;letter-spacing:.07em;text-transform:uppercase;margin:10px 0 12px}.wine-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:12px}.wine-card{border:1px solid #704638;border-radius:15px;background:#25121a;padding:15px;min-width:0}.wine-card.is-correct{border-color:#547960}.wine-card.is-change,.wine-card.is-mixed{border-color:#b68845}.wine-card.is-unverified{border-color:#937f78}.card-top,.wine-meta{display:flex;justify-content:space-between;gap:12px;align-items:center}.card-top{font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#c99f79}.status{color:#f2d8ba}.is-correct .status{color:#a9d3af}.is-change .status,.is-mixed .status{color:#f4ca7b}.wine-card h2{font-family:Georgia,serif;font-size:1.15rem;line-height:1.3;font-weight:500;margin:12px 0;overflow-wrap:anywhere}.wine-meta{font-size:.8rem;color:#c9ae9c}.wine-meta strong{font-size:.98rem;color:#ffe2b9}.observed,.note{font-size:.82rem;color:#e9c9a0;margin:10px 0 0;overflow-wrap:anywhere}.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:15px}.actions button{min-height:46px;border:1px solid #916757;border-radius:9px;background:#381b25;color:#f8e5cc;font-size:.77rem;font-weight:750;padding:7px}.actions button:first-child{background:#304d3d;border-color:#689178;color:#e6f4e7}.actions button:hover{filter:brightness(1.2)}.empty{padding:35px 15px;text-align:center;color:#c7ac96;border:1px dashed #765248;border-radius:14px}
.exception-dialog{width:min(100% - 24px,480px);max-height:calc(100dvh - 32px);border:1px solid #ba855f;border-radius:18px;background:#28131c;color:#f5e7d4;padding:24px;box-shadow:0 35px 90px #000b}.exception-dialog::backdrop{background:#090306c9}.exception-dialog form{display:grid;gap:10px}.exception-dialog h2{font-family:Georgia,serif;font-weight:500;font-size:1.35rem;line-height:1.25;margin:0}.exception-dialog p{margin:0;color:#d3b8a2;font-size:.85rem}.exception-dialog label{font-size:.78rem;color:#edc58f;font-weight:800;margin-top:9px}.dialog-close{position:absolute;top:12px;right:14px;border:0;background:none;color:#e3c4ae;font-size:1.9rem;line-height:1}.exception-dialog textarea{resize:vertical}.exception-dialog .primary-button{margin-top:10px}
@media(max-width:560px){main{padding:16px 12px 80px}.summary{padding:17px}.summary-line{align-items:start;flex-direction:column;gap:4px}.wine-list{grid-template-columns:1fr}.actions button{font-size:.78rem}.control-row{grid-template-columns:1fr 1fr}.control-row select{font-size:.83rem;padding:8px}}
.landing-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0 0 15px}.filter-heading{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;color:#f1d7b4;font-size:.84rem}.filter-heading strong{text-transform:uppercase;letter-spacing:.1em}.filter-heading button{border:0;background:none;color:#e5bd89;text-decoration:underline;font-size:.78rem;padding:5px}.filter-panel{min-width:0;border:1px solid #805346;border-radius:12px;background:#2a141d}.filter-panel summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;padding:10px 13px;font-weight:800;cursor:pointer;list-style:none}.filter-panel summary::-webkit-details-marker{display:none}.filter-panel summary::after{content:'⌄';color:#dbad79;font-size:1.1rem}.filter-panel[open]{grid-column:1/-1}.filter-panel[open] summary{border-bottom:1px solid #644035}.filter-panel[open] summary::after{content:'⌃'}.filter-panel summary span{font-size:.68rem;font-weight:500;color:#d3b397;max-width:48%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:auto}.filter-body{display:grid;gap:13px;padding:15px}.filter-body label{display:grid;gap:5px;color:#dfbd93;font-size:.77rem;font-weight:750}.filter-body input,.filter-body select{min-height:44px;min-width:0;width:100%;border:1px solid #916a58;border-radius:9px;background:#160b10;color:#fff0dc;padding:9px 10px}.field-row,.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.filter-caption{color:#d4ae80;font-size:.72rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.choice-list{display:flex;gap:7px;flex-wrap:wrap}.choice-list button{border:1px solid #8d6552;border-radius:24px;background:#321923;color:#f5debe;min-height:38px;padding:7px 11px;font-size:.74rem;font-weight:760}.choice-list button[aria-pressed="true"]{background:#e4b982;border-color:#f2cf9f;color:#2b0d17}
.wine-card{scroll-margin-top:calc(105px + env(safe-area-inset-top))}.wine-meta strong{display:flex;align-items:baseline;gap:7px;color:#ffe1ad;font-size:1.42rem;line-height:1.15;white-space:nowrap}.wine-meta strong small{font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.64rem;letter-spacing:.08em;color:#d6b18b}.wine-card.is-unverified{border-color:#bc6465}.is-unverified .status{color:#ffaaa7}
.actions button:first-child{background:#381b25;border-color:#916757;color:#f8e5cc}.actions button[data-action="correct"].is-selected{background:#304d3d;border-color:#83b393;color:#e6f4e7}.actions button[data-action="change"].is-selected,.actions button[data-action="mixed"].is-selected{background:#795927;border-color:#e0ba67;color:#fff5d6}.actions button[data-action="unverified"].is-selected{background:#81353a;border-color:#e48182;color:#fff0e8}
@media(max-width:560px){.wine-meta strong{font-size:1.35rem}.filter-panel summary span{max-width:43%}}
@media(prefers-reduced-motion:reduce){.progress-track div{transition:none}}
.exception-dialog .add-vintage{justify-self:start;margin:0;padding:7px 11px;min-height:36px;font-size:.78rem}
/* Vintage Audit controls share the landing page's bottom-dock interaction. */
main{padding-bottom:calc(110px + env(safe-area-inset-bottom))}
.audit-tools{display:flex;flex-wrap:wrap;gap:8px}
.audit-tools button{margin:14px 0 0}
.controls{position:relative;margin-bottom:14px}
.control-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.control-button{min-height:45px;border:1px solid #a87958;border-radius:24px;background:#3b202b;color:#f7ddbb;padding:8px 12px;text-align:center;font-weight:800;font-size:.77rem}
.control-button[aria-expanded="true"]{background:#e4b982;color:#2b0d17}
.control-menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:7px;padding:10px;border:1px solid #a87958;border-radius:14px;background:#241019;box-shadow:0 15px 34px #0008}
.control-menu[hidden]{display:none}
.control-menu button{min-height:42px;border:1px solid #775247;border-radius:10px;background:#371b25;color:#f5ddc2;font-size:.79rem;font-weight:750}
.control-menu button[aria-pressed="true"]{background:#e4b982;color:#2b0d17}
.filter-dock{position:fixed;bottom:0;left:0;right:0;z-index:8;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px max(8px,calc((100vw - 620px)/2)) calc(8px + env(safe-area-inset-bottom));background:#210e17ef;border-top:1px solid #9e7562;backdrop-filter:blur(16px);box-shadow:0 -10px 28px #0005}
.filter-dock[hidden]{display:none}
.filter-dock button{position:relative;display:grid;justify-items:center;gap:2px;min-width:0;min-height:59px;padding:5px;border:1px solid #815c4e;border-radius:14px;background:#391d29;color:#f1d3b1;font-size:.72rem;font-weight:800}
.filter-dock button span{font-family:Georgia,serif;font-size:1.5rem;line-height:1.1}
.filter-dock button.has-filter::after{content:'';position:absolute;top:5px;right:8px;width:7px;height:7px;background:#efbd78;border-radius:50%}
.filter-dock button.active{background:#e4b982;color:#32131f}
.filter-drawer{position:fixed;inset:auto 0 0;width:min(100%,620px);max-width:100%;height:min(79dvh,720px);max-height:calc(100dvh - 10px);margin:auto auto 0;padding:0;border:1px solid #c19669;border-bottom:0;border-radius:22px 22px 0 0;background:#eedcc4;color:#2c1320;box-shadow:0 -20px 70px #000a}
.filter-drawer::backdrop,.task-dialog::backdrop{background:#080307b8}
.drawer-head{display:flex;justify-content:space-between;align-items:start;background:#371825;color:#f6e4ca;padding:19px 20px 15px;border-radius:21px 21px 0 0}
.drawer-head h2{font-family:Georgia,serif;font-weight:500;font-size:1.6rem;margin:3px 0 0}
.drawer-head button,.task-dialog-head button{border:0;background:none;color:inherit;font-size:2rem;line-height:1;padding:0 3px}
.drawer-content{overflow-y:auto;max-height:calc(min(79dvh,720px) - 198px);padding:15px}
.filter-drawer .filter-panel{border:1px solid #c6ab8b;background:#f4e9d9;border-radius:14px;color:#321826}
.filter-drawer .filter-panel[hidden]{display:none}
.filter-drawer .filter-panel h3{display:flex;justify-content:space-between;gap:10px;margin:0;padding:13px 16px;border-bottom:1px solid #d8c6ae;font-size:1rem}
.filter-drawer .filter-panel h3 span{font-size:.76rem;color:#694939;font-weight:500}
.filter-drawer .filter-body{padding:14px}
.filter-drawer .filter-caption,.filter-drawer .filter-body label{color:#603b2e}
.filter-drawer .filter-body input,.filter-drawer .filter-body select{background:#fffaf0;color:#2c1420;border-color:#c6a98e}
.filter-drawer .choice-list button{background:#fff8ed;color:#341824;border-color:#bda080}
.filter-drawer .choice-list button[aria-pressed="true"]{background:#4a2230;color:#fff0dc;border-color:#4a2230}
.drawer-actions{display:grid;grid-template-columns:1fr 2fr;gap:9px;padding:10px 15px;background:#eedcc4;border-top:1px solid #d1b99c}
.drawer-actions button{margin:0;min-height:43px}
.drawer-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:#391a27}
.drawer-nav button{border:0;border-radius:9px;background:transparent;color:#efd5b3;min-height:42px;font-size:.74rem;font-weight:800}
.drawer-nav button.active{background:#e4b982;color:#2b0d17}
.task-dialog{width:min(calc(100% - 24px),860px);max-height:calc(100dvh - 30px);border:1px solid #b8845e;border-radius:17px;background:#28131c;color:#f5e7d4;padding:18px;box-shadow:0 30px 80px #000b}
.task-dialog-head{display:flex;justify-content:space-between;align-items:start;gap:10px}
.task-dialog h2{font-family:Georgia,serif;font-weight:500;margin:0;font-size:1.45rem}
.task-dialog p{color:#d7bda5;line-height:1.45}
.report-preview{max-height:51dvh;overflow:auto;border:1px solid #80574a;border-radius:10px;padding:10px;background:#1c0c14}
.report-preview table{border-collapse:collapse;font-size:.75rem;min-width:780px}
.report-preview th,.report-preview td{border-bottom:1px solid #62443a;padding:7px;text-align:left;vertical-align:top}
.report-preview th{position:sticky;top:0;background:#40212c;color:#f4d3a7}
.report-preview h3{font-size:.88rem;color:#e4b982;margin:10px 0 4px}
.report-preview ul{padding-left:19px;margin:0 0 10px;font-size:.8rem;line-height:1.5}
.task-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.task-actions button{min-height:43px;border:1px solid #a87958;border-radius:9px;background:#3c1b28;color:#f4dbba;padding:8px 13px;font-weight:750}
#confirmSubmit{margin-top:12px;width:100%}
@media(max-width:560px){.control-row{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-drawer{height:min(82dvh,720px)}.drawer-content{max-height:calc(min(82dvh,720px) - 200px)}.field-grid{grid-template-columns:1fr}}
@media print{body{background:white;color:black}.audit-header,main,.filter-dock,.filter-drawer,.task-dialog-head button,.task-actions{display:none!important}.task-dialog{display:block!important;position:static!important;max-height:none!important;width:100%!important;border:0!important;color:black!important;background:white!important;box-shadow:none!important}.task-dialog h2,.task-dialog p{color:black!important}.report-preview{max-height:none!important;overflow:visible!important;border:0!important;background:white!important}.report-preview table{min-width:0;width:100%;font-size:8pt}.report-preview th{position:static;background:#eee!important;color:black!important}.report-preview th,.report-preview td{border-color:#bbb;color:black}.report-preview tr{break-inside:avoid}#submitDialog{display:none!important}}
.section-count{margin:8px 0 0;color:#d6b999;font-size:.78rem}
#reportSections{font-size:.75rem;line-height:1.6}
@media(max-width:560px){.control-menu{position:absolute;right:15px;top:calc(100% - 10px);z-index:4;display:flex;flex-direction:column;width:min(210px,calc(100% - 30px));max-height:55dvh;overflow:auto}.control-menu button{text-align:left;padding:8px 12px}}
.filter-drawer{display:flex;flex-direction:column}
.filter-drawer:not([open]){display:none}
.drawer-content{flex:1;min-height:0;max-height:none}
.drawer-actions,.drawer-nav,.drawer-head{flex:none}
@media print{body:not(.report-open) main{display:block!important}body:not(.report-open) .task-dialog{display:none!important}}
/* Mobile audit uses the landing screen's compact cards and anchored controls. */
main{max-width:520px;padding:14px 13px calc(185px + env(safe-area-inset-bottom))}
.summary{padding:17px 16px;border-radius:18px}
.audit-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.audit-title h1{font-family:Georgia,serif;font-weight:500;font-size:1.75rem;margin:2px 0 0}
.audit-title .icon-button{flex:none;margin:0}
.summary-line{align-items:start;flex-direction:column;gap:4px}
.result-toolbar{position:relative;display:flex;justify-content:space-between;align-items:center;gap:10px;margin:17px 0 10px}
.result-count{margin:0}
.result-toolbar .control-button{flex:none;min-height:43px;padding:8px 18px;border-radius:14px;background:#4a202c;border-color:#bc8b5a;color:#f5dfb8;font-size:.85rem;box-shadow:inset 0 0 0 2px #251016}
.result-toolbar .control-button span:first-child{font-size:1.25em;vertical-align:-.05em}
.result-toolbar .control-button[aria-expanded="true"]{background:#d8ad77;color:#251016}
.result-toolbar .control-menu{position:absolute;right:0;top:calc(100% + 5px);z-index:7;display:flex;flex-direction:column;width:min(245px,calc(100vw - 35px));max-height:min(67dvh,600px);overflow:auto;padding:9px;border-color:#a87958}
.result-toolbar .control-menu[hidden]{display:none}
.result-toolbar .control-menu button{text-align:left;padding:10px 12px;flex:none}
.menu-heading{margin:8px 6px 2px;color:#d7ac76;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:850}
.menu-heading:not(:first-child){border-top:1px solid #765345;padding-top:12px;margin-top:10px}
.wine-list{grid-template-columns:1fr;gap:11px}
.wine-card{padding:0;border-radius:16px;overflow:hidden;scroll-margin-top:12px;background:#211018}
.card-data{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#391724;border-bottom:1px solid #b8895c}
.card-data>div{min-width:0;display:grid;align-content:center;justify-items:center;gap:2px;padding:7px 4px;border-right:1px solid #ffffff18}
.card-data>div:last-child{border-right:0}
.card-data small{font-size:.62rem;line-height:1;letter-spacing:.16em;font-weight:800;color:#ceb397}
.card-data strong{font-size:1.13rem;line-height:1.15;overflow:hidden;text-overflow:ellipsis;max-width:100%;color:#f8e8d3}
.card-data .card-vintage strong{font-size:1.5rem;color:#ffe4aa}
.card-body{padding:13px 14px 15px}
.card-top{align-items:baseline}
.card-top .location{color:#d9ad76}
.wine-card h2{font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1.12rem;font-weight:760;line-height:1.25;margin:9px 0 0}
.card-region{font-size:.87rem;font-style:italic;color:#c9b5a6;margin:4px 0 0}
.observed,.note{font-size:.84rem;margin:9px 0 0}
.actions{margin-top:12px}
.actions button{min-height:48px;font-size:.81rem}
.search-dock{position:fixed;bottom:calc(79px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:8;width:min(100%,520px);padding:7px 12px 8px;background:linear-gradient(0deg,#210d16 75%,#210d1600);}
.search-dock[hidden]{display:none}
.search-shell{display:flex;align-items:center;gap:9px;min-height:54px;border:1px solid #a87958;border-radius:30px;background:#171011;box-shadow:0 2px 12px #0009;padding:4px 5px}
.search-symbol{display:grid;place-items:center;flex:none;width:44px;height:44px;border:1px solid #a87958;border-radius:50%;background:#431c2a}
.search-symbol svg,.search-shell button svg{width:22px;height:22px;fill:none;stroke:#e9c990;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.search-shell input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#f8e9d5;font-size:.88rem}
.search-shell input::placeholder{color:#a99a95}
.search-shell input::-webkit-search-cancel-button{filter:grayscale(1) brightness(2)}
.search-shell button{display:grid;place-items:center;flex:none;width:42px;height:42px;border:0;border-radius:50%;background:#461a2b}
.filter-dock{left:50%;right:auto;transform:translateX(-50%);width:min(100%,520px);gap:0;padding:4px 10px calc(6px + env(safe-area-inset-bottom));background:linear-gradient(#54232a,#371820);border-top:1px solid #9e7351;box-shadow:0 -4px 20px #0008}
.filter-dock button{gap:3px;min-height:65px;border:0;border-right:1px solid #ffffff19;border-radius:0;background:transparent;color:#e0b98c;font-size:.73rem}
.filter-dock button:last-child{border-right:0}
.filter-dock button .dock-icon{display:grid;place-items:center;height:32px}
.filter-dock button>span:last-child{font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.73rem;line-height:1.1}
.filter-dock button svg{width:29px;height:29px;fill:none;stroke:#d8b280;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.filter-dock button.active{background:#ffffff13;color:#f8dbaa}
.filter-dock button.has-filter::after{top:4px;right:18px;background:#f1bb76;box-shadow:0 0 7px #ffbc78}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:560px){main{padding:12px 12px calc(185px + env(safe-area-inset-bottom))}.summary-line{flex-direction:column}.result-toolbar .control-menu{right:0;top:calc(100% + 5px);width:min(245px,calc(100vw - 35px))}}
@media print{.search-dock{display:none!important}}
/* The audit reuses the landing result toolbar and dense phone card rhythm. */
main{padding-top:7px}
.summary{padding:10px 12px 9px;border-radius:12px;box-shadow:none}
.summary-line{display:flex;flex-direction:row;align-items:center;gap:8px}
.summary-line strong{font-size:.95rem;white-space:nowrap}
.summary-line .section-count{margin:0 0 0 auto;white-space:nowrap;font-size:.7rem}
.summary-line .icon-button{width:32px;height:32px;min-height:32px;flex:none;margin:0;background:transparent;border:0;font-size:1.4rem;line-height:1;color:#dfb985}
.summary .progress-track{height:4px;margin:8px 0 0}
.summary .submit-button,.summary #start,.summary #finish{min-height:36px;margin:8px 0 0;padding:7px 12px;font-size:.75rem;border-radius:8px}
.result-toolbar{min-height:48px;margin:9px 0 8px;padding:5px;border:1.5px solid #4b4948;border-radius:14px;background:linear-gradient(180deg,rgba(38,20,24,.94),rgba(20,13,15,.96));box-shadow:0 5px 15px #0005,0 0 0 1px #fff2,inset 0 1px #efd08310}
.result-count{padding-left:8px;color:#d2b9a0;font-size:.7rem;letter-spacing:.02em;white-space:nowrap}
.result-tools{display:flex;align-items:center;gap:5px;margin-left:auto}
.result-tool-button{min-width:72px;height:38px;padding:0 9px;border:1px solid #b18b5f40;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:6px;background:linear-gradient(180deg,#21191b,#151213);color:#9d8d7b;box-shadow:inset 0 1px #fff4dc0a,0 2px 5px #0003;font-size:.59rem;font-weight:900;letter-spacing:.08em;line-height:1}
.result-tool-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.result-tool-button.is-selected,.result-tool-button[aria-expanded="true"]{border-color:#dcac5bb8;background:linear-gradient(160deg,#64172f,#310b18);color:#e7c47e;box-shadow:inset 0 1px #ffe7b826,0 0 9px #cf913737,0 3px 7px #0004}
.result-tool-button:active{transform:scale(.97)}
.result-toolbar .control-menu{top:calc(100% + 6px);right:5px;width:min(230px,calc(100vw - 28px));max-height:65dvh;padding:6px;border-color:#d7ae6794;border-radius:13px;background:linear-gradient(180deg,#2c151c,#150e11);box-shadow:0 14px 30px #0009}
.result-toolbar .control-menu button{min-height:43px;border-color:#b18b5f29;border-radius:9px;background:transparent;color:#dcc3a0;font-size:.72rem;font-weight:800;letter-spacing:.02em}
.result-toolbar .control-menu button[aria-pressed="true"]{border-color:#dcac5bb8;background:linear-gradient(160deg,#64172f,#310b18);color:#e7c47e}
.wine-list{gap:8px}
.wine-card{border-radius:13px;scroll-margin-top:7px}
.card-data>div{padding:4px 3px;gap:1px}
.card-data small{font-size:.54rem}
.card-data strong{font-size:.94rem;line-height:1}
.card-data .card-vintage strong{font-size:1.27rem}
.card-body{padding:8px 10px 9px}
.card-top{display:flex;align-items:baseline;gap:7px;min-width:0}
.wine-card h2{flex:1;min-width:0;margin:0;font-size:1.06rem;line-height:1.15;font-weight:760;text-transform:none;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.status{flex:none;max-width:34%;font-size:.59rem;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}
.card-detail{margin:3px 0 0;color:#c7aa8b;font-size:.7rem;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.observed,.note{margin:4px 0 0;font-size:.71rem;line-height:1.15}
.actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:7px}
.actions button{min-width:0;min-height:38px;padding:3px 2px;border-radius:999px;font-size:.67rem;line-height:1.08;font-weight:800}
.actions button:disabled{opacity:.8;cursor:wait}
.actions button:first-child{background:#381b25;border-color:#916757;color:#f8e5cc}
.actions button[data-action="correct"].is-selected{background:#304d3d;border-color:#83b393;color:#e6f4e7}
.actions button[data-action="change"].is-selected,.actions button[data-action="mixed"].is-selected{background:#795927;border-color:#e0ba67;color:#fff5d6}
.actions button[data-action="unverified"].is-selected{background:#81353a;border-color:#e48182;color:#fff0e8}
@media(max-width:560px){main{padding-top:7px}.summary-line{flex-direction:row;align-items:center}.result-toolbar .control-menu{right:5px;top:calc(100% + 6px)}}
/* WineStack's burgundy glass, warm metal edge and gold lighting. */
:root{--audit-metal-line:linear-gradient(125deg,#6e3a10,#e3b761,#9c5c1c,#f0d58c,#75400f)}
body{background:linear-gradient(180deg,#5a282c,#371719 70%,#260e15) fixed}
.summary,.wine-card{border:1px solid transparent;background:radial-gradient(circle at 16% 0%,#8a35503b,transparent 52%) padding-box,linear-gradient(155deg,#511327,#2b0a16 70%,#1a070e) padding-box,var(--audit-metal-line) border-box;box-shadow:inset 0 1px #ffe6b42b,0 6px 15px #0007,0 0 11px #bf793022}
.summary-line strong{color:#ffe1ab;text-shadow:0 0 9px #c887454d}
.summary-line .section-count{color:#d6b47f}
.summary .progress-track{border:1px solid #9a683d;background:linear-gradient(90deg,#2b0d17,#542331);box-shadow:inset 0 1px 3px #000b,0 0 5px #b4733226}
.summary .progress-track div{background:linear-gradient(90deg,#a0582a,#e7b66b,#ffe1a0);box-shadow:0 0 8px #ebb65e8c}
.summary .submit-button,.summary #start{background:linear-gradient(155deg,#f0d195,#c49350 58%,#a46d38);color:#32101d;box-shadow:inset 0 1px #fff2d7a6,0 3px 9px #0006,0 0 10px #d3913c45}
.result-toolbar{border-color:#af8053;background:linear-gradient(180deg,#4b1a2a,#210d17 70%,#16080f);box-shadow:inset 0 1px #ffecb421,0 4px 10px #0008,0 0 10px #b56e292e}
.result-count{color:#e0c298}
.result-toolbar .control-menu{border-color:#b98853;box-shadow:inset 0 1px #ffedbd21,0 12px 28px #000b,0 0 12px #a86a2d3d}
.result-toolbar .control-menu button{background:linear-gradient(160deg,#4b1a2a,#240c17);border-color:#8d5d42;color:#efd7ad;box-shadow:inset 0 1px #ffdeaa17}
.card-data{background:linear-gradient(180deg,#651a32,#3c1021 85%);border-bottom-color:#d2a66c;box-shadow:inset 0 1px #ffeac32b}
.card-data>div{border-right-color:#d0a46b38}
.card-data small{color:#dabb8d}
.card-data strong{color:#fff0d6;text-shadow:0 1px 2px #0008}
.card-data .card-vintage strong{color:#ffe0a1;text-shadow:0 0 8px #e2ac5a73,0 1px 2px #0008}
.wine-card h2{color:#fff0d9;text-shadow:0 1px 2px #0008}
.card-detail{color:#d7bd9d}
.actions button{border:1px solid transparent;background:linear-gradient(180deg,#6a2038,#360d20) padding-box,var(--audit-metal-line) border-box;color:#ffe4b5;box-shadow:inset 0 1px #ffe7b72b,0 2px 4px #0005}
.actions button:first-child{border:1px solid transparent;background:linear-gradient(180deg,#6a2038,#360d20) padding-box,var(--audit-metal-line) border-box;color:#ffe4b5}
.actions button[data-action="correct"].is-selected{border:1px solid #a2caa7;background:linear-gradient(180deg,#3a7453,#204735);color:#f0ffe9;box-shadow:inset 0 1px #ecffde40,0 0 9px #5ab47857}
.actions button[data-action="change"].is-selected,.actions button[data-action="mixed"].is-selected{border:1px solid #f0ce7c;background:linear-gradient(180deg,#b7883a,#76501e);color:#fff5d4;box-shadow:inset 0 1px #fff4c54d,0 0 9px #e2b65d66}
.actions button[data-action="unverified"].is-selected{border:1px solid #f39798;background:linear-gradient(180deg,#ae4a50,#73242e);color:#fff4ef;box-shadow:inset 0 1px #ffe1df42,0 0 9px #ef6f7366}
.search-shell{border:1px solid #bd905e;background:linear-gradient(180deg,#201a1a,#141010);box-shadow:inset 0 1px #ffdfaf21,0 4px 12px #0009,0 0 9px #ad6a2933}
.search-symbol{border:1px solid #d0a568;background:linear-gradient(160deg,#6b1932,#310a1a);box-shadow:inset 0 1px #ffe4bc38,0 0 7px #bf793949}
.search-shell button{background:linear-gradient(160deg,#69172f,#320b1a);box-shadow:inset 0 1px #ffe1ad24}
.filter-dock{background:linear-gradient(180deg,#5a282c,#371719 70%,#260e15);border-top-color:#b88850;box-shadow:inset 0 1px #ffeac529,0 -4px 18px #0008,0 0 12px #ad6b2d36}
.filter-dock button{color:#ddb987;text-shadow:0 1px 2px #0009}
.filter-dock button svg{stroke:#e5c187;filter:drop-shadow(0 0 3px #d6a46259)}
.filter-dock button[data-open-filter="grape"] svg circle{fill:#e5c187;stroke:none}
.filter-dock button.active{background:linear-gradient(180deg,#9237595c,#5820322b);color:#ffe1a5}
.filter-dock button.active svg{stroke:#ffe1a5;filter:drop-shadow(0 0 5px #f0bc6fad)}
.filter-drawer #decadeChoices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.filter-drawer #decadeChoices button{min-height:52px;border:1px solid transparent;border-radius:13px;background:linear-gradient(180deg,#813149,#3c0c22 82%) padding-box,var(--audit-metal-line) border-box;color:#f1d19f;box-shadow:inset 0 1px #ffe6be39,0 4px 9px #4d182950;font-size:.78rem}
.filter-drawer #decadeChoices button[aria-pressed="true"]{background:linear-gradient(180deg,#a34a61,#64162f) padding-box,var(--audit-metal-line) border-box;color:#ffe8b7;box-shadow:inset 0 1px #ffe6be5c,0 0 9px #c2803e70}
.exception-dialog,.task-dialog{border:1px solid #c8975d;background:radial-gradient(circle at 30% 0%,#67243c,#2b111d 58%,#1d0a13);box-shadow:inset 0 1px #ffe2ad24,0 24px 60px #000c,0 0 13px #bc76313b}
@media(prefers-reduced-motion:reduce){.result-tool-button{transition:none}}
/* Move the landing-style controls into the available progress-card space. */
.summary{position:relative}
.summary-actions{display:flex;align-items:center;gap:6px;min-width:0;margin-top:9px}
.summary .summary-actions button{margin:0}
.summary-actions>#start,.summary-actions>#finish,.summary-actions>#submitChanges{min-width:0;flex:0 1 auto;max-width:100%;padding:7px 10px;line-height:1.1}
.summary-actions .result-tools{margin-left:auto;flex:none}
.summary-actions .result-tool-button{min-width:72px}
.summary .control-menu{position:absolute;right:9px;top:calc(100% + 5px);z-index:10;display:flex;flex-direction:column;width:min(230px,calc(100vw - 28px));max-height:65dvh;overflow:auto;padding:6px;border:1px solid #b98853;border-radius:13px;background:linear-gradient(180deg,#2c151c,#150e11);box-shadow:inset 0 1px #ffedbd21,0 12px 28px #000b,0 0 12px #a86a2d3d}
.summary .control-menu[hidden]{display:none}
.summary .control-menu button{flex:none;min-height:43px;margin:0;padding:8px 12px;text-align:left;border:1px solid #8d5d42;border-radius:9px;background:linear-gradient(160deg,#4b1a2a,#240c17);color:#efd7ad;box-shadow:inset 0 1px #ffdeaa17;font-size:.72rem;font-weight:800;letter-spacing:.02em}
.summary .control-menu button[aria-pressed="true"]{border-color:#dcac5bb8;background:linear-gradient(160deg,#64172f,#310b18);color:#e7c47e}
.wine-list{margin-top:8px}
.wine-card{border:1.25px solid transparent;background:linear-gradient(180deg,#281019,#12080d) padding-box,var(--audit-metal-line) border-box;box-shadow:0 8px 18px #0009,inset 0 1px #efd09122,0 0 7px #d6a45b27}
.wine-card.is-correct,.wine-card.is-change,.wine-card.is-mixed,.wine-card.is-unverified{border-color:transparent}
.card-body{background:linear-gradient(180deg,#210d15,#11070c)}
.card-top.has-changed-vintage{align-items:flex-start}
.card-change-state{display:flex;flex:none;flex-direction:column;align-items:center;gap:3px;width:104px;max-width:38%;min-width:0;text-align:center}
.card-change-state .status{max-width:none;white-space:normal;overflow:visible;text-overflow:clip;text-align:center}
.card-change-state .changed-vintage{font-size:1.27rem;line-height:1;color:#ff7a83;text-shadow:0 0 4px #ff536bcc,0 0 11px #ff3557c2,0 0 18px #d91f45a8,0 1px 2px #000d}
.actions button,.actions button:first-child{background:linear-gradient(180deg,#624b3e,#43332b) padding-box,var(--audit-metal-line) border-box}
.actions button.is-selected{position:relative;z-index:1}
.actions button[data-action="correct"].is-selected{border-color:#a8ebba;background:linear-gradient(180deg,#20523a,#103727);color:#ecffe9;box-shadow:inset 0 0 0 1px #d9ffdf70,0 0 0 1px #a8ebbad9,0 0 6px 2px #62d98ad9,0 0 11px 3px #4bb7748c}
.actions button[data-action="change"].is-selected,.actions button[data-action="mixed"].is-selected{border-color:#ffe2a0;background:linear-gradient(180deg,#654b1e,#443011);color:#fff1c9;box-shadow:inset 0 0 0 1px #fff1c47a,0 0 0 1px #ffe2a0e0,0 0 6px 2px #efbf65db,0 0 11px 3px #c9984e94}
.actions button[data-action="unverified"].is-selected{border-color:#ff9fac;background:linear-gradient(180deg,#70303c,#481922);color:#fff0eb;box-shadow:inset 0 0 0 1px #ffd9df70,0 0 0 1px #ff9facdf,0 0 6px 2px #ee7187d9,0 0 11px 3px #ce526d91}
.actions button.is-selected:hover{filter:none}
@media(max-width:350px){.summary-actions>#start,.summary-actions>#finish,.summary-actions>#submitChanges{max-width:130px;padding:5px 6px;font-size:.66rem}.summary-actions .result-tool-button{min-width:62px;padding:0 5px;font-size:.55rem}}
/* Keep audit progress and tools above the moving wine list. */
.summary{position:sticky;top:calc(51px + env(safe-area-inset-top));z-index:12}
main{padding-bottom:calc(50dvh + env(safe-area-inset-bottom))}
.wine-card.is-correct .card-vintage strong{color:#fff2c2;text-shadow:0 0 4px #fff1bd,0 0 10px #f5ca65,0 0 19px #dba442}
.wine-card.is-unverified .card-vintage strong{color:#ffd9d7;text-shadow:0 0 4px #ffe1de,0 0 10px #ff777d,0 0 19px #df354d}
.card-change-state .changed-vintage{color:#ffaf3d;text-shadow:0 0 4px #fff0ac,0 0 10px #ff9a21,0 0 19px #ff6700,0 0 27px #e75000}
.summary-line{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px}
.summary-line .result-tools{margin:0;flex:none}
.summary-line .result-tool-button{min-width:65px;margin:0;padding:0 5px;gap:4px}
.summary-actions[hidden]{display:none}
@media(max-width:350px){.summary-line{gap:5px}.summary-line strong{font-size:.74rem}.summary-line .result-tools{gap:3px}.summary-line .result-tool-button{min-width:54px;height:32px;padding:0 2px;gap:3px;font-size:.48rem}.summary-line .result-tool-button svg{width:15px;height:15px}.summary-line .icon-button{width:26px;height:26px;min-height:26px;font-size:1.2rem}}
@media print{.summary{position:static}}

/* Keep editable text at the iOS focus-zoom threshold. */
.search-shell input,.filter-body input,.filter-body select,#accessForm input,#observed,#note{font-size:16px}
