:root{--bg: #f3f5f7;--surface: #fff;--ink: #18212b;--muted: #5b6876;--line: #e1e6eb;--brand: #0b7a6f;--brand-d: #075c53;--brand-2: #e6f4f2;--accent: #d9480f;--accent-2: #fff1ea;--warn: #a86a07;--warn-bg: #fff5dc;--bad: #c03030;--bad-bg: #fdecec;--good: #2a7d4f;--good-bg: #e4f5ea;--info: #2662a6;--info-bg: #e7f0fb;--wa: #1fa855;--wa-bg: #dcf8c6;--radius: 12px;--shadow: 0 1px 2px rgba(16,24,40,.05), 0 3px 10px rgba(16,24,40,.06);color-scheme:light}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--bg);color:var(--ink);font:14px/1.45 Segoe UI,system-ui,-apple-system,Roboto,sans-serif}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}a{color:var(--brand-d)}h1,h2,h3,h4{margin:0 0 .4em;line-height:1.2}h2{font-size:20px}h3{font-size:16px}h4{font-size:14px}:focus-visible{outline:3px solid #f0a35c;outline-offset:2px}.muted{color:var(--muted)}.small{font-size:12px}.b{font-weight:600}.right{text-align:right}.nowrap{white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.top{position:sticky;top:0;z-index:30;min-height:58px;display:flex;align-items:center;gap:14px;padding:8px 18px;background:var(--brand-d);color:#fff;flex-wrap:wrap}.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px;white-space:nowrap;color:#fff;text-decoration:none}.logo .mk{width:32px;height:32px;border-radius:9px;background:#fff;color:var(--brand-d);display:grid;place-items:center;font-size:18px}.logo small{display:block;font-weight:400;font-size:11px;opacity:.8}.search{flex:1;min-width:200px;max-width:560px;display:flex;background:#ffffff24;border-radius:10px;overflow:hidden}.search input{flex:1;border:0;background:transparent;color:#fff;padding:9px 12px;outline:none;min-width:0}.search input::placeholder{color:#ffffffbf}.search button{border:0;background:transparent;color:#fff;padding:0 12px}.top .sp{flex:1}.top .who{font-size:12px;text-align:right}.top .btn{background:#ffffff24;color:#fff;border-color:transparent}.layout{display:flex;min-height:calc(100vh - 58px)}nav.side{width:220px;flex:none;background:var(--surface);border-right:1px solid var(--line);padding:12px 10px}nav.side .grp{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:12px 8px 6px}nav.side a{display:flex;gap:10px;align-items:center;padding:9px 10px;border-radius:9px;color:var(--ink);text-decoration:none;margin-bottom:2px}nav.side a:hover{background:var(--bg)}nav.side a.active{background:var(--brand-2);color:var(--brand-d);font-weight:600}main{flex:1;min-width:0;padding:20px 24px 90px}.page-h{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.stack>*+*{margin-top:16px}.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;box-shadow:var(--shadow)}.kpi .l{font-size:12px;color:var(--muted)}.kpi .v{font-size:22px;font-weight:700;margin-top:2px}.kpi .s{font-size:11px;color:var(--muted)}.kpi.alert .v{color:var(--bad)}.btn{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:7px 12px;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:6px}.btn:hover{border-color:#c5ced6}.btn.p{background:var(--brand);border-color:var(--brand);color:#fff}.btn.p:hover{background:var(--brand-d)}.btn.a{background:var(--accent);border-color:var(--accent);color:#fff}.btn.g{background:var(--wa);border-color:var(--wa);color:#fff}.btn.d{color:var(--bad)}.btn.sm{padding:4px 9px;font-size:12px;border-radius:7px}.btn.lg{padding:13px 16px;font-size:15px;font-weight:700;width:100%;justify-content:center;border-radius:12px}.btn[disabled]{opacity:.45;cursor:not-allowed}.row-btns{display:flex;gap:8px;flex-wrap:wrap}.tag{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;background:var(--bg);color:var(--muted);white-space:nowrap}.tag.good{background:var(--good-bg);color:var(--good)}.tag.bad{background:var(--bad-bg);color:var(--bad)}.tag.warn{background:var(--warn-bg);color:var(--warn)}.tag.info{background:var(--info-bg);color:var(--info)}.tag.br{background:var(--brand-2);color:var(--brand-d)}table{width:100%;border-collapse:collapse}th,td{padding:8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;background:#fafbfc}.tw{overflow:auto}.hd{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}.hd h3{margin:0}label.f{display:block;font-size:12px;color:var(--muted);margin:10px 0 4px}.in{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#fff}.in:focus{outline:2px solid var(--brand-2);border-color:var(--brand)}.in.locked{background:var(--bg);color:var(--muted)}.check{display:flex;gap:8px;align-items:flex-start;font-size:13px;margin-top:8px}.note{font-size:12px;color:var(--muted);background:var(--bg);border-radius:8px;padding:8px 10px;margin-top:8px}.note.ok{background:var(--good-bg);color:var(--good)}.note.bad{background:var(--bad-bg);color:var(--bad)}.note.info{background:var(--info-bg);color:var(--info)}.err{color:var(--bad);font-size:13px;margin-top:8px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px;overflow-x:auto}.tabs button{border:0;background:none;padding:9px 14px;color:var(--muted);border-bottom:3px solid transparent;white-space:nowrap}.tabs button.on{color:var(--brand-d);border-bottom-color:var(--brand);font-weight:600}.chart{width:100%;height:auto;display:block}.chart .cl{font-size:11px;fill:var(--muted)}.chart .cv{font-size:10px;fill:var(--ink);font-weight:600}.prog{height:8px;border-radius:8px;background:var(--line);overflow:hidden}.prog>i{display:block;height:100%;background:var(--brand)}.empty{color:var(--muted);padding:18px;text-align:center}.loading{color:var(--muted);padding:24px}.hero{border-radius:16px;padding:28px;background:linear-gradient(120deg,#075c53,#0b7a6f 55%,#2f9e8f);color:#fff;display:grid;grid-template-columns:1.4fr 1fr;gap:20px;align-items:center}.hero h1{font-size:28px}.hero p{opacity:.92}.attr{margin:14px 0 0;padding:10px 14px;border-radius:10px;background:var(--accent-2);color:#8a2e07;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.cats{display:flex;gap:10px;margin:18px 0 12px;flex-wrap:wrap}.cat{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 14px}.cat.on{background:var(--brand);color:#fff;border-color:var(--brand)}.prods{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.pc{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow)}.pc .img{height:96px;border-radius:9px;display:grid;place-items:center;font-size:44px;background:var(--brand-2)}.pc .nm{font-weight:600;line-height:1.25;min-height:36px}.pc .pr{font-weight:700;font-size:16px}.cartfab{position:fixed;right:96px;bottom:22px;z-index:40;background:var(--accent);color:#fff;border:0;border-radius:999px;padding:12px 18px;font-weight:600;box-shadow:0 6px 18px #d9480f59}.bigv{font-size:30px;font-weight:800;color:var(--brand-d)}.calc input[type=range]{width:100%;accent-color:var(--brand)}.tmap rect{cursor:pointer;stroke:#fff;stroke-width:2}.tmap rect:hover{stroke:var(--ink)}.tmap rect.sel{stroke:var(--accent);stroke-width:3}.tmap text{font-size:11px;font-weight:600;pointer-events:none}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172073;z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow:auto}.modal{background:var(--surface);border-radius:14px;width:min(560px,100%);padding:20px;box-shadow:0 20px 60px #00000040}.modal.wide{width:min(860px,100%)}.modal .x{float:right;border:0;background:none;font-size:22px;color:var(--muted)}.toasts{position:fixed;left:18px;bottom:18px;z-index:80;display:flex;flex-direction:column;gap:8px;max-width:380px}.toast{background:var(--ink);color:#fff;border-radius:10px;padding:10px 12px;box-shadow:0 8px 24px #0003;font-size:13px}.toast.ok{background:var(--good)}.toast.bad{background:var(--bad)}.stepper{display:flex;margin:14px 0;overflow-x:auto;padding-bottom:4px}.st{flex:1;min-width:92px;text-align:center;position:relative;font-size:12px;color:var(--muted)}.st:before{content:"";position:absolute;top:13px;left:-50%;right:50%;height:3px;background:var(--line)}.st:first-child:before{display:none}.st .dot{position:relative;z-index:1;width:28px;height:28px;border-radius:50%;margin:0 auto 6px;display:grid;place-items:center;background:var(--line);color:#fff;font-weight:700;font-size:12px}.st.done .dot,.st.done:before{background:var(--brand)}.st.done{color:var(--ink)}.st.cur .dot{background:var(--accent);box-shadow:0 0 0 4px var(--accent-2)}.st.cur{color:var(--ink);font-weight:600}.st.ret.done .dot,.st.ret.done:before{background:var(--warn)}.wa-phone{background:#ece5dd;border-radius:12px;padding:10px;max-height:360px;overflow:auto}.wa-msg{background:#fff;border-radius:8px;padding:7px 9px;margin-bottom:7px;font-size:12px;box-shadow:0 1px 1px #00000014}.wa-msg .t{font-size:10px;color:var(--muted);text-align:right}.app{max-width:480px;margin:0 auto}.app-head{background:var(--brand);color:#fff;padding:14px;border-radius:14px;margin-bottom:12px}.offbar{background:#4a5560;color:#fff;font-size:13px;padding:8px 12px;border-radius:10px;margin-bottom:10px;display:flex;justify-content:space-between;gap:8px;align-items:center}.ph-kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.ph-kpis div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px}.ph-kpis b{display:block;font-size:18px}.ph-kpis span{font-size:12px;color:var(--muted)}.app-tabs{position:sticky;bottom:0;display:flex;background:#fff;border:1px solid var(--line);border-radius:14px;margin-top:12px}.app-tabs button{flex:1;border:0;background:none;padding:8px 2px 10px;font-size:12px;color:var(--muted);min-height:56px}.app-tabs button .e{display:block;font-size:22px}.app-tabs button.on{color:var(--brand-d);font-weight:700}.tree ul{list-style:none;margin:0;padding-left:20px;border-left:2px dashed var(--line)}.tree>ul{border-left:0;padding-left:0}.tree li{margin:6px 0}.tree .nd{display:inline-flex;gap:8px;align-items:center;padding:5px 10px;border-radius:8px;background:var(--bg);border:1px solid var(--line)}.fun .bar{height:26px;border-radius:6px;background:var(--brand);color:#fff;font-size:12px;display:flex;align-items:center;padding:0 10px;white-space:nowrap;margin-bottom:8px}.ai-fab{position:fixed;right:22px;bottom:18px;z-index:45;width:60px;height:60px;border-radius:50%;border:0;background:var(--brand-d);color:#fff;font-size:26px;box-shadow:0 8px 22px #075c5366}.ai-panel{position:fixed;right:22px;bottom:90px;z-index:50;width:400px;max-width:calc(100vw - 32px);height:560px;max-height:calc(100vh - 120px);background:var(--surface);border-radius:16px;box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line)}.ai-h{background:var(--brand-d);color:#fff;padding:12px 14px;display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.ai-b{flex:1;overflow:auto;padding:12px;background:#f7f9fa}.msg{max-width:88%;padding:8px 11px;border-radius:12px;margin-bottom:8px;white-space:pre-line}.msg.u{margin-left:auto;background:var(--brand);color:#fff;border-bottom-right-radius:3px}.msg.a{background:#fff;border:1px solid var(--line);border-bottom-left-radius:3px}.msg .src{display:block;font-size:10px;color:var(--muted);margin-top:4px}.act{border:1px solid var(--accent);background:var(--accent-2);border-radius:10px;padding:9px;margin:4px 0 8px;font-size:12px}.chips{display:flex;gap:6px;flex-wrap:wrap;padding:8px 12px;border-top:1px solid var(--line)}.chips button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 10px;font-size:12px}.ai-in{display:flex;gap:6px;padding:10px;border-top:1px solid var(--line)}.mobile-nav{display:none;gap:6px;overflow-x:auto;padding:8px 16px;background:var(--surface);border-bottom:1px solid var(--line);scrollbar-width:none;position:sticky;top:var(--top-h, 58px);z-index:20}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav a{white-space:nowrap;padding:8px 12px;border-radius:8px;text-decoration:none;color:var(--ink);background:var(--bg);font-size:13px}.mobile-nav a.active{background:var(--brand-2);color:var(--brand-d);font-weight:600}img,svg{max-width:100%}code{word-break:break-all}@media (max-width: 1100px){nav.side{width:190px}main{padding:18px 18px 90px}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){nav.side{display:none}.mobile-nav{display:flex}.layout{flex-direction:column;min-height:auto}main{padding:16px 16px 96px}.hero,.g2,.g3{grid-template-columns:1fr}.hero{padding:22px}.logo small,.top .who small,.top .sp{display:none}.search{max-width:none}.top .who,.top>.row-btns{margin-left:auto}}@media (max-width: 640px){body{font-size:15px}h2{font-size:18px}.top{gap:8px;padding:8px 12px}.top .sp{display:none}.top .who{margin-left:auto;display:flex;align-items:center;gap:6px}.top .who b{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;vertical-align:middle;font-size:12px}.top>.row-btns{margin-left:auto}.search{order:3;flex:1 1 100%;max-width:none}.mobile-nav{padding:8px 12px;top:0;position:relative}main{padding:12px 12px 100px}.card{padding:14px;border-radius:10px}.page-h{flex-direction:column;align-items:stretch}.page-h>.in,.page-h>select,.page-h>input{width:100%!important;max-width:none!important}.page-h>.row-btns>.btn{flex:1;justify-content:center}.hd{align-items:flex-start}.btn{min-height:40px;padding:8px 14px}.btn.sm{min-height:36px;padding:6px 11px;font-size:13px}.in{min-height:42px;font-size:16px}.check{font-size:14px}.check input{width:20px;height:20px;flex:none}.tabs button{padding:10px 12px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.kpi{padding:10px 12px}.kpi .v{font-size:19px;word-break:break-word}.hero{padding:18px;border-radius:12px}.hero h1{font-size:21px}.cats{flex-wrap:nowrap;overflow-x:auto;margin:12px -12px;padding:0 12px 4px;scrollbar-width:none}.cats::-webkit-scrollbar{display:none}.cat{white-space:nowrap;min-height:38px}.prods{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pc{padding:10px}.pc .img{height:76px;font-size:36px}.pc .nm{font-size:13px;min-height:34px}.pc .row-btns{flex-direction:column}.pc .row-btns .btn{width:100%;justify-content:center}.bigv{font-size:24px}table.rt thead{display:none}table.rt,table.rt tbody,table.rt tr,table.rt td{display:block;width:100%}table.rt tr{border:1px solid var(--line);border-radius:10px;padding:6px 10px;margin-bottom:8px;background:var(--surface)}table.rt td{border:0;padding:6px 0;display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:right}table.rt td:before{content:attr(data-label);font-size:12px;color:var(--muted);font-weight:600;text-align:left;flex:none;max-width:45%}table.rt td[data-label=""]:before{display:none}table.rt td[data-label=""]{justify-content:flex-end}table.rt td>:only-child{margin-left:auto}table.rt td:first-child{font-size:15px}table.rt td .in{max-width:120px}.tw{overflow:visible}table:not(.rt) th,table:not(.rt) td{padding:7px 5px}.stepper .st{min-width:74px;font-size:11px}.modal-bg{padding:0;align-items:flex-end}.modal,.modal.wide{width:100%;max-height:92vh;overflow-y:auto;border-radius:16px 16px 0 0;padding:18px 16px 24px}.cartfab{left:12px;right:84px;bottom:14px;text-align:center;padding:14px}.ai-fab{width:54px;height:54px;right:14px;bottom:14px;font-size:24px}body:has(.app-tabs) .ai-fab{bottom:92px}.ai-panel{top:0;right:0;bottom:0;left:0;width:100%;max-width:none;height:100%;max-height:none;border-radius:0;z-index:70}.ai-panel .ai-h{display:flex;justify-content:space-between;align-items:center;gap:8px}.chips{flex-wrap:nowrap;overflow-x:auto}.chips button{white-space:nowrap}.toasts{left:12px;right:12px;bottom:80px;max-width:none}.app-tabs{position:fixed;left:0;right:0;bottom:0;border-radius:0;border-width:1px 0 0;z-index:35;padding-bottom:env(safe-area-inset-bottom)}.app{padding-bottom:72px}.ph-kpis b{font-size:17px}.fun .bar{font-size:11px}.tree ul{padding-left:12px}.tree .nd{flex-wrap:wrap}}@media (max-width: 380px){.prods,.kpis{grid-template-columns:1fr}.logo{font-size:15px}.logo .mk{width:28px;height:28px}}@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto!important;transition:none!important}}
