:root{--bg: #100d0c;--panel: #1a1614;--panel-2: #241e1b;--line: #382f2a;--text: #f5efeb;--muted: #a39890;--primary: #f97316;--primary-2: #e11d48;--ok: #10b981;--warn: #f59e0b;--bad: #f43f5e;--info: #14b8a6;--radius: 16px;--shadow: 0 10px 30px -12px rgba(0, 0, 0, .55);color-scheme:dark}@media (prefers-color-scheme: light){:root{--bg: #faf6f3;--panel: #ffffff;--panel-2: #fbf4ef;--line: #eddfd6;--text: #2a1d17;--muted: #8a7468;--shadow: 0 10px 30px -14px rgba(110, 60, 30, .22);color-scheme:light}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);background-image:radial-gradient(900px 400px at 85% -10%,rgba(249,115,22,.18),transparent 60%),radial-gradient(700px 400px at 0% 110%,rgba(225,29,72,.12),transparent 60%);background-attachment:fixed;-webkit-font-smoothing:antialiased}h1{font-size:26px;margin:0 0 4px;font-weight:800;letter-spacing:-.02em;display:flex;align-items:center;gap:12px;flex-wrap:wrap}h2{margin:0 0 4px;font-size:24px;font-weight:800}h3{margin:0;font-size:15px;font-weight:700;display:flex;align-items:center;gap:8px}p{margin:0}a{color:inherit;text-decoration:none}code{background:var(--panel-2);padding:2px 6px;border-radius:6px;font-size:12.5px}.muted{color:var(--muted)}.small{font-size:12.5px}.good{color:var(--ok);font-weight:600}.amber{color:#94a3b8;font-weight:600}.red{color:var(--bad)}.nowrap{white-space:nowrap}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.link{color:var(--primary-2);display:inline-flex;align-items:center;gap:6px;font-weight:600;cursor:pointer;background:none;border:0;font-family:inherit;font-size:inherit;padding:0}.link:hover{text-decoration:underline}.back{margin-bottom:14px;font-size:13.5px}.app{display:flex;min-height:100%}.sidebar{width:250px;flex-shrink:0;background:color-mix(in srgb,var(--panel) 85%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-right:1px solid var(--line);padding:22px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:30}.brand{display:flex;align-items:center;gap:12px;padding:4px 8px 26px}.brand-logo{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 8px 20px -6px #f97316b3}.brand-name{font-weight:800;font-size:18px;letter-spacing:-.02em}.brand-sub{font-size:11.5px;color:var(--muted)}nav{display:flex;flex-direction:column;gap:4px;flex:1}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:12px;color:var(--muted);font-weight:600;font-size:14px;transition:.15s}.nav-link:hover{color:var(--text);background:var(--panel-2)}.nav-link.active{color:#fff;background:linear-gradient(135deg,var(--primary),#ea580c);box-shadow:0 8px 20px -8px #f97316cc}.user-chip{display:flex;align-items:center;gap:10px;padding:10px;background:var(--panel-2);border-radius:14px;border:1px solid var(--line)}.avatar{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-weight:800;background:linear-gradient(135deg,var(--primary-2),var(--primary));color:#fff}.user-meta{display:flex;flex-direction:column;flex:1;min-width:0;font-size:13px}.user-meta span{color:var(--muted);font-size:11.5px}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{display:none;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--panel);position:sticky;top:0;z-index:20}.topbar-title{font-weight:800}.content{padding:32px 36px 60px;max-width:1320px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:20px}.scrim{display:none}.content>form{display:flex;flex-direction:column;gap:20px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.grid{display:grid;gap:20px}.grid.stats{grid-template-columns:repeat(4,1fr)}.grid.charts{grid-template-columns:2fr 1fr}.grid.two{grid-template-columns:1fr 1fr}.grid.six{grid-template-columns:repeat(6,1fr);gap:14px}.stat{display:flex;gap:16px;align-items:center}.stat-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;flex-shrink:0}.tone-indigo{background:#f9731629;color:#fb923c}.tone-cyan{background:#e11d4829;color:#fb7185}.tone-green{background:#10b98129;color:#34d399}.tone-amber{background:#f59e0b29;color:#fbbf24}.stat-label{font-size:12.5px;color:var(--muted);font-weight:600}.stat-value{font-size:26px;font-weight:800;letter-spacing:-.02em;line-height:1.2}.stat-hint{font-size:12px;color:var(--muted);margin-top:2px}.mini{padding:16px}.mini-value{font-size:22px;font-weight:800;margin-top:4px}.chart-box{height:280px}.chart-box.small{height:190px}.legend{display:grid;gap:8px;margin-top:10px;font-size:13px}.legend div{display:flex;align-items:center;gap:8px;color:var(--muted)}.legend i{width:10px;height:10px;border-radius:3px}.legend b{margin-left:auto;color:var(--text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:12px;font-weight:700;font-size:14px;font-family:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel-2);color:var(--text);transition:.15s}.btn:hover:not(:disabled){border-color:var(--primary);transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:linear-gradient(135deg,var(--primary),#ea580c);border-color:transparent;color:#fff;box-shadow:0 10px 24px -10px #f97316e6}.btn.danger{color:var(--bad);border-color:#f43f5e66;background:#f43f5e14}.btn.sm{padding:7px 12px;font-size:13px;border-radius:10px}.btn.lg{padding:14px 28px;font-size:15.5px;border-radius:14px}.btn.block{width:100%;padding:13px}.icon-btn{background:none;border:0;color:var(--muted);cursor:pointer;padding:6px;border-radius:8px;display:grid;place-items:center}.icon-btn:hover{color:var(--text);background:var(--panel)}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px;font-size:13px;font-weight:600;color:var(--muted)}input,select,textarea{font-family:inherit;font-size:14px;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:12px;padding:11px 14px;outline:none;width:100%;transition:.15s}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #f9731633}select{width:auto}.input-icon{position:relative;display:flex;align-items:center}.input-icon svg{position:absolute;left:13px;color:var(--muted)}.input-icon input{padding-left:38px}.grow{flex:1}.toolbar{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.seg{display:inline-flex;background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:3px}.seg button{border:0;background:none;color:var(--muted);padding:5px 14px;border-radius:8px;font-weight:700;font-size:12.5px;cursor:pointer;font-family:inherit}.seg button.on{background:var(--primary);color:#fff}.actions{display:flex;justify-content:flex-end}.step{width:24px;height:24px;border-radius:8px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;display:inline-grid;place-items:center;font-size:12px}.adv-toggle{font-size:13.5px}.drop{position:relative;border:2px dashed var(--line);border-radius:14px;min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px;text-align:center;cursor:pointer;color:var(--muted);transition:.2s;background:var(--panel-2)}.drop:hover,.drop.over{border-color:var(--primary);color:var(--primary);background:#f9731614}.drop strong{color:var(--text)}.drop.has{border-style:solid;border-color:var(--ok);color:var(--ok);background:#10b98112}.drop-x{position:absolute;top:10px;right:10px}.zip-text{min-height:180px;resize:vertical;font-family:ui-monospace,Consolas,monospace}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:13.5px}.table th{text-align:left;color:var(--muted);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:14px 12px;border-bottom:1px solid var(--line)}.table tr:last-child td{border-bottom:0}.table tbody tr:hover{background:var(--panel-2)}.pager{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:16px}.empty{text-align:center;color:var(--muted);padding:40px 10px}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;font-size:12px;font-weight:700}.badge.ok{background:#10b98126;color:#34d399}.badge.warn{background:#f59e0b26;color:#fbbf24}.badge.bad{background:#f43f5e26;color:#fb7185}.badge.info{background:#14b8a626;color:#2dd4bf}.alert{display:flex;gap:10px;align-items:flex-start;padding:13px 16px;border-radius:12px;font-size:14px;margin-bottom:14px;border:1px solid}.alert.bad{background:#f43f5e1a;border-color:#f43f5e59;color:#fb7185}.alert.ok{background:#10b9811a;border-color:#10b98159;color:#34d399}.alert.warn{background:#f59e0b1a;border-color:#f59e0b59;color:#fbbf24}.file-row{display:flex;align-items:center;gap:14px;padding:14px 4px;border-bottom:1px solid var(--line)}.file-row:last-child{border-bottom:0}.file-dot{width:10px;height:10px;border-radius:50%;background:var(--muted)}.file-dot.ok{background:var(--ok);box-shadow:0 0 0 4px #10b98133}.file-dot.warn{background:#94a3b8;box-shadow:0 0 0 4px #94a3b833}.file-dot.bad{background:var(--bad)}.file-dot.info{background:#eab308}.file-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.file-info span{font-size:12.5px;color:var(--muted)}.progress-card{display:flex;align-items:center;gap:16px;flex-wrap:wrap;color:var(--info)}.progress-card>div:nth-child(2){color:var(--text);flex:1}.bar{width:100%;height:6px;background:var(--panel-2);border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;width:40%;border-radius:99px;background:linear-gradient(90deg,var(--primary),var(--primary-2));animation:slide 1.4s ease-in-out infinite}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(260%)}}.kv{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.kv div{background:var(--panel-2);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:4px}.kv span{font-size:12.5px;color:var(--muted)}.kv b{font-size:20px}.limit{margin-bottom:16px;font-size:13.5px}.limit-top{display:flex;justify-content:space-between;margin-bottom:6px;color:var(--muted)}.limit-top b{color:var(--text)}.meter{height:7px;background:var(--panel-2);border-radius:99px;overflow:hidden}.meter i{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-2));border-radius:99px}.boot{display:grid;place-items:center;padding:60px;min-height:120px}.spinner{width:34px;height:34px;border:3px solid var(--line);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-page{min-height:100%;display:grid;grid-template-columns:1.1fr 1fr}.login-hero{padding:60px;display:flex;flex-direction:column;justify-content:center;gap:22px;background:linear-gradient(145deg,#f9731659,#e11d4826 70%),var(--panel);border-right:1px solid var(--line)}.login-hero .brand{padding:0}.login-hero h1{font-size:40px;line-height:1.12;display:block;max-width:520px}.login-hero p{color:var(--muted);max-width:460px;line-height:1.6;font-size:16px}.hero-points{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:12px}.hero-points li{display:flex;gap:10px;align-items:center;font-weight:600}.hero-points svg{color:var(--primary-2)}.login-card{align-self:center;justify-self:center;width:min(400px,90%);display:flex;flex-direction:column;gap:6px}.login-card .muted{margin-bottom:14px}@media (max-width: 1100px){.grid.stats{grid-template-columns:repeat(2,1fr)}.grid.six{grid-template-columns:repeat(3,1fr)}.grid.charts,.grid.two{grid-template-columns:1fr}}@media (max-width: 860px){.sidebar{position:fixed;left:0;transform:translate(-100%);transition:.25s}.sidebar.open{transform:none}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:25}.topbar{display:flex}.content{padding:20px 16px 50px}.kv,.login-page{grid-template-columns:1fr}.login-hero{display:none}.login-card{padding:30px 0}}@media (max-width: 560px){.grid.stats{grid-template-columns:1fr}.grid.six{grid-template-columns:repeat(2,1fr)}}.eye-btn{position:absolute;right:8px;background:none;border:0;color:var(--muted);cursor:pointer;padding:6px;border-radius:8px;display:grid;place-items:center}.eye-btn:hover{color:var(--primary);background:var(--panel)}.input-icon .eye-btn svg{position:static;color:inherit}.head-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;z-index:60;padding:16px}.modal{width:min(480px,100%);max-height:92vh;overflow:auto}.cred{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;padding:14px;font-family:ui-monospace,Consolas,monospace;font-size:13.5px;white-space:pre-wrap;word-break:break-all;margin:0 0 16px;-webkit-user-select:all;user-select:all}.row-actions{white-space:nowrap;text-align:right}.danger-icon:hover{color:var(--bad);background:#f43f5e1a}.table tr.clickable{cursor:pointer}.badge.muted{background:var(--panel-2);color:var(--muted)}
