:root{--pink: #ee3b66;--pink-ink: #c8204c;--pink-soft: #fde7ee;--ink: #2f3440;--muted: #6b6f7b;--line: #e9e1e5;--bg: #faf6f8;--card: #ffffff;--green: #1f8f4e;--green-soft: #e3f4ea;--amber: #9a6512;--amber-soft: #fbf0dc;--dark: #2f3440;--on-dark: #ffffff;color-scheme:light}@media (prefers-color-scheme: dark){:root{--pink: #ff6b8e;--pink-ink: #ff8aa6;--pink-soft: #3a1f29;--ink: #f1eef0;--muted: #b3acb1;--line: #3a3438;--bg: #171315;--card: #221d20;--green: #4cc27f;--green-soft: #173323;--amber: #e9b45c;--amber-soft: #3a2c14;--dark: #0f0c0e;--on-dark: #f1eef0;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font:16px/1.45 system-ui,-apple-system,Segoe UI,sans-serif;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit;color:inherit}.shell{max-width:720px;margin:0 auto;min-height:100dvh;padding:env(safe-area-inset-top) 16px calc(84px + env(safe-area-inset-bottom))}.top{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 0 4px}.top strong{font-size:18px;color:var(--pink-ink);display:block}.top .sub{font-size:12px;color:var(--muted);letter-spacing:.04em}.screen-head{display:flex;align-items:center;gap:8px;margin:6px 0 10px}.screen-head h1{font-size:22px;margin:0;flex:1;min-width:0;overflow-wrap:anywhere}.icon-btn{border:0;background:transparent;font-size:30px;line-height:1;padding:0 8px 4px 0;color:var(--pink-ink);min-width:32px;min-height:40px;cursor:pointer}h2.sec{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:18px 0 6px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:12px;position:relative}.card h2{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 8px}.card p{margin:4px 0}.muted{color:var(--muted);font-size:13px}.empty{color:var(--muted);font-size:14px;margin:6px 0 12px}.hint{display:block;color:var(--muted);font-size:12px;margin-top:3px}.error{color:var(--pink-ink);font-weight:600}.warn{color:var(--amber);background:var(--amber-soft);border-radius:8px;padding:6px 10px;font-weight:600}.leave{color:var(--pink-ink);font-weight:700;font-size:14px;display:block}.form{display:grid;gap:10px}.field{display:grid;gap:4px;min-width:0}.field .lbl,.lbl{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}input,select,textarea{width:100%;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--card);font-size:16px}textarea{min-height:64px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--pink) 45%,transparent);border-color:var(--pink)}.rs{display:flex;align-items:center;border:1px solid var(--line);border-radius:10px;background:var(--card);padding-left:10px;min-width:0}.rs span{color:var(--muted);font-size:14px}.rs input{border:0;min-height:42px;padding-left:6px}.rs:focus-within{outline:2px solid color-mix(in srgb,var(--pink) 45%,transparent);border-color:var(--pink)}.rs input:focus{outline:none}.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}@media (max-width: 380px){.row3{grid-template-columns:1fr 1fr}}.check{display:flex;gap:8px;align-items:center;font-size:15px}.check input{width:22px;min-height:22px;height:22px;accent-color:var(--pink);flex:none}.check.tall{align-self:end;min-height:44px}.inline{display:flex;gap:8px;align-items:center}.inline select{flex:1}.inline.spread{justify-content:space-between}.inline input[type=number]{width:80px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.actions>*{flex:1}.search{margin:8px 0 10px}.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:6px;width:100%;min-height:46px;border-radius:12px;padding:10px 14px;border:0;background:var(--pink);color:#fff;font-weight:700;text-decoration:none;cursor:pointer;margin:4px 0}.btn.ghost{background:transparent;color:var(--pink-ink);border:1.5px solid var(--pink)}.btn.small{width:auto;min-height:38px;padding:6px 12px;font-size:14px;margin:0}.btn.wa{background:var(--green)}.link{border:0;background:none;color:var(--pink-ink);font-size:13px;cursor:pointer}.right-top{position:absolute;right:10px;top:8px}.seg{display:flex;flex-wrap:wrap;gap:6px}.seg button{flex:1 1 auto;min-height:40px;border-radius:10px;border:1.5px solid var(--line);background:var(--card);padding:6px 10px;font-size:14px;cursor:pointer}.seg button.on{border-color:var(--pink);background:var(--pink-soft);color:var(--pink-ink);font-weight:700}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}.chip{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;background:var(--card);font-size:14px;padding:0;overflow:hidden;cursor:pointer;min-height:36px}.chip>button,button.chip{border:0;background:transparent;padding:6px 12px;cursor:pointer;min-height:36px}.chip.on{background:var(--pink);border-color:var(--pink);color:#fff}.chip .qty{border-left:1px solid rgba(255,255,255,.4);padding:6px 10px;font-weight:700}.pill{display:inline-block;font-size:11px;padding:2px 8px;border-radius:99px;background:var(--pink-soft);color:var(--pink-ink);font-weight:700;white-space:nowrap}.pill.grey{background:color-mix(in srgb,var(--muted) 15%,transparent);color:var(--muted)}.pill.green,.pill.st-confirmed,.pill.st-ready,.pill.st-inProduction{background:var(--green-soft);color:var(--green)}.pill.amber,.pill.st-quoted,.pill.st-enquiry{background:var(--amber-soft);color:var(--amber)}.pill.st-delivered,.pill.st-collected,.pill.st-closed,.pill.st-cancelled,.pill.st-quoteExpired{background:color-mix(in srgb,var(--muted) 15%,transparent);color:var(--muted)}.pill.offline{background:var(--pink-soft);color:var(--pink-ink)}.list{list-style:none;margin:0 0 8px;padding:0}.list>li{margin-bottom:8px}.list.small>li{margin-bottom:4px;padding:4px 0;border-bottom:1px solid var(--line)}.row{width:100%;display:flex;justify-content:space-between;gap:10px;text-align:left;cursor:pointer;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;min-height:56px}.row>span:first-child{display:grid;gap:2px;min-width:0}.row b{overflow-wrap:anywhere}.row .right{display:grid;justify-items:end;align-content:start;gap:4px;flex:none}.kv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:6px 12px;margin:0}.kv dt{color:var(--muted)}.kv dd{margin:0;font-weight:600;overflow-wrap:anywhere}.owner{border:1px dashed var(--amber);background:var(--amber-soft);color:var(--ink);border-radius:12px;padding:10px 12px;margin:0 0 12px;font-size:14px;display:grid;gap:2px}.alert{border:1px solid var(--pink);background:var(--pink-soft);border-radius:10px;padding:8px 10px;margin-top:8px;display:grid;gap:6px}.alert p{margin:0;color:var(--pink-ink);font-weight:600;font-size:14px}.risk{border:1.5px dashed var(--pink);background:var(--pink-soft);border-radius:12px;padding:10px 12px;margin-top:10px;display:grid;gap:6px;justify-items:start}.risk p{margin:0}.risk.on{border-style:solid}.total{background:var(--dark);color:var(--on-dark);border-radius:14px;padding:12px 14px;margin:12px 0}.total .r{display:flex;justify-content:space-between;gap:12px;padding:2px 0;font-size:15px}.total .r.big{font-size:22px;font-weight:800;padding:6px 0}.msg{white-space:pre-wrap;font:inherit;font-size:14px;background:var(--bg);border-radius:10px;padding:10px;margin:6px 0;overflow-wrap:anywhere}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}.kpi{background:var(--pink-soft);border-radius:12px;padding:10px 6px;text-align:center}.kpi b{display:block;font-size:17px}.kpi span{font-size:11px;color:var(--muted)}.table-wrap{overflow-x:auto;margin:0 -14px;padding:0 14px}.prices{border-collapse:collapse;font-size:13px}.prices th{text-align:left;font-weight:600;padding:4px 6px;white-space:nowrap}.prices td{padding:3px;min-width:104px}.prices .rs input{min-height:36px;font-size:14px}.checks{list-style:none;margin:0;padding:0}.checks li{display:flex;gap:8px;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--line);font-size:14px}.checks li:last-child{border-bottom:0}.checks li em{margin-left:auto;font-style:normal;font-size:13px;color:var(--muted);white-space:nowrap}.checks li.ok span{color:var(--green);font-weight:700}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:10;display:flex;justify-content:space-around;background:var(--card);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.tabbar button{border:0;background:transparent;display:grid;justify-items:center;gap:1px;font-size:11px;color:var(--muted);min-width:60px;min-height:48px;cursor:pointer}.tabbar .ico{font-size:18px;line-height:1.2}.tabbar .on{color:var(--pink-ink);font-weight:700}.cost-lines{list-style:none;margin:0;padding:0;display:grid;gap:6px}.cost-lines li{display:grid;grid-template-columns:minmax(0,1fr) 118px 28px;gap:6px;align-items:center}.cost-lines .rs input,.cost-lines input{min-height:40px}.owner .r2{display:flex;justify-content:space-between;gap:10px}.margin-input input{width:70px;min-height:36px}.ig{color:#c13584}.thread{display:grid;gap:8px;margin:12px 0}.bubble{max-width:82%;padding:8px 12px;border-radius:16px;background:var(--card);border:1px solid var(--line);overflow-wrap:anywhere}.bubble.in{justify-self:start;border-bottom-left-radius:4px}.bubble.out{justify-self:end;background:var(--pink-soft);border-color:transparent;border-bottom-right-radius:4px}.bubble p{margin:0 0 2px;white-space:pre-wrap}.bubble img{display:block;max-width:100%;border-radius:10px;margin:4px 0}.bubble .time{display:block;font-size:11px;color:var(--muted);text-align:right}.reply{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.reply .btn{width:auto}.row.unread b{color:var(--pink-ink)}.ellipsis{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60vw}.ig-row{margin-bottom:8px;border-color:var(--pink)}.tabbar .ico{position:relative}.badge{position:absolute;top:-4px;right:-12px;background:var(--pink);color:#fff;font-size:10px;font-weight:700;border-radius:99px;padding:0 5px;min-width:16px;line-height:16px}.tabbar button{min-width:52px}code.wrap{display:block;overflow-wrap:anywhere;font-size:12px;background:var(--bg);padding:6px 8px;border-radius:8px;margin-top:4px}.doc-actions{display:grid;gap:8px;margin:6px 0}.doc-kind{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}.sec-row{margin-top:14px}.sec-row h2.sec{margin:0}.tasks{list-style:none;margin:6px 0 8px;padding:0;display:grid;gap:8px}.tasks li{display:grid;grid-template-columns:44px 1fr;gap:8px;align-items:stretch}.tasks .box{border:2px solid var(--pink);background:var(--card);border-radius:12px;font-size:20px;color:#fff;cursor:pointer;min-height:44px}.tasks .box.on{background:var(--pink)}.task-body{display:grid;gap:2px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:8px 12px;cursor:pointer;min-width:0}.task-body b{overflow-wrap:anywhere}.tasks li.done .task-body{opacity:.55}.tasks li.done .task-body b{text-decoration:line-through}.cal-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0}.cal-head b{font-size:18px;text-transform:capitalize}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cal .h{text-align:center;font-size:11px;color:var(--muted);font-weight:700;padding:2px 0}.cal .d{min-height:46px;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:3px 4px;text-align:left;font-size:12px;cursor:pointer;display:grid;align-content:space-between}.cal .d.out{visibility:hidden}.cal .d .n{font-weight:700}.cal .d .c{font-size:11px;font-weight:800;color:var(--pink-ink);justify-self:end}.cal .d.partial{background:var(--pink-soft)}.cal .d.full{background:var(--pink);border-color:var(--pink);color:#fff}.cal .d.full .c{color:#fff}.cal .d.wed{background:repeating-linear-gradient(45deg,var(--pink-soft),var(--pink-soft) 5px,var(--card) 5px,var(--card) 10px)}.cal .d.blocked{background:color-mix(in srgb,var(--muted) 18%,transparent);color:var(--muted)}.cal .d.today{outline:2px solid var(--ink);outline-offset:-2px}.cal .d.sel{box-shadow:0 0 0 3px color-mix(in srgb,var(--pink) 45%,transparent)}.yr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.yr button{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:10px 6px;text-align:center;cursor:pointer;display:grid;gap:2px;min-height:64px}.yr button b{text-transform:capitalize}.yr button.has{background:var(--pink-soft);border-color:transparent}.yr button .big{font-size:20px;font-weight:800;color:var(--pink-ink)}.pill.web{background:#e6f0fb;color:#1d5fa8}.pill.ig-pill{background:#fbe6f3;color:#c13584}@media (prefers-color-scheme: dark){.pill.web{background:#1b2a3d;color:#8fb8ea}.pill.ig-pill{background:#3a1830;color:#f08cc8}}.chips.cats .count{margin-left:4px;background:var(--pink);color:#fff;border-radius:99px;padding:0 6px;font-size:11px}.chips.cats .chip.on .count{background:#fff;color:var(--pink-ink)}.pill.cat-toAnswer{background:var(--pink-soft);color:var(--pink-ink)}.pill.cat-waitingCustomer{background:var(--amber-soft);color:var(--amber)}.pill.cat-quoteSent{background:#e6f0fb;color:#1d5fa8}.pill.cat-confirmed{background:var(--green-soft);color:var(--green)}.pill.cat-archived{background:color-mix(in srgb,var(--muted) 15%,transparent);color:var(--muted)}.toast{position:fixed;left:12px;right:12px;top:calc(8px + env(safe-area-inset-top));z-index:20;max-width:696px;margin:0 auto;text-align:left;background:var(--dark);color:var(--on-dark);border:0;border-radius:14px;padding:12px 14px;font-weight:600;box-shadow:0 8px 24px #00000040;cursor:pointer}.top-right{display:inline-flex;align-items:center;gap:8px}.help-btn{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--pink);background:var(--card);color:var(--pink-ink);font-weight:800;font-size:16px;cursor:pointer;flex:none}.month-nav{display:flex;align-items:center;justify-content:space-between;margin:0 0 8px}.month-nav b{font-size:17px;text-transform:capitalize}.kpi.pos b,.pos{color:var(--green)}.kpi.neg b,.neg{color:var(--pink-ink)}.warn-card{border-color:var(--amber);background:var(--amber-soft);color:var(--amber)}.bars{list-style:none;margin:0;padding:0;display:grid;gap:8px}.bars li{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;gap:8px;align-items:center;font-size:14px}.bars .bar{height:8px;border-radius:99px;background:var(--pink-soft);overflow:hidden}.bars .bar i{display:block;height:100%;background:var(--pink);border-radius:99px}.receipt{display:grid;gap:4px;justify-items:start}.receipt img{max-width:100%;max-height:260px;border-radius:10px;border:1px solid var(--line)}table.year{width:100%;border-collapse:collapse;font-size:13px}table.year th,table.year td{padding:6px 4px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}table.year th:first-child{text-align:left;text-transform:capitalize}table.year tbody tr{cursor:pointer}.faq-group h3{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:14px 0 6px}.faq{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:6px}.faq summary{font-weight:600;cursor:pointer}.faq p{margin:8px 0;line-height:1.45}.demo{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:10px;margin:8px 0 12px}.demo-stage{position:relative;aspect-ratio:4 / 3;border-radius:12px;overflow:hidden;background:linear-gradient(160deg,var(--pink-soft),var(--bg));display:grid;place-items:center;cursor:pointer}@media (max-width: 520px){.demo-stage{aspect-ratio:1 / 1}}.demo-title{position:absolute;left:0;right:0;top:0;padding:8px 10px;font-weight:700;font-size:14px;background:linear-gradient(var(--card),transparent)}.demo-title .step{display:inline-block;margin-right:6px;font-size:11px;color:var(--muted);font-weight:600}.demo-big-play{position:absolute;width:64px;height:64px;border-radius:50%;background:#0000008c;color:#fff;display:grid;place-items:center;font-size:26px}.demo-sub{min-height:4.4em;margin:8px 2px;font-size:15px;line-height:1.45}.demo-bar{display:flex;gap:3px}.demo-bar button{flex:1;height:6px;border:0;padding:0;border-radius:99px;background:var(--line);overflow:hidden;cursor:pointer}.demo-bar i{display:block;height:100%;background:var(--pink);transition:width .1s linear}.demo-ctrl{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px}.demo-ctrl .icon-btn{font-size:20px;padding:0 4px}.demo-ctrl .icon-btn:disabled{opacity:.3}.demo-ctrl .link{margin-left:auto}.mock-phone{width:46%;min-width:150px;max-width:210px;height:80%;margin-top:9%;background:var(--card);border:2px solid var(--line);border-radius:18px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 24px #0000001f;font-size:11px}.mock-top{padding:5px 8px;font-weight:800;color:var(--pink-ink);border-bottom:1px solid var(--line)}.mock-body{flex:1;padding:6px;display:grid;gap:5px;align-content:start;position:relative}.mock-tabs{display:flex;justify-content:space-around;border-top:1px solid var(--line);padding:3px 0;font-size:12px;opacity:.55}.mock-tabs .on{opacity:1;filter:drop-shadow(0 0 2px var(--pink))}.m-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.m-kpis span{background:var(--pink-soft);border-radius:6px;padding:3px 2px;text-align:center;color:var(--muted);font-size:9px}.m-kpis b{display:block;color:var(--ink);font-size:11px}.m-kpis .pos b{color:var(--green)}.m-row{border:1px solid var(--line);border-radius:7px;padding:4px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-row.msg b{color:var(--pink-ink);margin-right:3px}.m-chips{display:flex;gap:3px;flex-wrap:wrap}.m-chips span{border:1px solid var(--line);border-radius:99px;padding:1px 6px;font-size:10px}.m-chips .on{background:var(--pink);color:#fff;border-color:var(--pink)}.m-total{display:flex;justify-content:space-between;align-items:center;background:var(--pink);color:#fff;border-radius:8px;padding:5px 8px}.m-total b{font-size:14px}.m-warn{color:var(--amber);background:var(--amber-soft);border-radius:7px;padding:3px 6px}.m-status{justify-self:center;background:var(--green-soft);color:var(--green);border-radius:99px;padding:3px 10px;font-weight:700}.m-toast{position:absolute;left:6px;right:6px;bottom:6px;background:var(--dark);color:var(--on-dark);border-radius:8px;padding:5px 7px}.m-speaker{position:absolute;right:8px;bottom:6px;font-size:18px}.m-receipt{justify-self:center;background:var(--bg);border:1px dashed var(--muted);border-radius:6px;padding:5px 8px;transform:rotate(-3deg)}.m-bars{display:grid;gap:3px}.m-bars i{display:block;height:6px;background:var(--pink);border-radius:99px}.v{display:grid;justify-items:center;gap:8px;text-align:center;padding-top:24px}.v-welcome .logo{font-size:54px}.v-welcome b{font-size:20px;color:var(--pink-ink)}.v-welcome .icons{display:flex;gap:12px;font-size:26px}.v-welcome small{color:var(--muted)}.v-send{grid-auto-flow:column;align-items:center;gap:16px}.v-send .paper{width:120px;background:#fff;color:#2f3440;border-radius:6px;padding:10px;display:grid;gap:5px;text-align:left;box-shadow:0 6px 18px #00000026;font-size:11px}.v-send .paper b:first-child{color:#c8204c}.v-send .paper i{display:block;height:5px;background:#eee;border-radius:3px}.v-send .paper i.short{width:60%}.v-send .paper .tot{text-align:right}.send-btns{display:grid;gap:8px}.send-btns span{border-radius:99px;padding:6px 12px;color:#fff;font-weight:700;font-size:12px}.send-btns .wa{background:#1f8f4e}.send-btns .ig{background:#c13584}.send-btns .pdf{background:#2f3440}.v-plan{grid-auto-flow:column;gap:10px;align-items:end}.v-plan .day{position:relative;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:4px;min-width:64px}.v-plan .day span{font-size:26px}.v-plan .day small{color:var(--muted)}.v-plan .tick{position:absolute;top:-8px;right:-8px;background:var(--green);color:#fff;border-radius:50%;width:22px;height:22px;display:grid;place-items:center;font-style:normal;font-size:12px}.v-sync{grid-template-columns:auto auto auto;align-items:center;gap:14px}.v-sync .dev{font-size:46px}.v-sync .wave{font-size:20px;color:var(--pink-ink)}.v-sync small{grid-column:1 / -1;color:var(--muted)}.fade,.slide,.pop,.drop{animation-fill-mode:both;animation-duration:.6s;animation-timing-function:ease-out}.fade{animation-name:demo-fade}.slide{animation-name:demo-slide}.pop{animation-name:demo-pop}.drop{animation-name:demo-drop}.pulse{animation:demo-pop .6s ease-out both,demo-pulse 1.4s ease-in-out 3.8s infinite}.d1{animation-delay:.4s}.d2{animation-delay:1.1s}.d3{animation-delay:1.8s}.d4{animation-delay:2.5s}.d5{animation-delay:3.2s}.pulse.d5{animation-delay:3.2s,3.8s}@keyframes demo-fade{0%{opacity:0}to{opacity:1}}@keyframes demo-slide{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}@keyframes demo-pop{0%{opacity:0;transform:scale(.6)}70%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes demo-drop{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}@keyframes demo-pulse{50%{transform:scale(1.25)}}@media (prefers-reduced-motion: reduce){.fade,.slide,.pop,.drop,.pulse{animation:none}}.allergens{display:grid;gap:6px;margin:8px 0 12px}.chip.allergen{padding:4px 10px;min-height:32px;font-size:13px}.chip.allergen.on{background:var(--amber-soft);border-color:var(--amber);color:var(--amber)}.chip.allergen.bad{background:var(--pink);border-color:var(--pink);color:#fff;font-weight:700}.chip.allergen:disabled{cursor:default;opacity:1}.alert-red{margin:0;border-radius:8px;padding:8px 10px;background:var(--pink);color:#fff;font-weight:700}.alert.red{border-width:2px}.ok-msg{color:var(--green);font-weight:600}label.btn{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}label.btn.disabled{opacity:.5;pointer-events:none}a.btn{display:flex;align-items:center;justify-content:center;text-decoration:none}.row-with-action{display:flex;gap:6px;align-items:stretch}.row-with-action>.row{flex:1;min-width:0}.icon-del{flex:none;width:44px;border:1px solid var(--line);border-radius:12px;background:var(--card);cursor:pointer;font-size:18px}.btn.danger{color:var(--pink-ink);border-color:var(--pink-ink);margin-top:8px}.demo-banner{position:sticky;top:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px;padding:8px 12px;border-radius:12px;background:repeating-linear-gradient(135deg,#7a3cc4,#7a3cc4 12px,#6a32ad 12px,#6a32ad 24px);color:#fff;font-weight:700;font-size:14px}.demo-banner button{border:1.5px solid #fff;background:transparent;color:#fff;border-radius:99px;padding:4px 12px;font-weight:700;cursor:pointer;flex:none}.demo-card{border-color:#7a3cc4}.demo-card h2{color:#7a3cc4}.timer .timer-big{font-size:28px;font-weight:800;margin:4px 0 6px}.timer .timer-big .muted{font-size:16px;font-weight:600}.tbar{display:block;height:8px;border-radius:99px;background:var(--line);overflow:hidden;margin:4px 0}.tbar i{display:block;height:100%;background:var(--green);border-radius:99px;transition:width .5s}.t-nearly .tbar i{background:var(--amber)}.t-over .tbar i{background:var(--pink)}.timer.t-over{border-color:var(--pink)}.prod-strip{display:grid;gap:6px;margin:0 0 8px}.timer-row.t-over{border-color:var(--pink);background:var(--pink-soft)}.timer-row .tbar{width:100%;min-width:120px}.pulse-dot{animation:tpulse 1.6s ease-in-out infinite}@keyframes tpulse{50%{opacity:.45}}.timer-toast{background:var(--pink-ink)}@media (prefers-reduced-motion: reduce){.pulse-dot{animation:none}}.splash,.lock{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px 16px;background:radial-gradient(circle at 50% 35%,#f45d82,#d92c58 70%);color:#fff;text-align:center}.splash img{width:132px;height:132px;object-fit:contain;animation:splash-pop .8s ease-out both}.splash b{font-size:30px;letter-spacing:.02em;animation:splash-fade .6s .35s ease-out both}.splash span{font-size:13px;letter-spacing:.25em;text-transform:uppercase;opacity:.85;animation:splash-fade .6s .6s ease-out both}.splash.leaving{animation:splash-out .35s ease-in forwards}@keyframes splash-pop{0%{opacity:0;transform:scale(.6) rotate(-8deg)}70%{transform:scale(1.06)}to{opacity:1;transform:none}}@keyframes splash-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes splash-out{to{opacity:0}}.lock{justify-content:flex-start;padding-top:max(12vh,40px);overflow-y:auto}.lock-logo{width:92px;height:92px;object-fit:contain}.lock h1{margin:0 0 6px;font-size:24px}.lock p{max-width:340px;margin:0 0 6px}.lock .btn{width:100%;max-width:340px;background:#fff;color:#c8204c}.lock .btn.ghost.light{background:transparent;color:#fff;border-color:#fff}.lock-form{display:grid;gap:8px;width:100%;max-width:340px;margin-top:6px}.lock-form input{width:100%;min-height:46px;border-radius:12px;border:0;padding:0 14px;font-size:16px;color:#2f3440;background:#fff}.lock-error{background:#00000040;padding:6px 12px;border-radius:10px;font-weight:700}.link.light{color:#fff;margin-top:14px;font-size:14px;text-decoration:underline}@media (prefers-reduced-motion: reduce){.splash img,.splash b,.splash span,.splash.leaving{animation:none}}.tabbar{position:sticky;top:0;bottom:auto;left:auto;right:auto;margin:0 -16px 10px;padding:4px 4px 2px;border-top:0;border-bottom:1px solid var(--line);box-shadow:0 4px 12px #0000000a}.shell{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.demo-banner{position:static}.tasks li>.box,li>button.box{align-self:center;height:44px;flex:none}
