:root{--bg:#f4f6fb;--panel:#fff;--panel-2:#f8fafd;--text:#0f172a;--text-2:#334155;--muted:#64748b;--line:#e5e9f2;--primary:#2563eb;--primary-2:#1d4ed8;--primary-soft:#eaf1ff;--on-primary:#fff;--danger:#dc2626;--danger-soft:#fdecec;--shadow:0 1px 2px #0f172a0a, 0 2px 8px #0f172a0a;--radius:12px;--side:#0d1b2e;--side-2:#13243b;--side-text:#c4cfdf;--side-muted:#7d8ca3;--side-active:#2563eb;--green-bg:#e7f7ee;--green-fg:#157f45;--blue-bg:#e8f0ff;--blue-fg:#1d4ed8;--amber-bg:#fff4e0;--amber-fg:#b45309;--red-bg:#feecec;--red-fg:#c62828;--grey-bg:#eef1f5;--grey-fg:#475569;--purple-bg:#f1ecff;--purple-fg:#6d28d9;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}h1{letter-spacing:-.01em;margin:0;font-size:1.6rem;font-weight:700;line-height:1.25}h2{margin:0 0 .9rem;font-size:1rem;font-weight:650}p{margin:0 0 .8rem}code{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em}.muted{color:var(--muted)}.small{font-size:.85rem}.icon{flex:none}button,.button{font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:.45rem;padding:.5rem .95rem;font-weight:550;display:inline-flex}button:hover{background:var(--panel-2)}button:disabled{opacity:.55;cursor:default}button.primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}button.primary:hover{background:var(--primary-2)}button.danger{background:var(--panel);color:var(--danger);border-color:var(--danger)}button.danger-link,button.link{color:var(--primary);background:0 0;border:none;padding:.2rem .3rem}button.danger-link{color:var(--danger)}input,select{font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:8px;width:100%;padding:.55rem .7rem}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.shell{grid-template-columns:236px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--side);color:var(--side-text);flex-direction:column;gap:.2rem;height:100vh;padding:1.1rem .8rem;display:flex;position:sticky;top:0}.logo{color:#fff;align-items:center;gap:.6rem;padding:0 .5rem 1.1rem;display:flex}.logo-text strong{letter-spacing:.06em;font-size:1.05rem;display:block}.logo-text span{color:var(--side-muted);font-size:.72rem;display:block}.nav-group{letter-spacing:.09em;text-transform:uppercase;color:var(--side-muted);padding:.85rem .7rem .3rem;font-size:.68rem;font-weight:700}.nav a{color:var(--side-text);border-radius:8px;align-items:center;gap:.7rem;padding:.48rem .7rem;font-weight:500;display:flex}.nav a:hover{background:var(--side-2);color:#fff;text-decoration:none}.nav a.active{background:var(--side-active);color:#fff}.nav .badge{color:#fff;background:#ffffff24;border-radius:999px;margin-left:auto;padding:0 .5rem;font-size:.72rem;font-weight:700}.nav a.active .badge{background:#ffffff40}.sidebar .grow{flex:1}.sidebar>*{flex-shrink:0}.sidebar>.side-nav{scrollbar-width:thin;scrollbar-color:var(--side-2) transparent;flex:auto;min-height:0;margin:0 -.3rem;padding:0 .3rem .6rem;overflow-y:auto}.side-nav::-webkit-scrollbar{width:6px}.side-nav::-webkit-scrollbar-thumb{background:var(--side-2);border-radius:3px}.org{background:var(--side-2);color:#fff;border-radius:10px;align-items:center;gap:.6rem;padding:.7rem;display:flex}.org select{color:#fff;background:0 0;border:none;padding:0;font-weight:600}.org select option{color:#000}.org .org-text{flex:1;min-width:0}.org .org-text strong,.org .org-text span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.org .org-text span{color:var(--side-muted);font-size:.75rem}.avatar{background:var(--primary-soft);width:34px;height:34px;color:var(--primary);border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:700;display:grid}.org .avatar{color:#fff;background:#24406b}.main{flex-direction:column;min-width:0;display:flex}.topbar{background:var(--panel);border-bottom:1px solid var(--line);z-index:2;align-items:center;gap:.8rem;padding:.75rem 1.6rem;display:flex;position:sticky;top:0}.topbar .spacer{flex:1}.topbar .crumb{color:var(--muted);font-weight:500}.icon-button{border-radius:50%;justify-content:center;width:38px;height:38px;padding:0;position:relative}.icon-button .dot{background:var(--danger);color:#fff;border-radius:999px;place-items:center;min-width:16px;height:16px;padding:0 3px;font-size:.65rem;font-weight:700;display:grid;position:absolute;top:6px;right:6px}.menu{position:relative}.menu-panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;min-width:220px;padding:.4rem;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #0f172a1f}.menu-panel .menu-head{border-bottom:1px solid var(--line);margin-bottom:.3rem;padding:.5rem .6rem .6rem}.menu-panel a,.menu-panel button{color:var(--text);background:0 0;border:none;border-radius:6px;justify-content:flex-start;padding:.5rem .6rem}.menu-panel a:hover,.menu-panel button:hover{background:var(--panel-2);text-decoration:none}.content{width:100%;max-width:1240px;padding:1.6rem}.page-head{align-items:flex-start;gap:1rem;margin-bottom:1.3rem;display:flex}.page-head .grow{flex:1}.page-head .intro{color:var(--muted);margin:.3rem 0 0}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:1.1rem;padding:1.15rem 1.25rem}.card-warn{background:var(--amber-bg);border-color:color-mix(in srgb, var(--amber-fg) 35%, transparent)}.card-head{justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:.9rem;display:flex}.card-head h2{margin:0}.grid-2{grid-template-columns:2fr 1fr;gap:1.1rem;display:grid}.stats{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin-bottom:1.1rem;display:grid}.stat{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);align-items:flex-start;gap:.9rem;padding:1rem 1.1rem;display:flex}.stat .stat-icon{border-radius:10px;flex:none;place-items:center;width:40px;height:40px;display:grid}.stat .label{color:var(--muted);font-size:.82rem;font-weight:500}.stat .value{font-size:1.55rem;font-weight:700;line-height:1.2}.stat .note{color:var(--muted);font-size:.78rem}.tone-blue{background:var(--blue-bg);color:var(--blue-fg)}.tone-red{background:var(--red-bg);color:var(--red-fg)}.tone-purple{background:var(--purple-bg);color:var(--purple-fg)}.tone-green{background:var(--green-bg);color:var(--green-fg)}.tone-amber{background:var(--amber-bg);color:var(--amber-fg)}.checklist{gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.checklist li{border-bottom:1px solid var(--line);align-items:center;gap:.7rem;padding:.55rem .2rem;display:flex}.checklist li:last-child{border-bottom:none}.checklist .done{color:var(--green-fg)}.checklist .todo{color:var(--muted)}.checklist .grow{flex:1}.progress{background:var(--grey-bg);border-radius:999px;height:6px;margin:.2rem 0 .8rem;overflow:hidden}.progress>span{background:var(--primary);height:100%;display:block}.progress .w0{width:0}.progress .w1{width:20%}.progress .w2{width:40%}.progress .w3{width:60%}.progress .w4{width:80%}.progress .w5{width:100%}.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.12rem .55rem;font-size:.76rem;font-weight:600;display:inline-flex}.pill-green{background:var(--green-bg);color:var(--green-fg)}.pill-blue{background:var(--blue-bg);color:var(--blue-fg)}.pill-amber{background:var(--amber-bg);color:var(--amber-fg)}.pill-red{background:var(--red-bg);color:var(--red-fg)}.pill-grey{background:var(--grey-bg);color:var(--grey-fg)}.pill-purple{background:var(--purple-bg);color:var(--purple-fg)}.tabs{border-bottom:1px solid var(--line);gap:1.4rem;margin-bottom:1rem;display:flex;overflow-x:auto}.tabs button{color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:.6rem 0;font-weight:600}.tabs button.on{color:var(--primary);border-bottom-color:var(--primary)}.tabs .count{color:var(--muted);font-weight:500}.form{gap:.9rem;display:grid}.form>button{justify-self:start}.field{align-content:start;gap:.3rem;display:grid}.field>span{color:var(--text-2);font-size:.85rem;font-weight:600}.field small{color:var(--muted);font-size:.8rem}.row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:start;gap:.9rem;display:grid}.check{align-items:center;gap:.55rem;margin:.8rem 0;display:flex}.check input{width:auto}.alert{border-radius:8px;margin:.6rem 0;padding:.65rem .85rem;font-weight:500}.alert-error{background:var(--red-bg);color:var(--red-fg)}.alert-info{background:var(--blue-bg);color:var(--blue-fg)}.alert-ok{background:var(--green-bg);color:var(--green-fg)}.copybox{grid-template-columns:1fr auto;align-items:center;gap:.3rem .6rem;margin:.7rem 0;display:grid}.copybox>span{grid-column:1/-1;font-size:.85rem;font-weight:600}.copybox code{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:.5rem .65rem}.table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:.7rem 1rem}th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--panel-2);font-size:.75rem;font-weight:650}tbody tr:hover{background:var(--panel-2)}tr:last-child td{border-bottom:none}td select{width:auto;padding:.3rem .5rem}td .sub{color:var(--muted);white-space:nowrap;font-size:.8rem;display:block}.person{align-items:center;gap:.65rem;display:flex}.sub{color:var(--muted);font-size:.8rem;display:block}.build-tag{text-align:center;color:#94a3b8;margin:.5rem 0 0;font-size:.75rem}.empty{color:var(--muted);text-align:center;background:var(--panel);border:1px dashed var(--line);border-radius:var(--radius);padding:1.6rem}.auth{background:radial-gradient(1200px 500px at 10% -10%, var(--primary-soft), transparent), var(--bg);place-items:center;min-height:100vh;padding:2rem 16px;display:grid}.auth-box{width:100%;max-width:430px}.auth-brand{color:var(--text);justify-content:center;align-items:center;gap:.6rem;margin-bottom:1.2rem;display:flex}.auth-brand strong{letter-spacing:.06em;font-size:1.15rem}.auth-brand span{color:var(--muted);font-size:.8rem}.auth .card{padding:1.6rem}.auth h2{font-size:1.2rem}.qr{border:1px solid var(--line);background:#fff;border-radius:10px;margin:1rem auto;padding:8px;display:block}.codes{columns:2;padding-left:1.4rem}.loading{text-align:center;color:var(--muted);padding:3rem}.choices{gap:.7rem;max-width:560px;display:grid}.choice{text-align:left;border-radius:var(--radius);background:var(--panel);justify-content:space-between;padding:1rem 1.1rem;display:flex}@media (width<=900px){.grid-2{grid-template-columns:1fr}}@media (width<=760px){.shell{grid-template-columns:1fr}.sidebar{flex-flow:wrap;align-items:center;height:auto;padding:.6rem;position:static}.sidebar .nav-group,.sidebar .grow,.logo-text span{display:none}.sidebar>.side-nav{display:contents}.nav{flex-wrap:wrap;gap:.2rem;display:flex}.nav a{padding:.4rem .55rem}.content{padding:1rem}.topbar{padding:.6rem 1rem}}.toolbar{flex-wrap:wrap;align-items:flex-end;gap:.7rem;margin-bottom:1rem;display:flex}.toolbar>select,.toolbar .field{width:auto;min-width:220px}.search{flex:1;gap:.5rem;min-width:260px;max-width:520px;display:flex}.pager{justify-content:flex-end;align-items:center;gap:.8rem;margin-top:.8rem;display:flex}.pills,.title-pills,.actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:inline-flex}.title-pills .pill{font-size:.8rem}a.button{color:var(--text);text-decoration:none}a.button.primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}tr.clickable{cursor:pointer}.num{white-space:nowrap;font-variant-numeric:tabular-nums}.checks{margin:0;padding:0;list-style:none}.checks li{border-bottom:1px solid var(--line);align-items:center;gap:.7rem;padding:.6rem .1rem;display:flex}.checks li:last-child{border-bottom:none}.checks .grow{flex:1}.checks .sub{color:var(--muted);font-size:.84rem;display:block}.checks .check-icon{color:var(--muted);display:inline-flex}.checks .check-pass .check-icon{color:var(--green-fg)}.checks .check-fail .check-icon{color:var(--red-fg)}.checks .check-warn .check-icon{color:var(--amber-fg)}.checks .check-hold .check-icon{color:var(--blue-fg)}.totals,.facts{grid-template-columns:1fr auto;gap:.3rem 1rem;margin:1rem 0 0;display:grid}.totals{max-width:320px;margin-left:auto}.totals dt,.facts dt{color:var(--muted)}.totals dd,.facts dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.totals .strong{color:var(--text);font-weight:700}.contact p{margin-bottom:.5rem}.contact .line{display:block}.timeline{border-left:2px solid var(--line);margin:0;padding:0 0 0 1rem;list-style:none}.timeline li{padding:0 0 .9rem .6rem;position:relative}.timeline li:before{content:"";background:var(--primary);border-radius:50%;width:9px;height:9px;position:absolute;top:.45rem;left:-1.38rem}.timeline .sub{color:var(--muted);font-size:.8rem;display:block}.reason{max-width:520px;display:block}.upload input{max-width:420px}.rules{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.8rem;display:grid}.rule{border:1px solid var(--line);background:var(--panel-2);border-radius:10px;padding:.75rem .85rem}.rule-own{border-color:color-mix(in srgb, var(--primary) 45%, var(--line));background:var(--panel)}.rule-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.rule .check{margin:0}.bars{width:100%;height:170px;display:block}.bars .bar{fill:var(--primary);opacity:.85}.bars .bar-label{fill:var(--muted);font-size:10px}input:disabled,select:disabled{background:var(--panel-2);color:var(--muted);cursor:not-allowed}@media (width<=760px){.search{width:100%;min-width:0;max-width:none}.page-head{flex-wrap:wrap}}.grid-2>*{min-width:0}.reason .hint{color:var(--muted);margin-top:.35rem;font-size:.84rem;display:block}.store-picker{gap:.3rem;min-width:180px;display:grid}.store-picker .check{margin:0}.request-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.9rem;display:grid}.request .card-head h2{font-size:1.05rem}.request-items{gap:.4rem;margin:.4rem 0 .8rem;padding:0;list-style:none;display:grid}.request-items .sub{color:var(--muted);font-size:.8rem;display:block}button.big{padding:.75rem 1.1rem;font-size:1rem}@media (width<=760px){.request-list{grid-template-columns:1fr}.request .actions{width:100%;display:grid}}.booking{border-top:1px solid var(--line);gap:.6rem;margin-top:.3rem;padding-top:.7rem;display:grid}.booking .row{align-items:end}.qc-item{border-bottom:1px solid var(--line);margin-bottom:.6rem;padding:.4rem 0 .8rem}.qc-item p{margin:0 0 .4rem}.photos{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.4rem;display:flex}.photo{flex-direction:column;align-items:center;gap:.15rem;display:inline-flex}.photo img{object-fit:cover;border:1px solid var(--line);border-radius:6px;width:64px;height:64px;display:block}label.button.small,button.small{cursor:pointer;padding:.3rem .6rem;font-size:.82rem}.refund{border-bottom:1px solid var(--line);margin-bottom:.6rem;padding-bottom:.6rem}.refund p{margin:.2rem 0}.refund ul{margin:.2rem 0 .2rem 1.1rem;padding:0}.bars{align-items:flex-end;gap:2px;height:120px;padding:.3rem 0;display:flex}.bars .bar{flex:1;align-items:flex-end;gap:1px;min-width:3px;height:100%;display:flex}.bars .bar i{border-radius:2px 2px 0 0;flex:1;min-height:1px;display:block}.bars .bar i.opened{background:var(--primary)}.bars .bar i.closed{background:var(--muted);opacity:.5}tbody tr.open{background:var(--panel-2)}tr.details-row>td{background:var(--panel-2);padding:.8rem 1rem 1.1rem}tr.details-row:hover{background:var(--panel-2)}.line-items{gap:.55rem;margin:0 0 .8rem;padding:0;list-style:none;display:grid}.line-items li{background:var(--panel);border:1px solid var(--line);border-radius:10px;align-items:center;gap:.8rem;padding:.55rem .7rem;display:flex}.line-items img,.line-items .noimg{object-fit:cover;border:1px solid var(--line);background:var(--panel-2);border-radius:8px;flex:none;width:56px;height:56px}.line-items .grow{flex:1;min-width:0}.line-items input[type=number]{width:4.5rem}.qty-have{white-space:nowrap;align-items:center;gap:.4rem;font-size:.85rem;display:flex}
