:root{--bg:#f6f1e9;--surface:#fff;--surface-2:#fbf8f3;--ink:#2b2d42;--muted:#6c6f7f;--line:#e6dfd3;--brand:#3d5a80;--brand-ink:#fff;--accent:#ee6c4d;--ok:#2a9d8f;--warn:#e9a23b;--bad:#d62828;--wall:#e9e1d4;--floor:#d8c7ae;--radius:14px;--shadow:0 1px 2px #2b2d420f, 0 4px 14px #2b2d420f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#1b1c22;--surface:#24262e;--surface-2:#2b2d36;--ink:#eceef4;--muted:#a3a7b7;--line:#383b46;--brand:#7aa2d6;--brand-ink:#10131a;--wall:#2a2c35;--floor:#33302b;--shadow:0 1px 2px #0000004d, 0 4px 14px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,Roboto,Noto Sans,sans-serif;font-size:16px;line-height:1.5}a{color:var(--brand)}button,input,select,textarea{font:inherit;color:inherit}.shell{flex-direction:column;min-height:100dvh;display:flex}.topbar{z-index:20;background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:10px 16px;display:flex;position:sticky;top:0}.brand{color:var(--ink);white-space:nowrap;font-weight:800;text-decoration:none}.brand span{color:var(--accent)}.nav-links{gap:4px;margin-left:12px;display:none}.nav-links a,.tabbar a{color:var(--muted);border-radius:8px;padding:6px 10px;font-weight:600;text-decoration:none}.nav-links a.active,.tabbar a.active{color:var(--brand);background:color-mix(in srgb, var(--brand) 12%, transparent)}.topbar .who{color:var(--muted);align-items:center;gap:8px;margin-left:auto;font-size:14px;display:flex}.main{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:16px 16px 96px}.tabbar{z-index:20;background:var(--surface);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{flex-direction:column;align-items:center;padding:4px 2px;font-size:12px;display:flex}.tabbar a .ico{font-size:20px;line-height:1.2}@media (min-width:860px){.nav-links{display:flex}.tabbar{display:none}.main{padding-bottom:32px}}h1{margin:4px 0 12px;font-size:24px}h2{margin:20px 0 10px;font-size:18px}.sub{color:var(--muted);margin:-6px 0 16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.grow{flex:1}.btn{border:1px solid var(--line);background:var(--surface);cursor:pointer;min-height:42px;color:var(--ink);border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-weight:650;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.btn.primary:hover{filter:brightness(1.05)}.btn.small{min-height:34px;padding:4px 12px;font-size:14px}.btn:disabled{opacity:.55;cursor:not-allowed}.input,select.input,textarea.input{border:1px solid var(--line);background:var(--surface);border-radius:10px;width:100%;min-height:42px;padding:8px 12px}.input:focus,.btn:focus-visible{outline:3px solid color-mix(in srgb, var(--brand) 35%, transparent);outline-offset:1px}label.field{margin-bottom:12px;font-weight:600;display:block}label.field>span{color:var(--muted);margin-bottom:4px;font-size:14px;display:block}.notice{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;margin:10px 0;padding:10px 14px}.notice.error{border-color:color-mix(in srgb, var(--bad) 40%, transparent);background:color-mix(in srgb, var(--bad) 8%, var(--surface))}.notice.ok{border-color:color-mix(in srgb, var(--ok) 40%, transparent);background:color-mix(in srgb, var(--ok) 8%, var(--surface))}.notice.warn{border-color:color-mix(in srgb, var(--warn) 50%, transparent);background:color-mix(in srgb, var(--warn) 10%, var(--surface))}.page-loading{text-align:center;color:var(--muted);padding:40px}.muted{color:var(--muted)}.pill{background:var(--surface-2);border:1px solid var(--line);border-radius:99px;padding:2px 10px;font-size:13px;font-weight:650;display:inline-block}.pill.done{color:var(--ok)}.pill.waiting_for_user{color:var(--warn)}.pill.error{color:var(--bad)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:15px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px 10px}th{color:var(--muted);font-size:13px;font-weight:650}td.num,th.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}tr.section td{color:var(--muted);font-style:italic}.tabs{flex-wrap:wrap;gap:6px;margin:8px 0 14px;display:flex}.tabs button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:99px;padding:6px 14px;font-weight:650}.tabs button.on{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.office{border:1px solid var(--line);background:linear-gradient(var(--wall) 0 58%, var(--floor) 58% 100%);border-radius:20px;padding:18px 14px 14px;position:relative;overflow:hidden}.office:before{content:"";opacity:.7;background:linear-gradient(#bfe0f5,#e8f4fb);border:5px solid #fff;border-radius:8px;width:120px;height:70px;position:absolute;top:18px;right:22px}.office-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid;position:relative}.office-grid .desk.manager{grid-column:1/-1}.office-grid .desk.manager .character{max-width:150px}@media (min-width:1000px){.office-grid{grid-template-columns:1.3fr repeat(4,1fr);gap:12px}.office-grid .desk.manager{grid-column:auto}.office-grid .desk.manager .character{max-width:220px}}.desk{text-align:center;background:var(--surface);border:1px solid var(--line);cursor:default;border-radius:16px;flex-direction:column;align-items:center;padding:10px 10px 12px;display:flex;position:relative}.desk.clickable{cursor:pointer}.desk.clickable:hover{border-color:var(--brand)}.desk .plate{margin-top:2px;font-weight:750}.desk .state{font-size:13px;font-weight:650}.desk .msg{color:var(--muted);min-height:2.6em;margin-top:2px;font-size:13px}.desk .actions{margin-top:6px}.desk.st-waiting_for_user{border-color:var(--warn);box-shadow:0 0 0 3px color-mix(in srgb, var(--warn) 25%, transparent)}.desk.st-error{border-color:var(--bad);box-shadow:0 0 0 3px color-mix(in srgb, var(--bad) 20%, transparent)}.bubble{z-index:2;color:#2b2d42;border:2px solid var(--warn);width:100%;box-shadow:var(--shadow);background:#fff;border-radius:14px;margin:2px auto 0;padding:4px 10px;font-size:13px;font-weight:700;animation:1.6s ease-in-out infinite bob;position:relative}.bubble:after{content:"";border:7px solid #0000;border-top-color:var(--warn);border-bottom:0;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.character{width:100%;max-width:220px;height:auto;margin-top:10px}.bubble+.character{margin-top:4px}@media (max-width:859px){.topbar .who>span{display:none}.desk{padding:8px 6px 10px}.desk .msg{font-size:12px}h1{font-size:22px}}.character .badge,.character .mouth-happy,.character .mouth-worried{display:none}.character .body{transform-origin:80px 114px}.character .arm{transform-box:fill-box}.character .arm-left{transform-origin:90% 10%}.character .arm-right{transform-origin:10% 10%}.st-idle .body{animation:4s ease-in-out infinite breathe}.st-idle .badge-idle{animation:3s ease-in-out infinite drift;display:block}.st-idle .eyes{transform-origin:80px 52px;transform:translateY(1px)scaleY(.5)}.st-working .head{transform-origin:80px 70px;animation:.9s ease-in-out infinite nod}.st-working .arm-left{animation:.35s ease-in-out infinite alternate type-l}.st-working .arm-right{animation:.35s ease-in-out .17s infinite alternate type-r}.st-working .eyes{transform:translateY(2px)}.st-working .badge-working{display:block}.st-working .badge-working .dots circle{animation:1.2s infinite blink}.st-working .badge-working .dots circle:nth-child(2){animation-delay:.2s}.st-working .badge-working .dots circle:nth-child(3){animation-delay:.4s}.st-working .prop-work{transform-box:fill-box;transform-origin:50%;animation:.8s ease-in-out infinite alternate busy}.st-working .prop-work.fly{animation:1.4s ease-in-out infinite fly}.st-working .prop-work.keys rect{animation:.5s infinite alternate blink}.st-waiting_for_user .arm-right{transform:rotate(-150deg)}.st-waiting_for_user .head{transform-origin:80px 70px;transform:rotate(-6deg)}.st-waiting_for_user .brows{transform:translateY(-2px)}.st-done .mouth-calm{display:none}.st-done .mouth-happy{display:block}.st-done .badge-done{animation:.4s ease-out pop;display:block}.st-done .arm-left{transform:rotate(-30deg)}.st-error .mouth-calm{display:none}.st-error .mouth-worried{display:block}.st-error .badge-error{animation:1s ease-in-out infinite pulse;display:block}.st-error .body{animation:.5s ease-in-out 3 shake}.st-error .brows{transform-origin:80px 46px;transform:rotate(8deg)}@keyframes breathe{50%{transform:scaleY(1.025)}}@keyframes drift{0%,to{transform:translate(132px,20px)}50%{transform:translate(134px,14px)}}@keyframes nod{50%{transform:translateY(2px)rotate(2deg)}}@keyframes type-l{to{transform:rotate(-12deg)}}@keyframes type-r{to{transform:rotate(12deg)}}@keyframes busy{to{transform:translateY(-2px)rotate(-3deg)}}@keyframes fly{0%{opacity:1;transform:translate(0)}70%{opacity:0;transform:translate(14px,-26px)rotate(12deg)}to{opacity:0}}@keyframes blink{50%{opacity:.25}}@keyframes pop{0%{transform:translate(132px,18px)scale(0)}to{transform:translate(132px,18px)scale(1)}}@keyframes pulse{50%{opacity:.55}}@keyframes shake{25%{transform:translate(-3px)}75%{transform:translate(3px)}}@keyframes bob{50%{transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.character *,.bubble{animation:none!important}}.progress{grid-template-columns:repeat(5,1fr);gap:4px;margin:14px 0 6px;display:grid}.progress .step{text-align:center;color:var(--muted);font-size:12px;font-weight:650}.progress .dot{border:2px solid var(--line);background:var(--surface);border-radius:50%;place-items:center;width:30px;height:30px;margin:0 auto 4px;font-size:14px;display:grid}.progress .step.done{color:var(--ok)}.progress .step.done .dot{background:var(--ok);border-color:var(--ok);color:#fff}.progress .step.now{color:var(--brand)}.progress .step.now .dot{border-color:var(--brand)}.progress .step.wait{color:var(--warn)}.progress .step.wait .dot{border-color:var(--warn)}.progress .step.fail{color:var(--bad)}.progress .step.fail .dot{border-color:var(--bad)}.live{color:var(--muted);font-size:12px}.live:before{content:"●";color:var(--muted);margin-right:4px}.live.on:before{color:var(--ok)}.chat{grid-template-columns:1fr;gap:12px;display:grid}@media (min-width:860px){.chat{grid-template-columns:260px 1fr}}.convs{display:none}@media (min-width:860px){.convs{display:block}}.convs button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;padding:8px 10px;display:block}.convs button.on{background:color-mix(in srgb, var(--brand) 12%, transparent);font-weight:650}.thread{flex-direction:column;min-height:calc(100dvh - 190px);display:flex}@media (min-width:860px){.thread{min-height:calc(100dvh - 120px)}}.messages{flex-direction:column;flex:1;gap:10px;padding:4px 0 12px;display:flex}.msg-user,.msg-assistant{white-space:pre-wrap;word-wrap:break-word;border-radius:16px;max-width:92%;padding:10px 14px}.msg-user{background:var(--brand);color:var(--brand-ink);border-bottom-right-radius:4px;align-self:flex-end}.msg-assistant{background:var(--surface);border:1px solid var(--line);border-bottom-left-radius:4px;align-self:flex-start}.msg-meta{color:var(--muted);margin-top:4px;font-size:12px}.composer{background:var(--bg);align-items:flex-end;gap:8px;padding:8px 0;display:flex;position:sticky;bottom:70px}@media (min-width:860px){.composer{bottom:0}}.composer textarea{resize:none;min-height:46px;max-height:160px}.attach{color:var(--muted);font-size:13px}.q{margin-bottom:12px}.q h3{margin:0 0 4px;font-size:16px}.q .who{color:var(--muted);margin-bottom:8px;font-size:13px}.opts{gap:6px;display:grid}.opt{border:1px solid var(--line);cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.opt:has(input:checked){border-color:var(--brand);background:color-mix(in srgb, var(--brand) 8%, transparent)}.opt input{width:18px;height:18px}.opt .rec{color:var(--ok);font-size:12px;font-weight:700}.sticky-actions{background:var(--bg);padding:10px 0;position:sticky;bottom:70px}@media (min-width:860px){.sticky-actions{bottom:0}}.block{margin-bottom:10px}.block.packing{border-left:5px solid var(--ok)}.block-head{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.block-head strong{font-size:16px}.block .lines{color:var(--muted);margin:2px 0 6px;font-size:13px}.flag{color:var(--warn);font-size:12px}.flag.bad{color:var(--bad);font-weight:700}.print-only{display:none}@media print{body{color:#000;background:#fff;font-size:11px}.topbar,.tabbar,.no-print,.tabs{display:none!important}.main{max-width:none;padding:0}.card{box-shadow:none;break-inside:avoid;border-color:#ccc}.print-only{display:block}a{color:#000;text-decoration:none}}.login{max-width:380px;margin:8dvh auto}.login .hero{width:140px;margin:0 auto 6px;display:block}@media (min-width:860px){.no-desktop{display:none}}.dropzone{border:2px dashed var(--line);border-radius:var(--radius);text-align:center;background:var(--surface);padding:18px}.dropzone.over{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 6%, var(--surface))}.home-grid{grid-template-columns:1fr;gap:12px;margin-top:12px;display:grid}@media (min-width:860px){.home-grid{grid-template-columns:1fr 1fr}}td.qty{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;width:1%;padding-right:16px}.cell-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}
