:root{--bg: #f1f2f9;--card: #ffffff;--card-2: #f7f8fd;--ink: #0e1a3d;--ink-2: #3a4468;--muted: #7079a0;--line: #e6e8f3;--brand: #2e56c9;--brand-ink: #1f3fa0;--brand-soft: #e8edfc;--violet: #7c5ce0;--violet-soft: #efe9fc;--orange: #ff7a1a;--orange-soft: #fff0e2;--ok: #12a577;--ok-soft: #dcf5ec;--warn: #d89a06;--warn-soft: #fff4d6;--bad: #e5484d;--bad-soft: #ffe6e7;--teal: #0e9db0;--teal-soft: #d9f3f6;--sky: #2a9de8;--sky-soft: #dff1fd;--pink: #d6449f;--pink-soft: #fde5f4;--slate: #56617f;--slate-soft: #e9ecf4;--neutral: #5b6488;--neutral-soft: #eceef6;--shadow: 0 1px 2px rgba(20, 30, 80, .04), 0 10px 30px -12px rgba(30, 45, 110, .14);--shadow-lg: 0 24px 60px -20px rgba(20, 30, 90, .35);--hero: linear-gradient(135deg, #2b4fc4 0%, #5548dc 42%, #b24ed8 78%, #ff7a5f 112%);--radius: 26px;--radius-md: 16px;--radius-sm: 11px;--font: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--sidebar: 268px;color-scheme:light}[data-theme=dark]{--bg: #0b0f22;--card: #141a35;--card-2: #1a2142;--ink: #eef0fb;--ink-2: #c3c9e6;--muted: #8b94bd;--line: #242c52;--brand: #6f8dff;--brand-ink: #a9bbff;--brand-soft: #1f2a5c;--violet: #a48bff;--violet-soft: #2a2358;--orange: #ff8f3d;--orange-soft: #3a2616;--ok: #37d3a0;--ok-soft: #123a30;--warn: #f5be3a;--warn-soft: #3a3010;--bad: #ff6b70;--bad-soft: #401d24;--teal: #45cfe0;--teal-soft: #11373f;--sky: #59b8f5;--sky-soft: #143246;--pink: #f070c2;--pink-soft: #40173a;--slate: #a3adcf;--slate-soft: #232a4a;--neutral: #a3adcf;--neutral-soft: #232a4a;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 12px 32px -14px rgba(0, 0, 0, .6);--shadow-lg: 0 24px 60px -20px rgba(0, 0, 0, .8);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:14.5px;line-height:1.5;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1,"cv11" 1}h1,h2,h3,h4,p{margin:0}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;padding:0}input,select,textarea{font:inherit;color:inherit}a{color:var(--brand);text-decoration:none}.icon{flex:none}::selection{background:var(--brand);color:#fff}:focus-visible{outline:2.5px solid var(--brand);outline-offset:2px;border-radius:8px}.num{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.row{display:flex;align-items:center;gap:10px}.col{display:flex;flex-direction:column}.grow{flex:1;min-width:0}.trunc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wrap{flex-wrap:wrap}.right{margin-left:auto}.strong{font-weight:700}.small{font-size:12.5px}.tiny{font-size:11.5px}.shell{display:flex;min-height:100%;padding:16px;gap:20px}.sidebar{position:sticky;top:16px;align-self:flex-start;width:var(--sidebar);flex:none;height:calc(100vh - 32px);background:var(--card);border-radius:32px;box-shadow:var(--shadow);display:flex;flex-direction:column;padding:22px 14px 14px;z-index:40}.brand{display:flex;align-items:center;gap:12px;padding:0 10px 18px}.brand-logo{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#2e56c9,#7c5ce0);display:grid;place-items:center;position:relative;box-shadow:0 8px 20px -6px #4646dc99}.brand-logo:after{content:"";position:absolute;top:-3px;right:-3px;width:12px;height:12px;border-radius:50%;background:var(--orange);border:2.5px solid var(--card)}.brand-name{font-weight:800;font-size:19px;letter-spacing:-.02em;line-height:1.1}.brand-sub{font-size:11px;color:var(--muted);letter-spacing:.02em}.nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:4px 2px 12px;margin:0 -4px;scrollbar-width:thin}.nav-label{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:16px 14px 6px}.nav-item{display:flex;align-items:center;gap:13px;width:100%;padding:11px 14px;border-radius:16px;color:var(--ink-2);font-weight:600;transition:background .15s,color .15s;text-align:left}.nav-item:hover{background:var(--card-2);color:var(--ink)}.nav-item.active{background:var(--brand-soft);color:var(--brand)}[data-theme=dark] .nav-item.active{color:var(--brand-ink)}.nav-item .icon{opacity:.85}.nav-item .chev{margin-left:auto;transition:transform .2s;opacity:.6}.nav-item.open .chev{transform:rotate(180deg)}.nav-count{margin-left:auto;min-width:22px;height:22px;padding:0 7px;border-radius:99px;font-size:11.5px;font-weight:800;display:grid;place-items:center;background:var(--orange);color:#fff;box-shadow:0 4px 10px -3px #ff7a1a99}.nav-item.open .nav-count{margin-left:0}.subnav{margin:2px 0 6px 20px;padding:6px;background:var(--card-2);border-radius:18px;display:grid;gap:2px}.subnav a{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:12px;color:var(--ink-2);font-weight:600;font-size:13.5px}.subnav a:hover{background:var(--card);color:var(--ink)}.subnav a.active{background:var(--card);color:var(--brand);box-shadow:var(--shadow)}.subnav .mini{font-size:11.5px;font-weight:800;color:var(--muted)}.subnav a.active .mini{color:var(--brand)}.side-foot{border-top:1px solid var(--line);padding-top:12px;margin-top:6px;display:flex;align-items:center;gap:10px}.main{flex:1;min-width:0;padding:6px 8px 40px 0}.topbar{display:flex;align-items:center;gap:14px;margin-bottom:22px;min-height:64px}.page-title{font-size:30px;font-weight:800;letter-spacing:-.03em;line-height:1.15}.page-sub{color:var(--muted);margin-top:3px}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.chip-btn{height:46px;padding:0 16px;border-radius:16px;background:var(--card);display:inline-flex;align-items:center;gap:9px;font-weight:600;box-shadow:var(--shadow);color:var(--ink-2);transition:transform .12s}.chip-btn:hover{transform:translateY(-1px);color:var(--ink)}.icon-btn{width:46px;height:46px;padding:0;justify-content:center;position:relative}.icon-btn .dot{position:absolute;top:-5px;right:-5px;min-width:21px;height:21px;padding:0 6px;border-radius:99px;background:var(--orange);color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;border:2.5px solid var(--bg)}.menu-btn,.scrim{display:none}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.card.flush{padding:0;overflow:hidden}.card-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}.card-title{font-size:19px;font-weight:800;letter-spacing:-.02em}.card-sub{color:var(--muted);font-size:13px;margin-top:2px}.grid{display:grid;gap:20px}.g-kpi{grid-template-columns:repeat(4,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1fr) 380px;align-items:start}.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border-radius:14px;font-weight:700;background:var(--card-2);color:var(--ink);transition:transform .12s,box-shadow .15s,background .15s,opacity .15s;white-space:nowrap}.btn:hover{transform:translateY(-1px);background:var(--brand-soft)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.primary{background:linear-gradient(135deg,#2e56c9,#5b4bdb);color:#fff;box-shadow:0 10px 22px -10px #3c46dcbf}.btn.primary:hover{background:linear-gradient(135deg,#274bb8,#4f3fd0)}.btn.accent{background:var(--orange);color:#fff;box-shadow:0 10px 22px -10px #ff7a1acc}.btn.accent:hover{background:#f26f0e}.btn.ok{background:var(--ok);color:#fff}.btn.ok:hover{background:#0e9468}.btn.danger{background:var(--bad-soft);color:var(--bad)}.btn.danger:hover{background:var(--bad);color:#fff}.btn.ghost{background:transparent}.btn.ghost:hover{background:var(--card-2)}.btn.sm{height:34px;padding:0 13px;border-radius:11px;font-size:13px}.btn.block{width:100%}.spin{width:16px;height:16px;border-radius:50%;border:2.5px solid currentColor;border-right-color:transparent;animation:rot .7s linear infinite}@keyframes rot{to{transform:rotate(360deg)}}.badge{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 11px;border-radius:99px;font-size:12px;font-weight:700;white-space:nowrap;background:var(--neutral-soft);color:var(--neutral)}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge.nodot:before{display:none}.t-brand{background:var(--brand-soft);color:var(--brand)}[data-theme=dark] .t-brand{color:var(--brand-ink)}.t-ok{background:var(--ok-soft);color:var(--ok)}.t-warn{background:var(--warn-soft);color:var(--warn)}.t-bad{background:var(--bad-soft);color:var(--bad)}.t-orange{background:var(--orange-soft);color:var(--orange)}.t-violet{background:var(--violet-soft);color:var(--violet)}.t-teal{background:var(--teal-soft);color:var(--teal)}.t-sky{background:var(--sky-soft);color:var(--sky)}.t-pink{background:var(--pink-soft);color:var(--pink)}.t-slate{background:var(--slate-soft);color:var(--slate)}.t-neutral{background:var(--neutral-soft);color:var(--neutral)}.avatar{width:38px;height:38px;border-radius:50%;flex:none;display:grid;place-items:center;font-weight:800;font-size:13px;color:#fff;background:linear-gradient(135deg,var(--a, #2e56c9),var(--b, #7c5ce0));overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.sq{border-radius:13px}.avatar.lg{width:64px;height:64px;font-size:20px}.avatar.xl{width:84px;height:84px;font-size:26px;border-radius:26px}.avatar.sm{width:30px;height:30px;font-size:11px}.tile{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;flex:none}.field{display:grid;gap:6px}.field>label{font-weight:700;font-size:12.5px;color:var(--ink-2)}.input,.select,.textarea{width:100%;height:44px;padding:0 14px;border-radius:14px;border:1.5px solid var(--line);background:var(--card);transition:border-color .15s,box-shadow .15s;outline:none}.textarea{height:auto;min-height:92px;padding:12px 14px;resize:vertical;line-height:1.5}.input:focus,.select:focus,.textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-soft)}.select{appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%237079a0' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.select.sm,.input.sm{height:40px;border-radius:13px}.search{position:relative;flex:1;min-width:220px;max-width:420px}.search .icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.search .input{padding-left:42px}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}.seg{display:inline-flex;padding:4px;border-radius:15px;background:var(--card-2);gap:2px}.seg button{height:34px;padding:0 14px;border-radius:11px;font-weight:700;color:var(--muted);display:inline-flex;align-items:center;gap:8px}.seg button.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow)}.seg .n{font-size:11.5px;min-width:20px;height:20px;padding:0 6px;border-radius:99px;display:grid;place-items:center;background:var(--neutral-soft);color:var(--neutral)}.seg .n.hot{background:var(--orange);color:#fff}.tabs{display:flex;gap:6px;padding:5px;background:var(--card);border-radius:20px;box-shadow:var(--shadow);width:fit-content;max-width:100%;overflow-x:auto;margin-bottom:20px}.tabs button{height:42px;padding:0 18px;border-radius:15px;font-weight:700;color:var(--muted);display:inline-flex;align-items:center;gap:9px;white-space:nowrap;transition:background .15s,color .15s}.tabs button:hover{color:var(--ink)}.tabs button.on{background:var(--brand-soft);color:var(--brand)}[data-theme=dark] .tabs button.on{color:var(--brand-ink)}.tabs .n{min-width:24px;height:24px;padding:0 8px;border-radius:99px;font-size:12px;font-weight:800;display:grid;place-items:center;background:var(--neutral-soft);color:var(--neutral)}.tabs .on .n{background:var(--brand);color:#fff}.tabs .n.hot{background:var(--orange);color:#fff}.table-wrap{overflow-x:auto}table.tbl{width:100%;border-collapse:separate;border-spacing:0;min-width:780px}.tbl th{text-align:left;font-size:11.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);padding:14px 16px;background:var(--card-2);white-space:nowrap;position:sticky;top:0}.tbl th:first-child{padding-left:24px;border-top-left-radius:0}.tbl th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.tbl th.sortable:hover{color:var(--ink)}.tbl th .th{display:inline-flex;align-items:center;gap:4px}.tbl th.on{color:var(--brand)}.tbl td{padding:14px 16px;border-top:1px solid var(--line);vertical-align:middle}.tbl td:first-child{padding-left:24px}.tbl tbody tr{transition:background .12s}.tbl tbody tr.click{cursor:pointer}.tbl tbody tr:hover{background:var(--card-2)}.tbl td.num,.tbl th.num{text-align:right}.tbl-foot{display:flex;align-items:center;gap:14px;padding:14px 24px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;flex-wrap:wrap}.pager{margin-left:auto;display:flex;align-items:center;gap:6px}.pager button{min-width:36px;height:36px;padding:0 10px;border-radius:11px;font-weight:700;display:grid;place-items:center;color:var(--ink-2);background:var(--card-2)}.pager button:hover:not(:disabled){background:var(--brand-soft);color:var(--brand)}.pager button:disabled{opacity:.4;cursor:default}.pager button.on{background:var(--brand);color:#fff}.cell-user{display:flex;align-items:center;gap:12px;min-width:0}.cell-user .t{font-weight:700;line-height:1.25}.cell-user .s{color:var(--muted);font-size:12.5px}.loading-bar{height:3px;background:linear-gradient(90deg,transparent,var(--brand),transparent);background-size:50% 100%;background-repeat:no-repeat;animation:slide 1.1s ease-in-out infinite;opacity:0;transition:opacity .2s}.loading-bar.on{opacity:1}@keyframes slide{0%{background-position:-50% 0}to{background-position:150% 0}}.skel{border-radius:10px;background:linear-gradient(90deg,var(--card-2) 25%,var(--line) 37%,var(--card-2) 63%);background-size:400% 100%;animation:sh 1.4s ease infinite}@keyframes sh{0%{background-position:100% 50%}to{background-position:0 50%}}.empty{padding:56px 24px;text-align:center;color:var(--muted);display:grid;justify-items:center;gap:10px}.empty .tile{width:64px;height:64px;border-radius:22px}.empty h3{color:var(--ink);font-size:17px;font-weight:800}.error-box{display:flex;gap:12px;align-items:center;padding:16px 18px;border-radius:18px;background:var(--bad-soft);color:var(--bad);font-weight:600}.hero{position:relative;overflow:hidden;border-radius:var(--radius);padding:26px;color:#fff;background:var(--hero);box-shadow:0 30px 60px -28px #5548dcbf;min-height:100%}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(500px 220px at 90% -10%,rgba(255,255,255,.28),transparent 60%),radial-gradient(380px 260px at -10% 110%,rgba(255,140,90,.5),transparent 60%);pointer-events:none}.hero>*{position:relative}.hero .lbl{font-weight:600;opacity:.85}.hero .big{font-size:40px;font-weight:800;letter-spacing:-.03em;line-height:1.1;margin:8px 0 4px}.hero .big small{font-size:18px;font-weight:700;opacity:.85;margin-left:6px}.hero .trend{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:99px;background:#fff3;font-weight:700;font-size:13px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hero-foot{margin-top:22px;padding:16px 18px;border-radius:20px;background:#14144652;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;grid-template-columns:1fr 1fr;gap:12px}.hero-foot .k{font-size:12px;opacity:.75}.hero-foot .v{font-weight:800;font-size:17px}.hero-spark{margin:18px -6px 0}.kpi{position:relative;display:flex;flex-direction:column;gap:12px;padding:20px 22px}.kpi .top{display:flex;align-items:center;gap:12px}.kpi .lbl{color:var(--muted);font-weight:600;font-size:13px}.kpi .val{font-size:30px;font-weight:800;letter-spacing:-.03em;line-height:1}.kpi .foot{color:var(--muted);font-size:12.5px;display:flex;gap:8px;align-items:center}.delta{font-weight:700;display:inline-flex;align-items:center;gap:3px}.delta.up{color:var(--ok)}.delta.down{color:var(--bad)}.queue{display:grid;gap:10px}.queue-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:20px;background:var(--card-2);transition:transform .15s,background .15s;text-align:left;width:100%}.queue-item:hover{transform:translate(3px);background:var(--brand-soft)}.queue-item .n{font-size:24px;font-weight:800;letter-spacing:-.02em;min-width:34px;text-align:right}.queue-item.hot{background:var(--orange-soft)}.queue-item.hot .n{color:var(--orange)}.queue-item .t{font-weight:700}.queue-item .s{color:var(--muted);font-size:12.5px}.bars{display:flex;align-items:stretch;gap:8px;height:230px}.bar-col{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:8px;position:relative}.bar-track{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center;position:relative}.bar{width:min(100%,44px);border-radius:12px 12px 6px 6px;background:linear-gradient(180deg,#1f6fe0,#22cdfb);transition:filter .15s,transform .15s,height .6s cubic-bezier(.2,.8,.2,1);min-height:4px;transform-origin:bottom}.bar.warm{background:linear-gradient(180deg,#ff3d0a,#ffb454)}.bar.stack{border-radius:0}.bar-col:hover .bar{filter:brightness(1.12) saturate(1.1)}.bar-col.today .bar-x{color:var(--brand);font-weight:800}.bar-x{font-size:11.5px;color:var(--muted);text-transform:capitalize}.gridlines{position:absolute;inset:0 0 26px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.gridlines i{border-top:1px dashed var(--line);position:relative;display:block}.gridlines i span{position:absolute;left:0;top:-9px;font-size:10.5px;color:var(--muted);background:var(--card);padding-right:6px;font-style:normal}.bars-wrap{position:relative;padding-left:42px}.bars-wrap .gridlines{left:0}.tip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);z-index:5;background:var(--ink);color:var(--card);padding:9px 12px;border-radius:12px;font-size:12px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s;box-shadow:var(--shadow-lg)}.bar-col:hover .tip{opacity:1}.tip b{display:block;font-size:13px}.legend{display:flex;gap:16px;font-size:12.5px;color:var(--muted);font-weight:600}.legend i{display:inline-block;width:10px;height:10px;border-radius:4px;margin-right:6px}.cat{display:grid;grid-template-columns:44px 1fr;gap:4px 14px;align-items:center}.cat .t{font-weight:700;display:flex;justify-content:space-between;gap:8px}.cat .t span{color:var(--muted);font-weight:600}.progress{height:8px;border-radius:99px;background:var(--line);overflow:hidden}.progress>i{display:block;height:100%;border-radius:99px;transition:width .7s cubic-bezier(.2,.8,.2,1)}.rank{display:flex;align-items:center;gap:12px;padding:10px 0}.rank+.rank{border-top:1px solid var(--line)}.rank .pos{width:26px;height:26px;border-radius:9px;background:var(--card-2);display:grid;place-items:center;font-weight:800;font-size:12.5px;color:var(--muted)}.rank:first-child .pos{background:var(--orange-soft);color:var(--orange)}.feed{display:grid;gap:4px}.feed-item{display:flex;gap:12px;padding:10px 0;align-items:flex-start}.feed-item+.feed-item{border-top:1px solid var(--line)}.feed-item .tile{width:36px;height:36px;border-radius:12px}.deliv-route{display:grid;grid-template-columns:auto 1fr;gap:0 12px}.deliv-route .pt{width:12px;height:12px;border-radius:50%;margin-top:5px;border:3px solid var(--brand);background:var(--card)}.deliv-route .pt.end{border-color:var(--orange)}.deliv-route .ln{width:2px;margin:0 5px;background:repeating-linear-gradient(var(--line) 0 4px,transparent 4px 8px);min-height:14px;justify-self:center}.deliv-cell{min-width:230px}.deliv-cell .l1{font-weight:700;line-height:1.3}.deliv-cell .l2{color:var(--muted);font-size:12.5px}.pick{display:flex;align-items:center;gap:14px;padding:14px;border-radius:20px;border:1.5px solid var(--line);width:100%;text-align:left;transition:border-color .15s,background .15s,transform .15s;background:var(--card)}.pick:hover:not(:disabled){border-color:var(--brand);background:var(--brand-soft);transform:translateY(-1px)}.pick.sel{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 4px var(--brand-soft)}.pick:disabled{opacity:.55;cursor:not-allowed;background:var(--card-2)}.pick .dist{text-align:right}.pick .dist b{display:block;font-size:17px;font-weight:800}.charge{display:inline-flex;gap:3px}.charge i{width:6px;height:14px;border-radius:3px;background:var(--line)}.charge i.on{background:var(--brand)}.charge.heavy i.on{background:var(--orange)}.vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:20px}.vcard{display:flex;flex-direction:column;gap:16px}.doc-thumb{position:relative;border-radius:20px;overflow:hidden;background:var(--card-2);aspect-ratio:16 / 9.6;display:grid;place-items:center;width:100%;color:var(--muted);border:1.5px dashed var(--line);transition:border-color .15s}.doc-thumb:hover{border-color:var(--brand)}.doc-thumb img{width:100%;height:100%;object-fit:cover}.doc-thumb .over{position:absolute;inset:auto 10px 10px auto;background:#0e1a3dc7;color:#fff;padding:6px 12px;border-radius:99px;font-size:12px;font-weight:700;display:inline-flex;gap:6px;align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.kv{display:grid;grid-template-columns:120px 1fr;gap:8px 14px;font-size:13.5px}.kv dt{color:var(--muted);font-weight:600}.kv dd{margin:0;font-weight:600;min-width:0;overflow-wrap:anywhere}.lightbox{position:fixed;inset:0;z-index:90;background:#060a1edb;display:grid;place-items:center;padding:30px;animation:fade .15s;cursor:zoom-out}.lightbox img{max-width:min(92vw,980px);max-height:86vh;border-radius:18px;box-shadow:var(--shadow-lg);background:#fff}.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:20px}.pcard{padding:0;overflow:hidden;display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s;cursor:pointer;text-align:left}.pcard:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.pcard .ph{aspect-ratio:4 / 3;display:grid;place-items:center;position:relative;overflow:hidden}.pcard .ph img{width:100%;height:100%;object-fit:cover}.pcard .ph .badge{position:absolute;top:12px;left:12px}.pcard .ph .badge.r{left:auto;right:12px}.pcard .bd{padding:16px 18px 18px;display:grid;gap:6px}.pcard.blocked .ph:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(229,72,77,.16) 0 10px,transparent 10px 20px)}.pcard.blocked .bd{opacity:.85}.price{font-weight:800;font-size:17px;letter-spacing:-.02em}.price s{color:var(--muted);font-weight:600;font-size:13px;margin-right:6px}.thumb{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;overflow:hidden;flex:none}.thumb img{width:100%;height:100%;object-fit:cover}.gallery{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}.gallery>*{flex:none;width:150px;height:112px;border-radius:16px;overflow:hidden}.gallery img{width:100%;height:100%;object-fit:cover}.reasons{display:flex;flex-wrap:wrap;gap:8px}.reasons button{padding:7px 13px;border-radius:99px;background:var(--card-2);font-weight:600;font-size:13px;border:1.5px solid transparent}.reasons button:hover{border-color:var(--brand)}.reasons button.on{background:var(--bad-soft);color:var(--bad);border-color:var(--bad)}.notice{display:flex;gap:12px;padding:14px 16px;border-radius:18px;font-size:13.5px;font-weight:600;align-items:flex-start}.stars{display:inline-flex;gap:2px;color:#f5b301}.stars .off{color:var(--line)}.review{display:flex;gap:14px;padding:20px 24px}.review+.review{border-top:1px solid var(--line)}.overlay{position:fixed;inset:0;z-index:70;background:#080c2480;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade .18s}@keyframes fade{0%{opacity:0}to{opacity:1}}.drawer{position:fixed;top:12px;right:12px;bottom:12px;width:min(560px,calc(100vw - 24px));z-index:71;background:var(--card);border-radius:30px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:slidein .28s cubic-bezier(.2,.8,.2,1);overflow:hidden}@keyframes slidein{0%{transform:translate(40px);opacity:0}to{transform:none;opacity:1}}.drawer-head{display:flex;align-items:flex-start;gap:14px;padding:24px 26px 16px}.drawer-title{font-size:21px;font-weight:800;letter-spacing:-.02em;line-height:1.25}.drawer-body{flex:1;overflow-y:auto;padding:4px 26px 24px;display:grid;gap:22px;align-content:start}.drawer-foot{padding:16px 26px 22px;border-top:1px solid var(--line);display:flex;gap:10px;flex-wrap:wrap}.section-t{font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.modal{position:fixed;z-index:80;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100vw - 28px));max-height:calc(100vh - 40px);overflow-y:auto;background:var(--card);border-radius:30px;padding:28px;box-shadow:var(--shadow-lg);animation:pop .22s cubic-bezier(.2,.8,.2,1)}@keyframes pop{0%{transform:translate(-50%,-46%) scale(.96);opacity:0}to{transform:translate(-50%,-50%);opacity:1}}.modal h3{font-size:21px;font-weight:800;letter-spacing:-.02em}.modal-ico{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;margin-bottom:14px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}.toasts{position:fixed;z-index:100;right:22px;bottom:22px;display:grid;gap:10px}.toast{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:18px;background:var(--ink);color:var(--card);font-weight:600;box-shadow:var(--shadow-lg);animation:slidein .25s;max-width:380px}.toast .ti{width:28px;height:28px;border-radius:10px;display:grid;place-items:center;flex:none;background:var(--ok);color:#fff}.toast.err .ti{background:var(--bad)}.login{min-height:100%;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);background:var(--bg)}.login-art{position:relative;margin:16px;border-radius:40px;background:var(--hero);color:#fff;padding:56px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.login-art:before{content:"";position:absolute;inset:0;background:radial-gradient(600px 300px at 100% 0,rgba(255,255,255,.28),transparent 60%),radial-gradient(500px 400px at 0 100%,rgba(255,130,80,.55),transparent 60%)}.login-art>*{position:relative}.login-art h1{font-size:46px;line-height:1.08;letter-spacing:-.035em;font-weight:800;max-width:460px}.login-art p{opacity:.85;max-width:420px;margin-top:16px;font-size:16px}.float-card{position:absolute;z-index:1;padding:14px 18px;border-radius:22px;background:#ffffff2e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.3);display:flex;gap:12px;align-items:center;box-shadow:0 20px 40px -20px #0a0a3c80;animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.login-form{display:grid;place-items:center;padding:40px}.login-box{width:min(420px,100%);display:grid;gap:18px}.login-box h2{font-size:30px;letter-spacing:-.03em;font-weight:800}.pw-wrap{position:relative}.pw-wrap button{position:absolute;right:8px;top:6px;height:32px;padding:0 10px;border-radius:10px;color:var(--muted);font-weight:700;font-size:12.5px}.pw-wrap .input{padding-right:76px}.center-screen{min-height:100%;display:grid;place-items:center;gap:16px;text-align:center;padding:30px;color:var(--muted)}.set-row{display:flex;align-items:center;gap:14px;padding:14px 0}.set-row+.set-row{border-top:1px solid var(--line)}.set-row .k{font-weight:700}.set-row .v{margin-left:auto;font-weight:800}.status-dot{width:10px;height:10px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px var(--ok-soft)}.status-dot.off{background:var(--bad);box-shadow:0 0 0 4px var(--bad-soft)}@media(max-width:1380px){.g-main{grid-template-columns:minmax(0,1fr) 340px}.g-kpi{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1180px){.shell{padding:12px;display:block}.sidebar{position:fixed;left:12px;top:12px;bottom:12px;height:auto;transform:translate(-120%);transition:transform .28s cubic-bezier(.2,.8,.2,1);box-shadow:var(--shadow-lg)}.sidebar.open{transform:none}.scrim.on{display:block;position:fixed;inset:0;background:#080c2480;z-index:39}.menu-btn{display:inline-flex}.main{padding:0 0 40px}.g-main,.login{grid-template-columns:1fr}.login-art{display:none}}@media(max-width:720px){.page-title{font-size:24px}.g-kpi,.g-2,.g-3{grid-template-columns:1fr}.topbar{flex-wrap:wrap}.topbar-actions .hide-sm{display:none}.vgrid{grid-template-columns:1fr}.toolbar .search{max-width:none}.hero .big{font-size:32px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
