/* Monte & Cristo — Бирка и шов */
@font-face{font-family:"Manrope";src:url("../fonts/Manrope.ttf") format("truetype");font-weight:200 800;font-display:swap}
:root{
  --bg:#EEEFF0; --bg2:#E3E5E7; --card:#FFFFFF; --ink:#131315; --ink2:#55524D; --mute:#5E5B56;
  --line:#E3E5E7; --dark:#19191B; --dark2:#272729; --dark-line:#3C3C40; --dark-mute:#B2AEA6;
  --acc:#FF5A1F; --acc-ink:#BF3A05; --acc-soft:#FFE8DC;
  --ok:#0E6B41; --ok-soft:#DCF2E6; --bad:#C42B27; --bad-soft:#FBE2E0; --warn-soft:#FFF1C9;
  --r-xl:28px; --r-lg:22px; --r:16px; --r-sm:12px;
  --sh:0 1px 2px rgba(45,32,20,.05),0 10px 24px -10px rgba(45,32,20,.16);
  --ease:cubic-bezier(.16,1,.3,1);
  --f-body:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-disp:"Manrope",system-ui,sans-serif;
  --safe-b:env(safe-area-inset-bottom,0px);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{background:var(--bg2);overscroll-behavior:none}
body{margin:0;font:15px/1.42 var(--f-body);color:var(--ink);background:var(--bg);max-width:460px;margin-inline:auto;min-height:100vh;min-height:100dvh;position:relative;-webkit-text-size-adjust:100%;overflow-x:hidden;overscroll-behavior:none}
@media(min-width:520px){body{box-shadow:0 0 0 1px var(--line),0 30px 80px -30px rgba(40,30,20,.35)}}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;border:0;background:none;padding:0;touch-action:manipulation}
h1,h2,h3,p{margin:0}
::selection{background:var(--acc);color:var(--ink)}
input,textarea{caret-color:var(--acc)}
:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:8px}
.dark :focus-visible,.dock :focus-visible{outline-color:#fff}
*{scrollbar-width:thin;scrollbar-color:var(--bg2) transparent}
.num{font-variant-numeric:tabular-nums lining-nums}
.disp{font-family:var(--f-disp);letter-spacing:-.025em}
.ic{flex:none;display:block}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ===== screen ===== */
#screen{padding:calc(14px + env(safe-area-inset-top,0px)) 16px 120px}
#screen.nodock{padding-bottom:40px}
.screen.fwd{animation:in-fwd .38s var(--ease) both}
.screen.back{animation:in-back .34s var(--ease) both}
.screen.tab{animation:in-tab .3s var(--ease) both}
@keyframes in-fwd{from{opacity:0;transform:translateX(22px)}}
@keyframes in-back{from{opacity:0;transform:translateX(-16px)}}
@keyframes in-tab{from{opacity:0;transform:translateY(8px)}}

.top{display:flex;align-items:center;gap:12px;margin-bottom:14px;min-height:44px}
.top h1{font:800 19px/1.15 var(--f-disp);letter-spacing:-.025em;flex:1}
.top .sub{font-size:13px;color:var(--mute);margin-top:2px;font-family:var(--f-body);font-weight:400;letter-spacing:0}
.iconbtn{width:44px;height:44px;border-radius:50%;background:var(--card);display:grid;place-items:center;box-shadow:var(--sh);position:relative;flex:none;transition:transform .2s var(--ease)}
.iconbtn:active{transform:scale(.93)}
.iconbtn.dk{background:var(--dark);color:#fff}
.dot{position:absolute;top:6px;right:6px;min-width:18px;height:18px;border-radius:9px;background:var(--acc);color:var(--ink);font:700 11px/18px var(--f-body);text-align:center;padding:0 4px}

/* home header */
.who{display:flex;align-items:center;gap:12px;flex:1;min-width:0}
.mark{width:44px;height:44px;border-radius:14px;background:var(--dark);color:var(--acc);display:grid;place-items:center;font:800 18px var(--f-disp)}
.who small{display:block;color:var(--mute);font-size:13px}
.who b{display:block;font-size:17px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search{display:flex;align-items:center;gap:10px;width:100%;background:var(--card);border-radius:var(--r-xl);padding:6px 6px 6px 16px;box-shadow:var(--sh);color:var(--mute);text-align:left;margin-bottom:14px}
.search .tx{flex:1;font-size:14px;line-height:1.25}
.search .iconbtn{box-shadow:none;width:42px;height:42px}

/* big actions */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.big{position:relative;overflow:hidden;border-radius:var(--r-lg);padding:14px;min-height:132px;text-align:left;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--sh);transition:transform .25s var(--ease)}
.big:active{transform:scale(.97)}
.big b{font:800 16px/1.15 var(--f-disp);letter-spacing:-.025em;max-width:7.5em}
.big small{font-size:13px;opacity:.8}
.big--new{background:var(--acc);color:var(--ink)}
.big--trk{background:var(--card)}
.big .art{position:absolute;right:-6px;bottom:-8px;width:64px;height:64px;object-fit:contain;transform:rotate(-8deg)}
.big small{max-width:6.8em;position:relative;z-index:1}
.big--trk .art{transform:rotate(7deg)}

/* chips */
.chips{display:flex;gap:8px;overflow-x:auto;padding:2px 16px 8px;margin:0 -16px 8px;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 26px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 26px),transparent)}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;min-height:44px;padding:0 16px;border-radius:999px;background:var(--card);font-size:14px;font-weight:550;color:var(--ink2);box-shadow:0 0 0 1px var(--line) inset;transition:background .2s,color .2s}
.chip[aria-pressed=true]{background:var(--ink);color:#fff;box-shadow:none}
.chip small{opacity:.7;margin-left:4px}
.wrapchips{display:flex;flex-wrap:wrap;gap:8px}

/* cards */
.card{background:var(--card);border-radius:var(--r-lg);padding:16px;box-shadow:var(--sh);margin-bottom:12px}
.card h2,.sec-h{font:800 15px/1.2 var(--f-disp);letter-spacing:-.015em}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;margin:22px 4px 10px}
.sec-head h2{font:800 15.5px/1.2 var(--f-disp);letter-spacing:-.025em}
.link{color:var(--acc-ink);font-weight:600;font-size:14px;padding:0;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}
.dark{background:var(--dark);color:#fff;border-radius:var(--r-xl);padding:18px;margin-bottom:12px}
.dark .mute{color:var(--dark-mute)}
.mute{color:var(--mute)}
.row{display:flex;align-items:center;gap:10px}
.between{justify-content:space-between}
.grow{flex:1;min-width:0}

/* pipeline counters */
.pipe{display:grid;grid-template-columns:repeat(3,1fr);padding:4px 0;background:var(--card);border-radius:var(--r-lg);box-shadow:var(--sh);margin-bottom:12px;overflow:hidden}
.pipe button{padding:14px 14px 12px;text-align:left;position:relative}
.pipe button:nth-child(n+4){border-top:1px dashed var(--line)}
.pipe button:not(:nth-child(3n+1)){border-left:1px dashed var(--line)}
.pipe b{display:block;font:800 24px/1 var(--f-disp);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.pipe span{display:block;font-size:13px;color:var(--ink2);margin-top:6px}
.pipe .hot b{color:var(--acc-ink)}

/* money bar */
.mbar{height:14px;border-radius:7px;background:repeating-linear-gradient(90deg,var(--dark-line) 0 6px,transparent 6px 10px);position:relative;overflow:hidden;margin:10px 0 8px}
.mbar i{position:absolute;inset:0;width:100%;background:var(--acc);border-radius:7px;transform-origin:left;transform:scaleX(var(--p,0));transition:transform .8s var(--ease)}
.mlegend{display:flex;justify-content:space-between;gap:10px;font-size:13px}
.mlegend b{display:block;font:800 17px/1.2 var(--f-disp);letter-spacing:-.025em;margin-top:2px}
.mlegend .r{text-align:right}
.kv{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:11px 0;border-top:1px dashed var(--dark-line)}
.kv span{color:var(--dark-mute);font-size:14px}
.kv b{font-weight:650;font-variant-numeric:tabular-nums}
.kv.big-k b{font:800 20px var(--f-disp);letter-spacing:-.025em;color:var(--acc)}
.light .kv{border-color:var(--line)} .light .kv span{color:var(--ink2)}
.light .kv.big-k b{color:var(--ink)}

/* order row */
.list{display:flex;flex-direction:column;gap:10px}
.orow{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center;background:var(--card);border-radius:var(--r-lg);padding:12px;box-shadow:var(--sh);text-align:left;width:100%;transition:transform .2s var(--ease)}
.orow:active{transform:scale(.985)}
.thumb{width:52px;height:52px;border-radius:14px;background:var(--bg);display:grid;place-items:center;overflow:hidden}
.thumb svg,.thumb img{width:46px;height:46px;object-fit:cover}
.orow .t1{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.orow .nm{font-weight:650;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.orow .sm{font-size:13px;color:var(--mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.orow .amt{font-weight:700;font-variant-numeric:tabular-nums;text-align:right;font-size:15px}
.orow .rt{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.orow .mid{min-width:0}

/* tag (бирка) */
.tag{display:inline-flex;align-items:center;gap:6px;background:var(--ink);color:#fff;font:800 12.5px/1 var(--f-disp);letter-spacing:0;padding:7px 10px 7px 20px;
  clip-path:polygon(7px 0,100% 0,100% 100%,7px 100%,0 calc(100% - 7px),0 7px);
  -webkit-mask:radial-gradient(circle 2.6px at 10px 50%,transparent 97%,#000 100%);mask:radial-gradient(circle 2.6px at 10px 50%,transparent 97%,#000 100%);font-variant-numeric:tabular-nums}
.tag.lg{font-size:20px;padding:11px 16px 11px 28px;clip-path:polygon(11px 0,100% 0,100% 100%,11px 100%,0 calc(100% - 11px),0 11px);-webkit-mask:radial-gradient(circle 4px at 14px 50%,transparent 97%,#000 100%);mask:radial-gradient(circle 4px at 14px 50%,transparent 97%,#000 100%)}
.tag.acc{background:var(--acc);color:var(--ink)}
.dark .tag{background:#fff;color:var(--ink)}

/* pills */
.pill{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:650;padding:4px 10px;border-radius:999px;white-space:nowrap;background:var(--bg);color:var(--ink2)}
.pill.o{background:var(--acc-soft);color:var(--acc-ink)}
.pill.g{background:var(--ok-soft);color:var(--ok)}
.pill.r{background:var(--bad-soft);color:var(--bad)}
.pill.w{background:var(--warn-soft);color:#7A5A00}
.pill.d{background:var(--dark2);color:#fff}
.dark .pill.o{background:rgba(255,90,31,.18);color:#FF8A5C}

/* stitch timeline */
.stitch{display:flex;flex-direction:column;gap:16px}
.seg-t{font-size:12.5px;color:var(--mute);font-weight:600;margin-bottom:8px}
.dark .seg-t{color:var(--dark-mute)}
.nodes{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;position:relative}
.node{display:flex;flex-direction:column;align-items:center;gap:7px;position:relative;text-align:center;min-width:0}
.node::before{content:"";position:absolute;top:13px;right:50%;width:100%;height:3px;background:radial-gradient(circle,var(--line) 1.3px,transparent 1.7px) 0 0/7px 3px repeat-x;transform:translateY(-1px)}
.dark .node::before{background-image:radial-gradient(circle,var(--dark-line) 1.3px,transparent 1.7px)}
.node:first-child::before{display:none}
.node.done::before,.node.cur::before{background-image:radial-gradient(circle,var(--acc) 1.4px,transparent 1.8px)}
.node i{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:var(--bg);color:var(--mute);position:relative;z-index:1;font-style:normal}
.dark .node i{background:var(--dark2);color:var(--dark-mute)}
.node.done i{background:var(--ok);color:#fff}
.node.cur i{background:var(--acc);color:var(--ink);box-shadow:0 0 0 5px rgba(255,90,31,.22)}
.node.cur i::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--acc);animation:ping 2s var(--ease) infinite}
@keyframes ping{0%{transform:scale(.8);opacity:.9}100%{transform:scale(1.5);opacity:0}}
.node.bad i{background:var(--bad);color:#fff;box-shadow:none}
.node span{font-size:11.5px;line-height:1.15;color:var(--mute);max-width:70px;overflow-wrap:normal;word-break:normal;hyphens:none}
.node.done span,.node.cur span{color:var(--ink)}
.dark .node span{color:var(--dark-mute)}
.dark .node.done span,.dark .node.cur span{color:#fff}
.stitch .node{animation:node-in .5s var(--ease) both;animation-delay:calc(var(--n,0)*55ms + 120ms)}
@keyframes node-in{from{opacity:0;transform:translateY(6px)}}

/* route */
.route{display:flex;align-items:center;gap:10px;margin:16px 0 18px}
.route .c{min-width:0}.route .c small{display:block;color:var(--dark-mute);font-size:12.5px}
.route .c b{display:block;font-size:17px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.route .c.r{text-align:right}
.route .ln{flex:1;height:3px;background:radial-gradient(circle,var(--dark-line) 1.4px,transparent 1.8px) 0 0/8px 3px repeat-x;position:relative;min-width:30px}
.route .ln i{position:absolute;top:50%;width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;background:var(--acc);color:var(--ink);display:grid;place-items:center;transition:left .9s var(--ease)}

/* buttons */
.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:54px;padding:0 20px;border-radius:var(--r);font-weight:700;font-size:16px;background:var(--acc);color:var(--ink);transition:transform .2s var(--ease),opacity .2s}
.btn:active{transform:scale(.98)}
.btn.dk{background:var(--ink);color:#fff}
.btn.ghost{background:var(--card);box-shadow:0 0 0 1px var(--line) inset}
.dark .btn.ghost{background:var(--dark2);box-shadow:none;color:#fff}
.btn.sm{min-height:44px;font-size:14.5px;width:auto;padding:0 16px;border-radius:14px}
.btn[disabled]{opacity:.45;pointer-events:none}
.btns{display:flex;flex-direction:column;gap:10px}
.btns.h{flex-direction:row}.btns.h>*{flex:1}

/* forms */
.fld{display:block;margin-bottom:12px}
.fld>span{display:block;font-size:13px;color:var(--ink2);font-weight:550;margin-bottom:6px}
.fld>span em{color:var(--acc-ink);font-style:normal}
.in{width:100%;min-height:50px;border-radius:14px;border:1.5px solid #C4C7CC;background:#F9FAFA;padding:0 14px;font-size:16px;outline:none;transition:border-color .2s,background .2s;appearance:none;-webkit-appearance:none}
textarea.in{padding:12px 14px;min-height:76px;resize:vertical}
.in:focus{border-color:var(--ink);background:#fff}
.in::placeholder{color:#6C6F75}
.fld.err .in{border-color:var(--bad);background:var(--bad-soft)}
.fld .em{display:none;color:var(--bad);font-size:13px;margin-top:5px}
.fld.err .em{display:block}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
select.in{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%2355524D' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}
.seg{display:flex;background:var(--bg);border-radius:14px;padding:4px;gap:2px;margin-bottom:12px}
.seg button{flex:1;min-height:42px;border-radius:11px;font-weight:600;font-size:14px;color:var(--ink2);padding:0 6px;transition:background .2s,color .2s}
.seg button[aria-pressed=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 3px rgba(40,30,20,.14)}
.found{display:flex;gap:10px;align-items:center;background:var(--ok-soft);color:var(--ok);border-radius:14px;padding:10px 12px;font-size:13.5px;font-weight:600;margin-bottom:12px}
.note{font-size:13px;color:var(--mute);margin:-4px 0 12px}
.stepper{display:inline-flex;align-items:center;gap:2px;background:var(--bg);border-radius:14px;padding:3px}
.stepper button{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;font-size:20px;font-weight:600}
.stepper b{min-width:26px;text-align:center;font-variant-numeric:tabular-nums}

/* garments / catalog */
.models{display:flex;gap:10px;overflow-x:auto;margin:0 -16px 12px;padding:2px 16px 8px;scrollbar-width:none}
.models::-webkit-scrollbar{display:none}
.model{flex:none;width:132px;background:var(--bg);border-radius:var(--r);padding:8px 8px 10px;text-align:left;border:2px solid transparent;transition:border-color .2s,background .2s}
.model[aria-pressed=true]{border-color:var(--ink);background:#fff}
.model .pic{height:96px;display:grid;place-items:center}
.model .pic svg,.model .pic img{height:92px;width:auto;max-width:100%;object-fit:contain}
.model b{display:block;font-size:13.5px;line-height:1.2;margin-top:4px}
.model small{color:var(--mute);font-size:12.5px}
.swatches{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.sw{width:44px;height:44px;border-radius:50%;border:2px solid var(--line);position:relative;display:grid;place-items:center;transition:transform .2s var(--ease)}
.sw[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:2px}
.sizes{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.size{min-width:48px;min-height:44px;padding:0 12px;border-radius:12px;background:var(--bg);font-weight:650;font-size:14.5px}
.size[aria-pressed=true]{background:var(--ink);color:#fff}
.cfg{background:var(--bg);border-radius:var(--r);padding:14px;margin-bottom:12px}
.cfg .lbl{font-size:13px;color:var(--ink2);font-weight:550;margin-bottom:8px}
.line{display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px dashed var(--line)}
.line:first-child{border-top:0}
.line .thumb{width:48px;height:48px}.line .thumb svg{width:42px;height:42px}
.line b{font-size:14.5px;display:block}.line small{color:var(--mute);font-size:13px}
.line .rt{text-align:right}
.rm{color:var(--mute);font-size:13px;padding:4px 0;font-weight:600}

/* sums */
.sum{display:flex;justify-content:space-between;gap:10px;padding:7px 0;font-size:14.5px}
.sum span{color:var(--ink2)}.sum b{font-variant-numeric:tabular-nums;font-weight:650}
.sum.tot{border-top:1.5px solid var(--ink);margin-top:6px;padding-top:12px;font-size:17px}
.sum.tot b{font:800 19px var(--f-disp);letter-spacing:-.025em}
.sum.good b{color:var(--ok)}.sum.bad b{color:var(--bad)}

/* sticky bar (create) */
.bar{position:fixed;left:0;right:0;bottom:0;max-width:460px;margin:0 auto;background:var(--card);border-radius:24px 24px 0 0;padding:12px 16px calc(12px + var(--safe-b));display:flex;gap:14px;align-items:center;box-shadow:0 -10px 30px -12px rgba(40,30,20,.25);z-index:20}
.bar .miss{display:block;font-size:12px;font-weight:600;color:var(--bad);margin-top:2px;max-width:11em;line-height:1.2}
.bar .tt{font-size:12.5px;color:var(--mute)}.bar .tt b{display:block;font:800 19px/1.15 var(--f-disp);letter-spacing:-.025em;color:var(--ink);font-variant-numeric:tabular-nums}
.bar .btn{flex:1}

/* dock */
.dock{position:fixed;left:0;right:0;bottom:0;max-width:460px;margin:0 auto;padding:0 14px calc(14px + var(--safe-b));z-index:30;pointer-events:none;transition:transform .35s var(--ease),opacity .25s}
.dock.hide{transform:translateY(120%);opacity:0}
.dock nav{pointer-events:auto;background:var(--dark);border-radius:36px;height:70px;display:grid;grid-template-columns:1fr 1fr 70px 1fr 1fr;padding:0 4px;align-items:center;box-shadow:0 16px 34px -10px rgba(20,14,8,.5)}
.dock .tb{color:#B9B5AD;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;font-weight:600;letter-spacing:-.01em;height:100%;min-width:0;justify-content:center;transition:color .2s}
.dock .tb[aria-current=page]{color:#fff}
.dock .tb[aria-current=page] svg{color:var(--acc)}
.dock .plus{width:58px;height:58px;border-radius:50%;margin:-18px auto 0;background:var(--acc);color:var(--ink);display:grid;place-items:center;box-shadow:0 0 0 5px var(--bg),0 10px 20px -6px rgba(0,0,0,.45);transition:transform .25s var(--ease)}
.dock .plus:active{transform:scale(.92) rotate(90deg)}

/* sheet / toast */
#sheet{position:fixed;inset:0;z-index:60;display:none}
#sheet.open{display:block}
.sheet-back{position:absolute;inset:0;background:rgba(21,21,20,.5);animation:fade .25s both}
.sheet-panel{position:absolute;left:0;right:0;bottom:0;max-width:460px;margin:0 auto;background:var(--card);border-radius:28px 28px 0 0;padding:10px 18px calc(18px + var(--safe-b));max-height:88dvh;overflow-y:auto;animation:up .38s var(--ease) both}
.sheet-panel h3{font:800 18px/1.2 var(--f-disp);letter-spacing:-.025em;margin:8px 0 14px}
.grab{width:42px;height:5px;border-radius:3px;background:var(--line);margin:0 auto}
@keyframes up{from{transform:translateY(60%);opacity:0}}
@keyframes fade{from{opacity:0}}
.menu-item{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;text-align:left;font-weight:600;font-size:15.5px;border-top:1px dashed var(--line)}
.menu-item:first-of-type{border-top:0}
.menu-item.bad{color:var(--bad)}
#toast{position:fixed;left:50%;top:calc(14px + env(safe-area-inset-top,0px));transform:translate(-50%,-24px);opacity:0;visibility:hidden;pointer-events:none;background:var(--ink);color:#fff;padding:12px 18px;border-radius:999px;font-size:14px;font-weight:600;z-index:90;transition:transform .4s var(--ease),opacity .25s,visibility 0s .4s;max-width:calc(100vw - 32px);text-align:center;box-shadow:0 10px 30px -8px rgba(0,0,0,.5)}
#toast.on{transform:translate(-50%,0);opacity:1;visibility:visible;pointer-events:auto;transition:transform .4s var(--ease),opacity .25s,visibility 0s}
#toast button{color:var(--acc);font-weight:800;margin-left:14px;min-height:32px}

/* misc blocks */
.empty{text-align:center;padding:34px 20px;color:var(--mute)}
.empty .art{width:84px;height:84px;margin:0 auto 10px;opacity:.9}
.empty b{display:block;color:var(--ink);font:800 16px var(--f-disp);letter-spacing:-.025em;margin-bottom:6px}
.stuck{display:flex;gap:12px;align-items:center;background:var(--warn-soft);border-radius:var(--r);padding:12px 14px;margin-bottom:12px;color:#5E4600;text-align:left;width:100%}
.stuck b{display:block;color:var(--ink)}
.menu{background:var(--card);border-radius:var(--r-lg);box-shadow:var(--sh);padding:4px 16px;margin-bottom:12px}
.menu .menu-item .ic{color:var(--ink2)}
.menu .menu-item>span{flex:1}
.menu .menu-item small{color:var(--mute);font-weight:500;font-size:13px}
.hist{list-style:none;margin:0;padding:0}
.hist li{display:grid;grid-template-columns:12px 1fr;gap:12px;padding:0 0 14px;position:relative}
.hist li::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--acc);margin-top:6px}
.hist li::after{content:"";position:absolute;left:4px;top:18px;bottom:0;border-left:2px dotted var(--line)}
.hist li:last-child::after{display:none}
.hist b{font-weight:600;font-size:14.5px;display:block}.hist small{color:var(--mute);font-size:13px}
.dark .hist li::after{border-color:var(--dark-line)}.dark .hist small{color:var(--dark-mute)}
.dl{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px}
.dl small{display:block;color:var(--mute);font-size:12.5px}.dl b{font-weight:600;font-size:15px;overflow-wrap:anywhere}
.dl .full{grid-column:1/-1}
.dark .dl small{color:var(--dark-mute)}
.ava{width:46px;height:46px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font:800 16px var(--f-disp);flex:none}
.ava.acc{background:var(--acc);color:var(--ink)}
.chart{width:100%;height:auto;display:block}
.chart text{font:500 10.5px var(--f-body);fill:var(--mute)}
.chart .v{font-weight:700;fill:var(--ink)}
.bars rect{transform-origin:bottom}
.stack{display:flex;height:16px;border-radius:8px;overflow:hidden;gap:2px;margin:12px 0 10px}
.stack i{display:block;height:100%;min-width:4px}
.legend{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;font-size:13.5px}
.legend span{display:flex;align-items:center;gap:8px}.legend i{width:10px;height:10px;border-radius:3px;flex:none}
.legend b{margin-left:auto;font-variant-numeric:tabular-nums}
.check{display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:center;min-height:52px;width:100%;text-align:left;border-top:1px dashed var(--line);padding:8px 0}
.check:first-of-type{border-top:0}
.check .bx{width:30px;height:30px;border-radius:9px;border:2px solid var(--ink2);display:grid;place-items:center;color:transparent;transition:background .2s,border-color .2s}
.check[aria-pressed=true] .bx{background:var(--ok);border-color:var(--ok);color:#fff}
.check[aria-pressed=true] .tx{text-decoration:line-through;color:var(--mute)}
.photo{width:100%;border-radius:var(--r);display:block;margin-top:10px;max-height:260px;object-fit:cover}
.sw-in{display:flex;gap:8px;align-items:center;margin-bottom:8px}
.sw-in input[type=color]{width:46px;height:46px;border:0;padding:0;background:none;border-radius:50%}
.trk-map{background:var(--card);border-radius:var(--r-xl);padding:18px;margin-bottom:12px;box-shadow:var(--sh);position:relative;overflow:hidden}
.trk-map .route .c small{color:var(--mute)}
.trk-map .route .ln{background-image:radial-gradient(circle,#CBCED2 1.4px,transparent 1.8px)}
.trk-map .route .c b{color:var(--ink)}
.ph{height:1px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

.hero-p{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 4px}
.hero-p span{color:var(--dark-mute);font-size:14px}
.hero-p b{font:800 30px/1 var(--f-disp);letter-spacing:-.03em;color:var(--acc);font-variant-numeric:tabular-nums}
details.more{margin:0 0 12px}
details.more summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;color:var(--acc-ink);font-weight:650;font-size:14.5px}
details.more summary::-webkit-details-marker{display:none}
details.more[open] summary{margin-bottom:10px}
