.dash *{box-sizing:border-box}.dash{margin:0;font-family:Inter,system-ui,sans-serif;color:#0f172a;background:#f5f7fa}.dash button,.dash input,.dash select,.dash textarea{font-family:inherit;font-size:14px;color:#0f172a}.dash button{cursor:pointer}.dash a{color:inherit}.dash :focus-visible{outline:3px solid #2563EB;outline-offset:2px}.dash{min-height:100vh;background:var(--bg);color:#0f172a;font-size:14px;line-height:1.45;font-family:Inter,system-ui,sans-serif}.dash .num{font-variant-numeric:tabular-nums}.dash .sp{flex:1 1 auto}.dash .shell{display:flex;flex-wrap:wrap;min-height:calc(100vh - 56px)}.dash .side{width:248px;flex:0 0 auto;background:var(--pri);color:var(--pri-ink);padding:18px 12px;display:flex;flex-direction:column;gap:6px}.dash .main{flex:999 1 640px;min-width:0;display:flex;flex-direction:column}.dash .brand{display:flex;gap:12px;align-items:center;padding:4px 8px 16px}.dash .logo{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;flex:0 0 auto}.dash .bn{font-weight:700;font-size:15px;line-height:1.2}.dash .bs{font-size:12px;opacity:.8}.dash .nav{display:flex;flex-direction:column;gap:4px}.dash .nav-i{display:flex;align-items:center;gap:12px;min-height:46px;padding:0 12px;border-radius:10px;border:0;background:transparent;color:var(--pri-ink);font-weight:500;font-size:14px;text-align:left;position:relative}.dash .nav-i:hover{background:#ffffff1a}.dash .nav-i.on{background:#ffffff2e;font-weight:700}.dash .nav-i.on:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:4px;border-radius:0 4px 4px 0;background:var(--acc)}.dash .ni{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.dash .nbadge{margin-left:auto;background:var(--acc);color:var(--acc-ink);border-radius:999px;font-size:12px;font-weight:700;min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}.dash .side-foot{margin-top:auto;font-size:12px;opacity:.7;padding:8px}.dash .top{background:#fff;border-bottom:1px solid var(--line)}.dash .stripe{display:flex;height:6px}.dash .stripe i{display:block;height:6px}.dash .stripe .g{background:#0a7a38;flex:62}.dash .stripe .y{background:#ffc400;flex:26}.dash .stripe .r{background:#d3111b;flex:12}.dash .toprow{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:14px 28px}.dash .crumb{font-size:12px;color:#475569}.dash .ttl{margin:0;font-size:22px;font-weight:700;letter-spacing:-.01em}.dash .chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#f8fafc;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;color:#334155}.dash .user{display:flex;gap:10px;align-items:center}.dash .avatar{width:40px;height:40px;border-radius:50%;background:var(--pri);color:var(--pri-ink);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.dash .un{font-weight:600;font-size:14px;line-height:1.2}.dash .ur{font-size:12px;color:#475569}.dash .content{padding:24px 28px 48px;display:flex;flex-direction:column;gap:20px}.dash .card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.dash .card h2{margin:0 0 4px;font-size:16px;font-weight:700}.dash .card .sub{margin:0 0 14px;color:#475569;font-size:13px}.dash .row{display:flex;flex-wrap:wrap;gap:16px}.dash .col{flex:1 1 320px;min-width:0}.dash .btn{min-height:44px;padding:0 18px;border-radius:10px;border:1px solid #CBD5E1;background:#fff;font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:8px;justify-content:center;text-decoration:none;color:#0f172a}.dash .btn:hover{background:#f1f5f9}.dash .btn.pri{background:var(--acc);color:var(--acc-ink);border-color:transparent}.dash .btn.pri:hover{filter:brightness(.95)}.dash .btn.dark{background:var(--pri);color:var(--pri-ink);border-color:transparent}.dash .btn.danger{color:#a11616;border-color:#f0aeae;background:#fff}.dash .btn.big{min-height:52px;font-size:16px;width:100%}.dash .btn[disabled]{opacity:.5;cursor:not-allowed}.dash .lnkbtn{border:0;background:none;padding:0;font-weight:700;color:var(--pri);text-decoration:underline;text-underline-offset:3px;min-height:32px}.dash .inp{min-height:44px;border:1px solid #94A3B8;border-radius:10px;padding:0 12px;background:#fff;width:100%}.dash textarea.inp{padding:10px 12px;min-height:96px;line-height:1.5;resize:vertical}.dash .inp[disabled]{background:#f1f5f9;color:#475569}.dash label.fl{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#334155}.dash .filters{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end}.dash .filters .fl{min-width:160px}.dash .seg{display:inline-flex;border:1px solid #94A3B8;border-radius:10px;overflow:hidden;background:#fff}.dash .seg button{border:0;background:#fff;min-height:42px;padding:0 16px;font-weight:600;color:#334155;border-right:1px solid #CBD5E1}.dash .seg button:last-child{border-right:0}.dash .seg button.on{background:var(--pri);color:var(--pri-ink)}.dash .chk{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:600;color:#334155}.dash .chk input{width:20px;height:20px;accent-color:var(--pri)}.dash .kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.dash .kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:6px}.dash .kpi .kl{display:flex;gap:8px;align-items:center;font-size:13px;font-weight:600;color:#334155}.dash .kpi .kv{font-size:32px;font-weight:700;letter-spacing:-.02em;line-height:1.1}.dash .kpi .ks{font-size:13px;color:#475569}.dash .kico{width:34px;height:34px;border-radius:10px;background:#eef2f7;color:var(--pri);display:inline-flex;align-items:center;justify-content:center}.dash .kico svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.dash .pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px 4px 8px;font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap}.dash .pi{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.dash .st-reg{background:#e3e9f1;color:#2f4157}.dash .st-emb{background:#dcebff;color:#174a9c}.dash .st-cha{background:#ebe1fb;color:#5b2aa5}.dash .st-rou{background:#ffe9cc;color:#7a4200}.dash .st-arr{background:#d5f3f1;color:#0b5f5a}.dash .st-rem{background:#d8f2e1;color:#11623a}.dash .st-lit{background:#fddcdc;color:#a11616}.dash .st-ann{background:#e5e7eb;color:#4b5563}.dash .st-tra{background:#fff2b3;color:#6b5300}.dash .off{display:inline-flex;align-items:center;gap:4px;border:1px dashed #64748B;border-radius:6px;padding:1px 6px;font-size:11px;font-weight:700;color:#334155;background:#fff}.dash .wrapx{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:12px}.dash .tbl{min-width:var(--minw,900px)}.dash .tr{display:grid;grid-template-columns:var(--cols);gap:12px;align-items:center;min-height:48px;padding:0 16px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.dash .tr:last-child{border-bottom:0}.dash .tr.h{background:var(--pri);color:var(--pri-ink);min-height:44px;font-size:12px;font-weight:600;letter-spacing:.02em}.dash .tr.sel{background:#eef4fb}.dash .tr.bad{background:#fff1f1}.dash .td{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash .td.r,.dash .r{text-align:right}.dash .td.mut{color:#475569}.dash .neg{color:#a11616;font-weight:700}.dash .tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--line)}.dash .tab{border:0;background:none;padding:0 18px;min-height:46px;font-weight:600;color:#475569;border-bottom:3px solid transparent}.dash .tab.on{color:#0f172a;border-bottom-color:var(--acc)}.dash .sw{width:50px;height:28px;border-radius:14px;border:0;background:#64748b;position:relative;flex:0 0 auto;padding:0}.dash .sw:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:left .15s}.dash .sw.on{background:#0f7a3e}.dash .sw.on:after{left:25px}.dash .swl{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:13px;color:#334155}.dash .tl{display:flex;flex-direction:column}.dash .tli{display:flex;gap:14px;position:relative;padding-bottom:20px}.dash .tli:before{content:"";position:absolute;left:17px;top:36px;bottom:0;width:2px;background:#cbd5e1}.dash .tli:last-child{padding-bottom:0}.dash .tli:last-child:before{display:none}.dash .tdot{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.dash .tdot svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.dash .tdot.last{box-shadow:0 0 0 4px #fff,0 0 0 6px currentColor}.dash .tt{font-weight:600}.dash .tm{font-size:13px;color:#475569}.dash .kvl{display:flex;flex-direction:column}.dash .kvr{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid #EEF2F7}.dash .kvr:last-child{border-bottom:0}.dash .kvr dt,.dash .kvr .k{color:#475569;font-size:13px}.dash .kvr dd,.dash .kvr .v{margin:0;font-weight:600;text-align:right}.dash .photo{height:110px;border-radius:10px;border:1px dashed #94A3B8;background:repeating-linear-gradient(45deg,#f1f5f9,#f1f5f9 10px,#e8edf3 10px,#e8edf3 20px);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#475569}.dash .banner{display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:12px;font-weight:600}.dash .banner.ok{background:#e3f6ea;color:#0f5a33;border:1px solid #A9DFBF}.dash .banner.warn{background:#fff1db;color:#7a4200;border:1px solid #F5CE95}.dash .banner.err{background:#fde7e7;color:#8f1414;border:1px solid #F0AEAE}.dash .sk{background:linear-gradient(90deg,#e6ebf2,#f4f7fa,#e6ebf2);background-size:200% 100%;animation:skm 1.3s infinite linear;border-radius:10px}@keyframes skm{0%{background-position:200% 0}to{background-position:-200% 0}}.dash .bars{display:flex;align-items:flex-end;gap:14px;height:220px;padding-top:8px}.dash .bcol{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;height:100%}.dash .bar{width:100%;max-width:56px;border-radius:8px 8px 0 0;background:var(--pri)}.dash .bar.today{background:var(--acc)}.dash .bv{font-weight:700;font-size:13px}.dash .bd{font-size:12px;color:#475569}.dash .rk{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 60px 120px;gap:12px;align-items:center;min-height:44px}.dash .rkb{height:10px;border-radius:6px;background:#e6ebf2;overflow:hidden}.dash .rkb i{display:block;height:10px;background:var(--pri);border-radius:6px}.dash .todo{display:flex;align-items:center;gap:12px;width:100%;text-align:left;min-height:56px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 14px}.dash .todo:hover{background:#f8fafc}.dash .todo .cn{min-width:34px;height:34px;border-radius:10px;background:#ffe9cc;color:#7a4200;display:flex;align-items:center;justify-content:center;font-weight:700}.dash .adm{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}.dash .subnav{flex:0 0 230px;display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px}.dash .subnav button{border:0;background:none;text-align:left;min-height:44px;padding:0 12px;border-radius:8px;font-weight:600;color:#334155}.dash .subnav button.on{background:#eef2f7;color:#0f172a;box-shadow:inset 3px 0 0 var(--acc)}.dash .admc{flex:1 1 560px;min-width:0;display:flex;flex-direction:column;gap:16px}.dash .mod{flex:1 1 240px;border:1px solid var(--line);border-radius:14px;padding:18px;background:#fff;display:flex;flex-direction:column;gap:10px}.dash .tab.dis{opacity:.5;cursor:not-allowed}.dash .chipv{border:1px solid #94A3B8;background:#fff;border-radius:8px;min-height:36px;padding:0 10px;font-weight:600;font-size:13px;font-family:ui-monospace,Consolas,monospace}.dash .stop{display:flex;align-items:center;gap:10px;min-height:44px}.dash .stopn{width:28px;height:28px;border-radius:50%;background:var(--pri);color:var(--pri-ink);font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.dash .ticket{width:300px;max-width:100%;background:#fff;border:1px solid #CBD5E1;border-radius:6px;padding:16px;font-size:12px;box-shadow:0 6px 20px #0f172a14}.dash .bc{height:34px;background:repeating-linear-gradient(90deg,#0f172a 0,#0f172a 2px,#fff 2px,#fff 4px,#0f172a 4px,#0f172a 5px,#fff 5px,#fff 8px,#0f172a 8px,#0f172a 11px,#fff 11px,#fff 12px)}.dash .lbl-et{border:2px solid #0F172A;border-radius:8px;padding:16px;background:#fff}.dash .toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:#0b1220;color:#fff;padding:14px 20px;border-radius:12px;font-weight:600;box-shadow:0 10px 30px #0000004d;z-index:50;max-width:90vw}@media (max-width:1100px){.dash .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dash .side{width:72px;padding:14px 8px}.dash .side .lbl{display:none}.dash .side .nav-i{justify-content:center;padding:0}.dash .side .nbadge{position:absolute;top:2px;right:2px;margin:0}.dash .side .brand{padding:4px 0 12px;justify-content:center}.dash .nav-i.on:before{left:-8px}.dash .toprow,.dash .content{padding-left:20px;padding-right:20px}}@media (max-width:760px){.dash .side{width:100%;flex-direction:row;overflow-x:auto;padding:8px}.dash .side .brand,.dash .side .side-foot{display:none}.dash .nav{flex-direction:row}.dash .nav-i{flex:0 0 auto;min-width:48px}.dash .kpis{grid-template-columns:minmax(0,1fr)}.dash .nav-i.on:before{display:none}.dash .rk{grid-template-columns:minmax(0,1fr) 60px}.dash .rk .rkb,.dash .rk .rkc{display:none}}.dash .btn{width:auto}.dash .btn.big{width:100%}.dash .bar{display:block;min-height:0;padding:0;gap:0;color:inherit}.dash .kpi{flex:initial;text-align:left}.dash .chk{width:auto;height:auto;border:0;border-radius:0;background:none;flex:initial;justify-content:flex-start}.dash .card{display:block}.dash .row{align-items:stretch}.dash .chip{min-height:0}.dash h1,.dash h2,.dash h3{margin-top:0}.mob *{box-sizing:border-box}.mob{margin:0;font-family:Inter,system-ui,sans-serif}.mob button,.mob input,.mob textarea,.mob select{font-family:inherit;font-size:17px;color:#0f172a}.mob button{cursor:pointer}.mob :focus-visible{outline:3px solid #2563EB;outline-offset:2px}.mob{width:360px;height:800px;position:relative;overflow:hidden;background:#f5f7fa;color:#0f172a;display:flex;flex-direction:column;font-size:16px;line-height:1.4}.mob .conn{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;font-size:14px;font-weight:700;border:0;width:100%;text-align:left;flex:0 0 auto}.mob .c-online{background:#d8f2e1;color:#0f5a33}.mob .c-offline{background:#ffe9cc;color:#7a4200}.mob .c-sync{background:#dcebff;color:#174a9c}.mob .c-uptodate{background:#d8f2e1;color:#0f5a33}.mob .ic{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.mob .stripe{display:flex;height:5px;flex:0 0 auto}.mob .stripe i{display:block;height:5px}.mob .bar{display:flex;align-items:center;gap:6px;min-height:56px;padding:0 8px 0 6px;background:var(--pri);color:var(--pri-ink);flex:0 0 auto}.mob .bar h1{margin:0;font-size:19px;font-weight:700;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mob .ib{width:48px;height:48px;border-radius:12px;border:0;background:transparent;color:inherit;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.mob .ib svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.mob .av{width:40px;height:40px;border-radius:50%;background:var(--acc);color:var(--acc-ink);font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}.mob .body{flex:1 1 auto;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px}.mob .foot{flex:0 0 auto;padding:10px 16px 14px;background:#fff;border-top:1px solid #E2E8F0;display:flex;gap:10px}.mob .card{background:#fff;border:1px solid #E2E8F0;border-radius:16px;padding:16px}.mob .btn{min-height:56px;border-radius:14px;border:1px solid #94A3B8;background:#fff;font-weight:700;font-size:17px;padding:0 16px;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;color:#0f172a}.mob .btn.pri{background:var(--acc);color:var(--acc-ink);border-color:transparent}.mob .btn.dark{background:var(--pri);color:var(--pri-ink);border-color:transparent}.mob .btn.red{background:#fff;color:#a11616;border-color:#e9a3a3}.mob .btn[disabled]{opacity:.45}.mob .btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.mob .act{display:flex;gap:14px;align-items:center;min-height:76px;width:100%;text-align:left;border-radius:16px;border:1px solid #CBD5E1;background:#fff;padding:0 16px}.mob .act.pri{background:var(--acc);color:var(--acc-ink);border-color:transparent}.mob .act b{display:block;font-size:19px}.mob .act small{display:block;font-size:14px;opacity:.9}.mob .aic{width:44px;height:44px;border-radius:12px;background:#eef2f7;color:var(--pri);display:flex;align-items:center;justify-content:center;flex:0 0 auto}.mob .act.pri .aic{background:#ffffff59;color:inherit}.mob .aic svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.mob .lab{font-weight:700;font-size:15px;color:#334155;display:flex;flex-direction:column;gap:6px}.mob .inp{min-height:56px;border:2px solid #94A3B8;border-radius:12px;padding:0 14px;width:100%;background:#fff}.mob textarea.inp{padding:12px 14px;min-height:96px}.mob .chips{display:flex;flex-wrap:wrap;gap:8px}.mob .chip{min-height:48px;padding:0 16px;border-radius:12px;border:2px solid #94A3B8;background:#fff;font-weight:700;font-size:16px}.mob .chip.on{background:var(--pri);color:var(--pri-ink);border-color:var(--pri)}.mob .pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px 4px 8px;font-size:13px;font-weight:700;white-space:nowrap}.mob .pi{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.mob .st-reg{background:#e3e9f1;color:#2f4157}.mob .st-emb{background:#dcebff;color:#174a9c}.mob .st-cha{background:#ebe1fb;color:#5b2aa5}.mob .st-rou{background:#ffe9cc;color:#7a4200}.mob .st-arr{background:#d5f3f1;color:#0b5f5a}.mob .st-rem{background:#d8f2e1;color:#11623a}.mob .st-lit{background:#fddcdc;color:#a11616}.mob .st-ann{background:#e5e7eb;color:#4b5563}.mob .toast{position:absolute;left:12px;right:12px;top:100px;z-index:20;border-radius:14px;padding:14px 16px;font-weight:700;display:flex;gap:10px;align-items:flex-start;box-shadow:0 8px 24px #0f172a40}.mob .t-ok{background:#d8f2e1;color:#0f5a33;border:2px solid #7FCB9B}.mob .t-err{background:#fde7e7;color:#8f1414;border:2px solid #EE9B9B}.mob .msg{border-radius:14px;padding:14px;display:flex;gap:10px;font-weight:600}.mob .m-ok{background:#d8f2e1;color:#0f5a33}.mob .m-err{background:#fde7e7;color:#8f1414}.mob .m-warn{background:#fff1db;color:#7a4200}.mob .m-info{background:#e8f0fb;color:#174a9c}.mob .prog{display:flex;gap:6px}.mob .prog i{flex:1;height:8px;border-radius:4px;background:#cbd5e1}.mob .prog i.on{background:var(--acc)}.mob .row{display:flex;gap:10px;align-items:center}.mob .sp{flex:1}.mob .li{display:flex;gap:12px;align-items:center;min-height:64px;width:100%;text-align:left;background:#fff;border:1px solid #E2E8F0;border-radius:14px;padding:8px 12px}.mob .big{font-size:30px;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.mob .num{font-variant-numeric:tabular-nums}.mob .mut{color:#475569;font-size:14px}.mob .chk{width:30px;height:30px;border-radius:8px;border:2px solid #64748B;background:#fff;flex:0 0 auto;display:flex;align-items:center;justify-content:center}.mob .chk.on{background:var(--pri);border-color:var(--pri);color:var(--pri-ink)}.mob .chk svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}.mob .kp{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mob .kp button{min-height:56px;border-radius:12px;border:1px solid #94A3B8;background:#fff;font-size:24px;font-weight:700}.mob .code{display:flex;gap:8px;justify-content:center}.mob .code span{width:46px;height:60px;border:2px solid #94A3B8;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700}.mob .code span.f{border-color:var(--pri)}.mob .ticket{background:#fff;border:1px solid #CBD5E1;padding:14px;font-size:13px;box-shadow:0 4px 14px #0f172a1a;display:flex;flex-direction:column;gap:6px}.mob .ticket .r{display:flex;justify-content:space-between;gap:10px}.mob .qr{display:grid;grid-template-columns:repeat(11,1fr);width:88px;height:88px;gap:0;background:#fff}.mob .qr i{display:block;background:#fff}.mob .qr i.k{background:#0f172a}.mob .cam{flex:1;background:#0b1220;border-radius:16px;position:relative;min-height:300px;display:flex;align-items:center;justify-content:center;background-image:radial-gradient(circle at 50% 40%,#1e293b,#0b1220)}.mob .vf{width:220px;height:220px;position:relative}.mob .vf i{position:absolute;width:40px;height:40px;border:5px solid #fff}.mob .vf .a{left:0;top:0;border-right:0;border-bottom:0;border-radius:12px 0 0}.mob .vf .b{right:0;top:0;border-left:0;border-bottom:0;border-radius:0 12px 0 0}.mob .vf .c{left:0;bottom:0;border-right:0;border-top:0;border-radius:0 0 0 12px}.mob .vf .d{right:0;bottom:0;border-left:0;border-top:0;border-radius:0 0 12px}.mob .photo{height:110px;border-radius:12px;border:2px dashed #94A3B8;background:repeating-linear-gradient(45deg,#f1f5f9,#f1f5f9 10px,#e8edf3 10px,#e8edf3 20px);display:flex;align-items:center;justify-content:center;font-weight:700;color:#475569}.mob .sw{width:56px;height:32px;border-radius:16px;border:0;background:#64748b;position:relative;flex:0 0 auto;padding:0}.mob .sw:after{content:"";position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:50%;background:#fff}.mob .sw.on{background:#0f7a3e}.mob .sw.on:after{left:28px}.mob h2.t{margin:0;font-size:18px}.mob .tabs{display:flex;align-items:center;background:#fff;border-top:1px solid #E2E8F0;flex:0 0 auto;padding:2px 4px 6px}.mob .tab{flex:1;min-height:56px;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:13px;font-weight:600;color:#475569}.mob .tab svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.mob .tab.on{color:var(--pri);font-weight:700}.mob .tab.fab{flex:0 0 72px}.mob .tab.fab i{width:54px;height:54px;border-radius:50%;background:var(--acc);color:var(--acc-ink);display:flex;align-items:center;justify-content:center;margin-top:-20px;box-shadow:0 4px 12px #0f172a47}.mob .tab.fab svg{width:28px;height:28px;stroke-width:2.6}.mob .kpi{flex:1;border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:4px;text-align:left;border:0;min-height:116px}.mob .sheetbg{position:absolute;left:0;right:0;top:0;bottom:0;background:#0f172a80;z-index:30;display:flex;align-items:flex-end}.mob .sheet{background:#fff;border-radius:20px 20px 0 0;width:100%;max-height:72%;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:6px}.mob .row>*,.mob .li>*,.mob .kpi>*,.mob .card>*{min-width:0}.mob .li b,.mob .li .mut,.mob .card b,.mob .card .mut,.mob .kpi span{overflow-wrap:anywhere}.mob .pill{flex:none;white-space:nowrap}.mob .kpi{min-width:0;overflow:hidden}.mob .kpi .big{line-height:1.15}.mob .li>.sp,.mob .li>span:first-child{flex:1 1 0}.mob .cut{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.mob .bar2{height:8px;border-radius:4px;background:#e2e8f0;overflow:hidden}.mob .bar2 i{display:block;height:8px;background:var(--pri)}.mob{width:100%;height:100dvh;max-width:560px;margin:0 auto;overflow:hidden}.mob .body{overflow-y:auto}.mob .sheetbg{position:fixed}.mob video.camv{width:100%;height:100%;object-fit:cover;border-radius:16px;position:absolute;top:0;right:0;bottom:0;left:0}:root{--pri:#0A7A38;--pri-ink:#fff;--acc:#FFC400;--acc-ink:#1a1400;--bg:#F5F7FA;--line:#E2E8F0;--txt:#0F172A }*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#e9eef4;color:var(--txt);font:16px/1.4 Inter,system-ui,Segoe UI,sans-serif}button,input,textarea,select{font-family:inherit;font-size:17px;color:#0f172a}button{cursor:pointer}:focus-visible{outline:3px solid #2563EB;outline-offset:2px}.ph{width:100%;max-width:520px;min-height:100vh;margin:0 auto;position:relative;display:flex;flex-direction:column;background:var(--bg);box-shadow:0 0 40px #0f172a1f}.conn{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;font-size:14px;font-weight:700;border:0;width:100%;text-align:left}.c-online{background:#d8f2e1;color:#0f5a33}.c-offline{background:#ffe9cc;color:#7a4200}.ic{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.stripe{display:flex;height:5px}.stripe i{display:block;height:5px}.bar{display:flex;align-items:center;gap:6px;min-height:56px;padding:0 8px 0 6px;background:var(--pri);color:var(--pri-ink)}.bar h1{margin:0 0 0 10px;font-size:19px;font-weight:700;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ib{width:48px;height:48px;border-radius:12px;border:0;background:transparent;color:inherit;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.ib svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.av{width:40px;height:40px;border-radius:50%;background:var(--acc);color:var(--acc-ink);font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}.body{flex:1 1 auto;padding:16px;display:flex;flex-direction:column;gap:14px}.foot{position:sticky;bottom:0;padding:10px 16px 14px;background:#fff;border-top:1px solid #E2E8F0;display:flex;gap:10px}.foot .btn{flex:1}.card{background:#fff;border:1px solid #E2E8F0;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px}.btn{min-height:56px;border-radius:14px;border:1px solid #94A3B8;background:#fff;font-weight:700;font-size:17px;padding:0 16px;display:flex;align-items:center;justify-content:center;gap:10px;width:100%}.btn.pri{background:var(--acc);color:var(--acc-ink);border-color:transparent}.btn.dark{background:var(--pri);color:var(--pri-ink);border-color:transparent}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.act{display:flex;gap:14px;align-items:center;min-height:76px;width:100%;text-align:left;border-radius:16px;border:1px solid #CBD5E1;background:#fff;padding:0 16px}.act.pri{background:var(--acc);color:var(--acc-ink);border-color:transparent}.act b{display:block;font-size:19px}.act small{display:block;font-size:14px;opacity:.9}.aic{width:44px;height:44px;border-radius:12px;background:#eef2f7;color:var(--pri);display:flex;align-items:center;justify-content:center;flex:0 0 auto}.act.pri .aic{background:#ffffff59;color:inherit}.aic svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.lab{font-weight:700;font-size:15px;color:#334155;display:flex;flex-direction:column;gap:6px}.inp{min-height:56px;border:2px solid #94A3B8;border-radius:12px;padding:0 14px;width:100%;background:#fff}.inp[readonly]{background:#eef2f7}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:48px;padding:0 16px;border-radius:12px;border:2px solid #94A3B8;background:#fff;font-weight:700;font-size:16px}.chip.on{background:var(--pri);color:var(--pri-ink);border-color:var(--pri)}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700;white-space:nowrap}.st-ok{background:#d8f2e1;color:#11623a}.st-reg{background:#e3e9f1;color:#2f4157}.st-warn{background:#ffe9cc;color:#7a4200}.msg{border-radius:14px;padding:14px;display:flex;gap:10px;font-weight:600}.m-ok{background:#d8f2e1;color:#0f5a33}.m-err{background:#fde7e7;color:#8f1414}.m-warn{background:#fff1db;color:#7a4200}.m-info{background:#e8f0fb;color:#174a9c}.prog{display:flex;gap:6px}.prog i{flex:1;height:8px;border-radius:4px;background:#cbd5e1}.prog i.on{background:var(--acc)}.row{display:flex;gap:10px;align-items:center}.sp{flex:1}.li{display:flex;gap:12px;align-items:center;min-height:64px;width:100%;text-align:left;background:#fff;border:1px solid #E2E8F0;border-radius:14px;padding:8px 12px}.big{font-size:30px;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.num{font-variant-numeric:tabular-nums}.mut{color:#475569;font-size:14px}.kpi{flex:1;border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:2px;text-align:left;border:0}.kv{list-style:none;padding:0;margin:0}.kv li{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.t{margin:0;font-size:17px}.menu{position:absolute;right:8px;top:96px;z-index:20;background:#fff;border:1px solid #CBD5E1;border-radius:14px;padding:8px;box-shadow:0 8px 24px #0f172a33;min-width:220px}.menu div{padding:8px 12px}.menu .btn{min-height:48px}.apercu{background:#fff;border:1px solid #CBD5E1;padding:14px 8px;box-shadow:0 4px 14px #0f172a1a;display:flex;flex-direction:column;gap:12px;align-items:center;overflow-x:auto}.pg{width:72mm;background:#fff;color:#000;font:700 12.5px/1.35 Courier New,ui-monospace,monospace;padding:2mm 0;border:1px dashed #94A3B8}.pg hr{border:0;border-top:2px dashed #000;margin:6px 0}.pg .c{text-align:center}.pg .g{font-size:16px}.pg .n{font-size:23px;letter-spacing:1px}.pg .e{font-size:14px}.pg .r{display:flex;justify-content:space-between;gap:6px}.pg .tot{display:flex;justify-content:space-between;font-size:15px}.pg .box{border:2px solid #000;padding:3px 4px;margin-top:4px}.pg .coupe{text-align:center;font-size:11px;margin-top:4px}.pg.etiq .dest{font-size:26px;line-height:1.1;text-align:center;margin:4px 0}.pg.etiq .n{font-size:30px}.pg .sign{height:34px;border-bottom:2px solid #000;margin-top:8px}.zone-impression{display:none}@media print{@page{size:80mm auto;margin:2mm}html,body{background:#fff;margin:0}body>*:not(.zone-impression){display:none!important}.zone-impression{display:block}.zone-impression .apercu{border:0;box-shadow:none;padding:0;display:block;overflow:visible;max-height:none}.zone-impression .pg{border:0;width:72mm;padding:0;break-after:page;page-break-after:always}.zone-impression .pg.saut-non,.zone-impression .pg:last-of-type{break-after:auto;page-break-after:auto}.zone-impression .pg.ignore{display:none}}.pc{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}.pc .bar{padding:0 12px 0 16px;gap:16px}.pc .bar h1{margin:0;flex:0 1 auto}.bar-sub{font-weight:500;opacity:.85;font-size:16px}.onglets{display:flex;gap:4px;flex:1;justify-content:center}.onglets button{background:transparent;color:var(--pri-ink);border:0;border-radius:10px;min-height:40px;padding:0 16px;font-weight:700;font-size:15px;opacity:.85}.onglets button.on{background:var(--acc);color:var(--acc-ink);opacity:1}.onglets button:hover{opacity:1}.mise{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;padding:16px;align-items:start;flex:1}.col-g{display:flex;flex-direction:column;gap:12px;position:sticky;top:16px}.col-c{min-width:0}.vente{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) 340px;gap:16px;align-items:start}.zone-c{display:flex;flex-direction:column;gap:16px;position:sticky;top:16px}.deux-ch{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}.btn.grand{min-height:64px;font-size:19px}.chip.petit{min-height:36px;padding:0 12px;font-size:14px}.etroit{max-width:520px}.centre-page{max-width:480px;margin:15vh auto;display:flex;flex-direction:column;gap:12px;padding:16px}.tab{width:100%;border-collapse:collapse;font-size:15px}.tab th{text-align:left;background:var(--pri);color:var(--pri-ink);padding:10px 12px;font-size:14px}.tab th:first-child{border-radius:10px 0 0}.tab th:last-child{border-radius:0 10px 0 0}.tab td{padding:10px 12px;border-bottom:1px solid var(--line);height:48px}.tab tr:hover td{background:#f8fafc}.tab .d{text-align:right}.cloture{display:grid;grid-template-columns:minmax(0,560px) auto;gap:16px;align-items:start}.cloture .row .btn{flex:1}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:grid;place-items:center;padding:16px;z-index:30}.modal-boite{background:#fff;border-radius:16px;padding:18px;max-height:94vh;overflow:auto;display:flex;flex-direction:column;gap:14px;width:min(560px,100%)}.modal-boite .apercu{max-height:56vh;overflow:auto}.pc .menu{top:100px}@media (max-width:1380px){.vente{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.zone-c{grid-column:1 / -1;position:static;display:grid;grid-template-columns:1fr 1fr}}@media (max-width:1100px){.mise{grid-template-columns:1fr}.col-g{position:static;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.cloture{grid-template-columns:1fr}}@media (max-width:760px){.vente,.zone-c,.deux-ch{grid-template-columns:1fr}.onglets{overflow-x:auto;justify-content:flex-start}.bar-sub{display:none}}.qr svg{width:100%;height:100%;display:block}.qrl{display:flex;justify-content:center;margin:4px 0}.lots{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.pile{display:flex;flex-direction:column;gap:16px}.inp.scan{font-size:20px;letter-spacing:1px;border-color:var(--pri)}.li.sel{border:2px solid var(--pri);background:#f0faf4}@media (max-width:1000px){.lots{grid-template-columns:1fr}}.chk{width:30px;height:30px;border-radius:8px;border:2px solid #64748B;background:#fff;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-weight:900}.chk.on{background:var(--pri);border-color:var(--pri);color:var(--pri-ink)}.admin{padding:16px;display:flex;flex-direction:column;gap:16px}.inp.fin{min-height:40px;border-width:1px;padding:0 10px;font-size:15px}.grille5{display:grid;grid-template-columns:120px 1.4fr 1fr 170px 1fr;gap:10px}.tab tr.alerte td{background:#fff7e6}@media (max-width:1000px){.grille5{grid-template-columns:1fr 1fr}}
