:root{--violet-50:#F5F2FE;--violet-100:#EEE9FC;--violet-200:#DED4FA;--violet-300:#C4B2F5;--violet-500:#6C3FE3;--violet-600:#5C2FD2;--violet-700:#4A25B0;--ink:#1D2030;--ink-2:#4A4F63;--muted:#8A90A2;--line:#ECE9F5;--line-2:#E2DEEF;--paper:#FFFFFF;--paper-2:#FAF9FE;--ok:#16A34A;--ok-wash:#E7F6EC;--gold:#F5B301;--danger:#E4483B;--shadow-card:0 2px 14px -8px rgba(60,40,120,.22);--shadow-pop:0 14px 40px -14px rgba(60,40,120,.32);--r:16px;--r-sm:12px;--r-lg:22px;--nav-h:66px;--font:"SF Pro Text",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-display:"SF Pro Display",var(--font)}*{box-sizing:border-box}body,html{padding:0;margin:0}body{font-family:var(--font);color:var(--ink);background:radial-gradient(80% 60% at 50% -5%,#EDE7FB 0,transparent 60%),linear-gradient(180deg,#EEEAF7,#E7E3F3);background-attachment:fixed;-webkit-font-smoothing:antialiased;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}.app{width:100%;max-width:460px;min-height:100dvh;margin:0 auto;background:var(--paper);position:relative;display:flex;flex-direction:column;box-shadow:0 0 0 1px var(--line),0 30px 80px -30px rgba(50,30,100,.35)}@media (min-width:520px){body{padding:24px 0}.app{min-height:calc(100dvh - 48px);border-radius:28px;overflow:hidden}}.appbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;padding:16px 18px 12px;background:color-mix(in srgb,var(--paper) 88%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px)}.appbar .back{width:38px;height:38px;border-radius:12px;border:1px solid var(--line-2);background:var(--paper);display:grid;place-items:center;font-size:1.1rem;color:var(--ink);cursor:pointer;flex:0 0 auto}.appbar .back:hover{background:var(--violet-50)}.appbar .titles{flex:1 1;text-align:center}.appbar .titles h1{margin:0;font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.appbar .titles p{margin:2px 0 0;font-size:.78rem;color:var(--muted)}.appbar .spacer{width:38px;flex:0 0 auto}.screen{flex:1 1;padding:6px 18px 24px}.screen.has-nav{padding-bottom:calc(var(--nav-h) + 24px)}.screen.has-cta{padding-bottom:108px}.section-title{font-size:.82rem;font-weight:700;color:var(--ink);margin:18px 0 10px;letter-spacing:-.01em}.muted{color:var(--muted)}.center{text-align:center}.bottomnav{position:-webkit-sticky;position:sticky;bottom:0;z-index:20;display:grid;grid-template-columns:repeat(4,1fr);padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--paper) 92%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border-top:1px solid var(--line)}.bottomnav a{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0;font-size:.68rem;color:var(--muted);font-weight:600}.bottomnav a .ic{font-size:1.2rem;line-height:1;filter:grayscale(.3)}.bottomnav a.active{color:var(--violet-600)}.bottomnav a.active .ic{filter:none}.cta-bar{position:-webkit-sticky;position:sticky;bottom:0;z-index:15;padding:12px 18px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,var(--paper) 22%)}.cta-bar.with-summary{display:flex;align-items:center;gap:14px}.cta-bar .amt{font-weight:800;font-size:1.1rem;white-space:nowrap}.cta-bar .amt small{display:block;font-size:.66rem;color:var(--muted);font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:15px 20px;border-radius:14px;border:none;background:linear-gradient(180deg,var(--violet-500),var(--violet-600));color:#fff;font-weight:700;font-size:.98rem;letter-spacing:-.01em;cursor:pointer;box-shadow:0 8px 20px -8px rgba(92,47,210,.6);transition:transform .08s ease,box-shadow .2s ease,opacity .2s}.btn:hover{box-shadow:0 10px 26px -8px rgba(92,47,210,.7)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn-ghost{background:var(--paper);color:var(--violet-600);border:1.5px solid var(--violet-200);box-shadow:none}.btn-ghost:hover{background:var(--violet-50)}.btn-link{background:none;border:none;color:var(--violet-600);font-weight:700;cursor:pointer;width:auto;padding:6px}.banner{display:flex;align-items:center;gap:12px;background:linear-gradient(110deg,var(--violet-600),#7B4FE6);color:#fff;border-radius:var(--r);padding:13px 15px;box-shadow:var(--shadow-card)}.banner .b-txt{flex:1 1}.banner .b-txt b{font-size:.92rem}.banner .b-txt p{margin:1px 0 0;font-size:.74rem;opacity:.9}.banner .code{background:rgba(255,255,255,.18);border:1px dashed rgba(255,255,255,.6);padding:6px 10px;border-radius:9px;font-weight:800;font-size:.72rem;letter-spacing:.04em}.loc{display:flex;align-items:center;gap:6px;font-weight:700;font-size:.95rem}.loc .pin{color:var(--violet-600)}.loc .chev{color:var(--muted);font-size:.8rem}.greet{margin:14px 0 2px;font-family:var(--font-display);font-size:1.5rem;font-weight:800;letter-spacing:-.02em}.greet-sub{color:var(--ink-2);font-size:.95rem;margin:0 0 4px}.tiles{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.tile{position:relative;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r);padding:14px 8px 12px;text-align:center;cursor:pointer;transition:transform .1s ease,box-shadow .2s,border-color .2s;display:flex;flex-direction:column;align-items:center;gap:8px}.tile:hover{box-shadow:var(--shadow-card);border-color:var(--violet-200);transform:translateY(-1px)}.tile .tic{width:46px;height:46px;border-radius:14px;background:var(--violet-50);display:grid;place-items:center;font-size:1.4rem}.tile .tname{font-size:.74rem;font-weight:700;line-height:1.2;color:var(--ink)}.tile.disabled{opacity:.55;cursor:not-allowed}.tile.disabled:hover{transform:none;box-shadow:none;border-color:var(--line)}.tile .soon{position:absolute;top:6px;right:6px;font-size:.54rem;font-weight:800;letter-spacing:.04em;background:var(--violet-100);color:var(--violet-600);padding:2px 6px;border-radius:999px;text-transform:uppercase}.card{border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-card)}.card,.select-card{background:var(--paper);padding:16px}.select-card{position:relative;display:flex;gap:14px;align-items:center;border:2px solid var(--line-2);border-radius:var(--r);cursor:pointer;transition:border-color .15s,background .15s;margin-bottom:12px}.select-card.on{border-color:var(--violet-500);background:var(--violet-50)}.select-card .badge{position:absolute;top:-10px;right:14px;background:var(--violet-600);color:#fff;font-size:.6rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:4px 9px;border-radius:999px}.select-card .picon{width:48px;height:48px;border-radius:13px;flex:0 0 auto;display:grid;place-items:center;background:var(--violet-100);font-size:1.5rem;color:var(--violet-600);font-weight:800}.select-card.on .picon{background:var(--violet-500);color:#fff}.select-card .pbody{flex:1 1}.select-card .pbody .ptop{display:flex;align-items:baseline;gap:6px}.select-card .pbody .price{font-size:1.35rem;font-weight:800;letter-spacing:-.02em}.select-card .pbody .per{font-size:.8rem;color:var(--muted);font-weight:600}.select-card .pbody .psub{font-size:.76rem;color:var(--muted);margin-top:2px}.select-card .radio{width:22px;height:22px;border-radius:50%;border:2px solid var(--line-2);flex:0 0 auto;position:relative}.select-card.on .radio{border-color:var(--violet-500)}.select-card.on .radio:after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--violet-500)}.included{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r-sm);padding:13px 15px;margin-top:4px}.included h4{margin:0 0 8px;font-size:.8rem;font-weight:700}.included ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.included li{font-size:.82rem;color:var(--ink-2);display:flex;gap:8px;align-items:center}.included li .ck{color:var(--ok);font-weight:800}.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:4px}.tab{white-space:nowrap;padding:8px 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--paper);font-size:.82rem;font-weight:600;color:var(--ink-2);cursor:pointer}.tab.on{background:var(--violet-500);border-color:var(--violet-500);color:#fff}.item-row{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--line)}.item-row .iic{width:40px;height:40px;border-radius:11px;background:var(--violet-50);display:grid;place-items:center;font-size:1.15rem;flex:0 0 auto}.item-row .iname{flex:1 1}.item-row .iname b{font-size:.88rem;font-weight:700}.item-row .iname span{display:block;font-size:.76rem;color:var(--muted)}.stepper{display:flex;align-items:center;gap:10px}.stepper button{width:30px;height:30px;border-radius:9px;border:1.5px solid var(--violet-200);background:var(--paper);color:var(--violet-600);font-size:1.1rem;font-weight:700;cursor:pointer;display:grid;place-items:center}.stepper button:disabled{opacity:.4;cursor:not-allowed}.stepper .q{min-width:18px;text-align:center;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tier{position:relative;display:flex;align-items:center;gap:13px;border:2px solid var(--line-2);border-radius:var(--r);padding:14px 16px;cursor:pointer;margin-bottom:12px;background:var(--paper)}.tier.on{border-color:var(--violet-500);background:var(--violet-50)}.tier .tclock{width:42px;height:42px;border-radius:12px;background:var(--violet-100);display:grid;place-items:center;font-size:1.25rem;flex:0 0 auto}.tier .tmid{flex:1 1}.tier .tmid b{font-size:.95rem;font-weight:700}.tier .tmid .tag{font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--violet-600);background:var(--violet-100);padding:2px 7px;border-radius:999px;margin-left:6px}.tier .tmid p{margin:2px 0 0;font-size:.78rem;color:var(--muted)}.tier .tprice{font-weight:800;font-size:.95rem}.tier .tprice.free{color:var(--ok)}.addon{display:flex;align-items:center;gap:13px;padding:12px 2px;border-bottom:1px solid var(--line)}.addon .aic{width:44px;height:44px;border-radius:12px;background:var(--violet-50);display:grid;place-items:center;font-size:1.3rem;flex:0 0 auto}.addon .amid{flex:1 1}.addon .amid b{font-size:.88rem;font-weight:700}.addon .amid p{margin:1px 0 0;font-size:.78rem;color:var(--muted)}.check{width:26px;height:26px;border-radius:8px;border:2px solid var(--line-2);flex:0 0 auto;display:grid;place-items:center;cursor:pointer;background:var(--paper);color:transparent;font-weight:800;font-size:.85rem}.check.on{background:var(--violet-500);border-color:var(--violet-500);color:#fff}.saved-note{display:flex;align-items:center;gap:8px;background:var(--ok-wash);color:var(--ok);border-radius:var(--r-sm);padding:10px 14px;font-size:.82rem;font-weight:700;margin-top:14px}.addon.disabled{opacity:.55}.addon.disabled .aic{filter:grayscale(.6)}.coming{font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--paper-2);border:1px solid var(--line-2);padding:4px 9px;border-radius:999px;white-space:nowrap;flex:0 0 auto}.days{display:flex;gap:10px}.day{flex:1 1;border:1.5px solid var(--line-2);border-radius:var(--r-sm);padding:10px 6px;text-align:center;cursor:pointer;background:var(--paper)}.day.on{background:var(--violet-100);border-color:var(--violet-300)}.day b{display:block;font-size:.84rem;font-weight:700}.day span{font-size:.68rem;color:var(--muted)}.slot{display:flex;align-items:center;justify-content:space-between;border:1.5px solid var(--line-2);border-radius:var(--r-sm);padding:14px 16px;margin-bottom:10px;cursor:pointer;background:var(--paper);font-weight:600;font-size:.9rem}.slot.on{background:var(--violet-500);border-color:var(--violet-500);color:#fff}.slot.full{opacity:.5;cursor:not-allowed}.slot .stat{font-size:.68rem;font-weight:700;color:var(--muted)}.slot.on .stat{color:rgba(255,255,255,.85)}.slot .stat.filling{color:var(--gold)}.info-note{display:flex;gap:8px;align-items:flex-start;background:var(--violet-50);border:1px solid var(--violet-100);border-radius:var(--r-sm);padding:12px 14px;font-size:.8rem;color:var(--ink-2);margin-top:8px}.addr{position:relative;display:flex;gap:12px;border:2px solid var(--line-2);border-radius:var(--r);padding:15px;margin-bottom:12px;cursor:pointer;background:var(--paper)}.addr.on{border-color:var(--violet-500);background:var(--violet-50)}.addr .ahome{font-size:1.2rem}.addr .abody{flex:1 1}.addr .abody .aname{font-weight:700;font-size:.9rem;display:flex;align-items:center;gap:8px}.addr .abody .aname .def{font-size:.56rem;font-weight:800;text-transform:uppercase;background:var(--violet-100);color:var(--violet-600);padding:2px 6px;border-radius:999px}.addr .abody p{margin:3px 0 0;font-size:.8rem;color:var(--muted)}.addr .radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--line-2);flex:0 0 auto;position:relative}.addr.on .radio{border-color:var(--violet-500)}.addr.on .radio:after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--violet-500)}.field{margin-top:8px}.field label{display:block;font-size:.78rem;font-weight:700;margin-bottom:6px}.field input,.field textarea{width:100%;border:1.5px solid var(--line-2);border-radius:var(--r-sm);padding:12px 14px;font-size:.88rem;background:var(--paper-2);resize:vertical;color:var(--ink)}.field input:focus,.field textarea:focus{outline:none;border-color:var(--violet-300);background:var(--paper)}.sumgroup{margin-bottom:16px}.sumgroup h4{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;margin:0 0 8px}.sumrow{display:flex;justify-content:space-between;align-items:baseline;padding:7px 0;font-size:.9rem}.sumrow .lbl{color:var(--ink-2)}.sumrow .val{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sumrow .val.disc,.sumrow .val.free{color:var(--ok)}.divider{height:1px;background:var(--line);margin:6px 0}.total-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0 2px}.total-row .t-lbl b{font-size:1rem}.total-row .t-lbl span{display:block;font-size:.7rem;color:var(--muted)}.total-row .t-val{font-size:1.4rem;font-weight:800;letter-spacing:-.02em}.pay{display:flex;align-items:center;gap:13px;border:2px solid var(--line-2);border-radius:var(--r);padding:14px 16px;margin-bottom:11px;cursor:pointer;background:var(--paper)}.pay.on{border-color:var(--violet-500)}.pay .pmic,.pay.on{background:var(--violet-50)}.pay .pmic{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;font-size:1.25rem;flex:0 0 auto}.pay .pmid{flex:1 1}.pay .pmid b{font-size:.9rem;font-weight:700}.pay .pmid p{margin:1px 0 0;font-size:.76rem;color:var(--muted)}.pay .radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--line-2);flex:0 0 auto;position:relative}.pay.on .radio{border-color:var(--violet-500)}.pay.on .radio:after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--violet-500)}.secure{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--muted);font-size:.78rem;margin-top:16px}.confetti-wrap{text-align:center;padding:26px 0 8px}.ok-burst{width:84px;height:84px;border-radius:50%;background:var(--ok);display:grid;place-items:center;margin:0 auto 16px;color:#fff;font-size:2.4rem;box-shadow:0 12px 30px -10px rgba(22,163,74,.6)}.confirm-title{font-family:var(--font-display);font-size:1.5rem;font-weight:800;margin:0 0 6px}.confirm-sub{color:var(--muted);font-size:.88rem;margin:0}.oid{display:inline-block;margin-top:10px;font-weight:800;color:var(--violet-600);background:var(--violet-50);padding:6px 12px;border-radius:999px;font-size:.82rem}.tracker{margin-top:6px}.track-step{display:flex;gap:14px}.track-step .rail{display:flex;flex-direction:column;align-items:center}.track-step .dot{width:22px;height:22px;border-radius:50%;border:2px solid var(--line-2);background:var(--paper);flex:0 0 auto;display:grid;place-items:center;font-size:.66rem;color:transparent}.track-step .line{width:2px;flex:1 1;background:var(--line-2);min-height:26px}.track-step.done .dot{border-color:var(--violet-500);color:#fff}.track-step.done .dot,.track-step.done .line{background:var(--violet-500)}.track-step.current .dot{border-color:var(--violet-500);box-shadow:0 0 0 4px var(--violet-100)}.track-step .body{padding-bottom:20px}.track-step .body b{font-size:.9rem;font-weight:700}.track-step.pending .body b{color:var(--muted);font-weight:600}.track-step .body span{display:block;font-size:.74rem;color:var(--muted);margin-top:2px}.track-step:last-child .line{display:none}.pickup-box{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;margin:4px 0 18px}.pickup-box .row{display:flex;justify-content:space-between;font-size:.84rem;padding:3px 0}.pickup-box .row .k{color:var(--muted)}.pickup-box .row .v{font-weight:700;text-align:right}.stars{display:flex;justify-content:center;gap:8px;margin:12px 0}.stars button{background:none;border:none;font-size:2rem;cursor:pointer;color:var(--line-2);line-height:1;padding:0;transition:transform .1s}.stars button.lit{color:var(--gold)}.stars button:active{transform:scale(1.2)}.splash{flex:1 1;justify-content:center;text-align:center;padding:40px 30px;gap:4px;background:radial-gradient(90% 55% at 50% 12%,var(--violet-50),transparent 60%)}.splash,.splash .logo-lg{display:flex;flex-direction:column;align-items:center}.splash .logo-lg{gap:12px;margin-bottom:6px}.splash .logo-lg svg{width:66px;height:56px;color:var(--violet-600)}.splash .wordmark{font-family:var(--font-display);font-size:2.6rem;font-weight:800;letter-spacing:-.03em;color:var(--violet-700)}.splash .tagline{color:var(--ink-2);font-size:1.02rem;max-width:22ch;margin:8px 0 26px;line-height:1.5}.splash .hero-emoji{font-size:3.4rem;margin:4px 0 30px;letter-spacing:6px}.brandmark{display:flex;align-items:center;gap:7px;font-family:var(--font-display);font-weight:800;font-size:1.25rem;letter-spacing:-.03em;color:var(--violet-700)}.brandmark svg{width:26px;height:22px;color:var(--violet-600)}.stack{display:flex;flex-direction:column}.gap-sm>*+*{margin-top:8px}.row-between{display:flex;align-items:center;justify-content:space-between}.empty{text-align:center;color:var(--muted);padding:60px 20px}.empty .e-emoji{font-size:2.6rem}.pill-count{background:var(--violet-100);color:var(--violet-600);font-weight:800;font-size:.72rem;padding:3px 9px;border-radius:999px}.order-card{display:block;border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;margin-bottom:12px;box-shadow:var(--shadow-card);background:var(--paper)}.order-card .oc-top{display:flex;justify-content:space-between;align-items:center}.order-card .oc-top b{font-size:.92rem}.order-card .status-chip{font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:4px 9px;border-radius:999px;background:var(--violet-100);color:var(--violet-600)}.order-card .status-chip.done{background:var(--ok-wash);color:var(--ok)}.order-card p{margin:6px 0 0;font-size:.8rem;color:var(--muted)}.login-wrap{flex:1 1;display:flex;align-items:center;justify-content:center;padding:24px;background:#1D2030}.login-card{width:100%;max-width:340px;background:var(--paper);border-radius:var(--r-lg);padding:26px 22px;box-shadow:var(--shadow-pop)}.login-sub{text-align:center;color:var(--muted);font-size:.85rem;margin:6px 0 18px}.login-card .field label{font-size:.78rem}.login-card input{width:100%;border:1.5px solid var(--line-2);border-radius:var(--r-sm);padding:12px 14px;font-size:.95rem;background:var(--paper-2)}.login-card input:focus{outline:none;border-color:var(--violet-300);background:var(--paper)}.auth-wrap{flex:1 1;display:flex;flex-direction:column;justify-content:center;padding:28px 24px}.auth-brand{justify-content:center;font-size:1.7rem;margin-bottom:22px}.auth-title{font-family:var(--font-display);font-size:1.5rem;font-weight:800;text-align:center;margin:0 0 4px;letter-spacing:-.02em}.auth-sub{text-align:center;color:var(--muted);font-size:.9rem;margin:0 0 22px}.auth-alt{text-align:center;margin-top:20px;font-size:.86rem;color:var(--ink-2)}.auth-alt a{color:var(--violet-600);font-weight:700}.otp-card{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;background:linear-gradient(135deg,var(--violet-600),#7B4FE6);color:#fff;border-radius:var(--r);padding:16px;margin:0 0 16px;box-shadow:var(--shadow-card)}.otp-card-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;opacity:.85;font-weight:700}.otp-card-code{font-size:2rem;font-weight:800;letter-spacing:.35em;padding-left:.35em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.otp-card-hint{font-size:.74rem;opacity:.9}.ridernote .rn-label{display:block;font-size:.78rem;font-weight:700;margin-bottom:8px}.rn-toggle{display:inline-flex;gap:4px;background:var(--paper-2);border:1px solid var(--line-2);border-radius:10px;padding:3px}.rn-toggle button{border:none;background:none;padding:7px 14px;border-radius:8px;font-size:.82rem;font-weight:600;color:var(--ink-2);cursor:pointer}.rn-toggle button.on{background:var(--violet-500);color:#fff}.rn-voice{margin-top:10px}.rn-rec{width:100%;display:flex;align-items:center;justify-content:center;gap:9px;border:1.5px dashed var(--violet-300);background:var(--violet-50);color:var(--violet-700);border-radius:12px;padding:16px;font-weight:700;font-size:.9rem;cursor:pointer}.rn-rec.recording{border-style:solid;border-color:var(--crit);background:var(--crit-wash);color:var(--crit)}.rn-dot{width:11px;height:11px;border-radius:50%;background:var(--crit);animation:rnpulse 1s ease-in-out infinite}@keyframes rnpulse{0%,to{opacity:1}50%{opacity:.3}}.rn-player audio{width:100%}.rn-player-row{display:flex;align-items:center;justify-content:space-between;margin-top:6px}.rn-dur{font-size:.78rem;color:var(--muted);font-weight:600}.cluster-note{display:flex;gap:10px;align-items:flex-start;background:var(--violet-50);border:1px solid var(--violet-100);border-radius:var(--r-sm);padding:12px 14px;font-size:.82rem;color:var(--ink-2);margin-bottom:14px}.cluster-note .cn-ic{flex:0 0 auto}.cluster-note b{color:var(--ink)}.pm-wrap{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.pm{text-align:left;border:2px solid var(--line-2);background:var(--paper);border-radius:var(--r);padding:13px 14px;cursor:pointer}.pm.on{border-color:var(--violet-500);background:var(--violet-50)}.pm-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.pm-top b{font-size:.95rem}.pm-price{font-weight:800;font-size:.88rem;color:var(--ink)}.pm-price.free{color:var(--ok)}.pm p{margin:6px 0 0;font-size:.74rem;color:var(--muted);line-height:1.35}.slot.locked{opacity:.55;cursor:not-allowed;background:var(--paper-2)}.slot.locked .stat{color:var(--muted)}.staffbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;padding:15px 16px;background:#1D2030;color:#fff}.staffbar .sback{width:34px;height:34px;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;display:grid;place-items:center;font-size:1.05rem;cursor:pointer;flex:0 0 auto}.staffbar .sback:hover{background:rgba(255,255,255,.14)}.staffbar .stitle{flex:1 1}.staffbar .stitle h1{margin:0;font-size:1rem;font-weight:700;letter-spacing:-.01em}.staffbar .stitle p{margin:1px 0 0;font-size:.72rem;color:rgba(255,255,255,.55)}.staffbar .role{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;background:rgba(139,107,240,.28);color:#C9B8FA;padding:4px 9px;border-radius:999px;border:1px solid rgba(139,107,240,.4)}.staff-screen{flex:1 1;padding:14px 16px 28px;background:#F4F4F8}.hub{display:flex;flex-direction:column;gap:12px}.hub-card{display:flex;align-items:center;gap:14px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:16px;box-shadow:var(--shadow-card)}.hub-card .hic{width:46px;height:46px;border-radius:13px;background:var(--violet-50);display:grid;place-items:center;font-size:1.5rem;flex:0 0 auto}.hub-card .hbody{flex:1 1}.hub-card .hbody b{font-size:.98rem}.hub-card .hbody p{margin:2px 0 0;font-size:.78rem;color:var(--muted)}.hub-card .chev{color:var(--muted);font-size:1.1rem}.bcard{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:14px;margin-bottom:12px;box-shadow:var(--shadow-card)}.bcard .btop{display:flex;align-items:center;justify-content:space-between;gap:8px}.bcard .btop b{font-size:.92rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bcard .meta{margin:7px 0 0;font-size:.8rem;color:var(--ink-2)}.bcard .assign,.bcard .meta .sub{color:var(--muted)}.bcard .assign{margin-top:6px;font-size:.76rem}.bcard .assign b{color:var(--ink-2);font-weight:600}.stage{font-family:var(--font-mono);font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:4px 9px;border-radius:999px;white-space:nowrap}.stage.act{background:var(--violet-100);color:var(--violet-700)}.stage.wait{background:#EEF0F4;color:#6B7280}.stage.done{background:var(--ok-wash);color:var(--ok)}.stage.warn{background:var(--warn-wash);color:var(--warn)}.actionbar{display:flex;gap:8px;margin-top:12px}.actionbar .btn{padding:11px 14px;font-size:.88rem}.btn-sm{width:auto;padding:10px 14px;font-size:.85rem}.picker{margin-top:12px;display:flex;flex-direction:column;gap:8px}.picker .plabel{font-size:.72rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.picker .opts{display:flex;flex-wrap:wrap;gap:8px}.pickbtn{border:1.5px solid var(--line-2);background:var(--paper);border-radius:10px;padding:9px 13px;font-size:.84rem;font-weight:600;cursor:pointer}.pickbtn:hover{border-color:var(--violet-300);background:var(--violet-50)}.pickbtn small{display:block;color:var(--muted);font-weight:400;font-size:.7rem}.gate-sec{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:12px;box-shadow:var(--shadow-card)}.gate-sec h4{margin:0 0 4px;font-size:.82rem;font-weight:700}.gate-sec .hint{font-size:.74rem;color:var(--muted);margin:0 0 12px}.tagwrap{display:flex;flex-wrap:wrap;gap:8px}.tagchip{border:1.5px solid var(--line-2);background:var(--paper);border-radius:999px;padding:7px 12px;font-size:.8rem;font-weight:600;cursor:pointer;color:var(--ink-2)}.tagchip.on{border-color:var(--violet-500)}.photo-btn,.tagchip.on{background:var(--violet-50);color:var(--violet-700)}.photo-btn{display:flex;justify-content:center;gap:8px;border:1.5px dashed var(--violet-300);border-radius:12px;padding:14px;font-size:.88rem;cursor:pointer;width:100%}.photo-btn,.photo-count{align-items:center;font-weight:700}.photo-count{display:inline-flex;gap:6px;font-size:.78rem;color:var(--ok);margin-top:8px}.otp-input{letter-spacing:.5em;font-size:1.3rem;font-weight:800;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.otp-hint{font-size:.72rem;color:var(--muted);margin-top:6px;text-align:center}.otp-hint b{color:var(--violet-700);font-family:var(--font-mono)}.err-note{background:var(--crit-wash);color:var(--crit);border-radius:var(--r-sm);padding:10px 14px;font-size:.82rem;font-weight:600;margin-top:10px}.tl{margin-top:4px}.tl-row{display:flex;gap:12px}.tl-row .tl-rail{display:flex;flex-direction:column;align-items:center}.tl-row .tl-dot{width:12px;height:12px;border-radius:50%;background:var(--violet-500);flex:0 0 auto;margin-top:4px}.tl-row .tl-line{width:2px;flex:1 1;background:var(--line-2);min-height:18px}.tl-row:last-child .tl-line{display:none}.tl-row .tl-body{padding-bottom:14px}.tl-row .tl-body b{font-size:.85rem}.tl-row .tl-body .who{font-size:.72rem;color:var(--violet-700);font-weight:600}.tl-row .tl-body .when{font-size:.72rem;color:var(--muted)}.tl-row .tl-body .note{font-size:.74rem;color:var(--ink-2);margin-top:1px}.kv{display:flex;justify-content:space-between;padding:6px 0;font-size:.84rem;border-bottom:1px solid var(--line)}.kv:last-child{border-bottom:0}.kv .k{color:var(--muted)}.kv .v{font-weight:600;text-align:right}.evidence-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.evidence-tags span{font-size:.7rem;background:var(--warn-wash);color:var(--warn);border-radius:999px;padding:3px 8px;font-weight:600}:focus-visible{outline:2px solid var(--violet-500);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}