:root{font-family:DM Sans,Noto Sans TC,sans-serif;color:#202b25;background:#f7f8f5;font-synthesis:none;--paper: #f7f8f5;--ink: #202b25;--forest: #253e32;--muted: #6b756d;--line: #dce1d8;--coral: #c75842;--lime: #e2ecbb;--serif: "Playfair Display", "Noto Sans TC", serif;letter-spacing:0}*{box-sizing:border-box}body{margin:0;background-image:radial-gradient(#4b66500b .7px,transparent .7px);background-size:7px 7px}button,input,textarea{font:inherit;letter-spacing:0}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed}button,a,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #d9684c;outline-offset:4px}button{border:0}a{color:inherit}h1,h2,h3,p{margin:0;overflow-wrap:anywhere}svg{width:20px;height:20px;flex-shrink:0}.tiny{width:13px;height:13px}.muted{color:var(--muted)}.topbar{min-height:100px;max-width:1160px;padding:22px 40px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:17px;font-weight:700}.brand>svg{width:34px;height:34px;color:var(--coral)}.brand small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:4px}.top-actions{display:flex;align-items:center;gap:16px}.prototype-badge{font-size:10px;text-transform:uppercase;border:1px solid var(--line);padding:5px 8px;border-radius:3px}.language{width:44px;height:44px;background:transparent;border:1px solid var(--line);border-radius:50%;font-size:14px}.main-tabs{display:flex;justify-content:center;border-block:1px solid var(--line);position:sticky;top:0;background:#f7f8f5f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20}.main-tabs>button{position:relative;min-height:58px;min-width:150px;background:transparent;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--muted);font-size:13px}.main-tabs>button:after{content:"";position:absolute;bottom:-1px;height:2px;left:18px;right:18px;background:transparent}.main-tabs>button.selected{color:var(--forest);font-weight:700}.main-tabs>button.selected:after{background:var(--forest)}.count{font-size:10px;border-radius:50%;background:var(--coral);color:#fff;width:18px;height:18px;display:grid;place-items:center}main{max-width:1080px;padding:46px 0 116px;margin:auto;min-height:calc(100dvh - 160px)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}.eyebrow{font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;margin-bottom:10px}h1{font-family:var(--serif);font-size:46px;font-weight:500;line-height:1.16}.title-dot{color:var(--coral)}.heading-meta{display:flex;align-items:flex-end;flex-direction:column;gap:15px}.live-state{display:inline-flex;gap:7px;align-items:center;font-size:11px;white-space:nowrap}.live-state>span{width:6px;height:6px;background:#638452;border-radius:50%}.live-state.is-paused>span{background:var(--coral)}.guest-button{background:transparent;display:flex;align-items:center;gap:7px;font-size:12px;min-height:30px;max-width:180px}.guest-button>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guest-button>svg:first-child{width:15px;height:15px}.filters{display:flex;align-items:center;gap:8px;margin-bottom:28px;overflow-x:auto;padding:3px 0 6px}.filters button{flex-shrink:0;border-radius:4px;padding:11px 16px;background:transparent;color:var(--muted);font-size:12px;border:1px solid transparent}.filters button.active{background:var(--forest);color:#fff}.filters button span{font-size:10px;margin-left:9px;opacity:.65}.drink-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 30px}.drink-card{overflow:hidden;border-radius:6px;border:1px solid var(--line);background:var(--paper);animation:appear .5s both;animation-delay:calc(var(--index) * 55ms)}.drink-image{position:relative;padding:0;background:var(--drink-color);display:block;width:100%;aspect-ratio:1.6;overflow:hidden;text-align:left}.drink-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.drink-image:hover img{transform:scale(1.035)}.image-number{position:absolute;top:16px;left:16px;font-size:12px;background:#ffffffed;color:var(--ink);width:31px;height:31px;border-radius:50%;display:grid;place-items:center}.zero-label{position:absolute;top:16px;right:16px;display:flex;align-items:center;gap:6px;background:var(--lime);padding:6px 9px;font-size:11px;border-radius:3px}.zero-label svg{width:13px;height:13px}.drink-copy{padding:23px 24px 20px}.drink-profile{font-size:10px;text-transform:uppercase;color:var(--muted)}.drink-copy h2{font-family:var(--serif);font-size:31px;font-weight:500;margin:7px 0 10px}.drink-copy p{font-size:13px;line-height:1.8;color:#657067;min-height:47px}.drink-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:22px}.icon-button{width:42px;height:42px;border-radius:50%;background:transparent;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon-button:hover{background:#253e320c}.order-button,.primary-button,.secondary-button,.danger-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:4px;padding:11px 17px;font-size:12px;font-weight:600}.order-button{background:var(--lime);color:#2e4026;min-width:134px}.order-button:hover:not(:disabled){background:#d3e3a0}.order-button:disabled{background:#e8ebe5;color:#72786f}.order-button svg{width:17px;height:17px}.primary-button{background:var(--forest);color:#fff}.primary-button:hover{background:#355240}.secondary-button{background:transparent;border:1px solid var(--line)}.danger-button{background:#f5dfda;color:#9a3528}.menu-footer{margin-top:44px;padding-top:22px;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11px}.menu-footer>svg{width:15px;height:15px;color:var(--coral)}.footer-mark{margin-left:auto;font-size:10px}.current-order{display:flex;align-items:center;gap:14px;background:#eaf0e3;border-left:3px solid var(--forest);margin-bottom:24px;padding:16px}.order-symbol{width:42px;height:42px;background:#dae5cf;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.current-order-copy{flex:1;min-width:0}.current-order-copy>small{display:block;font-size:10px;color:#5b6b50}.current-order-copy>small>span{opacity:.7}.current-order-copy>strong{display:block;font-size:16px;margin:4px 0;overflow-wrap:anywhere}.current-order-copy>span{font-size:11px}.warning-inline{color:#9a3528}.making-pulse{width:10px;height:10px;border-radius:50%;background:#64844f;animation:pulse 2s infinite;margin:0 12px}.last-order{padding:13px 0;font-size:12px;display:flex;align-items:center;gap:9px;border-top:1px solid var(--line);margin-bottom:15px}.last-order svg{width:17px;height:17px}.prototype-switcher{position:fixed;z-index:40;bottom:max(18px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);display:flex;gap:5px;align-items:center;background:#202b25;color:#f9faf7;padding:6px 8px;border-radius:8px;box-shadow:0 8px 26px #16211b33}.prototype-switcher>span:not(.switcher-divider){text-align:center;min-width:85px}.prototype-switcher small{font-size:9px;display:block;color:#a7b49d}.prototype-switcher strong{display:block;font-size:11px;margin-top:3px;font-weight:500}.prototype-switcher .icon-button{width:36px;height:36px;border-radius:4px}.prototype-switcher .icon-button:hover{background:#ffffff18}.prototype-switcher .icon-button svg{width:17px;height:17px}.switcher-divider{height:24px;width:1px;background:#ffffff24;margin-inline:5px}.drink-list{border-top:1px solid var(--line)}.drink-row{display:grid;grid-template-columns:35px 120px minmax(0,1fr) auto;align-items:center;gap:25px;padding:24px 0;border-bottom:1px solid var(--line)}.row-number{font-family:var(--serif);font-size:18px;color:var(--muted)}.drink-row .drink-image{width:120px;aspect-ratio:1;border-radius:50%}.drink-row .image-number,.drink-row .zero-label{display:none}.name-link{text-align:left;background:transparent;padding:0;display:block;margin:6px 0}.row-copy h2{font-family:var(--serif);font-size:28px;font-weight:500}.row-copy p{font-size:13px;color:var(--muted);line-height:1.7;max-width:450px}.spotlight{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch;gap:50px;border-top:1px solid var(--line);padding-top:22px}.spotlight-photo .drink-image{aspect-ratio:1;height:100%}.spotlight-copy{display:flex;flex-direction:column;justify-content:center;padding-bottom:12px;min-width:0}.spotlight-navigation{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:30px;font-size:13px;padding-bottom:14px}.spotlight-copy h2{font-family:var(--serif);font-size:48px;font-weight:400;line-height:1.1;margin:12px 0 20px}.spotlight-copy p{font-size:14px;line-height:1.8;color:var(--muted)}.spotlight-ingredients{display:flex;flex-wrap:wrap;margin-top:22px;gap:8px;font-size:10px}.spotlight-ingredients>span{border-bottom:1px solid #bec9b5;padding-bottom:5px}.text-button{display:inline-flex;align-items:center;gap:5px;padding:10px 0;background:transparent;font-size:11px}.text-button svg{width:16px;height:16px}.bar-summary{display:flex;gap:38px;border-block:1px solid var(--line);padding:24px 0;align-items:center;margin-bottom:24px}.bar-summary>div{display:flex;flex-direction:column;gap:4px}.bar-summary>div strong{font-family:var(--serif);font-size:38px;font-weight:400;line-height:1}.bar-summary>div span{font-size:11px;color:var(--muted)}.bar-summary>.live-state{margin-left:auto}.queue-tabs{display:flex;gap:24px;margin-bottom:22px}.queue-tabs button{background:transparent;color:var(--muted);font-size:13px;padding:9px 0;border-bottom:2px solid transparent;display:flex;gap:8px}.queue-tabs button.selected{color:var(--forest);border-color:var(--forest);font-weight:600}.queue-tabs button>span{font-size:10px;background:#e7ebe2;padding:2px 6px;border-radius:3px}.queue-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px}.queue-order{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px 14px;padding:20px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}.queue-order.making{border-top:3px solid #798d56;padding-top:18px}.queue-image img{width:76px;height:90px;object-fit:cover;border-radius:3px}.queue-copy{min-width:0}.queue-meta{display:flex;flex-wrap:wrap;gap:5px;align-items:center;justify-content:space-between;font-size:9px;color:var(--muted);min-height:22px}.meta-dot{margin:0 3px;color:#b6bdb0}.status{font-size:9px;padding:4px 6px;border-radius:3px;background:#e9ece5;color:#66705f}.status.making{background:#e2ebcc;color:#516d2d}.status.served{background:#e2ece4;color:#3e6e4d}.status.cancelled{background:#f2e3de;color:#a8513f}.queue-copy h2{font-family:var(--serif);font-weight:500;font-size:24px;margin:6px 0}.guest-line{display:flex;align-items:center;gap:6px;font-size:12px}.guest-line strong{overflow-wrap:anywhere}.guest-line svg{width:14px;height:14px}.order-recipe{grid-column:1 / -1;border-top:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;font-size:11px;cursor:pointer}summary::-webkit-details-marker{display:none}summary svg{width:15px;height:15px}summary svg:last-child{margin-left:auto}details[open] summary svg:last-child{transform:rotate(180deg)}.recipe-content ul{list-style:none;padding:0;margin:0 0 20px}.recipe-content li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;padding:7px 0;border-bottom:1px solid #dce1d865}.recipe-content li strong{flex-shrink:0;font-weight:500;font-size:11px}.recipe-content h3{font-size:11px;margin-bottom:8px;text-transform:uppercase}.recipe-content p{font-size:12px;color:var(--muted);line-height:1.8;padding-bottom:15px}.queue-actions{display:flex;justify-content:space-between;gap:14px;grid-column:1 / -1}.queue-actions .primary-button{flex:1}.stock-warning{display:flex;gap:8px;padding:10px;font-size:10px;color:#9a402e;background:#fae9df;grid-column:1 / -1;line-height:1.6}.stock-warning svg{width:15px;height:15px}.empty-state{padding:70px 20px;text-align:center;grid-column:1 / -1;color:var(--muted)}.empty-state>svg{width:40px;height:40px;margin-bottom:16px}.empty-state h2{font-family:var(--serif);font-size:24px;font-weight:400}.stock-list{border-top:1px solid var(--line)}.stock-row{display:flex;align-items:center;gap:16px;padding:19px 0;border-bottom:1px solid var(--line)}.ingredient-mark{width:42px;height:42px;background:#e7ecdf;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.stock-row>div:nth-child(2){min-width:0}.stock-row strong{display:block;font-size:14px;font-weight:500;overflow-wrap:anywhere}.stock-row>div>span{display:block;font-size:10px;color:var(--muted);margin-top:5px}.stock-row .toggle{margin-left:auto}.toggle{width:48px;height:44px;border-radius:0;padding:10px 0;background:transparent;position:relative;flex-shrink:0}.toggle:before{content:"";position:absolute;top:9px;right:0;bottom:9px;left:0;background:var(--forest);border-radius:15px}.toggle>span{display:block;width:20px;height:20px;border-radius:50%;background:#fff;position:absolute;top:12px;right:4px;box-shadow:0 1px 3px #0002}.toggle[aria-checked=false]:before{background:#ced3c8}.toggle[aria-checked=false]>span{left:4px;right:auto}.out-of-stock .ingredient-mark{background:#eee8e2;color:#9d7864}.studio-list{border-top:1px solid var(--line)}.studio-row{display:grid;grid-template-columns:95px minmax(0,1fr) 42px;gap:22px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.studio-row img{width:95px;height:115px;object-fit:cover;border-radius:4px}.studio-row h2{font-family:var(--serif);font-size:26px;font-weight:500;margin-bottom:7px}.studio-row p{font-size:12px;color:var(--muted);line-height:1.7;margin-bottom:10px}dialog{padding:0;width:min(94%,480px);max-height:90dvh;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);box-shadow:0 20px 80px #10201533}dialog::backdrop{background:#15241b88;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-close{position:sticky;top:10px;height:0;z-index:2;display:flex;justify-content:flex-end;padding-right:10px}.modal-close .icon-button{background:#f7f8f5ed}.modal-body{padding:40px 30px 30px}.modal-body h2{font-family:var(--serif);font-size:32px;font-weight:500;margin-bottom:22px;padding-right:20px}.modal-body>p{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:25px}.modal-body>h3{font-size:12px;margin-bottom:12px}.modal-body label{display:block;font-size:12px;margin:18px 0 9px}input:not([type=file]),textarea{border:1px solid #cdd5c5;background:#fff;padding:13px;border-radius:4px;color:var(--ink);width:100%;font-size:16px}textarea{resize:vertical}.modal-body>.primary-button,.modal-body>.order-button{width:100%;margin-top:24px}.modal-drink-photo{width:100%;aspect-ratio:1.5;object-fit:cover;display:block}.drink-modal .modal-body{padding-top:24px}.drink-modal h2{margin:8px 0 12px}.edit-preview{width:100%;max-height:180px;object-fit:cover;border-radius:4px}.modal-body .upload-label{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);padding:12px;cursor:pointer}.upload-label input{width:1px;height:1px;position:absolute;opacity:0}.upload-label:focus-within{outline:3px solid var(--coral);outline-offset:3px}.confirmation-actions{display:flex;gap:12px;justify-content:flex-end}.state-inspector{font-size:11px;max-height:55dvh;overflow:auto;background:#e9ede4;padding:16px;border-radius:4px}#toast{position:fixed;z-index:100;bottom:92px;left:50%;transform:translate(-50%,10px);width:max-content;max-width:calc(100% - 32px);background:var(--forest);color:#fff;font-size:12px;border-radius:5px;padding:14px 20px;box-shadow:0 6px 20px #0002;opacity:0;visibility:hidden;transition:opacity .2s,transform .2s;text-align:center}#toast.visible{opacity:1;visibility:visible;transform:translate(-50%)}body[data-variant=B]{--paper: #fafbf8}body[data-variant=C] .filters button.active{background:var(--coral)}@keyframes appear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{50%{opacity:.35}}@media(max-width:1160px){main{margin:0 40px}}@media(max-width:700px){.topbar{padding:18px 22px;min-height:86px}.brand{font-size:14px;gap:9px}.brand>svg{width:28px;height:28px}.brand small{font-size:10px}.top-actions{gap:9px}.prototype-badge{font-size:8px;padding:4px 5px}.language{height:36px;width:36px;font-size:12px}.main-tabs>button{min-width:0;flex:1;min-height:60px;flex-direction:column;gap:5px;font-size:10px}.main-tabs>button>svg{width:18px;height:18px}.main-tabs .count{position:absolute;top:7px;left:calc(50% + 9px);width:15px;height:15px;font-size:9px}main{margin:0 22px;padding-top:30px}.page-heading{margin-bottom:24px;gap:16px;flex-wrap:wrap}.eyebrow{font-size:9px;margin-bottom:9px}h1{font-size:36px}.menu-heading{align-items:flex-start}.menu-heading>div:first-child{flex:1 1 100%}.heading-meta{flex-direction:row;align-items:center;justify-content:space-between;width:100%;gap:16px;margin-top:-6px}.guest-button{max-width:170px}.filters{gap:2px;margin-bottom:18px;margin-right:-6px}.filters button{font-size:10px;padding:10px 11px}.filters button span{margin-left:5px;font-size:9px}.drink-gallery{grid-template-columns:minmax(0,1fr);gap:24px}.drink-image{aspect-ratio:1.55}.drink-copy{padding:20px}.drink-copy h2{font-size:29px}.drink-copy p{min-height:auto;font-size:12px}.drink-profile{font-size:9px}.drink-actions{margin-top:16px}.order-button{min-width:136px}.menu-footer{font-size:10px;margin-top:30px}.current-order{padding:13px 10px 13px 13px;gap:10px}.current-order-copy>strong{font-size:14px}.current-order-copy>span{font-size:10px}.current-order-copy>small{font-size:9px}.order-symbol{width:34px;height:34px}.order-symbol svg{width:17px;height:17px}.drink-row{grid-template-columns:76px minmax(0,1fr);gap:10px 16px;padding:21px 0}.row-number{display:none}.drink-row .drink-image{width:76px;height:76px;grid-row:1;align-self:start}.row-copy h2{font-size:25px}.row-copy p{font-size:11px;line-height:1.7}.drink-row>.order-button{grid-column:2;justify-self:start;min-height:38px;padding:8px 12px;font-size:10px}.spotlight{grid-template-columns:minmax(0,1fr);gap:0;padding-top:0;border-top:0}.spotlight-photo .drink-image{aspect-ratio:1.2}.spotlight-copy{padding-top:12px}.spotlight-navigation{margin-bottom:20px;padding-bottom:8px}.spotlight-copy h2{font-size:42px;margin:9px 0 13px}.spotlight-copy p{font-size:13px}.spotlight-ingredients{margin-top:16px}.spotlight .drink-actions{margin-top:22px}.bar-summary{gap:22px;padding:20px 0}.bar-summary>div strong{font-size:32px}.bar-summary>div span{font-size:10px}.bar-summary>.live-state{font-size:9px;align-self:flex-end;padding-bottom:3px}.page-heading>.secondary-button{min-height:38px;padding:9px 12px;font-size:10px}.page-heading>.secondary-button>svg{width:14px;height:14px}.queue-list{grid-template-columns:minmax(0,1fr);gap:16px}.queue-order{padding:16px;grid-template-columns:64px minmax(0,1fr);gap:12px}.queue-order.making{padding-top:14px}.queue-image img{width:64px;height:82px}.queue-copy h2{font-size:23px;margin-top:5px}.queue-meta{font-size:9px}.stock-row{padding:16px 0}.stock-row strong{font-size:13px}.studio-row{grid-template-columns:65px minmax(0,1fr) 36px;gap:13px;padding:20px 0}.studio-row img{width:65px;height:90px}.studio-row h2{font-size:23px}.studio-row p{font-size:11px}.studio-row>.icon-button{width:36px;height:36px}.modal-body{padding:40px 22px 24px}.modal-body h2{font-size:29px}}@media(max-width:359px){main{margin-inline:16px}.topbar{padding-inline:16px}.prototype-badge{display:none}.filters button{padding-inline:8px}.queue-order{padding:12px;gap:9px}.queue-order.making{padding-top:10px}.bar-summary{gap:16px}.live-state{font-size:10px}.prototype-switcher{gap:2px;padding-inline:5px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.practice,.practice-modal-body{--practice-accent: #356658;--practice-alert: #a13e2d;min-width:0;letter-spacing:0}.practice *,.practice-modal-body *{min-width:0}.practice-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:24px}.practice-heading h1{font-size:34px}.practice h2{font-family:var(--serif);font-size:24px;font-weight:500;line-height:1.35}.practice h3,.practice-modal-body h3{font-family:inherit;font-size:14px;font-weight:600;line-height:1.6}.practice button,.practice-modal-body button{min-height:44px;white-space:normal;overflow-wrap:anywhere}.practice .icon-button,.practice-modal-body .icon-button{width:44px;height:44px}.practice button:disabled,.practice-modal-body button:disabled{opacity:.5}.practice button span,.practice-modal-body button span{overflow-wrap:anywhere}.practice-tabs{display:flex;gap:4px;padding:5px 0;border-block:1px solid var(--line)}.practice-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:10px 20px;font-size:13px;background:transparent;color:var(--muted);border-radius:4px}.practice-tabs button.is-selected{color:var(--forest);background:#e6ecdf;font-weight:600}.practice-state{min-height:30px;padding-block:8px;font-size:11px;color:var(--muted)}.practice-error{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px;border-left:3px solid var(--practice-alert);background:#fae9e3;color:#8d3528;font-size:13px;line-height:1.65;margin-bottom:18px;overflow-wrap:anywhere}.practice-error[hidden]{display:none}.practice-error small{font-family:monospace}.practice-band{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-block:17px}.practice-band>div:first-child{flex:1}.practice-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.practice-meta,.practice-status{color:var(--muted);font-size:11px;line-height:1.7;overflow-wrap:anywhere}.practice-status{display:inline-flex;align-items:center;gap:6px}.practice-status svg{width:16px;height:16px}.practice-status-demonstrated{color:#356658}.practice-status-practising{color:#99513c}.practice-learning{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(0,1.7fr);gap:36px}.practice-syllabus{border-right:1px solid var(--line);padding-right:24px}.practice-stage{padding-block:14px;border-bottom:1px solid var(--line)}.practice-stage h2{font-family:inherit;font-size:12px;font-weight:600;display:flex;align-items:baseline;gap:10px;margin-bottom:8px}.practice-stage h2>span{color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.practice-lesson-link{width:100%;padding:11px 9px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:transparent;text-align:left;border-radius:3px;font-size:12px;line-height:1.7}.practice-lesson-link.is-selected{color:var(--forest);background:#e6ecdf}.practice-lesson-link svg{width:16px;height:16px}.practice-lesson>.practice-band{border-bottom:1px solid var(--line);align-items:flex-start}.practice-prose{padding-block:14px;font-size:13px;line-height:1.85}.practice-prose h3{margin-bottom:7px;color:var(--practice-accent)}.practice-prose p,.practice-prose>div{white-space:pre-wrap}.practice-prose ul,.practice-prose ol{margin:0;padding-left:21px}.practice-prose li+li{margin-top:6px}.practice-prose small{color:var(--muted)}.practice-empty{padding:30px 0;font-size:13px;color:var(--muted);line-height:1.8}.practice-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:12px;align-items:end;padding-block:10px 24px}.practice-session-list{border-top:1px solid var(--line)}.practice-session-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:22px;border-bottom:1px solid var(--line)}.practice-session-row h2{margin-block:4px;font-size:23px}.practice-session-row h2 button{text-align:left;padding:0;background:transparent;font:inherit}.practice-session-row p{font-size:12px;color:var(--muted);line-height:1.7}.practice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 22px;align-items:start}.practice-fields{border:0;margin:0;padding:0}.practice-fields[disabled]{opacity:1}.practice-field{display:flex;flex-direction:column;gap:8px;font-size:12px;line-height:1.7;margin:0}.practice-field>span{overflow-wrap:anywhere}.practice-field small{font-size:10px;color:var(--muted)}.practice-field input,.practice-field select,.practice-field textarea{display:block;width:100%;min-width:0;max-width:100%;padding:11px 12px;font-size:15px;line-height:1.6;border:1px solid #cdd5c5;border-radius:4px;color:var(--ink);background:#fff;font-family:inherit}.practice-field input,.practice-field select{min-height:46px}.practice-field textarea{min-height:106px;resize:vertical}.practice-field input:disabled,.practice-field select:disabled,.practice-field textarea:disabled{color:var(--ink);-webkit-text-fill-color:var(--ink);opacity:1;background:#f0f3ed;border-color:var(--line)}.practice-fields:disabled input,.practice-fields:disabled textarea{background:transparent}.practice-field :focus-visible{outline:3px solid var(--coral);outline-offset:3px}.practice-field input[type=file]{padding:8px;font-size:12px;width:100%;min-width:0;overflow:hidden}.practice-field input[type=file]::file-selector-button{border:1px solid var(--line);background:#edf1e8;color:var(--ink);border-radius:3px;padding:7px 8px;margin-right:8px;font:inherit;cursor:pointer}.practice-editor-heading{padding-top:0}.practice-editor-heading>.practice-tools{justify-content:flex-end}.practice-guidance{border-block:1px solid var(--line);margin-bottom:24px}.practice-guidance summary{font-size:13px;line-height:1.7;padding-block:8px}.practice-attempts{padding-top:24px}.practice-attempt{border-top:1px solid var(--line);padding-bottom:24px;scroll-margin-top:100px}.practice-attempt>.practice-band{padding-block:15px}.practice-attempt>.practice-band h3{flex:1}.practice-attempt .practice-grid{margin-top:18px}.practice-recipe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 22px;margin-top:16px}.practice-recipe-grid>:first-child{grid-column:1 / -1}.practice-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-block:18px}.practice-media{margin-top:16px}.practice-media figure{margin:0 0 12px;width:min(100%,340px)}.practice-media img{display:block;width:100%;height:auto;max-height:300px;object-fit:contain;object-position:left;border-radius:4px;background:#edf1e8}.practice-media figcaption{font-size:10px;color:var(--muted);padding-block:5px}.practice-media-controls{display:flex;align-items:end;flex-wrap:wrap;gap:8px}.practice-media-controls>label{flex:1 1 240px}.practice-media-controls>small{flex:1 0 100%;font-size:11px;color:var(--muted)}.practice-add-attempt{justify-content:flex-start;padding-top:0;margin-bottom:16px}.practice-savebar{justify-content:flex-start;margin-top:18px;border-block:1px solid var(--line)}.practice-savebar>:last-child{margin-left:auto}.practice-skill{border-top:1px solid var(--line);padding-bottom:20px}.practice-skill>.practice-band{align-items:flex-start}.practice-criterion{border-top:1px solid var(--line)}.practice-criterion summary{line-height:1.7;padding-block:10px;font-size:12px}.practice-evidence-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-block:15px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.8}.practice-evidence-row p{white-space:pre-wrap}.practice-evidence-row small{color:var(--muted);font-size:11px}.practice-evidence>h3{padding-top:22px}.practice-link{display:inline-flex;align-items:center;gap:8px;padding:7px 0;background:transparent;color:var(--practice-accent);font-size:12px;text-align:left}.practice-link svg{width:15px;height:15px}.practice-comparison,.practice-coaching{border-top:1px solid var(--line);margin-top:26px;padding-block:20px}.practice-comparison-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.practice-comparison-columns>article+article{border-left:1px solid var(--line);padding-left:24px}.practice-comparison dl{margin-block:12px;font-size:12px;line-height:1.8}.practice-comparison dl>div{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(0,1fr);gap:14px;padding-block:8px;border-bottom:1px solid var(--line)}.practice-comparison dt{color:var(--muted)}.practice-comparison dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.practice-comparison-delta{border-top:1px solid var(--line)}.practice-coaching>h2{margin-bottom:10px}.practice-feedback{border-block:1px solid var(--line);margin-top:18px;padding-bottom:18px}.practice-feedback ul{margin:0;padding-left:21px}.practice-feedback li,.practice-feedback p{font-size:13px;line-height:1.85;white-space:pre-wrap}.practice-feedback li+li{margin-top:10px}.practice-feedback h3{margin-top:18px;color:var(--practice-accent)}.practice-coaching form{margin-top:18px}.practice-checkbox,.practice-modal-body .practice-checkbox{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.8;margin-block:16px;min-height:44px}.practice-checkbox input[type=checkbox],.practice-modal-body .practice-checkbox input[type=checkbox]{width:19px;height:19px;min-width:19px;margin-top:3px;padding:0;accent-color:var(--forest);flex-shrink:0}.practice-checkbox small{display:block;color:var(--muted)}.practice-dialog{width:min(94%,680px)}.practice-modal-body h2{font-size:27px}.practice-modal-body .practice-field{margin-block:14px}.practice-modal-body .practice-field>span{font-size:12px}.practice-dialog .modal-close .icon-button{width:44px;height:44px}.practice-dialog-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:24px}.practice-mapping{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:14px;border-top:1px solid var(--line)}.practice-evidence-choice{border-top:1px solid var(--line);padding-block:10px}.practice-evidence-choice .practice-fields:disabled{opacity:.55}.practice-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:900px){.practice-learning{grid-template-columns:minmax(190px,.8fr) minmax(0,1.6fr);gap:22px}.practice-syllabus{padding-right:16px}.practice-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-filters>button{justify-self:start}}@media(max-width:600px){.practice-heading{align-items:flex-start}.practice-heading h1{font-size:29px}.practice-heading>button{max-width:58%}.practice-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.practice-tabs button{padding:10px 5px;gap:6px;font-size:12px}.practice-tabs svg{width:17px;height:17px}.practice-learning{display:flex;flex-direction:column;gap:20px}.practice-syllabus{border-right:0;border-bottom:1px solid var(--line);padding:0 0 10px;max-height:270px;overflow-y:auto}.practice-lesson>.practice-band{flex-direction:column;align-items:stretch}.practice h2{font-size:22px}.practice-grid,.practice-recipe-grid,.practice-metrics,.practice-mapping{grid-template-columns:minmax(0,1fr);gap:14px}.practice-field input,.practice-field select,.practice-field textarea{font-size:16px}.practice-editor-heading{align-items:flex-start}.practice-editor-heading>.practice-tools{justify-content:flex-start}.practice-savebar{align-items:stretch}.practice-savebar>button{flex:1 1 130px}.practice-savebar>:last-child{margin-left:0}.practice-add-attempt{align-items:stretch}.practice-add-attempt>button{flex:1 1 150px}.practice-comparison-columns{grid-template-columns:minmax(0,1fr);gap:18px}.practice-comparison-columns>article+article{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.practice-modal-body{padding-inline:20px}.practice-modal-body h2{font-size:25px}}.topbar{min-height:90px}.main-tabs>button{min-width:0;flex:1 1 0;max-width:200px;padding-inline:8px}.main-tabs>button span{min-width:0;overflow-wrap:anywhere}@media(max-width:750px){.main-tabs>button{flex-direction:column;gap:5px;font-size:10px;padding:8px 3px}.main-tabs .count{position:absolute;top:5px;right:6px}}.brand small{max-width:220px;overflow-wrap:anywhere}main{padding-bottom:60px}.auth-section{max-width:430px;margin:30px auto 80px}.auth-section h1{font-size:39px;margin-bottom:32px}.auth-section label{display:block;font-size:12px;margin:20px 0 9px}.auth-section .primary-button{width:100%;margin-top:26px}.form-error{color:#a13e2d;background:#f9e8e1;padding:12px;font-size:12px;line-height:1.7;margin-top:16px}.form-error[hidden]{display:none}.site-footer{max-width:1080px;margin:auto;padding:0 0 28px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;color:var(--muted)}.site-footer a{display:inline-flex;gap:6px;align-items:center;text-decoration:none;min-height:44px}.site-footer svg{width:14px;height:14px}.photo-placeholder{display:flex;align-items:center;justify-content:center;background:#e6eddf;width:100%;height:100%;min-height:80px}.photo-placeholder svg{width:44px;height:44px;color:#6d8b63}.drink-gallery>.empty-state{grid-column:1 / -1}.drink-image{background:#e6eddf}.drink-image .photo-placeholder{position:absolute;top:0;right:0;bottom:0;left:0}.studio-row>.photo-placeholder{width:95px;height:115px}.queue-image .photo-placeholder{width:76px;height:90px}.menu-checkbox{font-size:11px;display:inline-flex;align-items:center;gap:7px;cursor:pointer;min-height:32px}.menu-checkbox input,.required-checkbox input{width:17px;height:17px;margin:0;accent-color:var(--forest)}.menu-checkbox input:focus-visible{outline-offset:3px}select{font:inherit;background:#fff;border:1px solid #cdd5c5;border-radius:4px;padding:12px;color:var(--ink);width:100%;font-size:16px;min-width:0}select:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.editor-modal{width:min(94%,600px)}.recipe-edit-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.65fr) 38px;gap:9px;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--line)}.recipe-edit-row select{grid-column:1 / 3}.recipe-edit-row>.icon-button{grid-column:3;grid-row:1;width:38px}.recipe-edit-row>input{grid-column:1;font-size:13px}.recipe-edit-row .required-checkbox{display:flex;align-items:center;gap:6px;margin:0;font-size:11px}.form-section-title{margin:28px 0 16px;font-size:13px}.party-list{border-top:1px solid var(--line)}.party-row{padding:26px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;align-items:center}.party-row>div:first-child{min-width:0}.party-row h2{font-family:var(--serif);font-size:28px;font-weight:500;margin:12px 0 8px}.party-row p{font-size:11px;color:var(--muted)}.party-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;flex-shrink:0}.connection-banner{position:sticky;top:0;z-index:60;background:#f5dfda;color:#913f2d;text-align:center;padding:12px;font-size:12px}.is-saving [data-action=order]{opacity:.6}.modal-drink-photo.photo-placeholder{height:200px}.guest-button>svg:last-child{width:13px;height:13px}.menu-heading{margin-top:10px}button:disabled{opacity:.65}.order-button:disabled{opacity:1}.row-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.stock-actions{margin-left:auto}.stock-row>div:nth-child(2){flex:1}.studio-row{grid-template-columns:95px minmax(0,1fr) auto}.studio-row h2,.party-row h2{overflow-wrap:anywhere}.photo-actions{display:flex;align-items:center;gap:10px;margin-block:12px}.photo-actions .upload-label{flex:1;margin:0;min-width:0}.confirmation-item{font-weight:500;overflow-wrap:anywhere;margin-block:16px 10px}.confirmation-warning{font-size:13px;line-height:1.7;margin-bottom:24px}.confirmation-actions{flex-wrap:wrap}.confirmation-actions button{min-width:0;white-space:normal}.heading-tools{display:flex;gap:4px;flex-shrink:0}#ai-photo{display:block;width:100%;max-width:100%;min-width:0;font-size:13px}.ai-meta,.ai-note{color:var(--muted);font-size:12px;line-height:1.7;margin-block:12px;overflow-wrap:anywhere}.ai-consent{display:flex!important;align-items:flex-start;gap:10px;font-size:12px;line-height:1.7}.ai-consent input,.ai-select input{width:18px;height:18px;flex-shrink:0;accent-color:var(--forest);margin-top:2px}.ai-progress{display:flex;align-items:center;gap:8px;font-size:12px;margin-block:16px}.ai-progress[hidden]{display:none}.ai-progress svg{width:18px;animation:ai-spin 1.5s linear infinite}.ai-stock-row{border:0;border-top:1px solid var(--line);padding-block:20px;min-width:0}.ai-stock-row legend{padding-right:10px;max-width:100%}.ai-select{display:flex!important;align-items:flex-start;gap:8px;margin:0!important}.ai-select span{overflow-wrap:anywhere}.ai-confidence{display:inline-block;font-size:10px;padding:4px 7px;background:#e6eddf;margin-top:8px}.ai-confidence.low{background:#f5dfda;color:#913f2d}.ai-recipe-draft{border-block-start:1px solid var(--line);padding-block:24px}.ai-recipe-draft h3{font-family:var(--serif);font-size:24px;overflow-wrap:anywhere}.ai-recipe-draft>p{font-size:13px;line-height:1.7;margin-block:12px}.draft-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-top:1px solid var(--line);padding-block:14px;font-size:12px}.draft-toolbar>span{margin-right:auto}@keyframes ai-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ai-progress svg{animation:none}}@media(max-width:1160px){.site-footer{margin-inline:40px}}@media(max-width:700px){.brand small{max-width:190px}.topbar{min-height:86px}.top-actions{gap:4px}.top-actions .icon-button{width:36px;height:36px}.auth-section{margin-top:20px}.auth-section h1{font-size:34px}.site-footer{margin-inline:22px}main{padding-bottom:35px}.menu-heading{margin-top:0}.studio-row>.photo-placeholder{width:65px;height:90px}.queue-image .photo-placeholder{width:64px;height:82px}.party-row{flex-direction:column;align-items:stretch;gap:20px}.party-actions{justify-content:flex-start}.party-actions .secondary-button{margin-right:auto}.party-row h2{font-size:26px}.studio-row{grid-template-columns:65px minmax(0,1fr) 42px}.studio-row .row-actions{flex-direction:column}.stock-row{gap:10px}.stock-actions{gap:0}.stock-actions .icon-button{width:36px;height:44px}.stock-actions .toggle{width:42px}}
