@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-cyrillic-ext.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-cyrillic.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-ext.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f3f4f6;--page-end: #f3f4f6;--surface-accent: #111113;--ok-fg: #067647;--ok-bg: #dcfae6;--ok-line: #bbf7d0;--ok-strong: #0f766e;--danger-fg: #b42318;--danger-bg: #fee4e2;--danger-line: #fecdd3;--warn-fg: #b45309;--warn-bg: #fef3c7;--warn-line: #fcd34d;--info-fg: #1d4ed8;--info-bg: #dbeafe;--fg: #111113;--muted: #666a73;--muted-2: #9ca3af;--card: #ffffff;--soft: #f1f2f4;--line: #dcdee3;--black: #111113;--white: #ffffff;--blue: #c1121f;--green: #12b76a;--red: #c1121f;--red-dark: #780000;--red-soft: #fff1f2;--amber: #d97706;--shadow: 0 18px 50px rgba(17, 17, 19, .1);--r-bar: 2px;--r-sm: 6px;--r-md: 10px;--r-pill: 999px;--fs-micro: 11px;--fs-caption: 12px;--fs-small: 13px;--fs-body: 14px;--fs-lead: 16px;--fs-title: 18px;--fs-head: 24px;--fs-display: 32px;--fs-hero: 40px;--fw-regular: 400;--fw-medium: 600;--fw-bold: 800;color-scheme:light dark;font-synthesis:none;text-rendering:geometricPrecision}*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(239,35,60,.2)}html,body,#root{max-width:100%;overflow-x:clip}html{background-color:var(--bg)}body{margin:0;color:var(--fg);background:var(--bg);font-family:Inter,Segoe UI,Verdana,sans-serif}button,input,select,textarea{font:inherit}a,a:visited{color:var(--red)}button{cursor:pointer;color:var(--fg);appearance:none;-webkit-appearance:none;-webkit-text-fill-color:currentColor;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.48}svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}h1,h2,p{margin-top:0}h1{font-weight:var(--fw-bold)}h2,h3,h4,b,strong,th{font-weight:var(--fw-medium)}.app-shell{min-height:100vh;min-height:100dvh;max-width:100vw;overflow-x:clip}.topbar{position:sticky;top:0;z-index:20;height:58px;display:grid;grid-template-columns:minmax(40px,1fr) auto minmax(40px,1fr);align-items:center;padding:8px max(12px,env(safe-area-inset-left));background:#f3f4f6e6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transform:translateZ(0);will-change:transform}.topbar-side{display:flex;align-items:center;gap:6px}.topbar strong{grid-column:2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-body);text-align:center}.page{width:min(100%,460px);max-width:100vw;margin:0 auto;padding:12px 10px 96px;overflow-x:clip}.compact-page{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.builder-page{display:grid;gap:12px}.staff-app-page,.builder-page{padding-top:8px}.builder-page{width:min(100%,430px);padding-inline:8px}.card,.profile-card,.role-card,.metric,.sticky-summary{border:1px solid var(--line);border-radius:var(--r-md);background:#fffffff0;box-shadow:0 1px 1px #10182808}.card{padding:16px;min-width:0}.boot-failure{display:grid;gap:10px}.boot-failure h1,.boot-failure p{margin:0}.hero{min-height:380px;padding:22px;border-radius:var(--r-md);background:var(--surface-accent);color:var(--white);display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow)}.hero h1,.auth-card h1,.profile-card h1,.sticky-summary h1,.desktop-head h1{margin-bottom:10px;font-size:var(--fs-display);line-height:1.02;letter-spacing:0}.hero p,.auth-card p,.profile-card p,.favorite-card p,.warning-card p{color:var(--muted);line-height:1.5}.hero p{color:#ffffffb8}.eyebrow{margin:0 0 7px;color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.08em;text-transform:uppercase}.role-stack,.venue-list,.favorite-list,.selected-list,.form-grid{display:grid;gap:10px;min-width:0}.role-card,.select-card{width:100%;min-width:0;min-height:108px;padding:16px;text-align:left;border:1px solid var(--line);transition:transform .18s ease,border-color .18s ease,background .18s ease}.shift-card h1{margin-bottom:8px;font-size:var(--fs-display);line-height:1.05}.shift-card p{color:var(--muted);overflow-wrap:anywhere}.shift-hero{min-height:210px;padding:16px;border-radius:var(--r-md);color:var(--white);background:var(--surface-accent);display:flex;flex-direction:column;justify-content:space-between}.shift-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}.shift-topline div,.shift-hero-copy{min-width:0}.shift-topline span,.shift-topline strong,.shift-hero-copy span{display:block}.shift-topline span{color:#ffffff9e;font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.07em;text-transform:uppercase}.shift-topline strong{margin-top:4px;font-size:var(--fs-title);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shift-topline button{min-height:38px;padding:0 12px;border:1px solid rgba(255,255,255,.18);border-radius:var(--r-sm);color:var(--white);background:#ffffff14;font-weight:var(--fw-bold);flex:0 0 auto}.shift-hero-copy h1{margin:0;font-size:var(--fs-hero);line-height:1}.shift-hero-copy p{margin:10px 0 0;color:#ffffffad;line-height:1.4;overflow-wrap:anywhere}.shift-actions{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:10px;min-width:0}.shift-primary-action,.shift-secondary-action{position:relative;min-width:0;min-height:154px;padding:16px;border:1px solid var(--line);border-radius:var(--r-md);text-align:left;background:var(--card);box-shadow:0 1px 1px #10182808}.shift-primary-action{color:var(--white);background:var(--red);border-color:var(--red);box-shadow:0 16px 34px #c1121f38}.shift-primary-action span,.shift-primary-action strong,.shift-primary-action small,.shift-secondary-action span,.shift-secondary-action strong,.shift-secondary-action small{display:block;min-width:0;overflow-wrap:anywhere}.shift-primary-action span,.shift-secondary-action span{font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.07em;text-transform:uppercase}.shift-primary-action span,.shift-primary-action small{color:#ffffffb8}.shift-secondary-action span,.shift-secondary-action small{color:var(--muted)}.shift-primary-action strong,.shift-secondary-action strong{margin-top:10px;font-size:var(--fs-head);line-height:1.05}.shift-primary-action small,.shift-secondary-action small{margin-top:12px;line-height:1.35}.shift-primary-action svg{position:absolute;right:14px;bottom:14px;width:24px;height:24px}.last-mix-panel,.mobile-section,.mix-work-card,.mix-status-panel{border:1px solid var(--line);border-radius:var(--r-md);background:#ffffffeb;box-shadow:0 1px 1px #10182808}.last-mix-panel{padding:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.last-mix-panel span,.last-mix-panel strong,.last-mix-panel small{display:block}.last-mix-panel span{color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.07em;text-transform:uppercase}.last-mix-panel strong{margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.last-mix-panel small{margin-top:5px;color:var(--muted)}.last-mix-panel button{min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--fg);background:var(--card);font-weight:var(--fw-bold)}.mobile-section{padding:14px}.preset-rail{display:grid;grid-template-columns:1fr;gap:10px;width:100%;max-width:100%;min-width:0;overflow:visible;padding:0}.preset-rail .create-preset-card,.preset-rail .preset-card{width:100%;min-width:0}.preset-rail .preset-card{min-height:0;grid-template-columns:minmax(0,1fr)}.preset-rail .create-preset-card strong,.preset-rail .create-preset-card span,.preset-rail .preset-card strong,.preset-rail .preset-card span{display:block;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.preset-rail .create-preset-card{display:grid;gap:5px;min-height:74px;align-content:center}.preset-rail .preset-card>button:first-child{display:grid;gap:5px}.preset-rail .preset-actions{display:grid;grid-template-columns:1fr 1fr}.preset-rail .preset-rename,.preset-rail .preset-delete{width:100%}.shift-status{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.venue-switch,.venue-notice{width:100%;min-height:46px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card)}.venue-switch{margin-top:12px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;color:var(--fg);font-weight:var(--fw-bold)}.venue-switch span{min-width:0}.venue-notice{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--soft);overflow:hidden}.venue-notice div{min-width:0}.venue-notice span,.venue-notice strong{display:block}.venue-notice span{color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.06em}.venue-notice strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.venue-notice button{max-width:104px;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--fg);background:var(--card);font-weight:var(--fw-bold);flex:0 0 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shift-status span{min-height:30px;padding:7px 10px;border-radius:var(--r-pill);color:var(--muted);background:var(--soft);font-size:var(--fs-caption);font-weight:var(--fw-medium)}.flow-choice{display:grid;gap:10px}.flow-card{width:100%;min-width:0;min-height:132px;padding:16px;border:1px solid var(--line);border-radius:var(--r-md);text-align:left;background:var(--card);box-shadow:0 1px 1px #10182808}.flow-card.primary-flow{color:var(--white);background:var(--surface-accent);border-color:var(--surface-accent)}.flow-card span,.flow-card strong,.flow-card small{display:block}.flow-card span{color:var(--muted);font-size:var(--fs-caption);font-weight:var(--fw-bold)}.flow-card.primary-flow span,.flow-card.primary-flow small{color:#ffffffad}.flow-card strong{margin-top:8px;font-size:var(--fs-head);line-height:1.1}.flow-card small{margin-top:10px;color:var(--muted);line-height:1.4}.preset-list,.staff-history{display:grid;gap:8px}.preset-card,.create-preset-card,.staff-history article{width:100%;min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.preset-card{display:grid;gap:8px}.preset-card>button:first-child,.create-preset-card,.preset-rename{width:100%;border:0;text-align:left;padding:0}.create-preset-card{border:1px dashed var(--muted-2);background:var(--soft);padding:12px}.preset-list strong,.preset-list span,.staff-history strong,.staff-history span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preset-list span,.staff-history span{margin-top:5px;color:var(--muted);font-size:var(--fs-caption)}.staff-history article{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:10px}.staff-history-actions{display:flex;flex-wrap:wrap;gap:8px}.staff-history button,.preset-rename,.preset-delete,.inline-edit button,.history-preset-form button{min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--fg);background:var(--card);font-weight:var(--fw-bold)}.preset-actions{display:flex;flex-wrap:wrap;gap:8px}.preset-rename,.preset-delete{width:max-content;color:var(--fg);text-align:center}.preset-delete{color:var(--red);border-color:var(--danger-line);background:var(--red-soft)}.inline-edit,.history-preset-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;min-width:0}.history-preset-form{grid-column:1 / -1}.role-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px}.role-card>div{min-width:0}.role-card:hover,.select-card:hover{transform:translateY(-2px);border-color:var(--muted-2)}.role-card.featured{color:var(--white);background:var(--surface-accent);border-color:var(--surface-accent)}.role-card span,.select-card strong{display:block;font-size:var(--fs-title);font-weight:var(--fw-bold)}.role-card p{margin-top:8px;margin-bottom:0;color:var(--muted)}.role-card.featured p{color:#ffffffad}.role-card-link{color:inherit;text-decoration:none;cursor:pointer}.role-card-chevron{font-size:var(--fs-head);line-height:1;color:var(--muted)}.role-card i{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--fg);background:var(--soft);flex:0 0 auto}.role-card.featured i{color:var(--white);background:#ffffff1a;border-color:#ffffff2e}.auth-card{margin-top:12px;display:grid;gap:12px}.auth-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.auth-mode-tabs button{min-height:40px;border:0;border-radius:var(--r-sm);color:var(--muted);background:transparent;font-weight:var(--fw-bold)}.auth-mode-tabs button.active{color:var(--fg);background:var(--card);box-shadow:0 1px 2px #1018280f}.auth-submit,.onboarding-submit{width:100%;margin-top:4px}.auth-passkey-btn{width:100%;margin-top:10px;color:var(--red)}.passkey-note{color:var(--muted);font-size:var(--fs-body);line-height:1.5;margin:0 0 14px}.passkey-add-btn{width:100%;margin-top:14px}.onboarding-submit{display:flex;align-items:center;justify-content:center;margin-top:16px}.auth-step-note{margin-bottom:2px}.auth-telegram-note{margin:12px 0 0;color:var(--muted);font-size:var(--fs-body);text-align:center}.auth-telegram-note a{color:var(--red);font-weight:var(--fw-medium)}.auth-legal-note{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--fs-body);line-height:1.5;text-align:center}.auth-legal-note a{color:var(--muted);text-decoration:underline}.license-pill{width:fit-content;max-width:100%;min-height:32px;padding:8px 10px;border-radius:var(--r-pill);color:var(--muted);background:var(--soft);font-size:var(--fs-caption);font-weight:var(--fw-bold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sms-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.field,.search-field{display:grid;gap:7px}.field span{color:var(--muted);font-size:var(--fs-caption);font-weight:var(--fw-medium)}.field-hint{color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-regular)}.field-check-row{display:flex;align-items:center;gap:8px}.field-check-row input[type=checkbox]{width:auto;margin:0;flex:none}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--fg);background:var(--card);outline:none;accent-color:var(--red)}input,select{height:44px;padding:0 12px}.unit-field>div{position:relative;min-width:0}.unit-field input{padding-right:38px}.unit-field b{position:absolute;right:13px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:var(--fs-body);pointer-events:none}textarea{min-height:92px;resize:vertical;padding:12px}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #c1121f24}.primary-btn,.secondary-btn,.text-btn,.icon-btn{min-height:42px;border-radius:var(--r-sm);font-weight:var(--fw-medium);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.primary-btn{border:1px solid var(--red);color:var(--white);background:var(--red)}.secondary-btn,.icon-btn{border:1px solid var(--line);color:var(--fg);background:var(--card)}.secondary-btn.small{min-height:36px;padding:0 12px}.text-btn{min-height:34px;padding:0;border:0;color:var(--muted);background:transparent}.icon-btn{width:42px;display:grid;place-items:center}.icon-btn.danger{color:var(--red)}.profile-card{padding:18px;display:flex;align-items:end;justify-content:space-between;gap:14px}.profile-card h1{font-size:var(--fs-hero)}.share-card{min-height:calc(100dvh - 140px);padding:18px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);display:grid;align-content:center;justify-items:center;gap:16px;text-align:center;box-shadow:var(--shadow)}.share-card h1{margin:0;font-size:var(--fs-hero);line-height:1}.share-card p{max-width:310px;margin:0;color:var(--muted);line-height:1.5}.fake-qr{width:min(78vw,292px);aspect-ratio:1;padding:14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.fake-qr span{border-radius:4px;background:#eef2f6}.fake-qr span.dark{background:var(--black)}.fake-qr span:nth-child(1),.fake-qr span:nth-child(2),.fake-qr span:nth-child(3),.fake-qr span:nth-child(8),.fake-qr span:nth-child(15),.fake-qr span:nth-child(43),.fake-qr span:nth-child(44),.fake-qr span:nth-child(45){background:var(--black)}.share-link{width:100%;padding:12px;border-radius:var(--r-md);color:var(--fg);background:var(--soft);font-weight:var(--fw-bold);overflow-wrap:anywhere}.qr-box{width:76px;height:76px;border-radius:var(--r-md);display:grid;place-items:center;color:var(--white);background:var(--surface-accent);font-weight:var(--fw-bold)}.metric-row,.metric-grid,.action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.guest-app-page{padding-top:8px}.guest-hero{min-height:156px;padding:18px;border-radius:var(--r-md);color:var(--white);background:var(--surface-accent);display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:0 22px 46px #11111333;overflow:visible}.guest-hero div{min-width:0}.guest-hero .eyebrow,.guest-hero p{color:#ffffffad}.guest-hero .eyebrow{margin-bottom:6px;line-height:1.2}.guest-hero h1{margin:0 0 12px;font-size:var(--fs-hero);line-height:1.04}.guest-hero p{margin-bottom:0;line-height:1.4;overflow-wrap:anywhere}.guest-qr-button{width:74px;height:74px;border:1px solid rgba(255,255,255,.18);border-radius:var(--r-md);color:var(--white);background:#ffffff1a;font-weight:var(--fw-bold);flex:0 0 auto}.guest-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.guest-actions{display:grid;grid-template-columns:1.2fr .8fr;gap:8px}.guest-actions .primary-btn,.guest-actions .secondary-btn{min-height:52px}.action-grid{grid-template-columns:1fr 1fr}.action-grid .primary-btn,.action-grid .secondary-btn{min-height:50px}.metric{padding:13px}.metric span,.metric strong{display:block}.metric span{color:var(--muted);font-size:var(--fs-caption)}.metric strong{margin-top:8px;font-size:var(--fs-head)}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;min-width:0;flex-wrap:wrap}.section-title>*{min-width:0}.section-title h2{margin-bottom:0;font-size:var(--fs-title)}.section-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;flex-wrap:wrap}.badge,.status,.warn-pill{display:inline-grid;place-items:center;min-height:28px;padding:0 9px;border-radius:var(--r-pill);font-size:var(--fs-caption);font-weight:var(--fw-bold);line-height:1.15;text-align:center;white-space:normal}.badge{color:var(--muted);background:var(--soft)}.status.good{color:var(--ok-fg);background:var(--ok-bg)}.status.bad,.warn-pill{color:var(--danger-fg);background:var(--danger-bg)}.select-card{position:relative;border-radius:var(--r-md);background:var(--card)}.select-card span,.select-card small{display:block;margin-top:5px;color:var(--muted)}.select-card.active{border-color:var(--red);background:var(--red-soft);box-shadow:0 0 0 3px #c1121f1f}.select-card b{position:absolute;top:12px;right:12px;min-height:26px;padding:6px 8px;border-radius:var(--r-pill);color:var(--white);background:var(--red);font-size:var(--fs-micro);line-height:1}.venue-start{width:100%;margin-top:14px}.segmented-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.segmented-tabs button{min-height:40px;border:0;border-radius:var(--r-sm);color:var(--muted);background:transparent;font-weight:var(--fw-bold)}.segmented-tabs button.active{color:var(--fg);background:var(--card);box-shadow:0 1px 2px #1018280f}.timeline{display:grid;gap:12px}.timeline-item{display:block}.mix-card{display:grid;gap:12px}.mix-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;min-width:0}.mix-card-title{min-width:0}.mix-card h2{display:-webkit-box;min-height:42px;margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:var(--fs-lead);line-height:1.22}.mix-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.mix-card-comment{min-height:22px;margin:0;color:var(--fg);line-height:1.38}.mix-tags{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,max-content));gap:6px;align-items:start;min-height:31px}.mix-tags span{min-width:0;padding:6px 8px;border-radius:var(--r-pill);color:var(--muted);background:var(--soft);font-size:var(--fs-caption);font-weight:var(--fw-medium);white-space:nowrap}.mix-tags span.missing{color:var(--danger-fg);background:var(--danger-bg)}.mix-warning{margin:0 0 10px;padding:10px 12px;border-radius:var(--r-md);color:var(--danger-fg);background:var(--danger-bg);font-size:var(--fs-small);line-height:1.35}.mix-warning.neutral{color:var(--muted);background:var(--soft)}.favorite-btn{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;color:var(--muted);background:var(--soft);display:grid;place-items:center;padding:0;line-height:0}.favorite-btn svg{width:17px;height:17px;transform:translateY(-.5px)}.favorite-btn.active{color:var(--red);background:var(--red-soft);border-color:var(--danger-line)}.favorite-card{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:stretch;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.favorite-card .secondary-btn{width:100%}.favorite-card p{margin:5px 0 0;font-size:var(--fs-small)}.nfc-card{display:grid;gap:12px}.nfc-card h2{margin-bottom:6px;font-size:var(--fs-title)}.nfc-card p{margin-bottom:0;color:var(--muted);line-height:1.45}.nfc-scan-card,.nfc-bind-card{display:grid;gap:12px}.nfc-scan-card h1{margin-bottom:0;font-size:var(--fs-display);line-height:1.05}.nfc-link-box{padding:12px;border:1px solid var(--line);border-radius:var(--r-md);color:var(--muted);background:var(--soft);font-weight:var(--fw-bold);overflow-wrap:anywhere}.nfc-state{display:grid;gap:6px;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.nfc-state strong,.nfc-state span{display:block}.nfc-state span{color:var(--muted);line-height:1.4}.nfc-state.warning{border-color:var(--warn-line);background:var(--warn-bg)}.nfc-state.warning strong{color:var(--warn-fg)}.nfc-state.success{border-color:var(--ok-line);background:var(--ok-bg)}.nfc-state.success strong{color:var(--ok-fg)}.nfc-bind-card .profile-card{box-shadow:none}.guest-find-card{display:grid;gap:12px}.guest-find-card h1{margin-bottom:0;font-size:var(--fs-display);line-height:1.06}.guest-find-card p{margin-bottom:0;color:var(--muted);line-height:1.45}.guest-open-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sticky-summary{position:sticky;top:70px;z-index:10;padding:12px;display:flex;justify-content:space-between;gap:12px;align-items:center;min-width:0}.sticky-summary>div:first-child{min-width:0}.sticky-summary h1{margin:0;font-size:var(--fs-head)}.mix-status-panel{position:sticky;top:66px;z-index:10;padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 60px;gap:12px;align-items:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:hidden}.mix-status-panel>div:first-child{min-width:0}.mix-status-panel h1{margin:0;font-size:var(--fs-display);line-height:1.02;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mix-status-panel>div:first-child>span{display:block;margin-top:7px;color:var(--muted);font-size:var(--fs-small);font-weight:var(--fw-medium)}.mix-work-card{padding:14px;overflow:hidden}.composition-card{background:var(--card)}.builder-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;min-width:0}.builder-section-head>div{min-width:0}.builder-section-head h2{margin:0;font-size:var(--fs-title);line-height:1.15}.builder-section-head .status{flex:0 0 auto}.warning-card{border-color:var(--danger-line);background:var(--red-soft)}.missing-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--danger-line);min-width:0}.missing-row span{min-width:0;overflow-wrap:anywhere}.missing-row button{min-height:32px;border:0;color:var(--red);background:transparent;font-weight:var(--fw-bold)}.selected-list{display:grid;gap:8px}.preset-form{display:grid;gap:10px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.unallocated-note{display:grid;gap:5px;margin-top:12px;padding:12px;border:1px dashed var(--line);border-radius:var(--r-md);background:var(--soft)}.unallocated-note span{color:var(--muted);line-height:1.4;font-size:var(--fs-small)}.preset-form>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.picker-preset-form{margin-top:10px;border-color:#c1121f2e;background:#ffffffb8}.picker-preset-form p{margin:0;color:var(--muted);font-size:var(--fs-small);line-height:1.4}.empty-state{margin:0;padding:16px;border:1px dashed var(--line);border-radius:var(--r-md);color:var(--muted);background:var(--soft);line-height:1.45}.mix-empty-state{display:grid;gap:8px;padding:18px;border:1px dashed var(--line);border-radius:var(--r-md);color:var(--muted);background:var(--soft)}.mix-empty-state strong,.mix-empty-state span{display:block}.mix-empty-state strong{color:var(--fg);font-size:var(--fs-title)}.mix-empty-state span{line-height:1.45}.mix-empty-state .primary-btn{margin-top:6px;min-height:50px}.builder-inline-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.builder-inline-actions .secondary-btn{min-height:46px}.quick-start-card{display:grid;gap:12px}.quick-start-grid{display:grid;gap:8px}.quick-start-grid button{min-width:0;min-height:62px;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);text-align:left;background:var(--soft)}.quick-start-grid strong,.quick-start-grid span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-start-grid span{margin-top:5px;color:var(--muted);font-size:var(--fs-small)}.comment-card textarea{min-height:78px}.picker-comment-card{margin-top:12px}.selected-flavor{display:grid;grid-template-columns:minmax(0,1fr) 58px 42px;grid-template-areas:"meta percent remove";gap:8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft);min-width:0}.selected-flavor>*{min-width:0}.selected-flavor>div{grid-area:meta}.selected-flavor span,.flavor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}.flavor-grid span{display:block;color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-medium)}.selected-flavor strong,.flavor-grid strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flavor-grid .flavor-tags{display:block;margin-top:3px;color:var(--muted-2);font-size:var(--fs-micro);font-weight:var(--fw-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-flavor output{grid-area:percent;display:grid;place-items:center;min-height:32px;border-radius:var(--r-pill);color:var(--red);background:var(--red-soft);border:1px solid rgba(193,18,31,.18);font-weight:var(--fw-bold);text-align:center}.selected-flavor .icon-btn{grid-area:remove}.search-field{position:relative;margin-bottom:12px;min-width:0}.picker-search-row{display:flex;align-items:stretch;gap:8px;margin-bottom:12px}.picker-search-row .search-field{flex:1;margin-bottom:0}.catalog-refresh-btn{flex:none;display:grid;place-items:center;width:44px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);color:var(--muted);cursor:pointer}.catalog-refresh-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.catalog-refresh-btn:active{transform:scale(.94)}.catalog-refresh-btn:disabled{opacity:.5;cursor:default}.search-field svg{position:absolute;left:12px;bottom:13px;color:var(--muted)}.search-field input{padding-left:38px}.chip-row{display:flex;gap:8px;overflow-x:auto;max-width:100%;min-width:0;padding-bottom:8px;margin-bottom:10px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.chip-row button{min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-pill);color:var(--muted);background:var(--card);font-weight:var(--fw-medium);white-space:nowrap}.chip-row button.active{color:var(--white);background:var(--red);border-color:var(--red);box-shadow:0 0 0 3px #c1121f29}.chip-row-lines{margin-top:-4px;padding-left:10px;border-left:2px solid var(--line)}.chip-row-lines button{min-height:30px;padding:0 10px;font-size:.82rem;font-weight:var(--fw-medium)}.staff-tools{display:grid;gap:12px;margin-bottom:12px}.quick-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.quick-title span{color:var(--muted);font-size:var(--fs-caption);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.06em}.flavor-grid button{min-width:0;min-height:78px;padding:11px;border:1px solid var(--line);border-radius:var(--r-md);text-align:left;background:var(--card)}.flavor-grid button.chosen{border-color:var(--red);background:var(--red-soft)}.flavor-grid button.chosen small{color:var(--red);font-weight:var(--fw-bold)}.flavor-grid small{display:block;margin-top:5px;color:var(--muted)}.catalog-hint{margin:10px 0 0;padding:10px 12px;border-radius:var(--r-md);color:var(--muted);background:var(--soft);font-size:var(--fs-small);line-height:1.35}.picker-page-mode{padding-bottom:96px}.picker-sticky-head{position:sticky;top:58px;z-index:12;background:#f3f4f6e6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.picker-page-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0}.picker-page-head .secondary-btn{min-height:40px;padding:0 12px;border-radius:var(--r-sm)}.picker-page-head h1{margin:0;font-size:var(--fs-head);line-height:1.05}.picker-page-head span{display:block;margin-top:5px;color:var(--muted);font-size:var(--fs-small);font-weight:var(--fw-medium)}.picker-page-content{display:grid;gap:12px;padding-bottom:12px}.desktop-hidden{display:none}.picker-tools{display:grid;gap:12px}.picker-selected-strip{min-width:0;padding:10px;border:1px solid rgba(193,18,31,.18);border-radius:var(--r-md);background:var(--red-soft)}.picker-selected-strip .quick-title{margin-bottom:7px}.picker-selected-strip .quick-title b{color:var(--red);font-size:var(--fs-caption);font-weight:var(--fw-bold)}.picker-selected-list{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.picker-selected-chip{flex:0 0 auto;display:grid;grid-template-columns:minmax(0,1fr) 32px;grid-template-areas:"meta remove" "range range";align-items:center;gap:8px;width:min(240px,74vw);min-height:82px;padding:8px 8px 8px 10px;border:1px solid rgba(193,18,31,.18);border-radius:var(--r-md);background:var(--card);box-shadow:0 8px 20px #1419230f}.picker-selected-chip>div{grid-area:meta;min-width:0}.picker-selected-chip span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-selected-chip strong{display:flex;align-items:baseline;gap:6px;color:var(--fg);font-size:var(--fs-small);font-weight:var(--fw-bold)}.picker-selected-chip .chip-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-selected-chip .chip-pct{flex:0 0 auto;margin-left:auto;padding:1px 7px;border-radius:var(--r-pill);color:var(--red);background:var(--red-soft);font-size:var(--fs-caption);font-weight:var(--fw-bold)}.picker-selected-chip span{margin-top:3px;color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-medium)}.picker-selected-chip input[type=range]{grid-area:range;height:28px;padding:0;min-width:0;accent-color:var(--red)}.picker-selected-chip button{grid-area:remove;display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(193,18,31,.18);border-radius:var(--r-pill);color:var(--red);background:var(--red-soft)}.picker-flavor-grid{padding-bottom:10px}.bottom-bar{position:fixed;left:50%;width:min(100%,460px);max-width:100vw;transform:translate(-50%);bottom:var(--kb-inset, 0px);z-index:20;display:grid;grid-template-columns:.8fr 1.2fr;gap:10px;padding:12px;margin:0;border-top:1px solid var(--line);background:#f6f7f9e6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.desktop-page{min-height:calc(100vh - 58px);display:grid;grid-template-columns:232px minmax(0,1fr)}.owner-nav{min-height:calc(100vh - 58px);padding:20px 14px;border-right:1px solid var(--line);background:#ffffffb8;display:grid;align-content:start;gap:8px}.owner-nav strong{margin:0 0 20px 10px;font-size:var(--fs-head)}.owner-nav button{min-height:42px;border:0;border-radius:var(--r-sm);text-align:left;color:var(--muted);background:transparent;font-weight:var(--fw-bold);padding:0 12px}.owner-nav button.active,.owner-nav button:hover{color:var(--fg);background:var(--soft)}.desktop-content{width:min(1180px,calc(100% - 36px));margin:0 auto;padding:30px 0 60px;display:flex;flex-direction:column;gap:16px}.desktop-content>*,.owner-tab-content>*{margin-top:0;margin-bottom:0}.desktop-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.desktop-head h1{margin:0}.dashboard-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:12px;margin-top:12px}.wide-card{grid-column:1 / -1}.bars{height:270px;display:grid;grid-template-columns:repeat(7,1fr);gap:10px;align-items:end}.bars span{height:var(--h);border-radius:var(--r-sm) var(--r-sm) 0 0;background:var(--red)}.rank{display:grid;gap:7px;margin:14px 0}.rank span{font-weight:var(--fw-bold)}.rank b{min-width:54px;padding:8px 10px;border-radius:var(--r-sm);color:var(--muted);background:var(--soft)}.matrix-table{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.matrix-table button{min-height:88px;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);text-align:left;background:var(--card)}.matrix-table button.enabled{border-color:var(--red);background:var(--red-soft)}.matrix-table span,.matrix-table small{display:block;color:var(--muted);font-size:var(--fs-caption)}.matrix-table strong{display:block;margin:5px 0}.owner-management{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}.owner-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:12px;align-items:start}.owner-grid-main,.owner-grid-side{display:grid;gap:12px;align-content:start}@media(max-width:820px){.owner-grid{grid-template-columns:1fr}}.venue-breakdown{display:grid;gap:12px}.venue-breakdown .muted{color:var(--muted);margin:0 0 8px;font-size:var(--fs-small)}.owner-workspace-note,.owner-venue-switcher{margin-bottom:12px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.owner-workspace-note strong,.owner-workspace-note span,.owner-venue-switcher>span{display:block}.owner-workspace-note span{margin-top:5px;color:var(--muted);line-height:1.45}.owner-venue-switcher{display:flex;align-items:center;justify-content:space-between;gap:16px}.owner-venue-switcher>span{color:var(--muted);font-size:var(--fs-caption);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.06em}.owner-venue-switcher div{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.owner-venue-switcher button{min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-pill);color:var(--fg);background:var(--card);font-weight:var(--fw-bold)}.owner-venue-switcher button.active{color:var(--white);background:var(--red);border-color:var(--red)}.owner-management.lists{align-items:start}.owner-form-action{width:100%;margin-top:12px}.venue-checks{display:grid;gap:8px;margin-top:12px}.venue-checks>span{color:var(--muted);font-size:var(--fs-caption);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.06em}.venue-checks label{min-height:38px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--r-sm);display:flex;align-items:center;gap:8px;background:var(--soft);font-weight:var(--fw-medium)}.venue-checks input{width:18px;height:18px;accent-color:var(--red);flex:0 0 auto}.venue-checks.compact{margin-top:0;grid-template-columns:repeat(2,minmax(0,1fr))}.venue-checks.compact label{min-height:44px;justify-content:flex-start}.owner-list,.employee-list{display:grid;gap:8px}.owner-list article,.employee-list article{min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.owner-list strong,.owner-list span,.owner-list small,.employee-list strong,.employee-list span{display:block}.owner-list span,.owner-list small,.employee-list span{margin-top:5px;color:var(--muted)}.employee-list article{display:grid;gap:10px}.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.price-card{display:grid;gap:10px}.price-card strong{font-size:var(--fs-head)}.price-card small{color:var(--muted)}.price-date{min-width:220px}.current-price{padding:12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.current-price span,.current-price strong,.current-price small{display:block}.current-price span{color:var(--muted);font-size:var(--fs-caption);font-weight:var(--fw-bold)}.current-price strong{margin-top:6px}.price-period-list{display:grid;gap:6px}.price-period-list p{margin:0;padding:9px 10px;border:1px solid var(--line);border-radius:var(--r-sm);display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;background:var(--card)}.price-period-list span{color:var(--muted);font-size:var(--fs-caption)}.price-new-period{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.price-new-period button{grid-column:1 / -1}.toast{position:fixed;left:50%;bottom:calc(22px + var(--kb-inset, 0px));z-index:50;transform:translate(-50%);display:flex;align-items:center;gap:8px;width:max-content;max-width:min(440px,calc(100vw - 32px));padding:11px 16px;border-radius:var(--r-md);font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:1.35;color:var(--fg);background:var(--card);box-shadow:0 10px 30px #00000038,inset 0 0 0 1px var(--line);animation:toastIn .22s ease both}.toast svg{flex:none;width:18px;height:18px;fill:none;stroke:var(--green);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.toast-error svg{stroke:var(--red);stroke-width:2.4}.toast span{min-width:0;overflow-wrap:anywhere}html:not(.kb-open) body:has(.bottom-tabs) .toast{bottom:calc(84px + env(safe-area-inset-bottom))}html:not(.kb-open) body:has(.bottom-tabs .guest-fab) .toast{bottom:calc(126px + env(safe-area-inset-bottom))}body:has(.bottom-bar) .toast{bottom:calc(84px + var(--kb-inset, 0px))}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,8px)}}@media(max-width:820px){.desktop-page{display:block}.owner-nav{min-height:auto;grid-template-columns:repeat(4,max-content);overflow-x:auto;border-right:0;border-bottom:1px solid var(--line)}.owner-nav strong{display:none}.desktop-content{width:min(100%,480px);padding:14px 12px 92px}.desktop-head{display:grid;align-items:stretch}.metric-grid,.dashboard-grid,.owner-management,.matrix-table,.price-grid{grid-template-columns:1fr}.owner-venue-switcher{display:grid}.owner-venue-switcher div{justify-content:flex-start}.price-new-period,.venue-checks.compact{grid-template-columns:1fr}}@media(max-width:560px){.builder-page .venue-notice{border-radius:var(--r-md)}.builder-page .venue-notice button{max-width:74px}.mix-status-panel h1{font-size:var(--fs-head)}.mix-work-card{padding:13px;border-radius:var(--r-md)}.builder-section-head{display:grid;gap:8px}.builder-section-head .status{width:fit-content}.builder-inline-actions{grid-template-columns:1fr}.picker-sticky-head{top:54px}.chip-row{margin-inline:-2px;padding-inline:2px}}@media(max-width:720px){.shift-actions{grid-template-columns:1fr}.shift-primary-action,.shift-secondary-action{min-height:112px}}@media(max-width:430px){.topbar{height:54px}.page{padding-inline:8px}.hero{min-height:320px;padding:18px}.shift-hero,.guest-hero{min-height:148px;border-radius:var(--r-md)}.shift-hero-copy h1{font-size:var(--fs-display)}.guest-hero h1{font-size:var(--fs-hero);line-height:1.06}.guest-qr-button{width:64px;height:64px}.shift-primary-action,.shift-secondary-action{min-height:116px}.guest-actions{grid-template-columns:1fr}.hero h1,.auth-card h1,.desktop-head h1{font-size:var(--fs-display)}.profile-card{padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 58px;align-items:start}.profile-card h1{font-size:var(--fs-display);line-height:1.05}.profile-card p{overflow-wrap:anywhere}.qr-box{width:58px;height:58px;border-radius:var(--r-sm)}.metric-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.metric{padding:10px 8px}.metric strong{font-size:var(--fs-title)}.action-grid{grid-template-columns:1fr}.section-title{align-items:flex-start}.sticky-summary{top:62px;align-items:center}.sticky-summary h1{font-size:var(--fs-head)}.selected-flavor{grid-template-columns:minmax(0,1fr) 44px 42px}.flavor-grid button{min-height:68px}.bottom-bar{width:100%;grid-template-columns:.7fr 1.3fr;padding:10px 8px max(10px,env(safe-area-inset-bottom))}}@media(prefers-color-scheme:dark){:root{--bg: #0d0d0f;--page-end: #0d0d0f;--fg: #f4f4f5;--muted: #a1a1aa;--muted-2: #71717a;--card: #17171a;--soft: #222226;--line: #303035;--black: #050506;--surface-accent: #24161a;--ok-fg: #86efac;--ok-bg: rgba(18, 183, 106, .16);--ok-line: rgba(18, 183, 106, .36);--ok-strong: #064e3b;--danger-fg: #ffb4bd;--danger-bg: rgba(239, 35, 60, .14);--danger-line: rgba(239, 35, 60, .34);--warn-fg: #ffd479;--warn-bg: rgba(217, 119, 6, .2);--warn-line: rgba(217, 119, 6, .42);--info-fg: #93c5fd;--info-bg: rgba(57, 135, 229, .18);--white: #ffffff;--blue: #ef233c;--red: #ef233c;--red-dark: #ff5a66;--red-soft: rgba(239, 35, 60, .14);--shadow: 0 18px 50px rgba(0, 0, 0, .34)}.topbar,.bottom-bar{background:#0d0d0fdb;border-color:#303035e6}.owner-nav{background:#0d0d0feb;border-color:#303035f2}.owner-nav button{color:var(--muted);background:transparent}.owner-nav button.active,.owner-nav button:hover{color:var(--white);background:var(--soft)}.select-card.active{border-color:#ef233cb8;background:#ef233c1f;box-shadow:0 0 0 3px #ef233c24}.card,.profile-card,.guest-stats .metric,.role-card,.metric,.sticky-summary,.mix-status-panel,.mix-work-card,.mobile-section,.last-mix-panel,.flow-card,.shift-secondary-action,.venue-notice,.venue-switch,.select-card,.share-card,.favorite-card,.preset-card,.create-preset-card,.staff-history article,.flavor-grid button,.matrix-table button,.price-card{background:var(--card);border-color:var(--line)}.secondary-btn,.icon-btn,.last-mix-panel button,input,select,textarea,.chip-row button,.venue-notice button,.staff-history button,.inline-edit button,.history-preset-form button{color:var(--fg);background:var(--card);border-color:var(--line)}.preset-card>button:first-child{color:var(--fg);background:transparent}.preset-list strong,.staff-history strong{color:var(--fg)}.preset-list span,.staff-history span{color:var(--muted)}.preset-rename{color:var(--fg);background:var(--soft);border-color:var(--line)}.preset-delete{color:var(--red-dark);background:var(--danger-bg);border-color:var(--danger-line)}.inline-edit input,.history-preset-form input{color:#f8fafc;background:#111113;border-color:#3f3f46}.empty-state,.mix-empty-state,.preset-form,.composition-card,.quick-start-grid button,.share-link,.selected-flavor,.current-price,.owner-list article,.employee-list article,.owner-workspace-note,.owner-venue-switcher,.venue-checks label,.nfc-link-box,.nfc-state,.auth-mode-tabs,.segmented-tabs,.venue-notice,.create-preset-card,.preset-card,.staff-history article{background:var(--soft)}.auth-mode-tabs button.active,.segmented-tabs button.active,.preset-form .secondary-btn{color:var(--fg);background:var(--card)}.fake-qr,.fake-qr span{background:#f8fafc}.picker-sticky-head{background:#0d0d0fe6;border-color:#303035f2}.picker-selected-strip{border-color:#ef233c47;background:var(--red-soft)}.picker-selected-chip{background:var(--soft);border-color:#ef233c42;box-shadow:none}.picker-selected-chip button{color:var(--red-dark);background:var(--danger-bg);border-color:var(--danger-line)}.fake-qr span.dark{background:#050506}.warning-card,.flavor-grid button.chosen,.matrix-table button.enabled,.mix-warning,.mix-tags span.missing,.favorite-btn.active{background:var(--red-soft);border-color:#ef233c6b}.flavor-grid button.chosen{box-shadow:inset 0 0 0 1px #ef233c4d,0 0 0 3px #ef233c24}.selected-flavor output{color:var(--red-dark);background:var(--red-soft);border-color:var(--danger-line)}.favorite-btn{color:var(--fg);background:var(--soft);border-color:var(--line)}}.error-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin:12px 0;border:1px solid var(--red);background:var(--red-soft);color:var(--red-dark);border-radius:var(--r-md);font-size:var(--fs-body)}.error-banner strong{font-weight:var(--fw-medium)}.info-banner{padding:12px 14px;margin:12px 0;border:1px solid var(--line);background:var(--surface-2, rgba(127, 127, 127, .1));border-radius:var(--r-md);font-size:var(--fs-body);line-height:1.45}.alert-stack{display:flex;flex-direction:column;gap:8px;margin:12px 0}.alert-banner{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--card);font-size:var(--fs-body);line-height:1.35}.alert-banner .alert-count{flex:0 0 auto;min-width:26px;height:26px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-pill);font-weight:var(--fw-medium);font-size:var(--fs-small)}.alert-banner .alert-text{display:flex;flex-direction:column;gap:1px;min-width:0}.alert-banner .alert-text strong{font-weight:var(--fw-medium)}.alert-banner .alert-text span{color:var(--muted);font-size:var(--fs-small)}.alert-banner.is-warn{border-color:color-mix(in srgb,var(--amber) 42%,var(--line));background:color-mix(in srgb,var(--amber) 10%,var(--card))}.alert-banner.is-warn .alert-count{background:color-mix(in srgb,var(--amber) 20%,var(--card));color:var(--amber)}.alert-banner.is-critical{border-color:var(--red);background:var(--red-soft);color:var(--red-dark)}.alert-banner.is-critical .alert-count{background:var(--red);color:var(--white)}.alert-banner.is-info .alert-count{background:color-mix(in srgb,var(--muted) 18%,transparent);color:var(--muted)}.push-toggle-error{color:var(--red)}.loading-row{display:flex;align-items:center;gap:10px;padding:18px 4px;color:var(--muted);font-size:var(--fs-body);animation:mts-loading-in .2s ease-out .25s both}@keyframes mts-loading-in{0%{opacity:0}to{opacity:1}}.spinner{width:18px;height:18px;border:2px solid var(--line);border-top-color:var(--red);border-radius:50%;animation:mts-spin .7s linear infinite}@keyframes mts-spin{to{transform:rotate(360deg)}}.empty-state{display:grid;gap:6px;padding:24px 16px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:var(--r-md)}.empty-state strong{color:var(--fg)}.builder-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px 12px;padding:12px 0;border-top:1px solid var(--line)}.builder-row:first-of-type{border-top:0}.builder-row>div{display:grid;gap:2px}.builder-row>div strong{font-weight:var(--fw-medium)}.builder-row>div span{color:var(--muted);font-size:var(--fs-small)}.builder-row input[type=range]{grid-column:1 / -1;width:100%;accent-color:var(--red)}.shift-preset-note{color:var(--muted);font-size:var(--fs-body);margin:4px 2px 0}.topbar-right{justify-content:flex-end;gap:6px}.auth-notice{display:grid;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.auth-notice p{margin:0;color:var(--muted);line-height:1.45}.venue-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;background:var(--soft);border:1px solid var(--line);border-radius:var(--r-md);font-size:var(--fs-small);color:var(--muted)}.venue-bar b{color:var(--fg)}.venue-bar .text-btn{flex:none}.bottom-tabs{position:fixed;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));z-index:30;display:flex;justify-content:center;gap:4px;padding:6px;border-radius:var(--r-md);background:var(--card);border:1px solid var(--line);box-shadow:0 6px 18px #1111131f}html.kb-open .bottom-tabs{display:none}.bottom-tabs .guest-fab{position:absolute;left:50%;top:-46px;width:56px;height:56px;display:grid;place-items:center;padding:0;border:none;border-radius:50%;background:var(--red);color:var(--white);cursor:pointer;transform:translate(-50%);box-shadow:0 6px 16px #1111133d,0 0 0 4px var(--bg)}.bottom-tabs .guest-fab:active{transform:translate(-50%) scale(.92)}.bottom-tabs .guest-fab svg{width:26px;height:26px;stroke-width:2.6}.app-shell:has(.guest-fab) .page{padding-bottom:124px}.bottom-tabs button{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px;border:none;background:none;color:var(--muted-2);font-size:var(--fs-small);font-weight:var(--fw-medium);cursor:pointer;border-radius:var(--r-md);transition:all .22s cubic-bezier(.3,.8,.4,1)}.bottom-tabs button svg{width:21px;height:21px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.bottom-tabs button .lbl{max-width:0;opacity:0;overflow:hidden;white-space:nowrap;transition:all .22s cubic-bezier(.3,.8,.4,1)}.bottom-tabs button.active{color:var(--red);background:var(--red-soft);padding:10px 15px}.bottom-tabs button.active .lbl{max-width:110px;opacity:1}.bottom-tabs button:active{transform:scale(.92)}@media(prefers-reduced-motion:reduce){.bottom-tabs button,.bottom-tabs button .lbl{transition:none}}.bottom-tabs .tab-dot{position:absolute;top:-2px;right:-3px;width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 0 2px var(--card)}.bottom-tabs .tab-icon{position:relative;display:inline-flex}.bottom-tabs .tab-badge{position:absolute;top:-6px;right:-8px;min-width:16px;height:16px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-pill);background:var(--red);color:var(--white);font-size:var(--fs-micro);font-weight:var(--fw-medium);line-height:1;box-shadow:0 0 0 2px var(--card)}.league-rewards{display:grid;gap:10px;margin-top:12px}.league-rewards ul{display:grid;margin:0;padding:0;list-style:none}.league-rewards li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.league-rewards li:first-child{border-top:0;padding-top:0}.league-rewards li>div{display:grid;gap:2px;min-width:0}.league-rewards b{font-size:var(--fs-body);font-weight:var(--fw-medium);overflow-wrap:anywhere}.league-rewards li span{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted)}.league-rewards .secondary-btn{flex:none;min-height:40px;padding:0 16px}.league-rewards-done{flex:none;white-space:nowrap}.queue-add{display:flex;flex-direction:column;gap:10px;margin-top:12px}.queue-add .search-field{margin:0}.queue-card{align-items:stretch}.queue-card-body{display:flex;flex-direction:column;gap:2px;text-align:left;border:none;background:none;cursor:pointer;padding:0;color:inherit}.queue-card-body strong{font-size:var(--fs-body)}.queue-card-body span{color:var(--muted);font-size:var(--fs-small)}.queue-card .queue-waited{color:var(--muted-2);font-size:var(--fs-caption)}.queue-card .preset-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.queue-card .preset-actions svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.venue-tabs{margin-bottom:4px}.venue-tab-note{color:var(--muted);font-size:var(--fs-small);margin:0 2px 8px}.chip-row.guest-card-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.chip-row.guest-card-tabs button{min-width:0;padding:0 6px;font-size:var(--fs-small);overflow:hidden;text-overflow:ellipsis}.chip-row.guest-card-tabs button span{margin-left:4px;opacity:.7;font-variant-numeric:tabular-nums}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;margin:8px 0}.kpi{display:grid;gap:2px;padding:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md)}.kpi strong{font-size:var(--fs-title)}.kpi strong.kpi-text,.kpi-strip .kpi strong.kpi-text{font-size:var(--fs-lead);line-height:26px;white-space:nowrap}.kpi span{color:var(--muted);font-size:var(--fs-caption)}.kpi-link{position:relative;color:inherit;text-decoration:none;transition:transform .12s ease,border-color .15s ease}.kpi-link:active{transform:scale(.96)}.kpi-link .kpi-go{position:absolute;top:10px;right:8px;display:inline-flex;color:var(--muted-2)}.kpi-link .kpi-go svg{width:16px;height:16px}.count-up{display:inline-block;font-variant-numeric:tabular-nums}.kpi strong .count-up{color:inherit;font-size:inherit}.count-up-spin{opacity:.45;filter:blur(.6px)}.count-up-done{animation:count-up-pop .26s ease-out}@keyframes count-up-pop{40%{transform:scale(1.18)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.count-up-done{animation:none}}.kpi-action{text-align:left;transition:border-color .15s ease,background .15s ease}.kpi-action:hover{border-color:var(--muted-2)}.kpi-action.active{border-color:var(--red);background:var(--red-soft)}.retained-drilldown{margin-top:12px}.day-chart{display:flex;align-items:flex-end;gap:6px;height:160px;padding:24px 6px 0;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow-x:auto}.day-bar{flex:1 1 0;min-width:28px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:4px}.day-bar-fill{width:70%;min-height:6px;background:var(--red);border-radius:var(--r-sm) var(--r-sm) 0 0;display:flex;align-items:flex-start;justify-content:center;position:relative}.day-bar-fill em{position:absolute;top:-16px;font-size:var(--fs-micro);font-style:normal;color:var(--muted)}.day-bar small{color:var(--muted);font-size:var(--fs-micro);white-space:nowrap}.preset-card.mix-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.mix-detail{flex-basis:100%;display:flex;flex-direction:column;gap:10px;margin-top:4px;padding-top:10px;border-top:1px solid var(--line, rgba(255, 255, 255, .08))}.mix-comment{margin:0;font-size:var(--fs-body);line-height:1.4}.preset-rail .preset-card.mix-row>.mix-expand{display:flex;align-items:center;gap:8px}.preset-rail .mix-row .mix-expand-text{flex:1;min-width:0;display:grid;gap:4px}.preset-rail .mix-row .mix-chev{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--fg) 8%,transparent);color:var(--muted);transform:rotate(90deg);transition:transform .25s ease,color .2s ease}.mix-chev svg{width:15px;height:15px}.preset-rail .mix-row .mix-flavors{display:grid;gap:3px}.preset-rail .mix-row .mix-flavor{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:baseline;gap:6px}.mix-flavor-pct{font-size:var(--fs-small);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;white-space:nowrap;overflow-wrap:normal}.preset-rail .mix-row .mix-flavor-name{color:var(--fg);font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:1.3}.mix-flavor-name small{margin-left:6px;color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-medium);white-space:nowrap}.preset-rail .mix-row .mix-meta{margin-top:2px;font-size:var(--fs-caption)}.preset-rail .mix-row .mix-chev.open{transform:rotate(-90deg);color:var(--fg)}.mix-detail-wrap{flex-basis:100%;display:grid;grid-template-rows:0fr;margin-top:0;opacity:0;transition:grid-template-rows .28s ease,margin-top .28s ease,opacity .2s ease}.mix-detail-wrap.open{grid-template-rows:1fr;margin-top:10px;opacity:1}.preset-rail .preset-card.mix-row{row-gap:0}.mix-detail-wrap>.mix-detail{min-height:0;overflow:hidden;margin:0;padding:0;border:0}.mix-detail-wrap>.mix-detail:before{content:"";flex:none;margin-top:4px;border-top:1px solid var(--line, rgba(255, 255, 255, .08))}@media(prefers-reduced-motion:reduce){.mix-detail-wrap,.preset-rail .mix-row .mix-chev{transition:none}}.mix-comment.muted{color:var(--muted);font-style:italic}.preset-rail .preset-card.mix-row.guest-mix>.mix-expand{flex-basis:100%;align-items:flex-start}.preset-rail .mix-row.guest-mix .mix-chev{margin-top:1px}.guest-mix .mix-foot{flex-basis:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;padding-top:6px;border-top:1px solid var(--line, rgba(255, 255, 255, .08))}.preset-rail .mix-row.guest-mix .mix-meta{flex:1;min-width:0;margin:0;color:var(--muted);font-size:var(--fs-caption)}.guest-mix .mix-actions{margin-right:-6px}.preset-rail .preset-card.mix-row.staff-mix>.preset-card-body{flex-basis:100%;display:grid;gap:6px}.preset-rail .mix-row.staff-mix .mix-comment{color:var(--muted);font-size:var(--fs-small);font-style:italic}.staff-mix .mix-foot{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid var(--line, rgba(255, 255, 255, .08))}.staff-mix .mix-foot-info{flex:1 1 auto;min-width:0;display:grid;gap:2px}.preset-rail .mix-row.staff-mix .mix-meta{margin:0;color:var(--muted);font-size:var(--fs-caption)}.staff-mix .mix-lock{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:var(--fs-caption);opacity:.8}.staff-mix .mix-lock svg{width:12px;height:12px}.staff-mix .mix-foot-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto}.staff-mix .mix-foot-actions:empty{display:none}.mix-shared-mark{display:inline-flex;margin-right:6px;color:var(--red);vertical-align:-2px}.mix-shared-mark svg{width:14px;height:14px}.repeat-mix{align-self:flex-start}.mix-detail-actions{display:flex;flex-wrap:wrap;gap:8px}.mix-detail-actions .secondary-btn{display:inline-flex;align-items:center;gap:6px}.mix-detail-actions .secondary-btn svg{width:16px;height:16px}.staff-mix .mix-foot-actions .secondary-btn,.mix-detail-actions .secondary-btn{min-height:32px;padding:0 12px;border-radius:var(--r-sm);font-size:var(--fs-small);font-weight:var(--fw-medium)}.mix-detail-actions .secondary-btn svg{width:14px;height:14px}.mix-notice{padding:10px 12px;border-radius:var(--r-md);font-size:var(--fs-small);line-height:1.4;background:var(--card-2, rgba(255, 255, 255, .06));border:1px solid var(--line, rgba(255, 255, 255, .1));color:var(--muted)}.mix-notice.warn{background:var(--warn-bg);border-color:var(--warn-line);color:var(--warn-fg)}.share-modal-actions{display:grid;gap:8px;width:100%}.share-modal-actions .primary-btn,.share-modal-actions .secondary-btn{width:100%}.share-modal-actions .primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px}.preset-card.mix-row .preset-card-body{flex:1;min-width:0}.preset-card.mix-row .fav-toggle{flex:none;align-self:center}.preset-card .fav-toggle{background:none;border:0;padding:6px;color:var(--muted-2);display:grid;place-items:center}.preset-card .fav-toggle svg{width:22px;height:22px}.preset-card .fav-toggle.on{color:var(--red)}.preset-card .fav-toggle.on svg{fill:var(--red)}.mix-actions{display:flex;align-items:center;gap:2px;flex:none;align-self:center}.react-toggle{background:none;border:0;padding:6px;color:var(--muted-2);display:grid;place-items:center;cursor:pointer}.react-toggle svg{width:20px;height:20px}.mix-repeat-btn{display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:50%;background:color-mix(in srgb,var(--red) 14%,transparent);color:var(--red);cursor:pointer}.mix-repeat-btn svg{width:18px;height:18px}.mix-repeat-btn:disabled{opacity:.35;cursor:default}.react-toggle.like.on{color:var(--green)}.react-toggle.like.on svg{fill:var(--green)}.react-toggle.dislike.on{color:var(--red)}.react-toggle.dislike.on svg{fill:var(--red)}.react-toggle,.preset-card .fav-toggle{-webkit-tap-highlight-color:transparent}.react-toggle svg,.preset-card .fav-toggle svg{transition:transform .12s ease,color .2s ease,fill .2s ease}.react-toggle:active svg,.preset-card .fav-toggle:active svg{transform:scale(.85)}.react-toggle.like.pop svg{animation:react-pop-like .45s cubic-bezier(.3,1.6,.5,1)}.react-toggle.dislike.pop svg{animation:react-pop-dislike .45s cubic-bezier(.3,1.6,.5,1)}.preset-card .fav-toggle.pop svg{animation:fav-pop .5s cubic-bezier(.3,1.6,.5,1)}@keyframes react-pop-like{0%{transform:scale(.8) rotate(0)}45%{transform:scale(1.3) rotate(-14deg)}to{transform:scale(1) rotate(0)}}@keyframes react-pop-dislike{0%{transform:scale(.8) rotate(0)}45%{transform:scale(1.3) rotate(14deg)}to{transform:scale(1) rotate(0)}}@keyframes fav-pop{0%{transform:scale(.7) rotate(0)}50%{transform:scale(1.35) rotate(72deg)}to{transform:scale(1) rotate(72deg)}}@media(prefers-reduced-motion:reduce){.react-toggle svg,.preset-card .fav-toggle svg{transition:color .2s ease,fill .2s ease}.react-toggle.pop svg,.preset-card .fav-toggle.pop svg{animation:none}}.reaction-mark{display:inline-grid;place-items:center;vertical-align:middle;margin-right:6px}.reaction-mark svg{width:15px;height:15px}.reaction-mark.like{color:var(--green)}.reaction-mark.like svg{fill:var(--green)}.reaction-mark.dislike{color:var(--red)}.reaction-mark.dislike svg{fill:var(--red)}.pref-empty{margin:4px 0 0;font-size:var(--fs-body)}.pref-hint{margin:2px 0 0;font-size:var(--fs-small)}.pref-wrap{display:flex;flex-direction:column;gap:16px}.pref-chips{display:flex;flex-wrap:wrap;gap:8px}.pref-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:var(--r-pill);font-size:var(--fs-small);line-height:1.25;background:var(--surface-2, rgba(127, 127, 127, .1));border:1px solid var(--line, rgba(255, 255, 255, .1))}.pref-chip svg{width:14px;height:14px;flex:none}.pref-chip b{font-weight:var(--fw-medium)}.pref-chip.like{border-color:color-mix(in srgb,var(--green) 45%,transparent)}.pref-chip.like svg{color:var(--green);fill:var(--green)}.pref-chip.dislike{border-color:color-mix(in srgb,var(--red) 45%,transparent)}.pref-chip.dislike svg{color:var(--red);fill:var(--red)}.pref-chip.neutral svg{color:var(--muted-2)}.pref-summary{display:flex;align-items:center;gap:14px;font-size:var(--fs-body)}.pref-summary-item{display:inline-flex;align-items:center;gap:5px;font-weight:var(--fw-medium)}.pref-summary-item svg{width:16px;height:16px}.pref-like{color:var(--green)}.pref-like svg{fill:var(--green)}.pref-dislike{color:var(--red)}.pref-dislike svg{fill:var(--red)}.pref-dim{display:flex;flex-direction:column;gap:8px}.pref-dim-title{margin:0;font-size:var(--fs-body);color:var(--muted);font-weight:var(--fw-medium)}.pref-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:560px){.pref-cols{grid-template-columns:1fr}}.pref-col{display:flex;flex-direction:column;gap:6px;min-width:0}.pref-col-head{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-small);font-weight:var(--fw-medium)}.pref-col-head svg{width:15px;height:15px}.taste{display:flex;flex-direction:column;gap:10px}.taste-row{display:grid;grid-template-columns:124px 1fr;align-items:start;gap:10px}@media(max-width:380px){.taste-row{grid-template-columns:1fr;gap:6px}}.taste-label{display:inline-flex;align-items:center;gap:6px;padding-top:5px;font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--muted)}.taste-label svg{width:15px;height:15px;flex:none}.taste-row.like .taste-label svg{color:var(--green);fill:var(--green)}.taste-row.dislike .taste-label svg{color:var(--red);fill:var(--red)}.taste-row.neutral .taste-label svg{color:var(--muted-2)}.taste-values{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.taste-chip{padding:5px 10px;border-radius:var(--r-pill);font-size:var(--fs-small);line-height:1.25;background:var(--surface-2, rgba(127, 127, 127, .1));border:1px solid var(--line, rgba(255, 255, 255, .1));overflow-wrap:anywhere}.taste-row.like .taste-chip{border-color:color-mix(in srgb,var(--green) 45%,transparent)}.taste-row.dislike .taste-chip{border-color:color-mix(in srgb,var(--red) 45%,transparent)}.taste-note{margin:0;font-size:var(--fs-small)}.pref-more{border-top:1px solid var(--line);padding-top:10px}.pref-more>summary{cursor:pointer;font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--muted);list-style:none;display:flex;align-items:center;gap:6px}.pref-more>summary::-webkit-details-marker{display:none}.pref-more>summary:after{content:"▾";transition:transform .2s}.pref-more[open]>summary:after{transform:rotate(180deg)}.pref-more[open]>summary{margin-bottom:12px}.rec-note{margin:0 0 10px}.rec-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.shift-preset-note+.rec-list{margin-top:12px}.rec-row{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md)}.rec-pin{flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:var(--r-sm);background:var(--red-soft);color:var(--red)}.rec-pin.taste{background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green)}.rec-pin svg{width:18px;height:18px}.rec-body{flex:1;display:grid;gap:2px;min-width:0}.rec-body strong{font-size:var(--fs-body)}.rec-body span{font-size:var(--fs-caption);color:var(--muted)}.guest-actions{display:flex;gap:8px;margin:8px 0}.guest-actions>*{flex:1;text-align:center}.share-card,.public-card-cta{display:grid;gap:12px;justify-items:center;text-align:center}.public-card-cta p{max-width:310px;margin:0;color:var(--muted);line-height:1.5}.qr-box{width:max-content;height:auto;display:block;padding:16px;background:var(--white);border-radius:var(--r-md)}.qr-box svg{width:200px;height:200px;display:block;stroke:none}.share-public-id{font-size:var(--fs-display);font-weight:var(--fw-medium);letter-spacing:1px}.share-link{color:var(--muted);font-size:var(--fs-small);word-break:break-all}.share-note{color:var(--muted);font-size:var(--fs-small)}a.primary-btn,a.secondary-btn,a.text-btn{display:inline-flex;align-items:center;justify-content:center;padding:0 16px}a.primary-btn,a.secondary-btn,a.text-btn,a.role-card{text-decoration:none}.preset-card-body{display:grid;gap:4px}.preset-card-body strong{display:block}.preset-card-body span{display:block;color:var(--muted);font-size:var(--fs-small)}a.role-card{color:var(--fg)}a.primary-btn,a.primary-btn:visited{color:var(--white)}a.secondary-btn,a.secondary-btn:visited,a.text-btn,a.text-btn:visited{color:var(--fg)}.owner-list a{display:block;min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft);text-decoration:none;color:var(--fg)}.owner-list a:hover{border-color:var(--red)}.owner-tab-content{margin-top:12px;display:flex;flex-direction:column;gap:16px}@media(prefers-color-scheme:dark){.bottom-tabs{border-color:#303035e6;box-shadow:0 14px 34px #0006}}.callcheck-number{display:block;text-align:center;text-decoration:none}.callcheck-waiting{display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;opacity:.75}.callcheck-confirming{display:grid;justify-items:center;gap:10px;padding:28px 8px;text-align:center;animation:fade-in .25s ease}.callcheck-confirming .spinner{width:28px;height:28px;border-width:3px}.callcheck-confirming h1{margin:4px 0 0}.mix-expand{cursor:pointer;text-align:left;background:none;border:none;width:100%;font:inherit;color:inherit}.mix-items{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.mix-items li{display:flex;justify-content:space-between;gap:12px;font-size:.9em;opacity:.85}.hero.tracker-hero{min-height:0;padding:18px;gap:2px}.hero.compact-hero{padding:16px 18px}.kpi-wide{grid-column:span 2}.kpi-wide strong{font-size:var(--fs-lead)}.month-bars{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;height:132px;padding-top:8px}.month-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%}.month-bar-track{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center}.month-bar-fill{width:60%;max-width:26px;min-height:3px;border-radius:var(--r-bar) var(--r-bar) 0 0;background:var(--red)}.month-bar-value{font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--fg)}.month-bar-label{font-size:var(--fs-micro);color:var(--muted)}.cal-wrap{--cal-cell: 13px;--cal-gap: 3px;display:grid;gap:8px}.cal-heat{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.cal-side{display:grid;grid-template-rows:repeat(7,var(--cal-cell));gap:var(--cal-gap);padding-top:16px}.cal-wd{font-size:var(--fs-micro);line-height:var(--cal-cell);color:var(--muted-2)}.cal-main{display:grid;gap:4px}.cal-months{display:grid;gap:var(--cal-gap)}.cal-mo{font-size:var(--fs-micro);color:var(--muted);white-space:nowrap;overflow:visible}.cal-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,var(--cal-cell));gap:var(--cal-gap)}.cal-cell{width:var(--cal-cell);height:var(--cal-cell);border-radius:3px;background:var(--soft)}.cal-cell[data-lvl="1"]{background:color-mix(in srgb,var(--red) 28%,transparent)}.cal-cell[data-lvl="2"]{background:color-mix(in srgb,var(--red) 50%,transparent)}.cal-cell[data-lvl="3"]{background:color-mix(in srgb,var(--red) 75%,transparent)}.cal-cell[data-lvl="4"]{background:var(--red)}.cal-legend{display:flex;align-items:center;gap:4px;font-size:var(--fs-micro);color:var(--muted)}.cal-legend .cal-cell{flex:none}.ranked-bars{display:grid;gap:12px;margin-top:4px}.ranked-bar-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:5px}.ranked-bar-title{font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--fg)}.ranked-bar-title b{color:var(--muted-2);margin-right:2px}.ranked-bar-title em{color:var(--muted);font-style:normal;font-weight:var(--fw-regular)}.ranked-bar-count{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted);white-space:nowrap}.ranked-bar-track{height:9px;border-radius:var(--r-bar);background:var(--soft);overflow:hidden}.ranked-bar-fill{height:100%;border-radius:var(--r-bar);background:var(--red)}.venue-stat-list{display:grid;gap:8px}.venue-stat-row{display:flex;align-items:center;gap:12px;padding:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md)}.venue-stat-pin{flex:none;width:38px;height:38px;display:grid;place-items:center;border-radius:var(--r-sm);background:var(--red-soft);color:var(--red);font-weight:var(--fw-medium);font-size:var(--fs-body)}.venue-stat-pin svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.venue-stat-body{flex:1;display:grid;gap:2px;min-width:0}.venue-stat-body strong{font-size:var(--fs-body)}.venue-stat-body span{font-size:var(--fs-caption);color:var(--muted)}.venue-stat-count{font-size:var(--fs-lead);font-weight:var(--fw-medium);color:var(--fg)}.card-stage{perspective:900px;display:flex;justify-content:center;padding:8px 0}.member-card{position:relative;width:312px;max-width:100%;height:196px;padding:18px;border-radius:18px;background:linear-gradient(150deg,#1a1a1e,#2a1014 55%,#490e16);box-shadow:0 26px 50px #11111366;color:#fff;cursor:pointer;transform-style:preserve-3d;transition:transform .4s cubic-bezier(.3,.8,.4,1);animation:card-float 7s ease-in-out infinite;display:flex;flex-direction:column;justify-content:space-between;-webkit-user-select:none;user-select:none;touch-action:manipulation}.member-card-top{transform:translateZ(34px)}.member-card-owner{transform:translateZ(48px)}.member-card-qr{transform:translateZ(70px)}@keyframes card-float{0%,to{transform:rotateX(2.5deg) rotateY(-6deg)}50%{transform:rotateX(-2.5deg) rotateY(6deg)}}.card-glare{position:absolute;inset:0;border-radius:inherit;opacity:0;mix-blend-mode:screen;transition:opacity .25s ease;pointer-events:none}.member-card-top{display:flex;align-items:center;gap:8px}.member-card-wordmark{font-size:15px;font-weight:var(--fw-bold);letter-spacing:.2px}.member-card-wordmark i{color:#ff5a66;font-style:normal}.member-card-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.member-card-owner{display:grid;gap:1px;min-width:0}.member-card-owner small{font-size:9px;letter-spacing:.12em;color:#ffffff80}.member-card-owner>span{font-size:var(--fs-body);font-weight:var(--fw-bold);margin-bottom:6px}.member-card-id-label{margin-top:2px}.member-card-id{font-size:var(--fs-head);font-weight:900;letter-spacing:2px;white-space:nowrap}.member-card-qr{display:grid;justify-items:center;gap:5px}.member-card-qr>:first-child{background:#fff;padding:7px;border-radius:12px;line-height:0}.member-card-qr svg{width:76px;height:76px;display:block;stroke:none}.member-card-qr small{font-size:8px;letter-spacing:.1em;color:#fff9}.member-card.member-card--compact{width:100%;height:104px;padding:12px 96px 12px 16px;box-shadow:0 14px 30px #11111352}.member-card-mark{display:block;width:28px;height:23px;fill:none;stroke:none}.member-card--compact .member-card-id-row{display:flex;align-items:center;gap:8px;min-width:0}.member-card--compact .member-card-league{margin-left:0;flex:none}.member-card--compact .member-card-owner small{display:none}.member-card--compact .member-card-owner>span{margin-bottom:0}.member-card--compact .member-card-id{font-size:var(--fs-title);letter-spacing:1.5px}.member-card--compact .member-card-qr{position:absolute;top:50%;right:14px;transform:translateY(-50%) translateZ(70px)}.member-card--compact .member-card-qr>:first-child{padding:5px;border-radius:9px}.member-card--compact .member-card-qr svg{width:62px;height:62px}.member-card--compact .member-card-qr small{display:none}.member-card-league{margin-left:auto;padding:3px 8px;border:1px solid rgba(255,255,255,.35);border-radius:var(--r-pill);font-size:9px;font-weight:var(--fw-bold);letter-spacing:.14em;text-transform:uppercase}.member-card-tint{position:absolute;inset:0;border-radius:inherit;opacity:0;transition:opacity .6s ease;pointer-events:none}.member-card-tint.on{opacity:1}.member-card-tint--bronze{background:linear-gradient(150deg,#1c1511,#4a2a17 55%,#8a4f24)}.member-card-tint--silver{background:linear-gradient(150deg,#16181c,#3a414c 55%,#7d8796)}.member-card-tint--gold{background:linear-gradient(150deg,#1a160c,#4d3b0f 55%,#a67c12)}.member-card-tint--flame{background:linear-gradient(150deg,#1a0d0a,#6b1a0c,#d9481f)}.member-card--league-in .member-card-league{animation:fade-in .6s ease both}.member-card--league-in.member-card--flame:before{animation:fade-in .6s ease both,flame-sheen 5.5s ease-in-out .6s infinite}.member-card--gold .member-card-league{border-color:#f1cf6b;color:#f7dc8c}.member-card--flame .member-card-league{border-color:#ffb199;color:#ffd2c2}.member-card--flame{box-shadow:0 26px 50px #11111366,0 0 0 1px #ff8c5a40}.member-card--flame:after{content:"";position:absolute;inset:-4px;border-radius:inherit;background:radial-gradient(ellipse at 65% 75%,#ff7a36,#e2461c 50%,#d9481f59 80%);filter:blur(22px);opacity:.7;transform:translateZ(-1px);pointer-events:none;animation:flame-glow 3.2s ease-in-out infinite}.member-card--flame:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,transparent 30%,rgba(255,190,140,.35) 44%,rgba(255,245,230,.62) 50%,rgba(255,190,140,.35) 56%,transparent 70%) no-repeat,radial-gradient(circle at 85% 90%,rgba(255,150,60,.35),transparent 55%);background-size:250% 100%,100% 100%;background-position:150% 0,0 0;mix-blend-mode:screen;pointer-events:none;transform:translateZ(1px);animation:flame-sheen 5.5s ease-in-out infinite}@keyframes flame-glow{0%,to{opacity:.55;filter:blur(20px)}50%{opacity:1;filter:blur(30px)}}@keyframes flame-sheen{0%,55%{background-position:150% 0,0 0}85%,to{background-position:-60% 0,0 0}}@media(prefers-reduced-motion:reduce){.member-card--flame:before,.member-card--flame:after,.member-card--league-in .member-card-league{animation:none}.member-card-tint{transition:none}}.qr-modal{position:fixed;left:0;right:0;top:var(--vv-top, 0px);height:var(--vv-height, 100dvh);z-index:60;display:grid;place-items:center;padding:24px;background:#050508bd;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in .18s ease both}.qr-modal-panel{width:min(320px,100%);display:grid;justify-items:center;gap:12px;padding:22px;background:var(--card);border-radius:var(--r-md);box-shadow:0 30px 70px #00000080;text-align:center}.qr-modal-box{background:var(--white);padding:14px;border-radius:var(--r-md);line-height:0}.qr-modal-box svg{width:222px;height:222px;display:block;stroke:none}.qr-modal-id{font-size:var(--fs-display);font-weight:var(--fw-bold);letter-spacing:1px}.qr-modal-link{font-size:var(--fs-caption);color:var(--muted);margin:0}.qr-modal-panel .primary-btn{width:100%}@keyframes fade-in{0%{opacity:0}}.confirm-panel{width:min(320px,100%);display:grid;gap:10px;padding:20px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 30px 70px #00000080;animation:confirm-in .2s cubic-bezier(.2,.9,.3,1.2) both}.confirm-panel h2{margin:0;font-size:var(--fs-title);font-weight:var(--fw-medium)}.confirm-panel p{margin:0;font-size:var(--fs-body);line-height:1.45;color:var(--muted)}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.confirm-actions button{min-height:44px;width:100%}@keyframes confirm-in{0%{opacity:0;transform:scale(.94) translateY(6px)}}@media(prefers-reduced-motion:reduce){.confirm-panel{animation:none}}.qr-scan-panel{width:min(360px,100%);display:grid;justify-items:center;gap:14px;padding:20px;background:var(--card);border-radius:var(--r-md);box-shadow:0 30px 70px #00000080;text-align:center}.share-modal{max-height:100%;overflow-y:auto}.share-modal .share-note,.share-modal .share-link{max-width:310px;margin:0}.qr-scan-viewport{position:relative;width:100%;aspect-ratio:1;border-radius:var(--r-md);overflow:hidden;background:#000}.qr-scan-video{width:100%;height:100%;object-fit:cover;display:block}.qr-scan-frame{position:absolute;inset:16%;border:3px solid rgba(255,255,255,.9);border-radius:var(--r-md);box-shadow:0 0 0 100vmax #00000040}.qr-scan-error{color:var(--muted);font-size:var(--fs-body);margin:8px 0}.qr-scan-panel .secondary-btn{width:100%}.scan-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:10px}.scan-btn svg{width:18px;height:18px}.mix-ring-card{display:flex;align-items:center;gap:16px;padding:16px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md)}.mix-ring{position:relative;flex:none;width:104px;height:104px;border-radius:50%}.mix-ring-hole{position:absolute;inset:13px;border-radius:50%;background:var(--card);display:grid;place-items:center;text-align:center}.mix-ring-hole strong{font-size:var(--fs-head);font-weight:var(--fw-bold);color:var(--fg)}.mix-ring-hole strong.ok{color:var(--green)}.mix-ring-hole span{font-size:var(--fs-micro);color:var(--muted)}.mix-ring-legend{flex:1;min-width:0}.mix-ring-title{font-size:var(--fs-caption);color:var(--muted);margin:0 0 8px}.mix-ring-legend ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.mix-ring-legend li{display:flex;align-items:center;gap:8px;font-size:var(--fs-small)}.mix-ring-legend li i{flex:none;width:10px;height:10px;border-radius:3px}.mix-ring-legend li span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mix-ring-legend li b{font-weight:var(--fw-medium);color:var(--fg)}@media(prefers-reduced-motion:reduce){.qr-modal,.member-card{animation:none;transition:none}}.scenario-block{display:grid;gap:10px}.scenario-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.scenario-head span{font-size:var(--fs-small);color:var(--muted)}.scenario-head b{font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--fg);white-space:nowrap}.scenario-block h1{font-size:var(--fs-head);font-weight:var(--fw-medium);margin:0}.scenario-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.scenario-card{display:flex;flex-direction:column;justify-content:space-between;gap:18px;min-height:150px;padding:16px;border-radius:var(--r-md);text-align:left;background:var(--card);border:1px solid var(--line);color:var(--fg);transition:transform .12s ease}.scenario-card:active{transform:scale(.97)}.scenario-card.accent{background:var(--surface-accent);border-color:transparent;color:var(--white)}.scenario-icon{width:44px;height:44px;border-radius:var(--r-md);display:grid;place-items:center;background:var(--soft);color:var(--fg)}.scenario-icon svg{width:22px;height:22px}.scenario-card.accent .scenario-icon{background:var(--red);color:var(--white)}.scenario-text{display:grid;gap:3px}.scenario-text strong{font-size:var(--fs-lead);font-weight:var(--fw-medium)}.scenario-text span{font-size:var(--fs-caption);color:var(--muted)}.scenario-card.accent .scenario-text span{color:#ffffffad}.owner-shell{display:grid;grid-template-columns:258px minmax(0,1fr);min-height:calc(100vh - 58px)}.sidebar{position:sticky;top:58px;align-self:start;height:calc(100vh - 58px);box-sizing:border-box;display:flex;flex-direction:column;gap:4px;padding:20px 14px;background:var(--card);border-right:1px solid var(--line);overflow-y:auto}.side-brand{display:flex;align-items:center;gap:10px;padding:4px 8px 18px}.side-brand>div{flex:1;min-width:0}.side-brand strong{display:block;font-size:var(--fs-body);font-weight:var(--fw-bold);white-space:nowrap}.side-brand strong i{color:var(--red);font-style:normal}.side-brand span{display:block;margin-top:1px;font-size:var(--fs-caption);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-nav{display:flex;flex-direction:column;gap:3px}.side-item{display:flex;align-items:center;gap:11px;min-height:42px;padding:0 12px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted);font-family:inherit;font-weight:var(--fw-medium);font-size:var(--fs-body);text-align:left;cursor:pointer;transition:background .15s,color .15s}.side-item svg{flex:none;width:19px;height:19px}.side-item:hover{color:var(--fg);background:var(--soft)}.side-item.on{color:var(--red);background:var(--red-soft)}.side-item.sub{min-height:38px;font-size:var(--fs-small);color:var(--muted-2)}.side-item.sub svg{width:17px;height:17px}.side-item.sub.on{color:var(--red);background:var(--red-soft)}.side-item.sub span,.side-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-lbl{margin:16px 10px 4px;font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.07em;text-transform:uppercase;color:var(--muted-2)}.side-foot{margin-top:auto;display:flex;align-items:center;gap:10px;padding:12px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted);font-family:inherit;font-weight:var(--fw-medium);font-size:var(--fs-small);text-align:left;cursor:pointer}.side-foot svg{flex:none;width:18px;height:18px}.side-foot.side-foot-next{margin-top:0}.side-note{margin:-10px 8px 14px;padding:6px 10px;border-radius:var(--r-sm);background:var(--soft);font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted)}.side-foot:hover{color:var(--fg);background:var(--soft)}.main{min-width:0;padding:34px clamp(20px,4vw,56px) 72px}.screen{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:18px}.screen-fade,.screen{animation:screen-fade .22s ease-out}@keyframes screen-fade{0%{opacity:0}}.screen-hold{opacity:0}.screen-hold-reveal{animation:screen-fade .22s ease-out}.screen-intro [data-intro]{animation:intro-rise .42s var(--intro-ease) calc(var(--intro-i, 0) * 50ms) backwards}.screen-intro .page>.card-stage[data-intro]{animation:intro-card .56s var(--intro-ease) calc(var(--intro-i, 0) * 50ms) backwards}:root{--intro-ease: cubic-bezier(.22, .8, .3, 1)}@keyframes intro-rise{0%{opacity:0;transform:translateY(12px)}}@keyframes intro-card{0%{opacity:0;transform:perspective(900px) translateY(16px) rotateX(20deg) scale(.95)}}@media(prefers-reduced-motion:reduce){.screen-intro [data-intro]{animation:none}}.month-bar-fill,.asst-chart-bar{transform-box:fill-box;transform-origin:bottom;animation:draw-grow-y .55s var(--intro-ease) backwards;animation-delay:calc(var(--intro-i, 0) * 50ms + min(var(--bar-i, 0),16) * 30ms)}.rankbar-fill,.ranked-bar-fill,.asst-chart-row-track .asst-chart-fill,.asst-stack{clip-path:inset(0);animation:draw-open-x .6s var(--intro-ease) backwards;animation-delay:calc(var(--intro-i, 0) * 50ms + min(var(--bar-i, 0),10) * 40ms)}.month-bar-value,.asst-chart-value{animation:screen-fade .3s ease-out backwards;animation-delay:calc(var(--intro-i, 0) * 50ms + min(var(--bar-i, 0),16) * 30ms + .3s)}.asst-chart-line{stroke-dasharray:1;animation:draw-line .9s var(--intro-ease) backwards}.asst-chart-area{animation:screen-fade .5s ease-out .35s backwards}.asst-chart-dot.is-end{animation:screen-fade .25s ease-out .8s backwards}.asst-donut-slice{animation:draw-arc .6s var(--intro-ease) backwards;animation-delay:calc(var(--intro-i, 0) * 50ms + var(--bar-i, 0) * 80ms)}@keyframes draw-grow-y{0%{transform:scaleY(0)}}@keyframes draw-open-x{0%{clip-path:inset(0 100% 0 0)}}@keyframes draw-line{0%{stroke-dashoffset:1}}@keyframes draw-arc{0%{stroke-dasharray:0 1000}}@media(prefers-reduced-motion:reduce){.month-bar-fill,.asst-chart-bar,.rankbar-fill,.ranked-bar-fill,.asst-chart-row-track .asst-chart-fill,.asst-stack,.month-bar-value,.asst-chart-value,.asst-chart-line,.asst-chart-area,.asst-chart-dot.is-end,.asst-donut-slice{animation:none}}.screen-stack{display:flex;flex-direction:column;gap:18px}@media(prefers-reduced-motion:reduce){.screen-fade,.screen,.screen-hold-reveal{animation:none}}.page-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 20px}.page-head>div{min-width:0}.page-head h1{margin:0;font-size:var(--fs-display);font-weight:var(--fw-bold);line-height:1.03;letter-spacing:-.01em}.head-actions{display:flex;gap:8px;flex:none}.head-actions .secondary-btn{white-space:nowrap}.month-filter{display:flex;flex-wrap:wrap;gap:8px}.mf{min-height:34px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--card);color:var(--muted);font-family:inherit;font-weight:var(--fw-medium);font-size:var(--fs-small);cursor:pointer}.mf:hover{color:var(--fg)}.mf.on{color:var(--white);background:var(--red);border-color:var(--red)}.period-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.period-custom{position:relative;display:inline-flex}.period-custom .mf{display:inline-flex;align-items:center;gap:6px}.cal{position:absolute;z-index:40;top:calc(100% + 8px);left:0;width:280px;padding:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 12px 32px #11111324}@media(max-width:360px){.cal{left:auto;right:0}}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.cal-title{font-weight:var(--fw-bold);font-size:var(--fs-body)}.cal-nav{width:30px;height:30px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);color:var(--fg);font-size:var(--fs-lead);line-height:1;cursor:pointer}.cal-nav:hover{border-color:var(--red);color:var(--red)}.cal .cal-grid{display:grid;grid-auto-flow:row;grid-template-rows:none;grid-template-columns:repeat(7,1fr);gap:2px}.cal-dow{margin-bottom:4px}.cal-dow-cell{text-align:center;font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--muted-2);padding:2px 0}.cal .cal-cell{width:auto;height:auto;aspect-ratio:1;border:0;border-radius:var(--r-sm);background:transparent;color:var(--fg);font-family:inherit;font-weight:var(--fw-medium);font-size:var(--fs-small);cursor:pointer}.cal .cal-cell:hover:not(:disabled){background:var(--red-soft)}.cal .cal-cell.out{color:var(--muted-2)}.cal .cal-cell.in{background:var(--red-soft);border-radius:0}.cal .cal-cell.in:first-child,.cal .cal-cell.in:nth-child(7n+1){border-radius:var(--r-sm) 0 0 var(--r-sm)}.cal .cal-cell.in:nth-child(7n){border-radius:0 var(--r-sm) var(--r-sm) 0}.cal .cal-cell.sel{background:var(--red);color:var(--white);border-radius:var(--r-sm)}.cal .cal-cell.disabled{color:var(--muted-2);opacity:.4;cursor:default}.cal-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px}.cal-hint{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted);text-align:right}.kpi-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0}.kpi-strip .kpi strong{font-size:var(--fs-head);font-weight:var(--fw-bold)}.dash-grid{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(300px,1fr);gap:18px;align-items:start}.dash-main,.dash-rail{display:flex;flex-direction:column;gap:18px;min-width:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.two-col.align-start{align-items:start}@media(max-width:1080px){.dash-grid{grid-template-columns:1fr}}.stat-card{border-radius:var(--r-md);padding:18px;box-shadow:0 1px 2px #1111130a}.stat-card .section-title{margin-bottom:14px}.st-note{margin-left:10px;font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted-2);text-transform:none;letter-spacing:0}.section-title-lg{display:flex;align-items:center;gap:10px}.section-title-lg h2{margin:0;font-size:var(--fs-title);font-weight:var(--fw-bold);white-space:nowrap}.muted-line{margin:0 0 12px;color:var(--muted);font-size:var(--fs-small);line-height:1.5}.muted-line b{color:var(--fg)}.row-stack{display:flex;flex-direction:column;gap:8px}.stat-row{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);color:var(--fg);font-family:inherit;text-align:left;cursor:default;transition:border-color .15s}button.stat-row{cursor:pointer}button.stat-row:hover{border-color:var(--red)}.stat-row-tile{flex:none;width:38px;height:38px;display:grid;place-items:center;border-radius:var(--r-sm);background:var(--red-soft);color:var(--red);font-size:var(--fs-small);font-weight:var(--fw-bold)}.stat-row-tile svg{width:19px;height:19px}.stat-row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.stat-row-title{font-size:var(--fs-body);font-weight:var(--fw-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-row-sub{font-size:var(--fs-caption);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-row-count{flex:none;font-size:var(--fs-lead);font-weight:var(--fw-bold);color:var(--fg)}.stat-row-warn{border-color:var(--amber);background:#d9770612}button.stat-row-warn:hover{border-color:var(--amber)}.stat-row-warn .stat-row-tile{background:#d9770624;color:var(--amber)}.stat-row-lapse{flex:none;font-size:var(--fs-micro);font-weight:var(--fw-medium);white-space:nowrap;color:var(--amber);background:#d977061f;border-radius:var(--r-pill);padding:3px 9px}.rankbar-stack{display:flex;flex-direction:column;gap:15px}.rankbar-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px}.rankbar-title{flex:1;min-width:0;display:flex;align-items:baseline;gap:8px;font-size:var(--fs-body);font-weight:var(--fw-medium)}.rankbar-no{flex:none;width:20px;height:20px;display:inline-grid;place-items:center;border-radius:var(--r-sm);background:var(--soft);color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-bold)}.rankbar-turn{flex:none;display:flex;align-items:baseline;gap:5px;font-size:var(--fs-body);font-weight:var(--fw-bold);color:var(--fg)}.rankbar-turn small{font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--muted-2);text-transform:uppercase;letter-spacing:.05em}.rankbar-track{height:8px;border-radius:var(--r-bar);background:var(--soft);overflow:hidden}.rankbar-fill{display:block;height:100%;border-radius:var(--r-bar);background:var(--red)}.rankbar-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:6px;font-size:var(--fs-caption);color:var(--muted)}.rankbar-meta span,.rankbar-meta em{white-space:nowrap}.rankbar-meta i{color:var(--muted-2);font-style:normal}.rankbar-brand{flex:none;font-style:normal;font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.04em;color:var(--muted-2);background:var(--soft);padding:2px 7px;border-radius:var(--r-pill);white-space:nowrap}.link-btn{margin-top:14px;align-self:flex-start;border:0;background:none;color:var(--red);font-family:inherit;font-weight:var(--fw-bold);font-size:var(--fs-small);cursor:pointer;padding:4px 0}.ret-hero{display:flex;flex-direction:column;padding:4px 0 14px}.ret-hero strong{font-size:var(--fs-hero);font-weight:var(--fw-bold);line-height:1;color:var(--red)}.ret-hero span{margin-top:4px;font-size:var(--fs-small);color:var(--muted)}.ret-windows{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ret-win{display:flex;flex-direction:column;gap:2px;padding:12px 8px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);color:var(--fg);font-family:inherit;text-align:left;cursor:pointer;transition:border-color .15s,background .15s}.ret-win:hover{border-color:var(--red)}.ret-win.on{border-color:var(--red);background:var(--red-soft)}.ret-win b{font-size:var(--fs-title);font-weight:var(--fw-bold)}.ret-win span{font-size:var(--fs-micro);color:var(--muted)}.ret-drill{margin-top:14px}.ret-note{margin:0 0 10px;font-size:var(--fs-caption);color:var(--muted)}.mix-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.mix-row-body{min-width:0}.mix-row-meta{font-size:var(--fs-caption);color:var(--muted);font-weight:var(--fw-medium)}.mix-row-body p{margin:4px 0 0;overflow-wrap:anywhere;font-size:var(--fs-body)}.mix-row.mix-accordion{flex-direction:column;align-items:stretch}.mix-accordion-head{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:0;background:none;border:0;color:inherit;text-align:left;cursor:pointer}.mix-accordion-head .chev{display:inline-flex;flex-shrink:0;color:var(--muted);transition:transform .15s ease}.mix-accordion-head .chev svg{width:18px;height:18px}.mix-accordion-head .chev.open{transform:rotate(90deg)}.mix-detail-label{margin:0;font-size:var(--fs-micro);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.matrix-head{display:flex;flex-direction:column;gap:12px;margin-bottom:14px}.matrix-search{position:relative;display:flex;align-items:center;margin-bottom:12px}.matrix-search>svg:first-child{position:absolute;left:13px;color:var(--muted-2);pointer-events:none}.matrix-search input{width:100%;min-height:44px;padding:0 40px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);color:var(--fg);font-family:inherit;font-size:var(--fs-body);outline:none}.matrix-search input:focus{border-color:var(--red);box-shadow:0 0 0 3px #c1121f1f}.matrix-search input::-webkit-search-cancel-button{display:none}.matrix-search-clear{position:absolute;right:8px;width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:var(--r-sm);background:var(--soft);color:var(--muted);cursor:pointer}.chip-scroll{display:flex;flex-wrap:wrap;gap:8px}.chip-scroll.matrix-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:2px;scroll-snap-type:x proximity}.chip-scroll.matrix-chips::-webkit-scrollbar{display:none}.chip-scroll.matrix-chips .chip{flex:none;scroll-snap-align:start}.chip{min-height:34px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--card);color:var(--muted);font-family:inherit;font-weight:var(--fw-medium);font-size:var(--fs-small);cursor:pointer}.chip:hover{color:var(--fg)}.chip.on{color:var(--white);background:var(--red);border-color:var(--red)}.matrix-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.mx-cell{display:flex;flex-direction:column;gap:5px;min-height:88px;padding:13px;text-align:left;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);color:var(--fg);font-family:inherit;cursor:pointer;transition:border-color .15s,background .15s}.mx-cell:hover{border-color:var(--red)}.mx-cell.on{border-color:var(--red);background:var(--red-soft)}.mx-cell .mx-brand{font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.04em;color:var(--muted-2)}.mx-cell strong{font-size:var(--fs-body)}.mx-cell small{margin-top:auto;font-size:var(--fs-caption);color:var(--muted);font-weight:var(--fw-medium)}.mx-cell.on small{color:var(--red);font-weight:var(--fw-bold)}.venue-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}.cover-track{height:8px;border-radius:var(--r-bar);background:var(--soft);overflow:hidden}.cover-track span{display:block;height:100%;border-radius:var(--r-bar);background:var(--green)}.visit-day{display:flex;flex-direction:column;gap:10px}@media(max-width:820px){.owner-shell{display:block}.sidebar{position:static;height:auto;flex-direction:row;align-items:center;gap:6px;padding:8px 10px;border-right:0;border-bottom:1px solid var(--line);overflow-x:auto}.side-brand,.side-lbl,.side-item.sub,.side-foot{display:none}.sidebar .side-nav{flex-direction:row;gap:4px}.side-item{white-space:nowrap}.main{padding:18px 14px 92px}}@media(max-width:720px){.two-col{grid-template-columns:1fr}.ret-windows{grid-template-columns:repeat(3,1fr)}}@media(prefers-color-scheme:dark){.matrix-search input:focus{box-shadow:0 0 0 3px #ef233c2e}}.price-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft)}.price-row strong{font-size:var(--fs-body)}.price-row span{color:var(--muted);font-size:var(--fs-small);text-align:right}.manage-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:18px;align-items:start}@media(max-width:1080px){.manage-grid{grid-template-columns:1fr}}.manage-row{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--soft);color:var(--fg);font-family:inherit;text-align:left;text-decoration:none;cursor:pointer;transition:border-color .15s}.manage-row:hover{border-color:var(--red)}.manage-row.bare{background:var(--card)}.manage-row>div{flex:1;min-width:0}.manage-row strong{display:block;font-size:var(--fs-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.manage-row span{display:block;margin-top:4px;font-size:var(--fs-caption);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.manage-row svg{flex:none;width:18px;height:18px;color:var(--muted-2)}@media(min-width:821px){.app-shell.owner-route .topbar{display:none}.app-shell.owner-route .owner-shell{min-height:100vh}.app-shell.owner-route .sidebar{top:0;height:100vh}}.abc-groups{display:flex;flex-direction:column;gap:22px}.abc-group{display:flex;flex-direction:column;gap:10px}.abc-group-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.abc-badge{font-size:var(--fs-small);font-weight:var(--fw-medium);padding:3px 11px;border-radius:var(--r-pill);color:var(--white)}.abc-badge.abc-A{background:var(--green)}.abc-badge.abc-B{background:var(--amber)}.abc-badge.abc-C{background:var(--muted)}.abc-group-meta{font-size:var(--fs-small);color:var(--muted);font-weight:var(--fw-medium)}.abc-group-hint{margin:0;font-size:var(--fs-small);color:var(--muted)}.abc-empty{margin:0;font-size:var(--fs-body);color:var(--muted)}.abc-brand-filter{margin-bottom:4px}.balance-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.balance-kpi{border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px;background:var(--card);display:flex;flex-direction:column;gap:2px}.balance-kpi b{font-size:var(--fs-title)}.balance-kpi span{font-size:var(--fs-caption);color:var(--muted)}.balance-filters{margin:12px 0}.balance-hist-filters{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.balance-hist-filters .matrix-search{margin-bottom:0}.balance-hist-pick{width:100%;min-height:44px;padding:0 40px 0 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);color:var(--fg);font-family:inherit;font-size:var(--fs-body);outline:none;cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238a8a8a' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 13px center}.balance-hist-pick:focus{border-color:var(--red);box-shadow:0 0 0 3px #c1121f1f}.balance-hist-summary{border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);padding:14px;margin-bottom:16px}.balance-hist-summary .bhs-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:12px}.balance-hist-summary .bhs-head .mx-brand{font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.04em;color:var(--muted-2)}.balance-hist-summary .bhs-head strong{font-size:var(--fs-body)}.balance-hist-summary .bhs-period{font-size:var(--fs-caption);color:var(--muted);margin-left:auto}.balance-hist-summary .bhs-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.balance-hist-summary .bhs-stat{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:var(--r-sm);background:var(--soft)}.balance-hist-summary .bhs-stat b{font-size:var(--fs-lead);font-weight:var(--fw-medium)}.balance-hist-summary .bhs-stat b.pos{color:var(--green)}.balance-hist-summary .bhs-stat b.neg{color:var(--red)}.balance-hist-summary .bhs-stat span{font-size:var(--fs-caption);color:var(--muted)}.balance-hist-filters .balance-filters{margin:0}.balance-add-bar{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.balance-add-form{border:1px solid var(--line);border-radius:var(--r-md);padding:14px;margin-bottom:14px;background:var(--soft);display:flex;flex-direction:column;gap:12px}.balance-form-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.balance-form-head .mx-brand{display:block;font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.04em;color:var(--muted-2)}.balance-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.balance-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.balance-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card)}.balance-row-main{display:flex;flex-direction:column;gap:3px;min-width:0}.balance-row-main .mx-brand{font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.04em;color:var(--muted-2)}.balance-row-main strong{font-size:var(--fs-body)}.balance-row-main small{display:flex;align-items:center;gap:8px;font-size:var(--fs-caption);flex-wrap:wrap}.balance-row-side{display:flex;align-items:center;gap:12px;flex-shrink:0}.balance-row-side b{font-size:var(--fs-body)}.balance-row-side .danger{color:var(--red)}.balance-badge{font-size:var(--fs-micro);font-weight:var(--fw-medium);padding:2px 8px;border-radius:var(--r-pill);white-space:nowrap}.balance-badge.is-low{background:var(--warn-bg);color:var(--warn-fg)}.balance-badge.is-empty,.balance-badge.is-neg{background:var(--red-soft);color:var(--red)}.balance-row.is-low{border-color:color-mix(in srgb,var(--amber) 42%,var(--line))}.balance-row.is-empty,.balance-row.is-neg{border-color:color-mix(in srgb,var(--red) 40%,var(--line));background:var(--red-soft)}.balance-row.is-neg{border-left:4px solid var(--red)}.balance-plus{width:34px;height:34px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--card);font-size:var(--fs-title);font-weight:var(--fw-medium);line-height:1;color:var(--red);cursor:pointer}.balance-plus:hover{border-color:var(--red)}.balance-remove{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--card);color:var(--muted-2);cursor:pointer}.balance-remove svg{width:17px;height:17px}.balance-remove:hover{border-color:var(--red);color:var(--red)}.balance-topup{margin-top:6px;border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px;background:var(--soft);display:flex;flex-direction:column;gap:10px}.balance-remove-confirm{border-color:color-mix(in srgb,var(--red) 40%,var(--line));background:var(--red-soft)}.balance-remove-actions{display:flex;gap:10px;justify-content:flex-end}.danger-btn{min-height:42px;border-radius:var(--r-sm);font-weight:var(--fw-medium);padding:0 16px;border:1px solid var(--red);color:var(--white);background:var(--red);cursor:pointer}.danger-btn:disabled{opacity:.6;cursor:default}.balance-hist{display:flex;flex-direction:column;gap:20px;margin-top:12px}.balance-hist-day{display:flex;flex-direction:column;gap:8px}.balance-hist-day-head{display:flex;align-items:center;gap:12px;padding:6px 2px;position:sticky;top:0;z-index:1;background:var(--bg)}.balance-hist-day-head .bh-date{font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--fg);white-space:nowrap;letter-spacing:-.01em}.balance-hist-day-head.is-recent .bh-date{color:var(--red)}.balance-hist-day-head .bh-rule{flex:1;height:1px;background:var(--line);border-radius:1px}.balance-hist-day-head .bh-count{font-size:var(--fs-caption);color:var(--muted);white-space:nowrap}.balance-hist-day .balance-list{margin-top:0;gap:8px}.balance-hist-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card)}.balance-hist-row .balance-row-side{flex-direction:column;align-items:flex-end;gap:2px;text-align:right}.balance-hist-row .balance-row-side .muted-line{margin:0}.balance-hist-row .bh-remaining{font-weight:var(--fw-medium);color:var(--muted-2)}.balance-hist-row .bh-remaining.danger{color:var(--red)}.hist-badge{font-size:var(--fs-micro);font-weight:var(--fw-medium);padding:2px 8px;border-radius:var(--r-pill);background:var(--soft);color:var(--muted);white-space:nowrap}.hist-badge.is-manual-add{background:var(--ok-bg);color:var(--ok-fg)}.hist-badge.is-manual-topup{background:var(--info-bg);color:var(--info-fg)}.hist-badge.is-consumption{background:var(--red-soft);color:var(--red)}.hist-badge.is-distribute{background:var(--warn-bg);color:var(--warn-fg)}.hist-badge.is-write-off{background:var(--soft);color:var(--muted);text-decoration:line-through}@media(max-width:560px){.balance-kpis{grid-template-columns:1fr 1fr}.balance-form-grid{grid-template-columns:1fr}}.balance-day{margin-bottom:14px}.balance-day .mix-ring-title{margin:0 0 8px}.flavor-grid button.bal-low:not(.chosen){border-color:var(--warn-line)}.flavor-grid button.bal-empty:not(.chosen),.flavor-grid button.bal-neg:not(.chosen){border-color:var(--danger-line);background:var(--red-soft)}.balance-warning-card{display:flex;flex-direction:column;gap:7px;padding:9px 12px;margin-bottom:10px;border:1px solid rgba(217,119,6,.55);border-radius:var(--r-md);background:#d977061f}.balance-warning-card .bw-title{font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--amber)}.balance-warning-card .bw-list{display:flex;flex-wrap:wrap;gap:6px}.balance-warning-card .bw-item{font-size:var(--fs-caption);font-weight:var(--fw-medium);padding:2px 9px;border-radius:var(--r-pill);background:#d9770633;color:var(--fg)}.preset-card.event-preset{border-color:#d977068c;background:#d977061a}.preset-card.event-preset>button:disabled{opacity:.6;cursor:default}.preset-event-tag{margin:0;font-size:var(--fs-caption);line-height:1.4;color:var(--amber)}.event-note{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 10px;padding:8px 12px;border:1px solid rgba(217,119,6,.55);border-radius:var(--r-md);background:#d977061a;font-size:var(--fs-small);line-height:1.4}.event-note .text-btn{flex:0 0 auto}.add-flavor-quick-row .quick-chip.event-chip{border-color:var(--amber);color:var(--amber)}.event-setup{display:grid;gap:14px;padding:16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card)}.event-setup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.event-setup-head h2{margin:2px 0 0;font-size:var(--fs-head);font-weight:var(--fw-bold);letter-spacing:-.3px}.event-setup-facts{display:grid;gap:10px;margin:0}.event-setup-facts dt{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.event-setup-facts dd{margin:2px 0 0;font-size:var(--fs-body);line-height:1.5}.event-setup-warning{margin:0;padding:9px 12px;font-size:var(--fs-small);line-height:1.45;border:1px solid rgba(217,119,6,.55);border-radius:var(--r-md);background:#d977061f}.event-setup-summary{display:grid;gap:12px}.event-setup-list{display:grid;gap:0;margin:0;padding:0;list-style:none;border:1px solid var(--line);border-radius:var(--r-md)}.event-setup-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;font-size:var(--fs-body)}.event-setup-list li+li{border-top:1px solid var(--line)}.event-setup-list span{min-width:0;overflow-wrap:anywhere}.event-setup-actions{display:flex;gap:8px;flex-wrap:wrap}.event-setup-actions button{min-height:44px}.event-setup-reward{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--line)}.event-setup-reward>div{display:grid;gap:4px;flex:1 1 260px;min-width:0}.event-setup-reward b{font-size:var(--fs-lead);font-weight:var(--fw-medium);overflow-wrap:anywhere}.event-setup-reward .event-setup-reward-none{color:var(--muted);font-weight:var(--fw-medium)}.event-setup-reward .muted-line{margin:0}.event-setup-reward .secondary-btn{flex:none;min-height:44px}.balance-import-title{display:block;font-size:var(--fs-body);margin-bottom:6px}.balance-import-actions{display:flex;gap:10px;flex-wrap:wrap}.balance-import-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:var(--fs-small)}.balance-import-rows{display:flex;flex-direction:column;gap:6px;max-height:340px;overflow-y:auto}.balance-import-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);cursor:pointer}.balance-import-row.off{opacity:.5}.balance-import-row>input{width:16px;height:16px;flex-shrink:0}.balance-import-row .bi-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.balance-import-row .bi-main strong{font-size:var(--fs-small)}.balance-import-row .bi-main small{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--fs-caption)}.balance-import-row .bi-side{display:flex;flex-direction:column;align-items:flex-end;gap:1px;flex-shrink:0;font-size:var(--fs-caption)}.balance-import-row .bi-side b{font-size:var(--fs-body)}.bi-tag{font-size:var(--fs-micro);font-weight:var(--fw-medium);padding:1px 7px;border-radius:var(--r-pill);white-space:nowrap}.bi-tag.is-new{background:var(--ok-bg);color:var(--ok-fg)}.bi-tag.is-topup{background:var(--info-bg);color:var(--info-fg)}.bi-tag.is-warn{background:var(--warn-bg);color:var(--warn-fg)}.balance-import-row.ambiguous{border-color:var(--amber);align-items:flex-start}.balance-import-row .bi-line-select{margin-top:4px;max-width:100%;font-size:var(--fs-caption);padding:3px 6px;border:1px solid var(--amber);border-radius:var(--r-sm);background:var(--card);color:inherit;cursor:pointer}.bi-hint{color:var(--amber)}.balance-import-problems{border:1px solid rgba(193,18,31,.4);border-radius:var(--r-sm);padding:8px 12px;background:#c1121f14;display:flex;flex-direction:column;gap:4px}.balance-import-problems b{font-size:var(--fs-small);color:var(--red)}.voice-inline-error{color:var(--red);font-size:var(--fs-small);margin:0 0 10px;text-align:center}.voice-dictation-panel{position:fixed;top:calc(var(--vv-top, 0px) + 8px + env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);max-width:calc(100vw - 24px);z-index:45;display:flex;align-items:center;gap:10px;border-radius:var(--r-md);padding:8px 16px 8px 10px;color:var(--white);background:var(--surface-accent);box-shadow:0 8px 24px #00000052;animation:voiceDictationIn .22s ease both}@keyframes voiceDictationIn{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}.voice-dictation-mic{flex:none;width:30px;height:30px;border-radius:var(--r-pill);background:#ffffff29;display:grid;place-items:center}.voice-dictation-mic svg{width:18px;height:18px;fill:none;stroke:var(--white);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.voice-eq{flex:none;display:flex;align-items:flex-end;gap:2px;width:40px;height:20px}.voice-eq i{display:block;flex:1;max-width:3px;min-height:3px;border-radius:2px;background:#ffffffb8;transition:height .08s linear}.voice-dictation-label{min-width:0;font-size:var(--fs-small);font-weight:var(--fw-medium);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-cmd-log{display:grid;gap:8px;margin:0 0 4px}.voice-cmd-row{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--r-md);padding:10px 12px;background:var(--card)}.voice-cmd-row.dim{opacity:.75}.voice-cmd-row.dimmer{opacity:.55}.voice-cmd-body{min-width:0;flex:1;display:grid;gap:2px}.voice-cmd-body strong{font-size:var(--fs-small);font-weight:var(--fw-medium)}.voice-cmd-body span{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted)}.voice-cmd-undo{flex:none;border:1px solid var(--line);border-radius:var(--r-sm);min-height:34px;padding:0 14px;background:var(--card);color:var(--fg);font-family:inherit;font-size:var(--fs-caption);font-weight:var(--fw-medium);cursor:pointer}.voice-cmd-undo:active{transform:scale(.96)}@property --voice-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@keyframes voice-spin{to{--voice-angle: 360deg}}.voice-siri-btn:before,.voice-siri-btn:after,.voice-screen-glow-ring{--voice-sweep: conic-gradient(from var(--voice-angle), #ff2036, #ff5566, #ffb3bc, #ff3355, #f5002a, #ff2036)}.voice-siri-btn{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:58px;padding:0 18px;border:0;border-radius:var(--r-md);color:var(--fg);background:var(--card);font-family:inherit;font-size:var(--fs-lead);font-weight:var(--fw-medium);cursor:pointer;white-space:nowrap;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;transition:transform .09s ease,background-color .12s ease}.voice-siri-btn.active{font-size:var(--fs-body);background:color-mix(in srgb,var(--red) 6%,var(--card))}.voice-siri-btn:active{transform:scale(.98)}.voice-siri-btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.voice-siri-btn:before,.voice-siri-btn:after{content:"";position:absolute;inset:0;border-radius:inherit;padding:2.8px;background:var(--voice-sweep);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);animation:voice-spin 3.2s linear infinite;pointer-events:none}.voice-siri-btn:after{z-index:-1;inset:-4px;border-radius:var(--r-md);padding:calc(4px + 6px * var(--intensity, .42));filter:blur(calc(6px + 10px * var(--intensity, .42)));opacity:var(--intensity, .42)}.voice-siri-eq{display:inline-flex;align-items:center;gap:4px;height:24px}.voice-siri-eq i{display:block;width:5px;height:20%;border-radius:3px;background:currentColor;transition:height .09s linear}.bottom-bar:has(.voice-bar-stack),.bottom-bar:has(.voice-cancel-btn){grid-template-columns:minmax(0,1fr)}.voice-bar-stack{display:grid;gap:10px}.voice-screen-glow{position:fixed;inset:0;z-index:60;pointer-events:none;filter:blur(calc(4px + 5px * var(--intensity, .9)));opacity:var(--intensity, .9);animation:voice-glow-in .22s ease-out both}.voice-screen-glow-ring{position:absolute;inset:0;border-radius:var(--r-md);padding:calc(3px + 7px * var(--intensity, .9));background:var(--voice-sweep);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);animation:voice-spin 3.6s linear infinite}@keyframes voice-glow-in{0%{opacity:0}}@media(prefers-reduced-motion:reduce){.voice-siri-btn:before,.voice-siri-btn:after,.voice-screen-glow-ring{animation:none}}.qr-modal:has(.voice-dispute-sheet){padding:0;place-items:end center}.voice-dispute-sheet{width:min(520px,100%);max-height:min(88vh,var(--vv-height, 88vh));overflow-y:auto;display:grid;gap:14px;padding:20px 18px calc(18px + env(safe-area-inset-bottom,0px));border-radius:var(--r-md) var(--r-md) 0 0;background:var(--card);box-shadow:var(--shadow);animation:sheet-up .24s ease both}@keyframes sheet-up{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.voice-dispute-head{display:grid;gap:4px}.voice-dispute-head h2{margin:0;font-size:var(--fs-head);font-weight:var(--fw-bold);letter-spacing:-.3px}.voice-dispute-card{border:1px solid var(--line);border-radius:var(--r-md);padding:14px;display:grid;gap:12px}.voice-dispute-card.skipped{opacity:.6}.voice-dispute-row-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.voice-dispute-row-head strong{font-size:var(--fs-body);font-weight:var(--fw-bold)}.voice-dispute-options{display:grid;gap:8px}.voice-dispute-empty{margin:0;font-size:var(--fs-caption);color:var(--muted)}div.voice-dispute-empty{display:grid;grid-column:1 / -1;justify-items:start;gap:8px}div.voice-dispute-empty p{margin:0}.voice-dispute-option{border:1px solid var(--line);border-radius:var(--r-md);padding:11px 12px;background:var(--card);color:var(--fg);font-family:inherit;text-align:left;display:grid;gap:2px;cursor:pointer}.voice-dispute-option strong{font-size:var(--fs-small);font-weight:var(--fw-medium)}.voice-dispute-option span{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted)}.voice-dispute-option.active{border-color:var(--red);background:var(--red-soft)}.voice-dispute-done{width:100%;min-height:52px}.voice-mode-choice{width:min(360px,100%);display:grid;gap:14px;padding:20px;border-radius:var(--r-md);background:var(--card);box-shadow:var(--shadow)}.voice-mode-choice h2{margin:0;font-size:var(--fs-title);font-weight:var(--fw-bold);letter-spacing:-.3px}.voice-mode-choice-actions{display:grid;gap:8px}.voice-mode-choice-actions .secondary-btn,.voice-mode-choice-actions .primary-btn{width:100%}@media(prefers-reduced-motion:reduce){.voice-eq i{transition:none}.voice-dictation-panel,.voice-dispute-sheet{animation:none}}.mix-total-card{display:grid;gap:2px;margin-bottom:10px;padding:12px 14px;border-radius:var(--r-md);color:var(--white);background:var(--red)}.mix-total-card .eyebrow{color:#ffffffc7}.mix-total-card strong{font-size:var(--fs-display);font-weight:var(--fw-bold);line-height:1;letter-spacing:-1px}.mix-total-card span{color:#ffffffd1;font-size:var(--fs-caption);font-weight:var(--fw-medium)}.mix-total-card.full{background:var(--ok-strong)}.icon-btn.has-dot{position:relative}.icon-btn.has-dot:after{content:"";position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 0 2px var(--card)}.step-list{display:grid;gap:8px}.step-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:10px 10px 10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card)}.step-row-main{min-width:0;display:grid;gap:2px}.step-row-main strong{font-size:var(--fs-body);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step-row-main span{color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step-row.changed{border-color:#c1121f80;background:var(--red-soft)}.stepper{display:flex;align-items:center;gap:2px}.stepper button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:var(--r-pill);color:var(--fg);background:var(--soft);font-size:var(--fs-title);font-weight:var(--fw-medium);line-height:1;cursor:pointer}.stepper button:disabled{opacity:.35;cursor:default}.stepper button:active:not(:disabled){transform:scale(.94)}.stepper b{min-width:46px;text-align:center;font-size:var(--fs-body);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.step-remove{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:var(--r-pill);color:var(--muted);background:var(--card);cursor:pointer}.step-remove svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.add-flavor-btn{width:100%;min-height:48px}.picker-empty{margin:0;padding:18px 14px;border:1px dashed var(--line);border-radius:var(--r-md);color:var(--muted);font-size:var(--fs-small);font-weight:var(--fw-medium);text-align:center}.picker-hint-row{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-medium)}.qr-modal:has(.add-flavor-sheet),.qr-modal:has(.comment-sheet){padding:0;place-items:end center}.add-flavor-sheet,.comment-sheet{width:min(520px,100%);display:grid;gap:12px;padding:10px 16px calc(18px + env(safe-area-inset-bottom,0px));border-radius:var(--r-md) var(--r-md) 0 0;background:var(--card);box-shadow:var(--shadow);animation:sheet-up .24s ease both}.add-flavor-sheet{max-height:min(92vh,var(--vv-height, 92vh));overflow-y:auto}.sheet-grabber{justify-self:center;width:38px;height:4px;border-radius:var(--r-pill);background:var(--line)}.add-flavor-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.add-flavor-head h2{margin:0;font-size:var(--fs-head);font-weight:var(--fw-bold);letter-spacing:-.3px;white-space:nowrap}.add-flavor-quick{display:grid;gap:6px}.add-flavor-quick-row .quick-chip{display:inline-flex;align-items:center;gap:6px}.add-flavor-quick-row .quick-chip svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round}.comment-sheet{max-height:min(92vh,var(--vv-height, 92vh));overflow-y:auto}.comment-sheet h2{margin:0;font-size:var(--fs-head);font-weight:var(--fw-bold);letter-spacing:-.3px}.comment-sheet textarea{min-height:96px}.comment-sheet-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.comment-sheet-actions button{width:100%;min-height:48px}@media(prefers-color-scheme:dark){.step-row{background:var(--soft)}.stepper button{background:#ffffff0d}.step-remove{background:transparent}}@media(prefers-reduced-motion:reduce){.add-flavor-sheet,.comment-sheet{animation:none}}.topbar-slot{display:inline-flex;align-items:center}.wordmark-accent{color:var(--red)}.sheet-close{flex:0 0 auto;margin-left:2px}.points-entry{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);text-align:left;cursor:pointer;transition:transform .1s ease}.points-entry:active{transform:scale(.98)}.points-entry-bars{display:flex;flex-direction:column;gap:3px;flex:0 0 auto}.points-entry-bars i{display:block;width:18px;height:4px;border-radius:2px}.points-entry-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.points-entry-text b{font-size:var(--fs-body);font-weight:var(--fw-medium)}.points-entry-desc{font-size:var(--fs-caption);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.points-entry-expiring{color:var(--red);font-weight:var(--fw-medium)}.points-entry>svg{width:20px;height:20px;flex:0 0 auto;color:var(--muted-2)}.points-search{width:100%;min-height:42px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);font-size:var(--fs-body)}.points-list{display:flex;flex-direction:column;gap:10px}.points-foot{font-size:var(--fs-caption);color:var(--muted-2);text-align:center;margin:2px 0 0}.venue-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);overflow:hidden}.venue-card-head{width:100%;display:flex;align-items:center;gap:12px;padding:14px 16px;background:none;border:0;cursor:pointer;text-align:left;color:inherit}.venue-avatar{width:42px;height:42px;border-radius:var(--r-sm);color:var(--white);font-weight:var(--fw-bold);font-size:var(--fs-body);display:grid;place-items:center;flex:0 0 auto}.venue-card-meta{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}.venue-card-meta b{font-size:var(--fs-lead);font-weight:var(--fw-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.venue-card-meta span{font-size:var(--fs-caption);color:var(--muted)}.venue-card-bal{text-align:right;flex:0 0 auto;line-height:1}.venue-card-bal strong{display:block;font-size:var(--fs-head);font-weight:var(--fw-bold)}.venue-card-bal small{font-size:var(--fs-micro);color:var(--muted)}.venue-card-chevron{flex:0 0 auto;color:var(--muted-2);display:grid;place-items:center;transition:transform .28s cubic-bezier(.3,.8,.4,1)}.venue-card-chevron svg{width:18px;height:18px}.venue-card.open .venue-card-chevron{transform:rotate(90deg)}.venue-card-fold{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s cubic-bezier(.3,.8,.4,1)}.venue-card.open .venue-card-fold{grid-template-rows:1fr}.venue-card-fold-inner{min-height:0;overflow:hidden;opacity:0;transition:opacity .16s ease}.venue-card.open .venue-card-fold-inner{opacity:1;transition:opacity .2s ease .02s}.venue-card-body{border-top:1px solid var(--line);padding:2px 16px}.venue-card-loading{padding:14px 0;font-size:var(--fs-small);color:var(--muted);text-align:center}.loyalty-act{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.loyalty-act:last-child{border-bottom:0}.loyalty-act-kind{font-weight:var(--fw-medium);font-size:var(--fs-body)}.loyalty-act-date{font-size:var(--fs-caption);color:var(--muted-2)}.loyalty-act-amt{font-weight:var(--fw-medium);font-size:var(--fs-body);flex:0 0 auto}.loyalty-act-amt.plus{color:var(--green)}.loyalty-act-amt.minus{color:var(--red)}@media(prefers-reduced-motion:reduce){.points-entry,.venue-card-fold,.venue-card-fold-inner,.venue-card.open .venue-card-fold-inner{transition:none}}.cmp{--cmp-line: var(--line);--cmp-ink: var(--fg);--cmp-dim: var(--muted);--cmp-faint: var(--muted-2);--cmp-accent: var(--red);--cmp-stage: #f4f2f0;--cmp-stage-veil: #efe6e2;--cmp-gold: #b45309;--cmp-flame: #b45309;background:var(--bg);color:var(--cmp-ink);min-height:calc(100dvh - 58px);align-content:start}@media(prefers-color-scheme:dark){.cmp{--cmp-gold: #ff9c5a;--cmp-flame: #ffb98a;--cmp-stage: #030304;--cmp-stage-veil: #0a0710}}.cmp-scene{position:relative;z-index:0;height:340px;margin:0 -10px;overflow:hidden;will-change:transform;background:linear-gradient(180deg,var(--cmp-stage) 0%,var(--cmp-stage-veil) 78%,var(--cmp-stage) 100%)}.cmp-scene-sm{height:232px}.cmp-figure{position:relative;z-index:1;height:100%;will-change:transform}.cmp-body{position:relative;z-index:1;display:grid;gap:12px;align-content:start;background:var(--bg)}.cmp-body:before{content:"";position:absolute;left:-10px;right:-10px;bottom:100%;height:120px;background:linear-gradient(to bottom,transparent,var(--bg));pointer-events:none}companion-3d{display:block}companion-3d canvas.companion-in{animation:companion-in .28s ease-out both}@keyframes companion-in{0%{opacity:0}}@media(prefers-reduced-motion:reduce){companion-3d canvas.companion-in{animation:none}}.cmp-figure companion-3d,.cmp-scene companion-3d{display:block;width:100%;height:100%}.cmp-glow{position:absolute;inset:-20% -10%;z-index:0}.cmp-glow i{position:absolute;display:block;border-radius:50%;opacity:.22}.cmp-glow i:nth-child(1){left:6%;top:12%;width:54%;height:46%;background:radial-gradient(circle,#ef233c 0%,transparent 70%);filter:blur(16px);animation:cmp-drift-a 17s ease-in-out infinite}.cmp-glow i:nth-child(2){right:4%;top:30%;width:46%;height:42%;background:radial-gradient(circle,#ff7a2f 0%,transparent 70%);filter:blur(14px);animation:cmp-drift-b 21s ease-in-out infinite}.cmp-glow i:nth-child(3){left:24%;bottom:4%;width:52%;height:38%;background:radial-gradient(circle,#8a5cf0 0%,transparent 72%);filter:blur(12px);animation:cmp-drift-c 26s ease-in-out infinite}@keyframes cmp-drift-a{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(8%,-6%,0) scale(1.12)}}@keyframes cmp-drift-b{0%,to{transform:translateZ(0) scale(1.06)}50%{transform:translate3d(-7%,8%,0) scale(.94)}}@keyframes cmp-drift-c{0%,to{transform:translateZ(0) scale(.96)}50%{transform:translate3d(6%,-9%,0) scale(1.1)}}.companion-fallback{display:grid;place-items:center;width:100%;height:100%}.companion-fallback span{font-size:var(--fs-small);font-weight:var(--fw-bold);letter-spacing:.16em;text-transform:uppercase;color:var(--cmp-ink)}.cmp-brow{margin:0;font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.2em;text-transform:uppercase;color:var(--cmp-dim)}.cmp-brow i{font-style:normal;font-weight:var(--fw-medium);letter-spacing:.12em;color:var(--cmp-dim)}.cmp-title{display:grid;gap:6px;padding:4px 0 2px}.cmp-title-sm{padding-top:16px}.cmp-name{margin:0;font-size:var(--fs-hero);font-weight:var(--fw-bold);line-height:.96;letter-spacing:-.045em;color:var(--cmp-ink)}.cmp-name-xl{font-size:var(--fs-hero)}.cmp-name-sm{font-size:var(--fs-hero);letter-spacing:-.035em}.cmp-name span{font-size:.42em;font-weight:var(--fw-medium);letter-spacing:-.01em;color:var(--cmp-dim)}.cmp-status{margin:0;font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--cmp-dim)}.cmp-note{margin:0;font-size:var(--fs-caption);font-weight:var(--fw-medium);line-height:1.5;color:var(--cmp-dim)}.cmp-link{color:var(--cmp-accent);text-decoration:none;white-space:nowrap}.cmp-next{display:grid;gap:10px;padding:14px 0;border-top:1px solid var(--cmp-line)}.cmp-next-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}.cmp-next-value{margin:0;font-size:var(--fs-hero);font-weight:var(--fw-bold);line-height:.9;letter-spacing:-.04em;text-align:right;color:var(--cmp-ink);font-variant-numeric:tabular-nums}.cmp-next-value span{display:block;font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.04em;color:var(--cmp-dim)}.cmp-bar{display:block;position:relative;height:9px;border-radius:var(--r-bar);background:var(--cmp-line)}.cmp-bar.tall{height:12px}.cmp-bar-fill{--pct: 0%;position:absolute;inset:0;border-radius:var(--r-bar);background:var(--cmp-gold);clip-path:inset(0 calc(100% - var(--pct)) 0 0 round var(--r-bar));transition:clip-path .45s ease}@media(prefers-reduced-motion:reduce){.cmp-bar-fill{transition:none}}.cmp-title-next{display:grid;gap:6px;margin-top:8px}.cmp-title-next b{color:var(--cmp-ink);font-weight:var(--fw-bold)}.cmp-look{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:10px;padding:12px 0;text-decoration:none;color:var(--cmp-ink);border-top:1px solid var(--cmp-line)}.cmp-look b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-body);font-weight:var(--fw-medium)}.cmp-look .cmp-link{font-size:var(--fs-caption);font-weight:var(--fw-medium)}.cmp-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--cmp-line)}.cmp-axis{display:grid;gap:6px;align-content:start;min-width:0;padding:12px 12px 12px 0;text-decoration:none;color:inherit;border-bottom:1px solid var(--cmp-line);-webkit-tap-highlight-color:transparent}.cmp-axis:nth-child(2n){padding:12px 0 12px 12px;border-left:1px solid var(--cmp-line)}.cmp-axis:nth-last-child(-n+2){border-bottom:0}.cmp-axis:active{background:var(--soft)}.cmp-axis:focus-visible{outline:2px solid var(--cmp-accent);outline-offset:-2px}.cmp-axis .cmp-meter-value{font-size:var(--fs-head);white-space:nowrap}.cmp-axis .cmp-brow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmp-axis-hint{overflow:hidden;font-size:var(--fs-caption);font-weight:var(--fw-medium);line-height:1.35;color:var(--cmp-dim);text-overflow:ellipsis;white-space:nowrap}.cmp-axis-go{font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--cmp-accent)}.cmp-fold summary{list-style:none;cursor:pointer}.cmp-fold summary::-webkit-details-marker{display:none}.cmp-fold summary:after{content:" +";letter-spacing:0}.cmp-fold[open] summary:after{content:" −"}.cmp-meter-value{font-size:var(--fs-head);font-weight:var(--fw-bold);letter-spacing:-.03em;color:var(--cmp-gold);font-variant-numeric:tabular-nums}.cmp-meter-value span{font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--cmp-dim)}.cmp-block{display:grid;gap:8px;padding:16px 0;border-top:1px solid var(--cmp-line)}.cmp-today{display:grid;gap:3px;padding:12px 0;text-decoration:none;color:var(--cmp-ink);border-top:1px solid var(--cmp-line)}.cmp-today b{font-size:var(--fs-body);font-weight:var(--fw-medium)}.cmp-today span{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--cmp-dim)}.cmp-rules{display:grid;gap:8px;margin:0;padding:0;list-style:none}.cmp-rules li{position:relative;padding-left:16px;font-size:var(--fs-caption);font-weight:var(--fw-medium);line-height:1.5;color:var(--cmp-dim)}.cmp-rules li:before{content:"□";position:absolute;left:0;top:0;font-size:var(--fs-micro);line-height:1.7;color:var(--cmp-faint)}.cmp-tiers{display:grid;margin:4px 0 0;padding:0;list-style:none}.cmp-tiers li{display:grid;grid-template-columns:16px 1fr auto;align-items:baseline;gap:10px;padding:9px 0;font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--cmp-dim);border-top:1px solid var(--cmp-line)}.cmp-tiers li:first-child{border-top:0}.cmp-tiers li.on{color:var(--cmp-ink)}.cmp-tier-mark{color:var(--cmp-faint);font-size:var(--fs-micro)}.cmp-tiers li.on .cmp-tier-mark{color:var(--cmp-gold)}.cmp-tier-at{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--cmp-dim);font-variant-numeric:tabular-nums}.cmp-tiers li.on .cmp-tier-at{color:var(--cmp-gold)}.cmp-btn-main{width:100%;min-height:54px;margin-top:16px;font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:.1em;text-transform:uppercase;color:var(--bg);background:var(--cmp-ink);border:0;cursor:pointer}.cmp-btn-ghost{width:100%;min-height:54px;margin-top:16px;font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:.1em;text-transform:uppercase;color:var(--cmp-ink);background:transparent;border:1px solid var(--cmp-line);cursor:pointer}.lg-bronze{--lg: #b87333}.lg-silver{--lg: #9aa4b2}.lg-gold{--lg: #d4a017}.lg-flame{--lg: #ff5a3c}.lg-board{display:grid;gap:0;padding:16px 0 0;border-top:1px solid var(--cmp-line)}.lg-podium{display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:8px;margin:0;padding:0;list-style:none}.lg-podium-place{display:grid;justify-items:center;gap:2px;min-width:0;padding:8px 4px 12px;text-align:center;border-bottom:3px solid var(--lg, var(--cmp-line))}.lg-podium-place:nth-child(1){grid-column:2;grid-row:1}.lg-podium-place:nth-child(2){grid-column:1;grid-row:1}.lg-podium-place:nth-child(3){grid-column:3;grid-row:1}.lg-podium-place companion-3d{display:block;width:84px;height:84px}.lg-podium-place:nth-child(1) companion-3d{width:104px;height:104px}.lg-podium-place b{max-width:100%;overflow:hidden;font-size:var(--fs-body);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap;color:var(--cmp-ink)}.lg-podium-place .lg-place{font-size:var(--fs-head);font-weight:var(--fw-bold);line-height:1;color:var(--lg, var(--cmp-ink))}.lg-podium-place .lg-score{font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--cmp-dim)}.lg-podium-place.me b{color:var(--cmp-accent)}.lg-id{font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.08em;color:var(--cmp-dim);font-variant-numeric:tabular-nums}.lg-rows{display:grid;margin:12px 0 0;padding:0;list-style:none}.lg-row{display:grid;grid-template-columns:28px 40px 1fr auto;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--cmp-line)}.lg-face{display:block;width:40px;height:40px}.lg-row.me{box-shadow:inset 2px 0 0 var(--cmp-accent);padding-left:8px}.lg-row .lg-place{font-size:var(--fs-body);font-weight:var(--fw-bold);color:var(--cmp-dim);font-variant-numeric:tabular-nums}.lg-dot{width:10px;height:10px;border-radius:50%;background:var(--cmp-flame)}.lg-who{display:grid;gap:1px;min-width:0}.lg-who b{overflow:hidden;font-size:var(--fs-body);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap;color:var(--cmp-ink)}.lg-row .lg-score{display:grid;justify-items:end;font-size:var(--fs-title);font-weight:var(--fw-bold);color:var(--cmp-ink);font-variant-numeric:tabular-nums}.lg-row .lg-score small{font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.06em;color:var(--lg)}.lg-count{padding:12px 0 4px}.lg-split{display:grid;gap:8px;margin-top:4px}.lg-split-bar{display:flex;gap:2px;height:8px}.lg-split-bar i{display:block;min-width:4px;flex-basis:0}.lg-split .flavors{--part: var(--cmp-accent)}.lg-split .ratings{--part: #12b76a}.lg-split .shelves{--part: var(--cmp-gold)}.lg-split-bar i{background:var(--part)}.lg-split-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0;padding:0;list-style:none;font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--cmp-dim)}.lg-split-legend li{display:flex;align-items:center;gap:5px}.lg-split-legend li:before{content:"";width:8px;height:8px;background:var(--part)}.lg-split-legend b{color:var(--cmp-ink);font-weight:var(--fw-medium)}.lg-delta b{font-weight:var(--fw-bold);color:var(--cmp-ink)}.lg-delta b.up{color:#12b76a}.lg-delta b.down{color:var(--cmp-accent)}.lg-head{gap:4px}.lg-venue-name{margin:0;overflow:hidden;font-size:var(--fs-display);font-weight:var(--fw-bold);line-height:1.05;letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;color:var(--cmp-ink)}.lg-venue-pick{position:relative;display:flex;align-items:center;gap:6px;min-width:0;color:var(--cmp-dim)}.lg-venue-pick svg{flex:none;width:20px;height:20px;transform:rotate(90deg)}.lg-venue-pick select{position:absolute;inset:0;width:100%;opacity:0;font-size:var(--fs-lead);cursor:pointer}.lg-venue-pick:focus-within{outline:2px solid var(--cmp-accent);outline-offset:2px}.lg-me{display:grid;gap:10px;margin-top:12px;padding:14px;background:color-mix(in srgb,var(--lg, var(--cmp-ink)) 9%,transparent);border:1px solid color-mix(in srgb,var(--lg, var(--cmp-line)) 35%,transparent)}.lg-me-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px}.lg-me-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;font-size:var(--fs-title);font-weight:var(--fw-bold);color:var(--lg);border:3px solid var(--lg);font-variant-numeric:tabular-nums}.lg-me-text{display:grid;gap:2px;min-width:0}.lg-me-text b{font-size:var(--fs-title);font-weight:var(--fw-bold);letter-spacing:-.01em;color:var(--cmp-ink)}.lg-me-text span{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--cmp-dim)}.lg-me .cmp-note{margin-top:-4px}.lg-reward{display:grid;gap:2px;margin:0;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--lg, var(--cmp-line)) 35%,transparent)}.lg-reward>span{font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.04em;text-transform:uppercase;color:var(--lg, var(--cmp-dim))}.lg-reward ul{display:grid;gap:8px;margin:4px 0;padding:0;list-style:none}.lg-reward li{display:grid;gap:1px}.lg-reward b{font-size:var(--fs-lead);font-weight:var(--fw-bold);line-height:1.3;color:var(--cmp-ink);overflow-wrap:anywhere}.lg-reward small{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--cmp-dim)}.lg-reward .lg-reward-hint{padding:8px 10px;font-weight:var(--fw-medium);line-height:1.45;color:var(--cmp-ink);background:color-mix(in srgb,var(--cmp-accent) 14%,transparent)}.lg-reward li.got b{font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--cmp-dim)}.lg-rewards.lg-rewards-venues li{display:block;padding:0}.lg-rewards.lg-rewards-venues button{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;width:100%;padding:9px 0;font:inherit;text-align:left;color:inherit;background:none;border:0;cursor:pointer}.lg-rewards.lg-rewards-venues span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--cmp-ink)}.lg-rewards.lg-rewards-venues b{display:grid;gap:1px;color:var(--cmp-ink)}.lg-rewards.lg-rewards-venues small{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--cmp-dim)}.lg-rewards{display:grid;margin:0;padding:0;list-style:none}.lg-rewards li{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;padding:9px 0;border-top:1px solid var(--cmp-line);font-size:var(--fs-body)}.lg-rewards li:first-child{border-top:0}.lg-rewards span{font-weight:var(--fw-medium);color:var(--lg, var(--cmp-dim))}.lg-rewards b{font-weight:var(--fw-medium);color:var(--cmp-dim);overflow-wrap:anywhere}.lg-rewards li.got b{color:var(--cmp-ink)}.lg-rewards+.cmp-brow{margin-top:8px}.lg-me+.lg-board,.lg-me+.cmp-block{margin-top:16px;border-top:0}.lg-gap{padding:2px 0;text-align:center;font-weight:var(--fw-bold);color:var(--cmp-faint);border-top:1px solid var(--cmp-line)}.lg-gap+.lg-row{border-top:0}.lg-history{display:grid;margin:0;padding:0;list-style:none}.lg-history li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:10px 0 10px 12px;border-top:1px solid var(--cmp-line);box-shadow:inset 2px 0 0 var(--lg)}.lg-history li:first-child{border-top:0}.lg-history-season{display:grid;gap:2px;min-width:0}.lg-history-season b{font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--cmp-ink)}.lg-history-season span{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--cmp-dim)}.lg-history .lg-score{display:grid;justify-items:end;font-size:var(--fs-title);font-weight:var(--fw-bold);color:var(--cmp-ink);font-variant-numeric:tabular-nums}.lg-history .lg-score small{font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.06em;color:var(--lg)}.cmp-news-slot{display:grid;grid-template-rows:1fr;transition:grid-template-rows .25s ease,opacity .2s ease}.cmp-news-slot>.cmp-news{min-height:0;overflow:hidden;transition:padding .25s ease,border-width .25s ease}.cmp-news-slot.is-leaving{grid-template-rows:0fr;opacity:0}.cmp-news-slot.is-leaving>.cmp-news{padding-block:0;border-bottom-width:0}.cmp-news-slot.is-leaving+*{margin-top:-12px;transition:margin-top .25s ease}@media(prefers-reduced-motion:reduce){.cmp-news-slot,.cmp-news-slot>.cmp-news,.cmp-news-slot.is-leaving+*{transition:none}}.cmp-news{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--cmp-line)}.cmp-news-list{display:grid;gap:6px;margin:0;padding:0;list-style:none;min-width:0}.cmp-news-list li{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px}.cmp-news-art{display:block;height:36px}.cmp-news-art companion-3d{display:block;width:100%;height:100%}.cmp-news-text{display:flex;align-items:baseline;gap:6px;min-width:0;white-space:nowrap}.cmp-news-text b{flex:none;font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--cmp-ink)}.cmp-news-text span{overflow:hidden;text-overflow:ellipsis;font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--cmp-dim)}.cmp-news-text span:before{content:"· "}.cmp-news-close{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;background:none;color:var(--cmp-dim);cursor:pointer}.cmp-news-close svg{width:18px;height:18px}.cmp-overlay{position:fixed;inset:0;z-index:60;display:grid;align-content:center;gap:8px;padding:24px 20px;overflow-y:auto;background:var(--bg)}.cmp-overlay-scene{height:430px}.cmp-overlay-scene companion-3d{display:block;width:100%;height:100%}.cmp-overlay-opened{display:grid;gap:6px;padding-top:14px;border-top:1px solid var(--cmp-line)}.cmp-wardrobe{padding-bottom:0}.cmp-wardrobe-scroll{display:grid;gap:12px;padding-bottom:86px}.cmp-worn{display:grid;gap:4px}.cmp-worn-2{margin-top:10px;scroll-margin-top:80px}.cmp-worn-name{margin:0;font-size:var(--fs-display);font-weight:var(--fw-bold);letter-spacing:-.035em;color:var(--cmp-ink)}.cmp-tiles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--cmp-line);border-left:1px solid var(--cmp-line)}.cmp-tile{display:grid;justify-items:center;gap:2px;padding:10px 4px 12px;font:inherit;text-align:center;background:var(--card);border:0;border-right:1px solid var(--cmp-line);border-bottom:1px solid var(--cmp-line);cursor:pointer}.cmp-tile companion-3d{display:block;width:100%;height:84px}.cmp-tile-name{font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--cmp-ink)}.cmp-tile-at{font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.04em;color:var(--cmp-dim)}.cmp-tile.on{box-shadow:inset 0 0 0 1px var(--cmp-accent)}.cmp-tile.on .cmp-tile-at{color:var(--cmp-accent)}.cmp-tile.locked{opacity:.5;filter:grayscale(1);cursor:default}.cmp-tile.missed{opacity:.5;filter:saturate(.75);cursor:default}.cmp-event{display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--cmp-line)}.cmp-event-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.cmp-event-head h3{margin:0;font-size:var(--fs-title);font-weight:var(--fw-bold);letter-spacing:-.02em;color:var(--cmp-ink)}.cmp-event-status{flex:0 0 auto;font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--cmp-dim)}.cmp-event-status.on{color:var(--cmp-gold)}.cmp-wardrobe-hint{padding-top:4px}.cmp-switch{display:grid;border-top:1px solid var(--cmp-line)}.cmp-switch button{min-height:42px;padding:0 2px;font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-medium);text-align:left;color:var(--cmp-dim);background:transparent;border:0;border-bottom:1px solid var(--cmp-line);cursor:pointer}.cmp-switch button.on{color:var(--cmp-ink);box-shadow:inset 2px 0 0 var(--cmp-accent);padding-left:10px}.cmp-tabs{display:flex;gap:18px;margin:8px -16px 0;padding:0 16px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--cmp-line)}.cmp-tabs::-webkit-scrollbar{display:none}.cmp-tabs button{flex:none;min-height:44px;padding:0;font:inherit;font-size:var(--fs-small);font-weight:var(--fw-medium);white-space:nowrap;color:var(--cmp-dim);background:transparent;border:0;box-shadow:inset 0 -2px 0 transparent;cursor:pointer}.cmp-tabs button.on{color:var(--cmp-ink);box-shadow:inset 0 -2px 0 var(--cmp-accent)}.cmp-brand-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.cmp-brand-count{font-size:var(--fs-small);font-weight:var(--fw-bold);color:var(--cmp-dim);font-variant-numeric:tabular-nums}.cmp-brand.complete .cmp-brand-count{color:var(--cmp-gold)}.cmp-brand-shelf{margin:2px 0 0}.cmp-brand-shelf b{color:var(--cmp-ink)}.cmp-brand-shelf.done{color:var(--cmp-gold)}.cmp-flavors{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none}.cmp-flavors li{max-width:100%;padding:7px 11px;border-radius:var(--r-pill);font-size:var(--fs-caption);font-weight:var(--fw-medium);line-height:1.2;color:var(--cmp-ink);background:var(--soft);overflow-wrap:anywhere}.cmp-flavors li.fresh{display:inline-flex;align-items:center;gap:6px;box-shadow:inset 0 0 0 1px var(--cmp-gold)}.cmp-flavors li.fresh i,.cmp-shelf-fresh i{flex:none;width:6px;height:6px;border-radius:50%;background:var(--cmp-gold)}.cmp-shelf-fresh{display:flex;align-items:center;gap:6px;margin:2px 0 0;font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--cmp-ink)}.cmp-shelf-rules{padding-top:4px}@media(prefers-color-scheme:dark){.cmp-glow i{opacity:.5}}@media(prefers-reduced-motion:reduce){.cmp-glow i{animation:none}}.survey-card{display:grid;gap:12px;padding:16px;color:var(--fg);background:var(--card);border:0;border-radius:var(--r-md)}@media(prefers-color-scheme:dark){.survey-card{background:var(--soft)}}.survey-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.survey-title{margin:0;font-size:var(--fs-lead);font-weight:var(--fw-medium);line-height:1.3}.survey-close{flex:none;width:28px;height:28px;margin:-4px -6px 0 0;border:0;background:transparent;color:var(--muted-2);font-size:var(--fs-title);line-height:1;cursor:pointer}.survey-scale{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);overflow:hidden}.survey-scale button{min-height:46px;border:0;border-radius:0;background:transparent;color:var(--fg);font-size:var(--fs-lead);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;cursor:pointer}.survey-scale button+button{border-left:1px solid var(--line)}.survey-scale button:hover{background:var(--soft)}.survey-scale button.is-active{background:var(--red);color:var(--white)}.survey-legend{display:flex;justify-content:space-between;margin-top:-6px;font-size:var(--fs-caption);color:var(--muted)}.survey-comment{width:100%;resize:vertical}.survey-slot{display:grid;grid-template-rows:1fr;transition:grid-template-rows .3s ease,opacity .2s ease}.survey-slot-inner{min-height:0;overflow:hidden}.survey-slot .survey-card{transition:transform .3s ease}.survey-slot.is-leaving{grid-template-rows:0fr;opacity:0}.survey-slot.is-leaving .survey-card{transform:scale(.96)}.survey-slot.is-leaving+*{margin-top:-12px;transition:margin-top .3s ease}.survey-slot{animation:survey-slot-in .3s ease}.survey-slot:not(.is-leaving)+*{animation:survey-gap-in .3s ease}@keyframes survey-slot-in{0%{grid-template-rows:0fr;opacity:0}}@keyframes survey-gap-in{0%{margin-top:-12px}}.survey-thanks{grid-template-columns:minmax(0,1fr) auto;align-items:center;animation:survey-thanks-in .25s ease both}@keyframes survey-thanks-in{0%{opacity:0}to{opacity:1}}.survey-timer{position:relative;display:grid;place-items:center;width:32px;height:32px;margin:-4px -4px -4px 0;padding:0;border:0;background:transparent;color:var(--muted-2);font-size:var(--fs-title);line-height:1;cursor:pointer}.survey-timer svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.survey-timer circle{fill:none;stroke-width:2.5}.survey-timer-track{stroke:var(--line)}.survey-timer-ring{stroke:var(--red);stroke-linecap:round;stroke-dasharray:100;animation:survey-timer var(--thanks-ms, 5s) linear both}@keyframes survey-timer{0%{stroke-dashoffset:0}to{stroke-dashoffset:100}}@media(prefers-reduced-motion:reduce){.survey-timer-ring,.survey-thanks{animation:none}.survey-slot,.survey-slot .survey-card,.survey-slot.is-leaving+*{transition:none}.survey-slot,.survey-slot:not(.is-leaving)+*{animation:none}}.cmp-intro{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;background:radial-gradient(circle at 50% 30%,rgba(193,18,31,.12),transparent 60%),var(--bg);padding:calc(12px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom));gap:8px;animation:cmp-intro-in .22s ease}@keyframes cmp-intro-in{0%{opacity:0}to{opacity:1}}.cmp-intro-bars{display:flex;gap:4px;height:3px;margin-bottom:4px}.cmp-intro-bars span{position:relative;flex:1;border-radius:2px;overflow:hidden;background:color-mix(in srgb,var(--fg) 16%,transparent)}.cmp-intro-bars span i{position:absolute;inset:0 100% 0 0;background:var(--red)}.cmp-intro-bars span.done i{right:0}.cmp-intro-bars span.on i{animation:cmp-intro-fill var(--slide-ms, 6.5s) linear forwards}.cmp-intro.paused .cmp-intro-bars span.on i{animation-play-state:paused}@keyframes cmp-intro-fill{0%{right:100%}to{right:0}}.cmp-intro-stage{animation:cmp-intro-pop .42s ease both}.cmp-intro-text{animation:cmp-intro-rise .42s ease both}@keyframes cmp-intro-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}@keyframes cmp-intro-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.cmp-intro-stage,.cmp-intro-text{animation:none}.cmp-intro-bars span.on i{animation:none;right:0}}.cmp-intro-close{position:absolute;top:calc(20px + env(safe-area-inset-top));right:14px;z-index:3;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:color-mix(in srgb,var(--fg) 8%,transparent);color:var(--fg);cursor:pointer}.cmp-intro-close svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2}.cmp-intro-tap{position:absolute;top:0;bottom:0;z-index:2;border:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.cmp-intro-tap.left{left:0;width:33%}.cmp-intro-tap.right{right:0;width:67%}.cmp-intro-stage{position:relative;flex:1 1 auto;min-height:220px;display:flex;align-items:center;justify-content:center}.gs-head{display:flex;align-items:center;gap:8px;margin:2px 48px 0 0;font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--fg)}.gs-head-icon{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--red);color:#fff}.gs-head-icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2}.gs-ring{display:flex;gap:16px;padding:4px 4px 10px;overflow-x:auto;scrollbar-width:none}.gs-ring button{flex:0 0 auto;display:grid;justify-items:center;gap:6px;padding:0;border:0;background:transparent;color:var(--fg);cursor:pointer}.gs-ring-circle{width:68px;height:68px;padding:3px;border-radius:50%;background:var(--red)}.gs-ring .seen .gs-ring-circle{padding:2px;background:var(--line)}.gs-cover{position:relative;width:100%;height:100%;display:block;overflow:hidden;border-radius:50%;border:3px solid var(--bg);background:radial-gradient(circle at 50% 35%,#3a1418,#141416 75%)}.gs-ring-label{font-size:var(--fs-caption)}.gs-ring .seen .gs-ring-label{color:var(--muted)}.gs-cover-card{position:absolute;left:50%;top:50%;width:40px;height:26px;margin:-13px 0 0 -20px;border-radius:var(--r-sm);background:linear-gradient(150deg,#2a1014,#6a1520 60%,#b3202e);box-shadow:0 4px 10px #00000080,inset 0 0 0 1px #ffffff1f;transform:rotate(-12deg)}.gs-cover-card b{position:absolute;left:4px;top:3px;font-size:var(--fs-micro);font-weight:var(--fw-bold);font-style:normal;color:#fff}.gs-cover-qr{position:absolute;right:4px;bottom:4px;width:12px;height:12px;border-radius:2px;background:linear-gradient(90deg,#111 2px,transparent 2px) 0 0 / 4px 4px,linear-gradient(#111 2px,#fff 2px) 0 0 / 4px 4px;box-shadow:0 0 0 1.5px #fff}.gs-cover-companion companion-3d{display:block;width:100%;height:100%}.gs-cover-companion{background:radial-gradient(circle at 50% 60%,#4a1a12,#141416 75%)}.gs-cover-event companion-3d{display:block;width:100%;height:100%}.gs-cover-event{background:radial-gradient(circle at 50% 60%,#5a2a05,#141416 75%)}.gs-cover-event-q{position:absolute;inset:0;display:grid;place-items:center;font-size:var(--fs-head);font-weight:var(--fw-bold);color:#ffb347}.gs-mystery{display:grid;grid-template-columns:repeat(2,120px);gap:14px;justify-content:center}.gs-mystery-tile{display:grid;gap:8px;justify-items:center;align-content:center;height:150px;padding:12px;border:1px dashed rgba(255,179,71,.55);border-radius:var(--r-md);background:#ff8a0014;animation:gs-pop .5s ease var(--d) both}.gs-mystery-tile b{font-size:var(--fs-hero);font-weight:var(--fw-bold);line-height:1;color:#ffb347}.gs-mystery-tile span{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:#ffffffb8;text-align:center}.gs-venue-rewards{display:grid;gap:10px;width:min(300px,100%);margin:0 auto}.gs-venue-reward{display:grid;gap:3px;padding:12px 14px;border:1px solid rgba(255,179,71,.45);border-radius:var(--r-md);background:#ffb3471a;animation:gs-rise .5s var(--d, 0s) both}.gs-venue-reward span{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:#ffffffb8}.gs-venue-reward b{font-size:var(--fs-lead);font-weight:var(--fw-bold);color:#fff;overflow-wrap:anywhere}.gs-venue-reward i{font-size:var(--fs-caption);font-style:normal;font-weight:var(--fw-medium);color:#fff9}.gs-venue-reward i.done{color:#ffb347}.gs-cover-league{background:radial-gradient(circle at 50% 70%,#3b1a0d,#141416 75%)}.gs-cover-mini{position:absolute;left:50%;top:50%;width:34px;height:22px;margin:-11px 0 0 -17px;border-radius:4px;box-shadow:0 3px 8px #00000080,inset 0 0 0 1px #ffffff26}.gs-cover-mini:nth-child(1){transform:translate(-7px,-8px) rotate(-16deg)}.gs-cover-mini:nth-child(2){transform:translateY(-1px) rotate(-4deg)}.gs-cover-mini:nth-child(3){transform:translate(6px,7px) rotate(9deg);box-shadow:0 0 12px #e8562a99,inset 0 0 0 1px #fff3}.gs-scene{--gs-bronze: #b0703a;--gs-silver: #8e99a8;--gs-gold: #d4a326;--gs-flame: #e8562a;position:relative;width:min(300px,100%)}.gs-scene .gi-card{cursor:default;width:280px;height:176px;margin:0 auto;animation:none;transform:none}.gs-scene .gi-card *{transform:none}.gs-scene .gi-card>:not(.member-card-tint){position:relative}.gs-scene .gi-card.member-card--flame:after{display:none}.gs-scene .gi-card.member-card--flame{box-shadow:0 18px 40px #0006,0 0 46px #e8562a73}@keyframes gs-rise{0%{opacity:0;transform:translateY(14px)}}@keyframes gs-pop{0%{opacity:0;transform:scale(.6)}70%{transform:scale(1.08)}to{opacity:1;transform:none}}@keyframes gs-fade{0%{opacity:0}}@keyframes gs-grow{0%{transform:scaleY(0)}}@media(prefers-reduced-motion:reduce){.gs-scene,.gs-scene *{animation-duration:0s!important;animation-delay:0s!important;animation-iteration-count:1!important}}.gs-scan{display:grid;justify-items:center}.gs-qr-box{position:relative}.gs-scan-frame{position:absolute;inset:-5px;border-radius:var(--r-md);box-shadow:0 0 0 3px var(--green),0 0 22px color-mix(in srgb,var(--green) 50%,transparent);overflow:hidden;animation:gs-pop .4s ease .3s both}.gs-scan-line{position:absolute;left:0;right:0;height:3px;background:var(--green);box-shadow:0 0 12px var(--green);animation:gs-scan 1.1s ease-in-out .5s 2 alternate both}@keyframes gs-scan{0%{top:4%}to{top:92%}}.gs-toast{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:10px 14px;border-radius:var(--r-md);background:var(--card);box-shadow:0 10px 30px #00000059,inset 0 0 0 1px var(--line);font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--fg);animation:gs-pop .45s ease var(--d) both}.gs-toast svg{width:18px;height:18px;stroke:var(--green);fill:none;stroke-width:3}.gs-history{display:grid;gap:10px}.gs-mix{display:grid;gap:8px;padding:12px 14px 8px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);animation:gs-rise .45s ease var(--d) both}.gs-mix:first-child{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--red) 55%,transparent),0 12px 30px #0000004d}.gs-mix-flavors{display:grid;gap:3px;text-align:left}.gs-mix-flavor{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:baseline;gap:6px}.gs-mix-flavor b{font-size:var(--fs-small);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;white-space:nowrap}.gs-mix-flavor span{font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:1.3}.gs-mix-flavor small{margin-left:6px;color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-medium);white-space:nowrap}.gs-mix-foot{display:flex;align-items:center;gap:2px;padding-top:6px;border-top:1px solid var(--line)}.gs-mix-meta{flex:1;min-width:0;font-size:var(--fs-caption);color:var(--muted);text-align:left}.gs-mix-act{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:var(--muted-2, var(--muted))}.gs-mix-act svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2}.gs-mix-act.on{animation:gs-like .5s ease var(--d) both}.gs-mix-act.on svg{animation:gs-fill .01s linear calc(var(--d) + .25s) both}@keyframes gs-fill{0%{fill:none}to{fill:currentColor}}@keyframes gs-like{0%{color:var(--muted);transform:scale(1)}50%{transform:scale(1.35)}to{color:var(--green);transform:scale(1)}}.gs-mix-act.star.on{animation-name:gs-star}@keyframes gs-star{0%{color:var(--muted);transform:scale(1) rotate(0)}50%{transform:scale(1.35) rotate(20deg)}to{color:var(--red);transform:scale(1) rotate(0)}}.gs-own{display:flex;align-items:center;gap:18px;justify-content:center}.gs-own-ring{position:relative;width:150px;height:150px;flex:0 0 auto}.gs-own-ring svg{width:100%;height:100%;display:block}.gs-own-track{fill:none;stroke:color-mix(in srgb,var(--fg) 10%,transparent);stroke-width:16}.gs-own-seg{fill:none;stroke-width:16;transform-origin:70px 70px;stroke-dashoffset:0;animation:gs-draw .55s ease-out var(--d) both}@keyframes gs-draw{0%{stroke-dashoffset:330;opacity:0}10%{opacity:1}}.gs-own-hole{position:absolute;inset:0;display:grid;place-content:center;text-align:center}.gs-own-hole b{font-size:var(--fs-head);font-weight:var(--fw-bold);color:var(--green);animation:gs-pop .4s ease 1.9s both}.gs-own-hole span{font-size:var(--fs-micro);color:var(--muted);animation:gs-fade .4s ease 2s both}.gs-own-legend{display:grid;gap:10px;margin:0;padding:0;list-style:none;font-size:var(--fs-body)}.gs-own-legend li{display:flex;align-items:center;gap:8px;animation:gs-rise .4s ease var(--d) both}.gs-own-legend i{width:10px;height:10px;border-radius:3px}.gs-own-legend b{margin-left:4px}.gs-stats{padding:26px 0}.gs-stats-card{padding:16px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line),0 16px 40px #0000004d}.gs-stats-card p{margin:0 0 12px;font-size:var(--fs-caption);color:var(--muted)}.gs-bars{display:flex;align-items:flex-end;gap:12px;height:130px}.gs-bar{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;gap:6px}.gs-bar i{display:block;border-radius:var(--r-sm) var(--r-sm) 3px 3px;background:linear-gradient(180deg,#ff6a6a,var(--red));transform-origin:bottom;animation:gs-grow .6s cubic-bezier(.3,1.4,.5,1) var(--d) both}.gs-bar:last-child i{box-shadow:0 0 18px color-mix(in srgb,var(--red) 60%,transparent)}.gs-bar span{font-size:var(--fs-micro);color:var(--muted);text-align:center}.gs-chip{position:absolute;padding:7px 12px;border-radius:var(--r-pill);background:var(--fg);color:var(--bg);font-size:var(--fs-caption);font-weight:var(--fw-medium);white-space:nowrap;box-shadow:0 10px 24px #00000059;animation:gs-pop .45s ease var(--d) both}.gs-chip-a{top:0;right:-6px;transform:rotate(4deg)}.gs-chip-b{bottom:4px;left:-6px;background:var(--red);color:#fff}.gs-pass{display:flex;align-items:center;justify-content:space-between;height:280px;padding-bottom:44px}.gs-pass-phone{position:relative;width:124px;min-height:206px;padding:14px 10px 12px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 2px var(--line),0 20px 50px #0006;display:flex;flex-direction:column;align-items:stretch;gap:8px;animation:gs-rise .5s ease .1s both}.gs-pass-phone:nth-of-type(3){animation-delay:.25s}.gs-pass-phone p{margin:0;font-size:var(--fs-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center}.gs-pass-mix{display:grid;gap:2px;padding:8px 9px;border-radius:var(--r-md);background:var(--soft);box-shadow:inset 0 0 0 1px var(--line)}.gs-pass-mix b{font-size:var(--fs-caption);line-height:1.2;white-space:nowrap}.gs-pass-mix>span{font-size:var(--fs-micro);color:var(--muted)}.gs-pass-new{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--red) 55%,transparent),0 10px 24px #0000004d;animation:gs-pop .45s ease var(--d) both}.gs-pass-mix>.gs-pass-shared{display:flex;white-space:nowrap;align-items:center;gap:4px;color:var(--red);font-weight:var(--fw-medium)}.gs-pass-shared svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2.2}.gs-pass-ghost{height:38px;border-radius:var(--r-md);background:var(--soft);opacity:.45}.gs-pass-qr{align-self:center;padding:6px;background:#fff;border-radius:var(--r-sm);line-height:0;animation:gs-pop .45s ease var(--d) both}.gs-pass-qr svg{width:64px;height:64px;display:block;stroke:none}.gs-pass-head{display:flex;align-items:center;justify-content:space-between;gap:4px}.gs-pass-head>span:first-child{font-size:var(--fs-micro);color:var(--muted)}.gs-pass-chev{flex:none;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--card);color:var(--muted);transform:rotate(-90deg);animation:gs-chev .35s ease var(--d) both}.gs-pass-chev svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2.4}@keyframes gs-chev{0%{transform:rotate(90deg);color:var(--muted)}40%{transform:rotate(90deg) scale(1.25);color:var(--fg)}to{color:var(--fg)}}.gs-pass-open{display:grid;animation:gs-open .35s ease var(--d) both}.gs-pass-open>*{min-height:0;overflow:hidden}@keyframes gs-open{0%{grid-template-rows:0fr;opacity:0}to{grid-template-rows:1fr;opacity:1}}.gs-pass-open{grid-template-rows:1fr}.gs-pass-btn{margin-top:6px;display:flex;align-items:center;justify-content:center;gap:5px;padding:7px 0;border-radius:var(--r-sm);font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--fg);box-shadow:inset 0 0 0 1px var(--line);animation:gs-tap .6s ease var(--d) both}.gs-pass-btn svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2.2}@keyframes gs-tap{40%{transform:scale(.9);background:var(--red);color:var(--white)}to{transform:none}}.gs-pass-beam{position:relative;flex:1;height:2px;margin:0 6px;background:repeating-linear-gradient(90deg,var(--red) 0 6px,transparent 6px 11px);transform-origin:left center;animation:gs-beam .5s ease var(--d) both}.gs-pass-beam i{position:absolute;top:-3px;left:0;width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 10px var(--red);animation:gs-beam-dot .7s ease-in calc(var(--d) + .3s) 2 both}@keyframes gs-beam{0%{transform:scaleX(0)}}@keyframes gs-beam-dot{0%{left:0;opacity:1}to{left:calc(100% - 8px);opacity:.2}}.gs-pass-toast{position:absolute;left:50%;bottom:0;margin:0;translate:-50% 0;white-space:nowrap}.gs-share{display:grid;place-items:center;height:280px}.gs-phone{width:160px;padding:18px 14px 16px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 2px var(--line),0 20px 50px #0006;display:grid;justify-items:center;gap:10px;animation:gs-rise .5s ease .1s both}.gs-phone p{margin:0;font-size:var(--fs-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.gs-phone-qr{padding:8px;background:#fff;border-radius:var(--r-md);line-height:0}.gs-phone-qr svg{width:96px;height:96px;display:block;stroke:none}.gs-phone b{font-size:var(--fs-title);letter-spacing:1px}.gs-float{position:absolute;padding:7px 12px;border-radius:var(--r-md);background:color-mix(in srgb,var(--red) 18%,var(--card));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--red) 45%,transparent);font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--fg);animation:gs-pop .45s ease var(--d) both,gs-bob 3s ease-in-out calc(var(--d) + .5s) infinite}@keyframes gs-bob{50%{translate:0 -5px}}.gs-float-0{top:26px;left:0}.gs-float-1{top:70px;right:0}.gs-float-2{bottom:60px;left:6px}.gs-float-3{bottom:20px;right:4px}.gs-access,.gs-login,.gs-install{display:grid;gap:12px;justify-items:center}.gs-access-card{width:100%;display:grid;gap:8px;padding:12px 14px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);text-align:left;animation:gs-rise .45s ease var(--d) both}.gs-access-card p{margin:0;font-size:var(--fs-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.gs-access-url{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:var(--r-sm);background:var(--bg);font-size:var(--fs-body);font-weight:var(--fw-medium)}.gs-access-url svg,.gs-login-quick svg{width:14px;height:14px;stroke:var(--green);fill:none;stroke-width:2.5}.gs-access-bot{display:flex;align-items:center;gap:10px;font-size:var(--fs-body)}.gs-access-bot b{flex:1;min-width:0}.gs-access-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#2b2b30;color:#fff;font-size:var(--fs-micro);font-weight:var(--fw-bold)}.gs-access-open{padding:6px 12px;border-radius:var(--r-sm);background:#2aabee;color:#fff;font-size:var(--fs-caption);font-weight:var(--fw-medium);animation:gs-pop .4s ease var(--d) both}.gs-access .gs-toast,.gs-login .gs-toast{margin-top:4px}.gs-login-field{width:100%;display:grid;gap:4px;padding:10px 14px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);text-align:left;animation:gs-rise .45s ease var(--d) both}.gs-login-field small{font-size:var(--fs-micro);color:var(--muted)}.gs-login-field span{font-size:var(--fs-title);font-weight:var(--fw-medium);letter-spacing:.5px;font-variant-numeric:tabular-nums}.gs-login-btn{width:100%;padding:12px;border-radius:var(--r-md);background:var(--red);color:#fff;font-size:var(--fs-body);font-weight:var(--fw-medium);text-align:center;animation:gs-rise .45s ease var(--d) both}.gs-login-quick{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:var(--r-sm);background:color-mix(in srgb,var(--green) 14%,var(--card));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green) 40%,transparent);font-size:var(--fs-caption);font-weight:var(--fw-medium);animation:gs-pop .45s ease var(--d) both}.gs-install-steps{width:100%;display:grid;gap:8px}.gs-install-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;padding:9px 12px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);font-size:var(--fs-small);animation:gs-rise .45s ease var(--d) both}.gs-install-row small{width:100%;font-size:var(--fs-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left}.gs-install-step{display:inline-flex;align-items:center;gap:6px}.gs-install-step svg{width:12px;height:12px;stroke:var(--muted);fill:none;stroke-width:2.5}.gs-install-home{display:grid;grid-template-columns:repeat(4,44px);gap:14px 16px;padding:18px 20px;border-radius:var(--r-md);background:linear-gradient(160deg,#2a2d3a,#15161b);box-shadow:0 20px 50px #0006}.gs-install-home>i{display:block;width:44px;height:44px;border-radius:var(--r-sm);background:#ffffff1f}.gs-install-app{position:relative;display:grid;justify-items:center;animation:gs-pop .5s ease var(--d) both}.gs-install-app img{width:44px;height:44px;border-radius:var(--r-sm);box-shadow:0 0 0 2px color-mix(in srgb,var(--red) 70%,transparent),0 0 18px color-mix(in srgb,var(--red) 55%,transparent)}.gs-install-app small{position:absolute;top:48px;font-size:var(--fs-micro);color:#fff;white-space:nowrap}.gs-podium{display:grid;gap:16px;justify-items:center}.gs-season{padding:7px 14px;border-radius:var(--r-pill);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);font-size:var(--fs-caption);font-weight:var(--fw-medium);animation:gs-pop .4s ease var(--d) both}.gs-podium-row{width:100%;height:190px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-items:end}.gs-step{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;gap:8px;--c: var(--gs-bronze)}.gs-step.lg-silver{--c: var(--gs-silver)}.gs-step.lg-gold{--c: var(--gs-gold)}.gs-step.lg-flame{--c: var(--gs-flame)}.gs-step-name{text-align:center;font-size:var(--fs-small);font-weight:var(--fw-medium);animation:gs-pop .4s ease var(--d) both}.gs-step-block{display:grid;place-items:start center;padding-top:10px;border-radius:var(--r-md) var(--r-md) 4px 4px;background:linear-gradient(180deg,var(--c),color-mix(in srgb,var(--c) 35%,#111));transform-origin:bottom;animation:gs-grow .6s cubic-bezier(.3,1.3,.5,1) var(--d) both}.gs-step.lg-flame .gs-step-block{box-shadow:0 0 30px color-mix(in srgb,var(--gs-flame) 60%,transparent)}.gs-step-block b{font-size:var(--fs-display);font-weight:var(--fw-bold);color:#fff}.gi-fan{height:270px}.gi-fan .gi-card{position:absolute;left:50%;top:40px;margin-left:-140px;box-shadow:0 14px 30px #00000059;animation:gs-fan .7s cubic-bezier(.3,1.2,.5,1) calc(.2s + var(--i) * .12s) both;transform:translateY(calc((var(--i) - 1.5) * 30px)) rotate(calc((var(--i) - 1.5) * -3deg))}@keyframes gs-fan{0%{transform:none;opacity:.6}}.gs-points{display:grid;gap:18px}.gs-points ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.gs-points li{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);font-size:var(--fs-body);animation:gs-rise .4s ease var(--d) both}.gs-points li b{font-size:var(--fs-title);font-weight:var(--fw-bold);color:var(--gs-gold)}.gs-points li.off{color:var(--muted)}.gs-rewards li{gap:12px}.gs-rewards li b{font-size:var(--fs-body);font-weight:var(--fw-medium);text-align:right}.gs-rewards .gs-toast{justify-self:center}.gs-points li.off b{color:var(--muted);text-decoration:line-through}.gs-meter-head{display:flex;justify-content:space-between;font-size:var(--fs-caption);font-weight:var(--fw-medium);margin-bottom:6px}.gs-meter-head span:first-child{color:var(--gs-silver)}.gs-meter-head span:last-child{color:var(--gs-gold)}.gs-meter-track{height:10px;border-radius:var(--r-bar);background:color-mix(in srgb,var(--fg) 10%,transparent);overflow:hidden}.gs-meter-track i{display:block;height:100%;width:86%;border-radius:inherit;background:linear-gradient(90deg,var(--gs-silver),var(--gs-gold));animation:gs-meter 1.6s cubic-bezier(.3,.8,.4,1) .4s both}@keyframes gs-meter{0%{width:20%}}.gs-climb{height:200px}.gs-climb .gi-card{position:absolute;left:50%;top:10px;margin-left:-140px;animation:gs-fade .5s ease var(--d) both}.gs-climb .gi-card:last-child{animation:gs-pop .6s ease var(--d) both}.cmp-intro-stage companion-3d{display:block;width:100%;height:100%;max-width:340px}.cmp-intro-text{position:relative;z-index:3;flex:0 0 auto;text-align:center;padding:0 4px;max-width:420px;margin:0 auto}.cmp-intro-text h2{margin:4px 0 8px;font-size:var(--fs-head);letter-spacing:-.02em;color:var(--fg)}.cmp-intro-text p{margin:0;font-size:var(--fs-body);line-height:1.5;color:var(--muted)}.cmp-intro-foot{position:relative;z-index:3;flex:0 0 auto;display:flex;align-items:center;gap:10px;margin-top:12px}.cmp-intro-skip{flex:0 0 auto;min-width:96px;padding:12px 8px;border:0;background:transparent;color:var(--muted);font-size:var(--fs-body);cursor:pointer}.cmp-intro-next{flex:1 1 auto;padding:14px;border:0;border-radius:var(--r-md);background:var(--red);color:#fff;font-size:var(--fs-lead);font-weight:var(--fw-medium);cursor:pointer}.story-desk{display:contents}.story-desk-nav{display:none}@media(min-width:821px){.story-desk{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;gap:24px;padding:24px;background:#08080ab8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:cmp-intro-in .22s ease}.story-desk>.cmp-intro{position:relative;inset:auto;width:min(440px,100%);height:min(820px,calc(100vh - 48px));padding:14px 18px 18px;border-radius:var(--r-md);overflow:hidden;box-shadow:0 30px 80px #00000080}.story-desk>.cmp-intro .cmp-intro-close{top:22px}.story-desk-nav{flex:0 0 auto;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:#ffffff24;color:#fff;cursor:pointer}.story-desk-nav:hover{background:#ffffff3d}.story-desk-nav:disabled{opacity:.3;cursor:default}.story-desk-nav svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2.2}.story-desk-nav.next svg{transform:rotate(180deg)}}.os-cover{display:grid;place-items:center;color:#fff}.os-cover svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2}.os-scene{width:min(340px,100%);display:grid;gap:12px}.os-panel{display:grid;gap:6px;padding:12px;border-radius:var(--r-md);background:var(--card);box-shadow:0 12px 30px #0000002e,inset 0 0 0 1px var(--line);text-align:left}.os-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 2px;font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--fg)}.os-sub{margin:6px 0 0;font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.os-badge{padding:2px 8px;border-radius:var(--r-pill);background:var(--soft);font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--muted)}.os-count{animation:gs-pop .4s ease var(--d) both}.os-btn{padding:5px 10px;border-radius:var(--r-sm);background:var(--red);color:#fff;font-size:var(--fs-micro);font-weight:var(--fw-medium);white-space:nowrap}.os-btn-pulse{animation:os-press .5s ease var(--d) both}@keyframes os-press{50%{transform:scale(.9);filter:brightness(1.25)}}.os-row{display:flex;align-items:center;gap:10px;padding:8px;border-radius:var(--r-md);background:var(--soft);animation:gs-rise .4s ease var(--d) both}.os-row-static{animation:none}.os-row-icon{flex:0 0 auto;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--card);color:var(--red)}.os-row-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}.os-row-body{flex:1;min-width:0;display:grid;gap:1px}.os-row-body b{font-size:var(--fs-small);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.os-row-body small{font-size:var(--fs-micro);color:var(--muted)}.os-new{box-shadow:inset 0 0 0 1.5px var(--red);animation-name:gs-pop}.os-muted{opacity:.6}.os-lapsed{box-shadow:inset 3px 0 0 var(--amber)}.os-lapsed small{color:var(--amber)}.os-fav .os-row-icon{color:#f5c542}.os-fav .os-row-icon svg{fill:currentColor}.os-grams{font-size:var(--fs-small);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;white-space:nowrap}.os-toast{justify-self:center;margin-top:4px}.os-chips{display:flex;flex-wrap:wrap;gap:6px}.os-chip{padding:3px 8px;border-radius:var(--r-pill);background:var(--red-soft);color:var(--red);font-size:var(--fs-micro);font-weight:var(--fw-medium);white-space:nowrap}.os-chip-in{animation:gs-pop .4s ease var(--d) both}.os-chip-warn{background:color-mix(in srgb,var(--amber) 16%,transparent);color:var(--amber)}.os-search{display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:var(--r-sm);background:var(--soft);color:var(--muted);font-size:var(--fs-caption)}.os-search svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2}.os-flavor{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:var(--r-pill);background:var(--soft);box-shadow:inset 0 0 0 1px var(--line);font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted)}.os-flavor svg{width:0;height:12px;stroke:currentColor;fill:none;stroke-width:3}.os-flavor.on{animation:os-check .35s ease var(--d) both}.os-flavor.on svg{animation:os-check-icon .35s ease var(--d) both}@keyframes os-check{to{background:var(--red);color:var(--white);box-shadow:none}}@keyframes os-check-icon{to{width:12px}}.os-switch{position:relative;flex:0 0 auto;width:40px;height:24px;border-radius:var(--r-pill);background:var(--line);animation:os-switch-bg .3s ease var(--d) both}.os-switch i{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;animation:os-switch-knob .3s ease var(--d) both}@keyframes os-switch-bg{to{background:var(--green)}}@keyframes os-switch-knob{to{transform:translate(16px)}}.os-kpis{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px}.os-kpi{display:grid;gap:2px;padding:10px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);text-align:left;animation:gs-rise .4s ease var(--d) both}.os-kpi b{font-size:var(--fs-title);font-weight:var(--fw-bold);letter-spacing:-.02em;white-space:nowrap}.os-kpi span{font-size:var(--fs-micro);color:var(--muted)}.os-swap{display:grid}.os-swap>*{grid-area:1 / 1;font-size:var(--fs-small);font-weight:var(--fw-medium);white-space:nowrap}.os-swap>:first-child{animation:os-out .3s ease 2s both}.os-swap>:last-child{animation:os-in .3s ease 2s both}@keyframes os-out{to{opacity:0;transform:translateY(-6px)}}@keyframes os-in{0%{opacity:0;transform:translateY(6px)}}.os-status>*{font-size:var(--fs-caption);color:var(--muted)}.os-status>:first-child,.os-status>:last-child{animation-delay:.8s}.os-status>.ok{color:var(--green)}.os-meter{display:block;height:6px;margin-top:6px;border-radius:3px;background:var(--line);overflow:hidden}.os-meter i{display:block;height:100%;border-radius:inherit;animation:os-drain 1.6s ease .5s both}@keyframes os-drain{0%{width:60%;background:var(--green)}70%{background:var(--green)}to{width:21%;background:var(--amber)}}.os-warn{justify-self:start;padding:3px 8px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--amber) 16%,transparent);color:var(--amber);font-size:var(--fs-micro);font-weight:var(--fw-medium);animation:gs-pop .4s ease var(--d) both}.os-float{position:absolute;top:4px;right:16px}.os-minus{position:absolute;right:0;font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--red);white-space:nowrap;animation:os-float 1.1s ease var(--d) both}@keyframes os-float{0%{opacity:0;transform:translateY(10px)}30%{opacity:1}to{opacity:0;transform:translateY(-24px)}}.os-bowl{display:grid;gap:8px;padding:10px;border-radius:var(--r-md);background:var(--soft)}.os-bowl-meta{margin:0;font-size:var(--fs-micro);color:var(--muted)}.os-bowl-bar{display:flex;height:12px;border-radius:var(--r-sm);overflow:hidden;background:var(--line)}.os-bowl-bar i{width:var(--w)}.os-bowl-fill{animation:os-widen .6s ease var(--d) both}@keyframes os-widen{0%{width:0}}.os-bowl-grams{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0}.os-tag{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border-radius:var(--r-pill);font-size:var(--fs-caption);font-weight:var(--fw-medium);animation:gs-pop .35s ease var(--d) both}.os-tag svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2.2}.os-tag.like{background:color-mix(in srgb,var(--green) 16%,transparent);color:var(--green)}.os-tag.dislike{background:var(--soft);color:var(--muted)}.os-cols{display:flex;align-items:flex-end;gap:8px;height:110px}.os-cols i{flex:1;border-radius:var(--r-sm) var(--r-sm) 2px 2px;background:color-mix(in srgb,var(--red) 55%,transparent);transform-origin:bottom;animation:gs-grow .5s ease var(--d) both}.os-cols i:last-child{background:var(--red)}.os-abc{display:flex;align-items:flex-start;gap:10px;padding-top:8px;border-top:1px solid var(--line)}.os-abc:first-of-type{padding-top:0;border-top:0}.os-abc-letter{flex:0 0 auto;width:26px;height:26px;display:grid;place-items:center;border-radius:var(--r-sm);font-size:var(--fs-small);font-weight:var(--fw-bold);color:#fff}.os-abc-rows{flex:1;display:grid;gap:6px}.os-hbar{display:grid;gap:3px}.os-hbar small{font-size:var(--fs-caption);font-weight:var(--fw-medium)}.os-hbar i{display:block;width:var(--w);height:8px;border-radius:4px;background:var(--red);animation:os-widen .6s ease var(--d) both}.os-abc-a .os-abc-letter,.os-abc-a .os-hbar i{background:var(--green)}.os-abc-b .os-abc-letter,.os-abc-b .os-hbar i{background:var(--amber)}.os-abc-c .os-abc-letter,.os-abc-c .os-hbar i{background:var(--muted-2)}.os-ret{justify-items:start}.os-ret small{font-size:var(--fs-caption);color:var(--muted)}.os-big{font-size:var(--fs-hero);font-weight:var(--fw-bold);line-height:1;letter-spacing:-.03em;color:var(--green);animation:gs-pop .5s ease var(--d) both}.os-staff{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:10px;padding:4px 0;animation:gs-rise .4s ease var(--d) both}.os-staff>span:first-child{display:grid}.os-staff b{font-size:var(--fs-small)}.os-staff small{font-size:var(--fs-micro);color:var(--muted)}.oa-ask{justify-self:end;max-width:85%;display:grid;gap:6px;padding:9px 12px;border-radius:var(--r-md) var(--r-md) 4px var(--r-md);background:var(--soft);font-size:var(--fs-small);font-weight:var(--fw-medium);text-align:left;animation:gs-rise .4s ease var(--d) both}.oa-file{display:inline-flex;align-items:center;gap:5px;justify-self:start;padding:3px 8px;border-radius:var(--r-sm);background:var(--card);color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-medium)}.oa-file svg,.oa-step svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2.4}.oa-step{display:flex;align-items:center;gap:6px;margin:0;color:var(--muted);font-size:var(--fs-caption);font-weight:var(--fw-medium);animation:gs-fade .3s ease var(--d) both}.oa-step svg{stroke:var(--green)}.oa-card{animation:gs-rise .4s ease var(--d) both}.oa-views{display:flex;flex-wrap:wrap;gap:4px}.oa-views>span{padding:4px 9px;border-radius:var(--r-pill);background:var(--soft);color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-medium);white-space:nowrap}.oa-views>.on,.oa-views>.oa-off{background:var(--red);color:#fff}.oa-off{animation:oa-chip-off .3s ease var(--d) both}.oa-on{animation:oa-chip-on .3s ease var(--d) both}@keyframes oa-chip-off{to{background:var(--soft);color:var(--muted)}}@keyframes oa-chip-on{0%{background:var(--soft);color:var(--muted)}to{background:var(--red);color:var(--white)}}.oa-swap{margin-top:6px}.oa-swap>*{animation-delay:1.4s}.oa-swap .os-cols{height:90px}.oa-donut-wrap{display:flex;align-items:center;gap:14px;height:90px}.oa-donut{flex:0 0 auto;width:78px;height:78px;border-radius:50%;background:conic-gradient(var(--red) 0 46%,#3987e5 46% 77%,#199e70 77% 100%);-webkit-mask:radial-gradient(circle,transparent 52%,#000 53%);mask:radial-gradient(circle,transparent 52%,#000 53%)}.oa-legend{display:grid;gap:5px}.oa-legend small{display:flex;align-items:center;gap:6px;font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--fg);white-space:nowrap}.oa-legend i{width:8px;height:8px;border-radius:2px}.oa-legend .s1{background:var(--red)}.oa-legend .s2{background:#3987e5}.oa-legend .s3{background:#199e70}.oa-save{justify-self:start;margin-top:6px;padding:7px 12px;font-size:var(--fs-caption)}.oa-refine{display:grid;gap:4px;padding-top:6px}.oa-refine>small{font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--muted)}.gs-ring--compact{gap:14px;padding:0 2px 12px}.gs-ring--compact .gs-ring-circle{width:58px;height:58px}.ss-scene{width:min(340px,100%);display:grid;gap:10px;text-align:left}@media(max-height:720px){.ss-scene{zoom:.86}}.ss-scene h1,.ss-scene h2{margin:0}.ss-scene .scenario-card{min-height:128px;padding:14px;gap:12px}.ss-scene .step-row{padding:8px 8px 8px 12px}.ss-scene .stepper button{width:32px;height:32px}.ss-scene .mix-total-card{margin:0}.ss-scene .chip-row{margin:0;padding:0;overflow:hidden}.ss-scene .chip-row button{min-height:32px}.ss-scene .search-field,.ss-scene .preset-form{margin:0}.ss-scene .scan-btn{margin-top:0}.ss-card{display:grid;gap:10px;padding:14px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}.ss-card .eyebrow{margin:0}.ss-h{font-size:var(--fs-title);font-weight:var(--fw-bold);letter-spacing:-.2px}.ss-muted{margin:0;font-size:var(--fs-small);color:var(--muted)}.ss-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:0 14px}.ss-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2}.ss-icon-btn{display:grid;place-items:center;width:42px;padding:0}.ss-icon-btn svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2}.ss-disabled{opacity:.45}.ss-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:var(--fs-lead)}.ss-guest-head{display:grid;gap:2px;padding:14px;border-radius:var(--r-md);color:#fff;background:linear-gradient(135deg,#111113fc,#341218f5)}.ss-guest-head .eyebrow{margin:0;color:#fff9}.ss-guest-head h2{font-size:var(--fs-head);font-weight:var(--fw-bold)}.ss-guest-head p:last-child{margin:0;font-size:var(--fs-small);color:#ffffffb8}.ss-sheet{display:grid;gap:10px;padding:12px 14px 14px;border-radius:var(--r-md);background:var(--card);box-shadow:0 18px 40px #00000040,inset 0 0 0 1px var(--line)}.ss-sheet .sheet-grabber{margin-bottom:-2px}.ss-grid button{min-height:0}.ss-scan{display:grid;justify-items:center;gap:14px}.ss-stack,.ss-presets{display:grid;gap:10px}.ss-scene .preset-form>.ss-input{display:flex}.ss-field-label{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted)}.ss-toast{justify-self:center;align-self:center;margin:0}.ss-old{opacity:.75}.ss-input{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);color:var(--fg);font-size:var(--fs-body);white-space:nowrap;overflow:hidden}.ss-input svg{flex:0 0 auto;width:16px;height:16px;stroke:var(--muted);fill:none;stroke-width:2}.ss-placeholder{color:var(--muted-2);overflow:hidden;text-overflow:ellipsis}.ss-typed{display:inline-block;animation:ss-type var(--t) steps(var(--n),end) var(--d) both}@keyframes ss-type{0%{clip-path:inset(0 100% 0 0)}}.ss-frames{display:inline-grid}.ss-frames.block{display:grid}.ss-scene span.ss-frames{display:inline-grid}.ss-frames>*{grid-area:1 / 1}.ss-scene .ss-frames,.ss-scene .ss-frames>*{font:inherit;color:inherit;letter-spacing:inherit}.ss-f-first{animation:ss-off .2s ease var(--d) both}.ss-f-last{animation:ss-on .2s ease var(--d) both}.ss-f-mid,.ss-window{opacity:0;animation:ss-window var(--len) step-end var(--d)}@keyframes ss-off{to{opacity:0;visibility:hidden}}@keyframes ss-on{0%{opacity:0;visibility:hidden}}@keyframes ss-window{0%,to{opacity:1}}.ss-rel{position:relative}.ss-tap{position:absolute;z-index:5;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;background:color-mix(in srgb,var(--fg) 26%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--fg) 45%,transparent);pointer-events:none;animation:gs-tap-ripple .7s ease-out var(--d) both}.ss-hold{position:absolute;z-index:5;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:color-mix(in srgb,var(--fg) 24%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--fg) 40%,transparent);opacity:0;animation:ss-window var(--len) step-end var(--d)}.ss-press{animation:os-press .5s ease var(--d) both}.ss-press-soft{animation:gs-tap .6s ease var(--d) both}.ss-rise{animation:gs-rise .4s ease var(--d) both}.ss-pop{animation:gs-pop .4s ease var(--d) both}.ss-glow{animation:ss-glow 1.2s ease var(--d) 2 both}@keyframes ss-glow{50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--red) 30%,transparent);transform:scale(1.08)}}.ss-pick{animation:gs-rise .4s ease var(--d) both,ss-pick .3s ease 2.2s both}@keyframes ss-pick{to{border-color:var(--red);background:var(--red-soft)}}.ss-voice{min-height:54px}.ss-eq i{height:30%;animation:ss-eq .5s ease-in-out var(--d) infinite alternate}@keyframes ss-eq{to{height:100%}}.ss-speech{justify-self:center;max-width:100%;padding:10px 14px;border-radius:var(--r-md) var(--r-md) var(--r-md) 4px;background:var(--soft);box-shadow:inset 0 0 0 1px var(--line);font-size:var(--fs-body);font-weight:var(--fw-medium);white-space:nowrap;overflow:hidden}.ss-center{justify-items:center}.ss-home{justify-self:center}.ss-phone{position:relative;width:250px;padding:26px 12px 18px;border-radius:var(--r-md);background:var(--bg);box-shadow:inset 0 0 0 3px var(--line),0 20px 50px #00000059;zoom:.9}.ss-phone-notch{position:absolute;top:9px;left:50%;width:64px;height:8px;margin-left:-32px;border-radius:var(--r-pill);background:var(--line)}.ss-phone .scenario-grid{gap:8px}.ss-phone .scenario-card{min-height:104px;padding:10px;gap:8px}.ss-phone .scenario-text strong{font-size:var(--fs-body)}.ss-browser{display:grid;overflow:hidden;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line),0 18px 40px #00000040}.ss-browser-page{padding:14px;zoom:.82;opacity:.85}.ss-browser-bar{display:grid;gap:8px;padding:10px 12px 12px;border-top:1px solid var(--line);background:var(--soft)}.ss-browser-top .ss-browser-bar{display:flex;align-items:center;border-top:0;border-bottom:1px solid var(--line)}.ss-url{flex:1;padding:7px 12px;border-radius:var(--r-sm);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);font-size:var(--fs-small);text-align:center;color:var(--muted)}.ss-browser-icons{display:flex;align-items:center;justify-content:space-around;color:#0a84ff}.ss-browser-icons svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2}.ss-hl{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;animation:ss-glow 1.2s ease .2s 1 both}.ss-dots{font-size:var(--fs-head);font-weight:var(--fw-bold);color:var(--fg)}.ss-menu-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border-radius:var(--r-md);background:var(--soft);font-size:var(--fs-body);font-weight:var(--fw-medium)}.ss-menu-row svg{width:18px;height:18px;stroke:var(--muted);fill:none;stroke-width:2}.ss-dialog{display:grid;gap:12px;padding:16px;border-radius:var(--r-md);background:var(--card);box-shadow:0 18px 40px #0000004d,inset 0 0 0 1px var(--line);text-align:center;animation:gs-pop .35s ease both}.ss-dialog>b{font-size:var(--fs-body);font-weight:var(--fw-medium)}.ss-dialog-app{display:flex;align-items:center;gap:12px;padding:10px;border-radius:var(--r-md);background:var(--soft);text-align:left}.ss-dialog-app img{width:44px;height:44px;border-radius:var(--r-sm)}.ss-dialog-app span{display:grid}.ss-dialog-app small{font-size:var(--fs-caption);color:var(--muted)}.ss-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ss-dialog-actions>span{padding:10px;border-radius:var(--r-md);background:var(--soft);font-weight:var(--fw-medium);color:var(--muted)}.ss-dialog-actions>.ss-dialog-ok{background:var(--red);color:#fff}.ss-overlay{position:absolute;left:14px;right:14px;top:50%;translate:0 -50%;z-index:4}.ss-dialog.ss-window{animation:ss-window var(--len) step-end var(--d)}.ss-scene .settings-switch{display:block}.ss-scene .settings-row-value.ss-rel{overflow:visible}.ss-lock{display:grid;justify-items:center;gap:2px;padding:22px 12px 18px;border-radius:var(--r-md);background:linear-gradient(160deg,#2a2d3a,#15161b);color:#fff}.ss-lock-time{font-size:var(--fs-hero);font-weight:var(--fw-regular);line-height:1;letter-spacing:-.02em}.ss-lock-date{margin-bottom:18px;font-size:var(--fs-small);color:#ffffffb3}.ss-push{display:flex;align-items:flex-start;gap:10px;width:100%;padding:11px 12px;border-radius:var(--r-md);background:#ffffff29;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:left}.ss-push img{flex:0 0 auto;width:34px;height:34px;border-radius:var(--r-sm)}.ss-push-body{flex:1;min-width:0;display:grid;gap:1px;font-size:var(--fs-small);line-height:1.3}.ss-push-head{display:flex;justify-content:space-between;gap:6px;font-size:var(--fs-micro);color:#ffffffb3}.ss-push-head b{font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.04em}.ss-drop{animation:ss-drop .5s cubic-bezier(.2,.8,.3,1.2) var(--d) both}@keyframes ss-drop{0%{opacity:0;transform:translateY(-30px)}}.welcome-head{padding:24px 6px 8px}.welcome-head h1{margin:0 0 8px;font-size:var(--fs-display);line-height:1.1;letter-spacing:-.01em}.welcome-head p{margin:0;max-width:34ch;color:var(--muted);line-height:1.5}.welcome-head,.welcome-head~.role-stack{position:relative}.welcome-waves{position:fixed;left:0;right:0;bottom:0;z-index:0;width:100%;height:50vh;pointer-events:none;fill:none;stroke:var(--red);-webkit-mask-image:linear-gradient(to top,#000 60%,transparent);mask-image:linear-gradient(to top,#000 60%,transparent)}.welcome-waves path{stroke-width:1.8;vector-effect:non-scaling-stroke}.settings-page{display:grid;gap:18px;width:min(100%,620px)}.settings-head{padding:0 14px}.settings-head h1{margin:6px 0 2px;font-size:var(--fs-head);font-weight:var(--fw-bold);letter-spacing:-.3px}.settings-head p{margin:0;color:var(--muted);font-size:var(--fs-body)}.settings-group{display:grid;gap:6px}.settings-group-title{margin:0;padding:0 14px;color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.08em;text-transform:uppercase}.settings-group-body{border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);overflow:hidden}.settings-group-body:empty{display:none}.settings-group-footer{margin:0;padding:0 14px;color:var(--muted);font-size:var(--fs-small);line-height:1.4}.settings-row{width:100%;min-height:52px;display:flex;align-items:center;gap:12px;padding:0 14px;border:0;border-radius:0;color:var(--fg);background:transparent;font-size:var(--fs-body);text-align:left;text-decoration:none}a.settings-row,a.settings-row:visited{color:var(--fg)}.settings-row+.settings-row{border-top:1px solid var(--line)}button.settings-row:hover,a.settings-row:hover{background:var(--soft)}.settings-row-label{flex:1;min-width:0;font-weight:var(--fw-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-row-value{max-width:55%;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-row>svg{flex:none;width:16px;height:16px;fill:none;stroke:var(--muted-2);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.settings-row-check{flex:none;display:grid;place-items:center;width:20px;height:20px}.settings-row-check svg{width:18px;height:18px;fill:none;stroke:var(--red);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.settings-row.danger{justify-content:center}.settings-row.danger .settings-row-label{flex:none;color:var(--red);font-weight:var(--fw-medium)}.settings-switch{position:relative;flex:none;width:48px;height:28px;padding:0;border:0;border-radius:var(--r-pill);background:var(--line);transition:background .18s ease}.settings-switch span{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .18s ease}.settings-switch.on{background:var(--green)}.settings-switch.on span{transform:translate(20px)}.settings-switch:disabled{opacity:.6}.qr-modal:has(.settings-sheet){padding:0;place-items:end center}.settings-sheet{width:min(520px,100%);max-height:min(92vh,var(--vv-height, 92vh));overflow-y:auto;display:grid;gap:12px;padding:10px 16px calc(18px + env(safe-area-inset-bottom,0px));border-radius:var(--r-md) var(--r-md) 0 0;background:var(--card);box-shadow:var(--shadow);animation:sheet-up .24s ease both}.settings-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.settings-sheet-head h2{margin:0;font-size:var(--fs-head);font-weight:var(--fw-bold);letter-spacing:-.3px}.settings-sheet-head .icon-btn{width:36px;min-height:36px;border-color:transparent;background:var(--soft)}.settings-sheet-head .icon-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}.settings-sheet-note{margin:0;color:var(--muted);font-size:var(--fs-body);line-height:1.45}.settings-sheet .primary-btn,.settings-sheet .secondary-btn{width:100%;min-height:48px}.settings-sheet .preset-card .secondary-btn{width:auto;min-height:38px}.settings-sheet .preset-form{gap:12px;margin:0;padding:0;border:0;background:none}@media(min-width:720px){.qr-modal:has(.settings-sheet){padding:24px;place-items:center}.settings-sheet{border-radius:var(--r-md);padding-bottom:18px}.settings-sheet .sheet-grabber{display:none}}@media(prefers-reduced-motion:reduce){.settings-sheet{animation:none}}.settings-row.action .settings-row-label{color:var(--red);font-weight:var(--fw-medium)}.settings-value-warn{color:var(--amber)}.settings-sheet .settings-group-body{background:var(--soft)}.venue-card-meta .venue-card-expiring{color:var(--red);font-weight:var(--fw-medium)}.venue-card-section{padding:12px 0 2px;font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.checkout-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px}.checkout-code{display:flex;flex-direction:column;align-items:center;gap:6px;align-self:center;padding:12px 12px 10px;border-radius:var(--r-md);background:var(--white)}.checkout-code svg{display:block;width:200px;height:200px;stroke:none}.checkout-number{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-body);letter-spacing:.12em;color:#000}.checkout-hint{margin:0;font-size:var(--fs-small);color:var(--muted);text-align:center}.checkout-wallet{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.checkout-wallet svg{width:18px;height:18px}.loyalty-steps{margin:0;padding-left:20px;display:grid;gap:4px;font-size:var(--fs-body);color:var(--muted)}.loyalty-steps b{color:var(--fg);font-weight:var(--fw-medium)}.loyalty-status{margin:0;border:1px solid var(--line);border-radius:var(--r-md)}.loyalty-status>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line)}.loyalty-status>div:last-child{border-bottom:0}.loyalty-status dt{font-size:var(--fs-small);color:var(--muted)}.loyalty-status dd{margin:0;font-size:var(--fs-body);font-weight:var(--fw-medium);text-align:right}.loyalty-status-ok{color:var(--green)}.loyalty-status-bad{color:var(--red)}.loyalty-warning{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--r-md);border:1px solid var(--red);font-size:var(--fs-small)}.loyalty-warning p{margin:0;flex:1}.loyalty-warning button{flex:0 0 auto}.loyalty-settings{gap:16px}.loyalty-import-btn{min-height:34px;padding:0 14px;font-size:var(--fs-small);flex:none}.loyalty-settings .settings-row-label{white-space:normal}.checkout-tier,.checkout-venues{margin:0;font-size:var(--fs-small);text-align:center}.checkout-tier{font-weight:var(--fw-medium)}.checkout-venues{color:var(--muted)}.loyalty-event{align-items:flex-start;padding-top:11px;padding-bottom:11px}.loyalty-event-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.loyalty-event-main b{font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:18px}.loyalty-event-main span{font-size:var(--fs-caption);line-height:16px;color:var(--muted)}.loyalty-event-time{flex:none;font-size:var(--fs-caption);line-height:18px;color:var(--muted-2)}.gs-loyalty-entry{display:grid;justify-items:center;gap:12px}.gs-points-entry{position:relative;width:280px;cursor:default;animation:gs-rise .45s ease var(--d) both}.gs-tap{position:absolute;right:10px;top:50%;width:34px;height:34px;margin-top:-17px;border-radius:50%;background:color-mix(in srgb,var(--fg) 30%,transparent);animation:gs-tap-ripple .7s ease-out var(--d) both}@keyframes gs-tap-ripple{0%{opacity:0;transform:scale(.3)}40%{opacity:1}to{opacity:0;transform:scale(1.6)}}.gs-loyalty-list{display:grid;gap:10px}.gs-venue{text-align:left;animation:gs-rise .45s ease var(--d) both}.gs-venue .venue-card-head{cursor:default;padding:12px 14px}.gs-venue .venue-card-meta span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gs-venue .venue-card-bal strong{font-size:var(--fs-head)}.gs-venue-hot{box-shadow:0 12px 30px #0000004d;border-color:color-mix(in srgb,var(--red) 55%,transparent)}.gs-venue-acts{display:grid;gap:6px;padding:10px 14px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);font-size:var(--fs-small);animation:gs-rise .45s ease var(--d) both}.gs-venue-acts span{display:flex;justify-content:space-between;gap:12px}.gs-venue-acts .plus{color:var(--green)}.gs-venue-acts .minus{color:var(--red)}.gs-loyalty-qr{display:grid;justify-items:center}.gs-checkout-code{animation:gs-pop .45s ease var(--d) both}.gs-checkout-code svg{width:132px;height:132px}.gs-cover-points{background:radial-gradient(circle at 50% 50%,#1d2440,#141416 75%)}.gs-cover-bars{position:absolute;inset:0;display:grid;place-content:center;gap:4px}.gs-cover-bars i{display:block;width:26px;height:5px;border-radius:3px}.gs-cover-results{background:radial-gradient(circle at 50% 60%,#3b2a0d,#141416 75%)}.gs-cover-mini.gs-cover-recap{transform:rotate(-8deg)}.gs-cover-recap-q{position:absolute;inset:0;display:grid;place-items:center;font-size:var(--fs-small);font-weight:var(--fw-bold);color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.6)}.gs-recap-card{display:grid;justify-items:center}.gs-recap-card .gi-card.gs-recap-reveal{animation:gs-pop .6s ease .1s both}.gs-recap-score svg{stroke:var(--lg)}.gs-points li.gs-recap-total{background:transparent;box-shadow:inset 0 0 0 2px var(--gs-gold);font-weight:var(--fw-medium)}.gs-recap-place{display:grid;gap:18px;justify-items:center}.gs-recap-medal{width:150px;height:150px;display:grid;place-content:center;justify-items:center;border-radius:50%;background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--lg) 85%,#fff),var(--lg) 55%,color-mix(in srgb,var(--lg) 45%,#111));box-shadow:0 18px 40px #0006,0 0 40px color-mix(in srgb,var(--lg) 45%,transparent);color:#fff;animation:gs-pop .6s cubic-bezier(.3,1.3,.5,1) var(--d) both}.gs-recap-medal b{font-size:var(--fs-hero);line-height:1;font-weight:var(--fw-bold)}.gs-recap-medal span{font-size:var(--fs-small);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.08em;opacity:.9}.gs-recap-venues{display:grid;gap:10px}.gs-recap-venue{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line),inset 3px 0 0 var(--lg);animation:gs-rise .4s ease var(--d) both}.gs-recap-venue .lg-dot{background:var(--lg)}.gs-recap-venue span{display:grid;gap:2px;min-width:0}.gs-recap-venue b{font-size:var(--fs-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gs-recap-venue small{font-size:var(--fs-caption);color:var(--lg);font-weight:var(--fw-medium)}.gs-recap-venue strong{font-size:var(--fs-title);font-weight:var(--fw-bold)}.asst{width:100%;max-width:780px;margin:0 auto;display:flex;flex-direction:column;gap:20px;min-height:calc(100vh - 164px)}.asst>div:last-child{margin-top:-20px}.asst-empty{margin:auto 0;padding:24px 0;text-align:center}.asst-empty h1{margin:0 0 10px;font-size:var(--fs-display);font-weight:var(--fw-bold);line-height:1.05}.asst-empty p{max-width:480px;margin:0 auto;color:var(--muted);font-size:var(--fs-body);line-height:1.5}.asst-refine{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border:1px dashed var(--line);border-radius:var(--r-md);animation:asst-in .22s ease-out both}.asst-refine-row{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;align-items:center}.asst-refine-label{color:var(--muted-2);font-size:var(--fs-caption);font-weight:var(--fw-medium);letter-spacing:.02em}.asst-refine-items{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.asst-refine-item{padding:5px 11px;border:1px solid var(--line);border-radius:var(--r-pill);background:transparent;color:var(--muted);font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-medium);line-height:1.3;cursor:pointer;transition:color .15s,border-color .15s}button.asst-refine-item:hover:not(:disabled){color:var(--fg);border-color:var(--muted-2)}button.asst-refine-item:disabled{opacity:.5;cursor:default}.asst-refine-item.on{background:var(--soft);border-color:var(--muted-2);color:var(--fg);cursor:default}.asst-refine-more{align-self:flex-start;padding:2px 0;border:0;background:none;color:var(--red);font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-medium);cursor:pointer}@media(max-width:560px){.asst-refine-row{grid-template-columns:minmax(0,1fr);gap:4px}.asst-refine-items{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.asst-refine-item{flex:none}}.asst-suggest{width:min(100%,600px);margin:22px auto 0;text-align:left}.asst-suggest-topics{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.asst-suggest-topic{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:7px 13px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--card);color:var(--muted);font:inherit;font-size:var(--fs-small);font-weight:var(--fw-medium);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.asst-suggest-topic svg{width:15px;height:15px}.asst-suggest-topic:hover{color:var(--fg);border-color:var(--muted-2)}.asst-suggest-topic.on{background:var(--soft);border-color:var(--muted-2);color:var(--fg)}.asst-suggest-list{list-style:none;margin:14px 0 0;padding:0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);overflow:hidden}.asst-suggest-list li+li{border-top:1px solid var(--line)}.asst-suggest-list button{display:block;width:100%;padding:12px 16px;border:0;background:transparent;color:var(--fg);font:inherit;font-size:var(--fs-body);font-weight:var(--fw-medium);text-align:left;cursor:pointer;transition:background .15s}.asst-suggest-list button:hover,.asst-suggest-list button:focus-visible{background:var(--soft);outline:none}@media(max-width:560px){.asst-suggest-topics{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px}.asst-suggest-topic{flex:none}}.asst-thread{flex:1;display:flex;flex-direction:column;gap:28px}.asst-turn{display:flex;flex-direction:column;gap:12px}.asst-user-wrap{align-self:flex-end;display:flex;flex-direction:column;align-items:flex-end;gap:4px;max-width:82%}.asst-user-edit{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted-2);cursor:pointer;opacity:0;transition:opacity .15s,color .15s,background .15s}.asst-user-edit svg{width:13px;height:13px}.asst-turn:hover .asst-user-edit,.asst-user-edit:focus-visible{opacity:1}.asst-user-edit:hover{color:var(--fg);background:var(--soft)}@media(hover:none){.asst-user-edit{opacity:1}}.asst-user{max-width:100%;padding:10px 15px;border:1px solid var(--line);border-radius:var(--r-md) var(--r-md) var(--r-sm) var(--r-md);background:var(--soft);font-size:var(--fs-body);line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.asst-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.asst-step{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:var(--fs-small);font-weight:var(--fw-medium);line-height:1.35;animation:asst-in .22s ease-out both}.asst-step svg{flex:none;width:15px;height:15px;stroke-width:2.4}.asst-step .spinner{flex:none;width:13px;height:13px;margin:1px}.asst-step.is-done svg{color:var(--green)}.asst-step.is-failed svg{color:var(--muted-2)}.asst-step.is-waiting{color:var(--fg)}.asst-step.is-waiting svg{color:var(--amber)}@keyframes asst-in{0%{opacity:0;transform:translateY(4px)}}.asst-text{margin:0;font-size:var(--fs-body);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;animation:asst-in .22s ease-out both}.asst-error{margin:0;color:var(--red-dark);font-size:var(--fs-body);line-height:1.45}.asst-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);animation:asst-in .22s ease-out both}.asst-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.asst-card-head strong{font-size:var(--fs-body);font-weight:var(--fw-medium)}.asst-card-head span{color:var(--muted);font-size:var(--fs-small);font-weight:var(--fw-medium)}.asst-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 150px;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:var(--fs-body);font-variant-numeric:tabular-nums}.asst-row-head{padding:0 0 4px;border-top:0;color:var(--muted-2);font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.06em;text-transform:uppercase}.asst-row b{font-weight:var(--fw-medium);overflow-wrap:anywhere}.asst-card-sub{margin:-6px 0 0;color:var(--muted);font-size:var(--fs-small);overflow-wrap:anywhere}.asst-chart-headline{margin:0;font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:1.45;overflow-wrap:anywhere}.asst-flavor{display:flex;align-items:flex-start;gap:10px;min-width:0}.asst-flavor>span{flex:1;min-width:0}.asst-flavor input[type=checkbox]{flex:none;width:17px;height:17px;margin:2px 0 0}.asst-row.is-skipped{color:var(--muted-2)}.asst-row.is-skipped b{font-weight:var(--fw-medium);text-decoration:line-through}.asst-more{align-self:flex-start;font-size:var(--fs-small);text-decoration:underline;text-underline-offset:3px}.asst-row em{display:block;margin-top:2px;color:var(--muted);font-size:var(--fs-caption);font-style:normal}.asst-row em.asst-warn{color:var(--amber)}.asst-row select{height:38px;font-size:var(--fs-body)}.asst-card .error-banner{margin:0}.asst-card-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding-top:2px}.asst-card-foot .primary-btn,.asst-card-foot .secondary-btn{min-height:40px;padding:0 16px;font-family:inherit;font-size:var(--fs-body)}.asst-card-foot button:disabled{opacity:.5;cursor:default}.asst-outcome{color:var(--muted);font-size:var(--fs-small);font-weight:var(--fw-medium)}.asst-outcome.ok{color:var(--green)}.asst-card-foot .text-btn{font-size:var(--fs-small);text-decoration:underline;text-underline-offset:3px}.asst-dock{position:sticky;bottom:0;z-index:5;margin:-22px -6px 0;padding:22px 6px 18px;background:linear-gradient(to bottom,transparent,var(--page-end) 22px)}.asst-composer{display:flex;align-items:flex-end;gap:6px;padding:7px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);box-shadow:0 10px 30px #11111314}.asst-clip{flex:none;width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--muted);transition:color .15s,background .15s}.asst-clip:hover{color:var(--fg);background:var(--soft)}.asst-clip svg{width:19px;height:19px}.asst-mic{flex:none;width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--muted);transition:color .15s,background .15s,box-shadow .12s}.asst-mic:hover{color:var(--fg);background:var(--soft)}.asst-mic:disabled{opacity:.4;cursor:default}.asst-mic svg{width:19px;height:19px}.asst-mic.is-recording{color:var(--white);background:var(--red-dark);box-shadow:0 0 0 calc(2px + var(--level, 0) * 7px) color-mix(in srgb,var(--red-dark) 28%,transparent)}.asst-mic.is-busy svg{animation:asst-mic-wait 1s ease-in-out infinite}@keyframes asst-mic-wait{50%{opacity:.35}}.asst-attach{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px 8px}.asst-file{display:inline-flex;align-items:center;gap:7px;max-width:100%;min-height:32px;padding:0 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);color:var(--fg);font-size:var(--fs-small);font-weight:var(--fw-medium);overflow-wrap:anywhere}.asst-file svg{flex:none;width:15px;height:15px;color:var(--muted)}.asst-file button{display:grid;place-items:center;width:22px;height:22px;margin-right:-4px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted)}.asst-file button:hover{color:var(--fg);background:var(--soft)}.asst-file-error{color:var(--red-dark);font-size:var(--fs-small)}.asst-file-action{min-height:32px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);color:var(--muted);font-family:inherit;font-size:var(--fs-small);font-weight:var(--fw-medium);transition:color .15s,border-color .15s}.asst-file-action:hover{color:var(--fg);border-color:var(--muted-2)}.asst-row.asst-row-wide{grid-template-columns:minmax(0,1fr)}.asst-user .asst-file{display:flex;width:fit-content;margin:0 0 8px auto}.asst-composer textarea{flex:1;min-width:0;min-height:0;max-height:180px;padding:9px 0;border:0;border-radius:0;background:transparent;resize:none;font-size:var(--fs-body);line-height:1.45;box-shadow:none}.asst-composer textarea::placeholder{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asst-composer textarea:focus{outline:none;box-shadow:none}.asst-send{flex:none;width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--fg);color:var(--bg);transition:opacity .15s,transform .1s}.asst-send:active{transform:scale(.94)}.asst-send:disabled{opacity:.3;cursor:default}.asst-send svg{width:18px;height:18px;stroke-width:2.4}@media(max-width:820px){.asst{min-height:calc(100vh - 227px)}.asst-dock{padding-bottom:12px}.asst-user-wrap{max-width:92%}}@media(max-width:560px){.asst-row{grid-template-columns:minmax(0,1fr) auto}.asst-row>span:first-child{grid-column:1 / -1}.asst-row-head>span:first-child{display:none}}@media(prefers-reduced-motion:reduce){.asst-step,.asst-text,.asst-card,.asst-options,.asst-chart-bar,.asst-chart-fill{animation:none}.asst-mic.is-busy svg{animation:none}}.asst-chart{--s1: #2a78d6;--s2: #eb6834;--s3: #1baf7a;--s4: #eda100;--s5: #e87ba4;--s6: #008300;--chart-grid: #e6e7eb;--chart-base: #c3c6cd;display:flex;flex-direction:column;gap:10px;min-width:0}@media(prefers-color-scheme:dark){.asst-chart{--s1: #3987e5;--s2: #d95926;--s3: #199e70;--s4: #c98500;--s5: #d55181;--s6: #008300;--chart-grid: #2a2a2f;--chart-base: #3c3c43}}.asst-chart .s1{--series: var(--s1)}.asst-chart.is-mono .s1{--series: var(--red)}.asst-chart .s2{--series: var(--s2)}.asst-chart .s3{--series: var(--s3)}.asst-chart .s4{--series: var(--s4)}.asst-chart .s5{--series: var(--s5)}.asst-chart .s6{--series: var(--s6)}.asst-chart-legend{list-style:none;display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;padding:0}.asst-chart-legend li{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:var(--fs-small);font-weight:var(--fw-medium)}.asst-chart-key{flex:none;width:10px;height:10px;border-radius:3px;background:var(--series)}.asst-chart-key.is-line{width:14px;height:3px;border-radius:2px}.asst-chart-plot{position:relative;min-width:0;height:250px}.asst-chart-plot svg{display:block;width:auto;height:auto;overflow:visible;stroke:none;fill:none}.asst-chart-grid{stroke:var(--chart-grid);stroke-width:1}.asst-chart-base,.asst-chart-cross{stroke:var(--chart-base);stroke-width:1}.asst-chart-tick{fill:var(--muted-2);stroke:none;font-size:var(--fs-micro);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.asst-chart-line{stroke:var(--series);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;fill:none}.asst-chart-stop{stop-color:var(--series)}.asst-chart-value{fill:var(--fg);stroke:none;font-size:var(--fs-micro);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.asst-chart-dot{fill:var(--series);stroke:var(--card);stroke-width:2}.asst-chart-bar{stroke:none}.asst-chart-bar.is-active{opacity:.78}.asst-chart-hit{fill:transparent;stroke:none;outline:none;cursor:default}.asst-chart-hit:focus-visible{stroke:var(--chart-base);stroke-width:1}.asst-chart-tip{position:absolute;z-index:2;transform:translate(-50%);pointer-events:none;display:flex;flex-direction:column;gap:3px;min-width:96px;max-width:220px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);box-shadow:0 8px 24px #1111131f;font-size:var(--fs-caption);line-height:1.3}.asst-chart-tip-head{color:var(--muted);font-weight:var(--fw-medium)}.asst-chart-tip-row{display:flex;align-items:center;gap:7px;color:var(--muted)}.asst-chart-tip-row b{color:var(--fg);font-size:var(--fs-small);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.asst-chart-rows{list-style:none;display:flex;flex-direction:column;gap:10px;margin:0;padding:0}.asst-chart-rows li{display:grid;grid-template-columns:minmax(0,34%) minmax(0,1fr);gap:12px;align-items:center}.asst-chart-row-label{overflow:hidden;color:var(--fg);font-size:var(--fs-small);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap}.asst-chart-row-bars{display:flex;flex-direction:column;gap:2px;min-width:0}.asst-chart-row-bar{display:flex;align-items:center;gap:10px;min-width:0}.asst-chart-row-track{flex:1;min-width:0;height:8px;border-radius:var(--r-bar);background:var(--soft);overflow:hidden}.asst-chart-fill{display:block;height:100%;min-width:2px;border-radius:var(--r-bar);background:var(--series)}.asst-chart-row-value{flex:none;min-width:56px;color:var(--fg);font-size:var(--fs-caption);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.asst-rank{gap:13px}.asst-rank .rankbar-title{align-items:center}.asst-rank-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asst-rank .link-btn{margin-top:0}.asst-stack{display:flex}.asst-stack .asst-chart-fill{flex:none;border-radius:0;min-width:0}.asst-stack .asst-chart-fill:first-child{border-radius:var(--r-bar) 0 0 var(--r-bar)}.asst-stack .asst-chart-fill:last-child{border-radius:0 var(--r-bar) var(--r-bar) 0}.asst-stack .asst-chart-fill:only-child{border-radius:var(--r-bar)}.asst-stack-part{display:inline-flex;align-items:center;gap:5px}.asst-rank .asst-chart-row-bars{gap:4px}.asst-views{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.asst-views-hint{color:var(--muted-2);font-size:var(--fs-caption);font-weight:var(--fw-medium);margin-right:2px}.asst-view{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border:1px solid var(--line);border-radius:var(--r-pill);background:transparent;color:var(--muted);font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-medium);cursor:pointer}.asst-view svg{width:14px;height:14px}.asst-view:hover{color:var(--fg);border-color:var(--muted-2)}.asst-view.on{background:var(--red);border-color:var(--red);color:var(--white)}.asst-view:focus-visible{outline:2px solid var(--red);outline-offset:2px}.asst-donut{display:flex;flex-wrap:wrap;align-items:center;gap:18px 24px}.asst-donut svg{flex:none;width:180px;height:180px;overflow:visible;stroke:none;fill:none}.asst-donut-track{fill:none;stroke:var(--soft);stroke-width:22}.asst-donut-slice{fill:none;stroke-width:22;transition:stroke-width .15s}.asst-donut-slice:hover{stroke-width:26}.asst-donut-total{stroke:none;fill:var(--fg);font-size:var(--fs-title);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.asst-donut-caption{stroke:none;fill:var(--muted-2);font-size:var(--fs-micro);font-weight:var(--fw-medium)}.asst-donut-legend{flex:1;min-width:200px;list-style:none;display:flex;flex-direction:column;gap:9px;margin:0;padding:0}.asst-donut-legend li{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:9px;font-size:var(--fs-small)}.asst-donut-key{width:10px;height:10px;border-radius:3px}.asst-donut-label{overflow:hidden;color:var(--fg);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap}.asst-donut-legend b{font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.asst-donut-value{min-width:64px;color:var(--muted);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;text-align:right}.asst-donut .d1{--slice: var(--red)}.asst-donut .d2{--slice: var(--s1)}.asst-donut .d3{--slice: var(--s3)}.asst-donut .d4{--slice: var(--s4)}.asst-donut .d5{--slice: var(--s5)}.asst-donut .d6{--slice: var(--s2)}.asst-donut .d-rest{--slice: var(--muted-2)}.asst-donut-slice{stroke:var(--slice)}.asst-donut-key{background:var(--slice)}.asst-chart-table{max-height:min(70vh,640px);overflow:auto;border:1px solid var(--line);border-radius:var(--r-md)}.asst-chart-table table{width:100%;border-collapse:collapse;font-size:var(--fs-small);font-variant-numeric:tabular-nums}.asst-chart-table th,.asst-chart-table td{padding:10px 14px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.asst-chart-table tr:last-child th,.asst-chart-table tr:last-child td{border-bottom:0}.asst-chart-table tbody tr:hover{background:var(--soft)}.asst-chart-table th[scope=row]{text-align:left;font-weight:var(--fw-medium);color:var(--fg)}.asst-chart-table thead th{position:sticky;top:0;z-index:1;padding-block:8px;background:var(--soft);color:var(--muted);font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.05em;text-transform:uppercase}.asst-chart-table thead th:first-child,.asst-chart-table .is-left{text-align:left}.dash-widget .asst-chart-table{max-height:440px}.asst-card-note{margin:0;color:var(--muted);font-size:var(--fs-caption);line-height:1.5}.asst-card-method{margin:0;color:var(--muted);font-size:var(--fs-small);line-height:1.5;overflow-wrap:anywhere}.asst-card-method b{color:var(--fg);font-weight:var(--fw-medium)}.insight-overview{margin:0;font-size:var(--fs-body);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.insight-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.insight{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:4px 16px;align-items:start;padding:12px 0;border-top:1px solid var(--line)}.insight:last-child{padding-bottom:2px}.insight-metric{display:flex;flex-direction:column;gap:2px;min-width:0;font-variant-numeric:tabular-nums}.insight-metric b{font-size:var(--fs-head);font-weight:var(--fw-bold);line-height:1.1;white-space:nowrap}.insight-metric span{color:var(--muted-2);font-size:var(--fs-caption);line-height:1.3}.insight.is-good .insight-metric b{color:var(--green)}.insight-body{display:flex;flex-direction:column;gap:8px;min-width:0}.insight-head{display:flex;flex-direction:column;gap:2px;padding:0;border:0;background:transparent;color:inherit;font-family:inherit;text-align:left;cursor:pointer}.insight-head strong{font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:1.35;overflow-wrap:anywhere}.insight-head span{color:var(--muted);font-size:var(--fs-small);line-height:1.45;overflow-wrap:anywhere}.insight-head:hover strong{text-decoration:underline;text-underline-offset:3px}.insight-full{display:flex;flex-direction:column;gap:6px}.insight-full p{margin:0;font-size:var(--fs-body);line-height:1.5;overflow-wrap:anywhere}.insight-full b{font-weight:var(--fw-medium)}.insight-action{display:inline-flex;align-items:center;gap:2px;min-height:24px;padding:0;border:0;background:transparent;color:var(--fg);font-family:inherit;font-size:var(--fs-small);font-weight:var(--fw-medium);white-space:nowrap;cursor:pointer}.insight-action svg{width:16px;height:16px;color:var(--muted-2)}.insight-action:hover{text-decoration:underline;text-underline-offset:3px}.insight-action:disabled{opacity:.5;cursor:default;text-decoration:none}@media(max-width:640px){.insight{grid-template-columns:80px minmax(0,1fr)}.insight-action{grid-column:2;justify-self:start;min-height:28px}}.insight-block{margin-bottom:16px}.insight-block .section-title{margin-bottom:2px}.insight-block .insight:first-child{border-top:0}.insight-block a.insight-more{justify-content:flex-start;margin-top:6px;padding:0;font-size:var(--fs-small);text-decoration:underline;text-underline-offset:3px}@media(max-width:560px){.asst-chart-rows li{grid-template-columns:minmax(0,1fr);gap:4px}}.asst-save{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-top:2px}.asst-save select,.asst-save input{width:auto;min-width:180px;height:40px;font-size:var(--fs-body)}.asst-save .primary-btn,.asst-save .secondary-btn{min-height:40px;padding:0 16px;font-family:inherit;font-size:var(--fs-body)}.asst-save button:disabled{opacity:.5;cursor:default}.asst-save .text-btn{font-size:var(--fs-small);text-decoration:underline;text-underline-offset:3px}.dash-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin-top:-6px}.dash-bar .text-btn{font-size:var(--fs-small)}.dash-bar .text-btn:hover{color:var(--fg)}.dash-rename{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.dash-rename input{width:min(320px,70vw);height:40px}.dash-rename .primary-btn,.dash-rename .secondary-btn{min-height:40px;padding:0 16px;font-family:inherit;font-size:var(--fs-body)}.dash-widgets{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr));gap:16px;align-items:start}.dash-widget{animation:none}.dash-widget.is-wide{grid-column:1 / -1}.dash-widget .asst-card-foot .text-btn{margin-left:auto;text-decoration:none}.dash-widget .asst-card-foot .text-btn:hover{color:var(--fg)}.asst-recent{width:min(100%,520px);margin:34px auto 0;text-align:left}.asst-recent h2{margin:0 0 8px;color:var(--muted-2);font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.07em;text-transform:uppercase}.asst-recent ul{list-style:none;display:flex;flex-direction:column;margin:0;padding:0}.asst-recent li{display:flex;align-items:center;gap:4px;border-top:1px solid var(--line)}.asst-recent li:first-child{border-top:0}.asst-recent-open{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;padding:0 4px;border:0;background:transparent;color:var(--fg);font-family:inherit;font-size:var(--fs-body);font-weight:var(--fw-medium);text-align:left}.asst-recent-open span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asst-recent-open time{flex:none;color:var(--muted-2);font-size:var(--fs-caption);font-weight:var(--fw-medium)}.asst-recent-open:hover span{text-decoration:underline;text-underline-offset:3px}.asst-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px 0}.asst-new{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;margin-right:-8px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted-2);font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-medium);cursor:pointer;transition:color .15s,background .15s}.asst-new svg{width:13px;height:13px}.asst-new:hover:not(:disabled){color:var(--fg);background:var(--soft)}.asst-new:disabled{opacity:.5;cursor:default}.asst-usage{display:flex;align-items:center;gap:10px;min-width:0;color:var(--muted-2);font-size:var(--fs-caption);font-weight:var(--fw-medium)}.asst-usage-bar{flex:none;width:96px;height:4px;border-radius:var(--r-bar);background:var(--line);overflow:hidden}.asst-usage-bar span{display:block;height:100%;border-radius:var(--r-bar);background:var(--muted-2);transition:width .3s ease-out}.asst-usage-text{min-width:0}.asst-usage.is-warn{color:var(--fg)}.asst-usage.is-warn .asst-usage-bar span{background:var(--fg)}.asst-usage.is-out{color:var(--red-dark)}.asst-usage.is-out .asst-usage-bar span{background:var(--red-dark)}.asst-options{display:flex;flex-wrap:wrap;gap:8px;animation:asst-in .22s ease-out both}.asst-options button{min-height:36px;max-width:100%;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--card);color:var(--fg);font-family:inherit;font-size:var(--fs-body);font-weight:var(--fw-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background-color .15s,border-color .15s}.asst-options button:hover{background:var(--soft);border-color:var(--muted-2)}.asst-options button:disabled{opacity:.5;cursor:default}.asst-rate{display:flex;flex-direction:column;gap:8px}.asst-rate-buttons{display:flex;align-items:center;gap:2px}.asst-rate-buttons button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted-2);transition:color .15s,background-color .15s}.asst-rate-buttons button:hover,.asst-rate-buttons button[aria-pressed=true]{color:var(--fg);background:var(--soft)}.asst-rate-buttons svg{width:16px;height:16px}.asst-rate-note{margin-left:8px;color:var(--muted);font-size:var(--fs-small);overflow-wrap:anywhere}.asst-rate-form{display:flex;gap:8px;max-width:520px}.asst-rate-form input{flex:1;min-width:0;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);color:var(--fg);font-family:inherit;font-size:var(--fs-body)}.asst-rate-form .secondary-btn{flex:none;min-height:40px;padding:0 14px;font-family:inherit;font-size:var(--fs-body)}.asst-recent-del{flex:none;display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted-2)}.asst-recent-del:hover{color:var(--fg);background:var(--soft)}.asst-recent-del svg{width:15px;height:15px}.card .row-stack,.card .balance-list,.mobile-section .preset-rail,.mobile-section .venue-stat-list{gap:0}.card .stat-row,.card .mix-row,.card .manage-row,.card .balance-row,.mobile-section .venue-stat-row,.mobile-section .preset-rail .preset-card.mix-row{padding:12px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}.card .row-stack>:first-child,.card .balance-list>:first-child,.mobile-section .preset-rail>.mix-row:first-child,.mobile-section .venue-stat-list>:first-child{border-top:0;padding-top:2px}.card .row-stack>:last-child,.card .balance-list>:last-child,.mobile-section .preset-rail>.mix-row:last-child,.mobile-section .venue-stat-list>:last-child{padding-bottom:2px}.card button.stat-row:hover .stat-row-title,.card .manage-row:hover strong{color:var(--red)}.card .stat-row-tile,.mobile-section .venue-stat-pin{background:var(--soft);color:var(--muted)}.card .stat-row-warn .stat-row-tile{background:#d9770624;color:var(--amber)}.mobile-section .staff-mix .mix-foot,.mobile-section .guest-mix .mix-foot{margin-top:4px;padding-top:0;border-top:0}.card .kpi-strip,.card .balance-kpis,.card .ret-windows{gap:14px 0;margin-left:-14px;overflow:hidden}.card .kpi,.card .balance-kpi,.card .ret-win{margin-left:-1px;padding:2px 14px;border:0;border-left:1px solid var(--line);border-radius:0;background:transparent}.card .ret-win:hover b,.card .ret-win.on b{color:var(--red)}.card .loyalty-status{border:0;border-radius:0}.card .loyalty-status>div{padding-inline:0}.card .empty-state,.mobile-section .empty-state{padding:6px 0;border:0;background:transparent;text-align:left}@media(min-width:821px){.cabinet-name{display:none}}.compact-page .mobile-section{padding:16px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.compact-page .mobile-section>.section-title{margin-bottom:8px}.compact-page .mobile-section>.section-title h2{font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.compact-page .mobile-section>.section-title .text-btn{min-height:0;font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--red);text-decoration:none}.compact-page .mobile-section>.section-title .text-btn:after{content:" →"}.compact-page>.hero.tracker-hero{gap:6px;padding:8px 0 4px;border-radius:0;background:transparent;box-shadow:none;color:var(--fg)}.compact-page>.hero.tracker-hero .eyebrow{margin:0;font-weight:var(--fw-bold);letter-spacing:.2em;color:var(--muted)}.compact-page>.hero.tracker-hero h1{margin:0;font-size:var(--fs-hero);line-height:.96;letter-spacing:-.045em}.compact-page>.hero.tracker-hero p:not(.eyebrow){margin:0;color:var(--muted);font-size:var(--fs-small);font-weight:var(--fw-medium)}.compact-page .kpi-grid{gap:0;margin:0 0 0 -12px;overflow:hidden;border-top:1px solid var(--line)}.compact-page .kpi-grid:has(>:nth-child(4):last-child){grid-template-columns:1fr 1fr}.compact-page .kpi-grid .kpi{margin:-1px 0 0 -1px;padding:12px;border:0;border-top:1px solid var(--line);border-left:1px solid var(--line);border-radius:0;background:transparent}.compact-page .kpi-grid .kpi strong{font-size:var(--fs-head);font-weight:var(--fw-bold);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.compact-page .kpi-grid .kpi-wide strong{font-size:var(--fs-lead);letter-spacing:0}.owner-shell .kpi-strip{gap:14px 0;padding:16px 0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);overflow:hidden}.owner-shell .kpi-strip .kpi{margin-left:-1px;padding:2px 18px;border:0;border-left:1px solid var(--line);border-radius:0;background:transparent}.owner-shell .card .kpi-strip{padding:0;border:0;border-radius:0;background:transparent}.owner-shell .card .kpi-strip .kpi{padding:2px 14px}.owner-shell .kpi-strip .kpi strong{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;font-variant-numeric:tabular-nums;white-space:nowrap}.kpi-delta{font-style:normal;font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted);white-space:nowrap}.kpi-delta{animation:screen-fade .3s ease-out}@media(prefers-reduced-motion:reduce){.kpi-delta{animation:none}}.data-table{width:100%;border-collapse:collapse;font-size:var(--fs-small);font-variant-numeric:tabular-nums}.data-table th,.data-table td{padding:9px 0 9px 12px;border-top:1px solid var(--line);text-align:left;vertical-align:top}.data-table th:first-child,.data-table td:first-child{padding-left:0}.data-table thead th{padding-top:0;padding-bottom:7px;border-top:0;color:var(--muted-2);font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.05em;text-transform:uppercase}.data-table .num{width:1%;text-align:right;white-space:nowrap}.data-table td.num{color:var(--fg);font-size:var(--fs-body);font-weight:var(--fw-medium)}.data-table tbody tr{cursor:pointer}.data-table tbody th{font-weight:var(--fw-regular)}.data-table-open{display:block;max-width:100%;padding:0;border:0;background:transparent;color:var(--fg);font:inherit;font-size:var(--fs-body);font-weight:var(--fw-medium);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-table tbody tr:hover .data-table-open{color:var(--red)}.data-table-sub{display:block;margin-top:2px;color:var(--muted);font-size:var(--fs-caption)}.report-table-static tbody tr,.report-table tbody tr.report-group{cursor:default}.report-table-static tbody tr:hover .data-table-open{color:var(--fg)}.report-table tr.report-group td{padding-top:18px}.report-table tbody:first-of-type tr.report-group td{padding-top:9px}.report-table tr.report-group .abc-group-meta{margin-left:10px}.data-table td.report-place,.data-table th.report-place{padding-right:4px;color:var(--muted-2);font-size:var(--fs-caption);font-weight:var(--fw-regular)}.report-votes{display:inline-flex;gap:8px;margin-left:8px}.report-votes>span{display:inline-flex;align-items:center;gap:3px}.report-votes svg{width:12px;height:12px}@media(max-width:560px){.data-table .report-place{display:none}.report-table tbody th,.report-table thead th:nth-child(2){padding-left:0}}.help-panel{width:min(440px,100%);max-height:100%;overflow:auto;padding:18px 20px 8px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card)}.help-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.help-head h2{margin:0;font-size:var(--fs-title)}.help-close{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted)}.help-close:hover{color:var(--fg);background:var(--soft)}.help-close svg{width:16px;height:16px}.help-list{margin:0;padding:0;list-style:none}.help-list li+li{border-top:1px solid var(--line)}.help-list button{display:grid;gap:2px;width:100%;padding:12px 0;border:0;background:transparent;color:var(--fg);font:inherit;text-align:left}.help-list button:hover .help-name{color:var(--red)}.help-name{display:flex;align-items:center;gap:8px;font-size:var(--fs-body);font-weight:var(--fw-medium)}.help-new{width:7px;height:7px;border-radius:50%;background:var(--red)}.help-steps{color:var(--muted);font-size:var(--fs-caption)}.asst.asst-start{gap:18px}.asst-start-head{flex:1 0 0;display:flex;flex-direction:column;justify-content:flex-end;text-align:center}.asst-start-head h1{margin:0 0 8px;font-size:var(--fs-display);font-weight:var(--fw-bold);line-height:1.03;letter-spacing:-.01em}.asst-start-head p{max-width:520px;margin:0 auto;color:var(--muted);font-size:var(--fs-body);line-height:1.5}.asst-start .asst-dock{order:1;position:static;margin:0;padding:0;background:none}.asst-start-body{order:2;flex:1 0 0;min-height:0;display:flex;flex-direction:column;gap:28px}.asst-start .asst-suggest{width:100%;margin:0}.asst-start .asst-recent{width:100%;margin:0;padding-bottom:24px}.asst-recent-more{margin-top:6px;padding:4px;border:0;background:none;color:var(--red);font:inherit;font-size:var(--fs-small);font-weight:var(--fw-medium);cursor:pointer}.taste-page{display:grid;gap:16px}.taste-footer{display:grid;gap:8px;padding-top:4px}.taste-footer .primary-btn,.taste-footer .secondary-btn{min-height:48px;font-size:var(--fs-lead)}.taste-footer .primary-btn:disabled{opacity:.45}.taste-intro-steps{display:grid;margin:0;padding:0;list-style:none;counter-reset:taste}.taste-intro-steps li{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line);font-size:var(--fs-body);counter-increment:taste}.taste-intro-steps li:first-child{border-top:0;padding-top:2px}.taste-intro-steps li:before{content:counter(taste);min-width:18px;color:var(--muted);font-size:var(--fs-small);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.taste-progress{display:flex;align-items:center;gap:10px;padding-top:4px}.taste-segs{flex:1;display:flex;gap:4px}.taste-segs span{flex:1;height:4px;border-radius:var(--r-bar);background:var(--line)}.taste-segs span.on{background:var(--fg)}.taste-step-label{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted);font-variant-numeric:tabular-nums}.taste-q h1{margin:0 0 6px;font-size:var(--fs-head);line-height:1.15;letter-spacing:-.02em}.taste-q p{margin:0;font-size:var(--fs-body);color:var(--muted)}.taste-options{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card)}.taste-opt{display:flex;align-items:center;gap:14px;width:100%;min-height:64px;padding:12px 14px;border:0;border-top:1px solid var(--line);border-radius:0;color:var(--fg);background:transparent;text-align:left}.taste-opt:first-child{border-top:0}.taste-opt:hover{background:var(--soft)}.taste-opt.on{background:var(--red-soft)}.taste-opt-text{display:grid;gap:2px;min-width:0}.taste-opt-text strong{font-size:var(--fs-lead);font-weight:var(--fw-medium)}.taste-opt-text span{font-size:var(--fs-small);color:var(--muted)}.taste-radio{flex:none;width:20px;height:20px;margin-left:auto;border:2px solid var(--muted-2);border-radius:50%}.taste-opt.on .taste-radio{border:6px solid var(--red)}.taste-bars{flex:none;display:flex;align-items:flex-end;gap:3px;width:24px;height:20px}.taste-bars span{width:6px;border-radius:var(--r-bar);background:var(--line)}.taste-bars span.on{background:var(--fg)}.taste-snow{flex:none;display:inline-flex;width:24px;color:var(--fg)}.taste-snow svg{width:22px;height:22px}.taste-snow.ice-some{opacity:.55}.taste-snow.ice-none{opacity:.2}.taste-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.taste-tile{display:grid;align-content:start;gap:4px;min-height:76px;padding:12px;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--fg);background:var(--card);text-align:left}.taste-tile:hover{background:var(--soft)}.taste-tile.like{border-color:var(--red);background:var(--red-soft)}.taste-tile.dislike{background:var(--soft);color:var(--muted)}.taste-tile.dislike .taste-tile-name{text-decoration:line-through}.taste-tile.dislike .taste-dot{opacity:.35}.taste-tile-head{display:flex;align-items:center;gap:8px;min-width:0}.taste-tile-name{flex:1;min-width:0;font-size:var(--fs-body);font-weight:var(--fw-medium)}.taste-tile-hint{font-size:var(--fs-caption);line-height:1.35;color:var(--muted)}.taste-dot{flex:none;width:12px;height:12px;border-radius:50%}.taste-dot.small{width:8px;height:8px}.taste-mark{flex:none;display:inline-flex;width:18px;height:18px;color:var(--red)}.taste-mark.dislike{color:var(--muted)}.taste-mark svg{width:18px;height:18px;stroke-width:2.5}.taste-count{margin:0;font-size:var(--fs-small);color:var(--muted)}.taste-facts{display:grid;margin:0}.taste-facts>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;padding:10px 0;border-top:1px solid var(--line)}.taste-facts dt{font-size:var(--fs-small);color:var(--muted)}.taste-facts dd{margin:0;font-size:var(--fs-body);font-weight:var(--fw-medium)}.taste-section-hint{margin:0 0 4px;font-size:var(--fs-small);color:var(--muted)}.taste-mixes{display:grid}.taste-mix{display:grid;gap:8px;padding:12px 0;border-top:1px solid var(--line)}.taste-mix:first-child{border-top:0}.taste-mix h3{margin:0;font-size:var(--fs-lead);font-weight:var(--fw-medium);line-height:1.25;overflow-wrap:anywhere}.taste-kind{font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.taste-kind.kind-main{color:var(--fg)}.taste-mix-bar{display:flex;gap:2px;height:6px;overflow:hidden;border-radius:var(--r-bar)}.taste-mix-bar span{flex-basis:0}.taste-mix-items{display:grid;gap:6px;margin:0;padding:0;list-style:none}.taste-mix-items li{display:flex;align-items:center;gap:10px;font-size:var(--fs-body)}.taste-mix-name{flex:1;min-width:0;display:grid}.taste-mix-name small{color:var(--muted);font-size:var(--fs-caption)}.taste-mix-items strong{font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.taste-grow{display:grid;margin:0;padding:0;list-style:none}.taste-grow li{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.taste-grow li:first-child{border-top:0;padding-top:2px}.taste-grow li>span{flex:none;display:inline-flex;color:var(--muted)}.taste-grow li>span svg{width:20px;height:20px}.taste-grow li div{display:grid;gap:2px}.taste-grow strong{font-size:var(--fs-body);font-weight:var(--fw-medium)}.taste-grow small{font-size:var(--fs-caption);line-height:1.4;color:var(--muted)}.taste-companion{display:flex;align-items:center;gap:12px;margin-top:6px;padding:12px 0 0;border-top:1px solid var(--line);color:var(--fg);text-decoration:none}.taste-companion>span{flex:1;display:grid;gap:2px}.taste-companion strong{font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--red)}.taste-companion small{font-size:var(--fs-caption);line-height:1.4;color:var(--muted)}.taste-companion>svg{flex:none;width:18px;height:18px;color:var(--muted-2)}.taste-meter{display:grid;gap:6px}.taste-meter-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:var(--fs-small)}.taste-meter-head span{color:var(--muted)}.taste-meter-head strong{font-weight:var(--fw-medium)}.taste-meter-bar,.taste-meter-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.taste-meter-bar span{height:4px;border-radius:var(--r-bar);background:var(--line)}.taste-meter-bar span.on{background:var(--fg)}.taste-meter-steps span{font-size:var(--fs-micro);line-height:1.3;color:var(--muted-2)}.taste-meter-steps span.on{color:var(--muted);font-weight:var(--fw-medium)}.taste-summary{display:grid;gap:12px;margin-bottom:14px}.taste-summary .taste-facts>div:first-child{border-top:0;padding-top:2px}.taste-summary-row{display:grid;gap:6px}.taste-summary-row>span{font-size:var(--fs-small);color:var(--muted)}.taste-chips{display:flex;flex-wrap:wrap;gap:6px}.taste-chip{padding:4px 10px;border-radius:var(--r-pill);font-size:var(--fs-small);font-weight:var(--fw-medium)}.taste-chip.like{color:var(--ok-fg);background:var(--ok-bg)}.taste-chip.dislike{color:var(--danger-fg);background:var(--danger-bg)}.taste-summary-note{margin:0;font-size:var(--fs-caption);line-height:1.4;color:var(--muted)}.taste-staff-mixes{display:grid;margin:0;padding:0;list-style:none}.taste-staff-mixes li{display:grid;gap:2px;padding:10px 0;border-top:1px solid var(--line)}.taste-staff-mixes li:first-child{padding-top:2px;border-top:0}.taste-staff-mixes strong{font-size:var(--fs-body);font-weight:var(--fw-medium)}.taste-staff-mixes small{font-size:var(--fs-caption);color:var(--muted)}.taste-entry{display:flex;align-items:center;margin:12px 0 4px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card)}.taste-entry-link{display:flex;flex:1;align-items:center;gap:12px;min-width:0;min-height:56px;padding:10px 4px 10px 14px;color:inherit;text-decoration:none;transition:transform .1s ease}.taste-entry-link:active{transform:scale(.98)}.taste-entry-dots{display:grid;flex:none;grid-template-columns:repeat(2,8px);gap:4px}.taste-entry-dots i{width:8px;height:8px;border-radius:50%}.taste-entry-text{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.taste-entry-text b{font-size:var(--fs-body);font-weight:var(--fw-medium)}.taste-entry-text span{overflow:hidden;font-size:var(--fs-caption);color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.taste-entry-go{flex:none;font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--red)}.taste-entry-close{display:grid;flex:none;place-items:center;width:40px;height:40px;margin-right:4px;padding:0;border:0;background:none;color:var(--muted-2);cursor:pointer}.taste-entry-close svg{width:16px;height:16px}.taste-home-name{margin:0;font-size:var(--fs-lead);font-weight:var(--fw-medium)}.taste-new{display:inline-block;margin-right:8px;padding:2px 8px;vertical-align:2px;border-radius:var(--r-pill);font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.02em;color:var(--ok-fg);background:var(--ok-bg)}.taste-home-name .taste-new{margin:0 0 0 8px}.taste-refined{margin:-8px 0 0;font-size:var(--fs-small);line-height:1.45;color:var(--muted)}.taste-home-note{margin:2px 0 0;font-size:var(--fs-caption);color:var(--muted)}.home-stock{display:grid;grid-template-columns:1fr 1fr;margin:4px 0;border-top:1px solid var(--line)}.home-stock-cell{display:grid;align-content:start;gap:2px;padding:14px 12px 14px 0}.home-stock-cell+.home-stock-cell{padding:14px 0 14px 12px;border-left:1px solid var(--line)}.home-stock-label{font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.home-stock-cell strong{margin-top:4px;font-size:var(--fs-head);font-weight:var(--fw-bold);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.home-stock-note{font-size:var(--fs-caption);color:var(--muted)}.home-stock-note.low{color:var(--warn-fg)}.home-stock-add{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:40px;margin-top:10px;color:var(--red)}.home-stock-add svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}.home-rows{display:grid}.home-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.home-row:first-child{padding-top:2px;border-top:0}.home-row-static{cursor:default}.home-row-body{display:grid;gap:2px;flex:1;min-width:0}.home-row-body span{font-size:var(--fs-caption);color:var(--muted)}.home-row-body strong{overflow:hidden;font-size:var(--fs-body);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap}.home-row-bar{display:block;height:4px;margin-top:6px;overflow:hidden;border-radius:var(--r-bar);background:var(--soft)}.home-row-bar b{display:block;height:100%;border-radius:var(--r-bar);background:var(--muted-2)}.home-row.tinted .home-row-bar{background:color-mix(in srgb,var(--flavor) 18%,transparent)}.home-row.tinted .home-row-bar b{background:var(--flavor)}.home-row-value{font-size:var(--fs-body);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.home-sheet{max-height:min(92vh,var(--vv-height, 92vh));overflow-y:auto}.home-sheet .add-flavor-head h2{white-space:normal}.home-sheet .add-flavor-head .eyebrow{margin:0 0 2px}.home-sheet-block{display:grid;gap:8px}.home-sheet-label{font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--muted)}.home-sheet-line{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:var(--fs-body)}.home-sheet-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.home-chips{flex-wrap:wrap;margin-bottom:0;padding-bottom:0}.home-sheet-remove{justify-self:center;color:var(--danger-fg)}.home-sheet-add{justify-self:start;color:var(--red)}.home-bowl-edit{display:grid;grid-template-columns:34px minmax(0,1fr) 64px 42px;align-items:center;gap:6px}.home-bowl-default{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--soft);color:transparent;cursor:pointer}.home-bowl-default.on{border-color:var(--red);background:var(--red);color:var(--white)}.home-bowl-default svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4}.home-mix-block{display:grid;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.home-mix-grams{margin:0;font-size:var(--fs-small);color:var(--muted)}.home-mix-missing{margin:0;font-size:var(--fs-caption);color:var(--warn-fg)}.home-dot{flex:none;width:10px;height:10px;border-radius:50%;background:var(--muted-2)}.home-row.tinted .home-dot{background:var(--flavor)}.home-buy .home-row-body em{font-style:normal}.home-buy .home-row-body em.home-buy-urgent{color:var(--warn-fg)}.home-buy-add{display:grid;flex:none;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;color:var(--red)}.home-buy-add svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}.home-summary-line{margin:0;font-size:var(--fs-body);color:var(--muted)}.home-summary-line b{color:var(--fg);font-weight:var(--fw-medium)}.home-chip{display:inline-flex;align-items:center;gap:6px}.home-chip .home-dot{width:8px;height:8px;background:var(--flavor, var(--muted-2))}.gs-home{display:grid;gap:8px;text-align:left}.gs-home>*{animation:gs-rise .45s ease var(--d) both}.gs-home-stock{display:grid;grid-template-columns:1fr 1fr;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.gs-home-stock>div{display:grid;gap:1px;padding:0 12px}.gs-home-stock>div+div{border-left:1px solid var(--line)}.gs-home-stock span{font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.gs-home-stock b{font-size:var(--fs-head);font-weight:var(--fw-bold);letter-spacing:-.03em}.gs-home-stock small{font-size:var(--fs-caption);color:var(--muted)}.gs-home-row{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:8px 0;border-bottom:1px solid var(--line)}.gs-home-row-text{display:grid;gap:1px;min-width:0}.gs-home-row-text small{font-size:var(--fs-caption);color:var(--muted)}.gs-home-row-text small.urgent{color:var(--warn-fg)}.gs-home-row-text b{font-size:var(--fs-body);font-weight:var(--fw-medium)}.gs-home-grams{align-self:center;font-size:var(--fs-body);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.gs-home-bar{grid-column:1 / -1;display:block;height:4px;overflow:hidden;border-radius:var(--r-bar);background:color-mix(in srgb,var(--c) 18%,transparent)}.gs-home-bar b{display:block;height:100%;border-radius:var(--r-bar);background:var(--c);transform-origin:left;animation:gs-home-fill .7s ease var(--d) both}@keyframes gs-home-fill{0%{transform:scaleX(0)}}.gs-home-chips{display:flex;gap:8px;animation:none}.gs-home-chips span{padding:8px 12px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--card);font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--muted);animation:gs-rise .45s ease var(--d) both}.gs-home-chips span.on{border-color:var(--red);background:var(--red);color:var(--white);animation:gs-pop .5s ease var(--d) both}.gs-home-take{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}.gs-home-take i{width:10px;height:10px;border-radius:50%}.gs-home-take.coal i{background:var(--muted-2)}.gs-home-take span{font-size:var(--fs-body);font-weight:var(--fw-medium)}.gs-home-take small{margin-left:4px;color:var(--muted);font-size:var(--fs-caption)}.gs-home-take b{font-size:var(--fs-body);font-weight:var(--fw-bold);color:var(--red);font-variant-numeric:tabular-nums}.gs-home .gs-toast{justify-self:center;margin-top:6px}.gs-home-head{display:flex;justify-content:space-between;margin:0 0 2px;font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.gs-home-head span{letter-spacing:0;text-transform:none;font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--red)}.gs-home-buy{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.gs-home-buy>i{width:10px;height:10px;border-radius:50%}.gs-home-plus{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;color:var(--red)}.gs-home-plus svg{width:15px;height:15px}.gs-home-card{display:grid;gap:8px;padding:14px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line),0 12px 30px #0000004d}.gs-home-sum{margin:0;font-size:var(--fs-body);color:var(--muted)}.gs-home-sum b{color:var(--fg);font-weight:var(--fw-medium)}.gs-home-tags{display:flex;flex-wrap:wrap;gap:6px}.gs-home-tags span{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--line);border-radius:var(--r-pill);font-size:var(--fs-small);animation:gs-pop .45s ease var(--d) both}.gs-home-tags i{width:8px;height:8px;border-radius:50%}.gs-home-switch{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);font-size:var(--fs-body);font-weight:var(--fw-medium)}.gs-home-switch i{position:relative;width:42px;height:24px;border-radius:var(--r-pill);background:var(--green)}.gs-home-switch i:after{content:"";position:absolute;top:2px;right:2px;width:20px;height:20px;border-radius:50%;background:var(--white)}.gs-cover-home .gs-cover-bars i:nth-child(2){width:18px}.gs-cover-home .gs-cover-bars i:nth-child(3){width:10px}.home-row.home-stash{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 12px}.home-stash-brand{grid-column:1 / -1;font-size:var(--fs-caption);color:var(--muted)}.home-stash strong{overflow:hidden;font-size:var(--fs-body);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap}.home-stash .home-row-bar{grid-column:1 / -1}.home-stash.low .home-row-value{color:var(--warn-fg)}.home-row.home-setting{display:grid;grid-template-columns:auto minmax(0,1fr) 18px;align-items:center;gap:12px}.home-setting strong{font-size:var(--fs-body);font-weight:var(--fw-medium)}.home-setting span{overflow:hidden;font-size:var(--fs-small);color:var(--muted);text-align:right;text-overflow:ellipsis;white-space:nowrap}.home-setting svg{width:18px;height:18px;color:var(--muted-2)}.gs-nav{display:grid;gap:18px}.gs-nav-cards{display:grid;gap:10px}.gs-nav-card{display:grid;grid-template-columns:22px 1fr;align-items:center;gap:2px 12px;padding:14px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);text-align:left;animation:gs-rise .45s ease var(--d) both}.gs-nav-card svg{grid-row:span 2;width:22px;height:22px;color:var(--red)}.gs-nav-card b{font-size:var(--fs-lead);font-weight:var(--fw-bold)}.gs-nav-card span{font-size:var(--fs-caption);color:var(--muted)}.gs-nav-card.venues{animation:gs-rise .45s ease var(--d) both,gs-nav-off .4s ease 2.2s both;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--red) 55%,transparent)}.gs-nav-card.home{animation:gs-rise .45s ease var(--d) both,gs-nav-on .4s ease 2.2s both}@keyframes gs-nav-off{to{box-shadow:inset 0 0 0 1px var(--line)}}@keyframes gs-nav-on{to{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--red) 55%,transparent),0 12px 30px #0000004d}}.gs-nav-bar{position:relative;display:flex;justify-content:space-between;padding:6px 10px;margin-top:18px;border-radius:var(--r-md);background:var(--card);box-shadow:inset 0 0 0 1px var(--line);animation:gs-rise .45s ease var(--d) both}.gs-nav-tab{display:grid;place-items:center;width:44px;height:38px;border-radius:var(--r-md);color:var(--muted-2)}.gs-nav-tab svg{width:20px;height:20px}.gs-nav-tab.venues{animation:gs-nav-tab-off .4s ease 2.2s both;background:var(--red-soft);color:var(--red)}.gs-nav-tab.home{animation:gs-nav-tab-on .4s ease 2.2s both}@keyframes gs-nav-tab-off{to{background:transparent;color:var(--muted-2)}}@keyframes gs-nav-tab-on{to{background:var(--red-soft);color:var(--red)}}.gs-nav-fab{position:absolute;left:50%;top:-30px;display:grid;place-items:center;width:44px;height:44px;margin-left:-22px;border-radius:50%;background:var(--red);color:var(--white);box-shadow:0 0 0 4px var(--bg);animation:gs-pop .5s ease var(--d) both}.gs-nav-fab svg{width:22px;height:22px;stroke-width:2.6}.gs-scene .gi-card.gs-card-compact{width:300px;height:104px}.gs-scene .gi-card.gs-card-compact>.member-card-bottom{position:static}.gs-scene .gi-card.gs-card-compact .member-card-qr{top:50%;transform:translateY(-50%)}.gs-card-compact .member-card-owner>span{font-size:var(--fs-body);font-weight:var(--fw-bold)}.home-row.home-buy{padding:0}.home-buy-main{display:flex;flex:1;align-items:center;gap:12px;min-width:0;padding:10px 0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.home-buy-hide{display:grid;flex:none;place-items:center;width:36px;height:36px;padding:0;border:0;background:none;color:var(--muted-2);cursor:pointer}.home-buy-hide svg{width:16px;height:16px}.home-title-actions{display:flex;gap:14px}.home-hidden-link{justify-self:start;margin-top:6px;font-size:var(--fs-caption);color:var(--muted)}.home-hidden-link:after{content:none}.home-chips .home-chip-input{width:96px;min-height:36px;padding:0 12px;border:1px solid var(--red);border-radius:var(--r-pill);font-weight:var(--fw-medium);text-align:center}
