:root{color-scheme:light;--ink: #202a39;--muted: #697689;--nav: #273342;--line: #dce2e9;--surface: #fff;--background: #f2f5f8;--accent: #2f6f91;--accent-light: #e7f2f7;--danger: #b44a55;--danger-light: #fff0f1;--success: #27835d}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--background)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #70b5d9;outline-offset:2px}.eyebrow{display:block;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.18em}.primary,.outline,.action{min-height:42px;border-radius:11px;padding:9px 16px;font-weight:700}.primary{border:1px solid var(--nav);color:#fff;background:var(--nav)}.primary:hover:not(:disabled){background:#3a4b60}.outline{border:1px solid #bfcbd7;color:var(--ink);background:#fff}.outline:hover:not(:disabled){background:#f6f9fb}.full-width{width:100%;display:flex;align-items:center;justify-content:space-between}.error-message{color:var(--danger);font-weight:650}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(400px,44%) 1fr;background:#fff}.login-card{width:min(440px,100% - 64px);margin:auto;padding:48px 0}.login-logo{width:90px;height:75px;object-fit:contain;object-position:left center;margin-bottom:24px}.login-card h1{font-size:clamp(36px,4vw,52px);line-height:1.1;letter-spacing:-.04em;margin:9px 0}.login-card>p{color:var(--muted);margin:0 0 30px}.login-card form{display:grid;gap:9px}.login-card label{font-weight:700;font-size:13px;margin-top:8px}.login-card input{min-height:48px;border:1px solid var(--line);border-radius:10px;padding:10px 14px;background:#f9fafb}.login-card form button{margin-top:18px}.login-languages{display:flex;flex-wrap:wrap;gap:7px;margin-top:28px}.login-languages button{border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted);padding:7px 10px;font-size:12px}.login-languages button.selected{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.login-visual{position:relative;overflow:hidden;min-height:calc(100vh - 32px);margin:16px;border-radius:28px;color:#fff;background:radial-gradient(circle at 75% 20%,#4a7996,#172b40 64%)}.visual-brand{position:absolute;left:52px;top:45px;display:flex;align-items:center;gap:14px;font-weight:800;letter-spacing:.17em;font-size:12px;z-index:2}.visual-brand img{width:58px;height:58px;padding:4px;border-radius:12px;background:#fff}.visual-content{position:absolute;left:52px;bottom:68px;z-index:2;max-width:550px;display:grid}.visual-content span{font-size:12px;font-weight:800;letter-spacing:.17em;opacity:.8}.visual-content strong{font-size:clamp(38px,5vw,76px);letter-spacing:-.06em}.visual-content p{max-width:380px;opacity:.78;font-size:17px;margin:4px 0 0}.visual-orbit{position:absolute;border:1px solid rgba(255,255,255,.1333333333);border-radius:50%}.visual-orbit.first{width:780px;height:780px;right:-160px;top:-180px}.visual-orbit.second{width:520px;height:520px;right:-30px;top:-45px}.app-shell{display:grid;grid-template-columns:clamp(14rem,18%,18rem) minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;color:#fff;background:var(--nav);padding:25px 16px}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 27px}.brand img{width:42px;height:42px;object-fit:contain;padding:3px;background:#fff;border-radius:9px}.brand strong,.brand small,.operator strong,.operator small{display:block}.brand small,.operator small{color:#adbac9;font-size:11px}.sidebar nav{display:grid;gap:6px}.sidebar nav button{width:100%;min-height:48px;display:flex;align-items:center;gap:12px;border:0;border-radius:10px;padding:10px 13px;background:transparent;color:#bbc5d3;text-align:left;font-weight:650;white-space:nowrap}.sidebar nav button.active,.sidebar nav button:hover{background:#ffffff20;color:#fff}.nav-icon{width:24px;text-align:center;font-size:21px}.operator{margin-top:auto;border-top:1px solid rgba(255,255,255,.1411764706);padding:20px 7px 0;display:grid;grid-template-columns:36px minmax(0,1fr) 32px;align-items:center;gap:10px}.operator strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.avatar{width:36px;height:36px;flex:0 0 36px;display:inline-grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(140deg,#447c9c,#7d68a8);font-size:11px;font-weight:800}.logout{border:0;background:transparent;color:#fff;font-size:20px}.main-content{min-width:0;width:min(100%,1700px);padding:33px clamp(20px,3.1vw,58px) 64px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:31px}.page-header h1{margin:6px 0 0;font-size:clamp(30px,3vw,44px);letter-spacing:-.04em;line-height:1.16}.page-header p{margin:8px 0 0;color:var(--muted)}.header-actions{display:flex;gap:10px;align-items:center;flex:0 0 auto}.header-actions select{min-height:42px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px 10px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.kpi,.panel,.entity-card,.table-scroll{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px #1a30450a}.kpi{min-height:170px;display:flex;flex-direction:column;padding:20px}.kpi-icon{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;color:var(--accent);background:var(--accent-light);font-size:20px}.kpi small{color:var(--muted);margin-top:10px;font-weight:700}.kpi strong{font-size:clamp(24px,2.1vw,34px);line-height:1.25;letter-spacing:-.035em;overflow-wrap:anywhere}.kpi em{color:var(--muted);font-size:12px;font-style:normal;margin-top:auto}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:16px;margin-top:18px}.panel{padding:24px}.panel h2{font-size:20px;margin:0 0 22px}.chart{display:flex;align-items:end;gap:12px;height:260px;padding:0 4px}.chart-column{height:100%;min-width:0;flex:1;display:flex;flex-direction:column;align-items:center;gap:7px}.chart-track{width:100%;flex:1;display:flex;align-items:end}.bar{width:100%;border-radius:8px 8px 2px 2px;background:linear-gradient(180deg,#66b2c5,#427895)}.chart-column small{color:var(--muted)}.attention-row{display:grid;grid-template-columns:28px 44px 1fr;align-items:center;gap:12px;border-top:1px solid var(--line);min-height:64px}.attention-row span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#fef1e8;color:#b66535;font-weight:800}.attention-row strong{font-size:20px}.attention-row small{color:var(--muted)}.list-tools{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:19px;color:var(--muted)}.list-tools input{width:min(510px,100%);min-height:44px;padding:9px 14px;border:1px solid var(--line);border-radius:11px;background:#fff}.entity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.entity-card{min-width:0;padding:22px}.entity-heading,.entity-footer{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.entity-heading h2{font-size:19px;margin:0}.entity-heading small,.entity-footer small{color:var(--muted)}.entity-heading small{display:block;margin-top:3px}.badge{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 10px;border-radius:100px;background:#e7f6ec;color:var(--success);font-size:11px;font-weight:800;white-space:nowrap}.badge.off{color:var(--danger);background:var(--danger-light)}.entity-reason{margin:14px 0 0;color:var(--danger);font-size:13px}.entity-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0;margin:17px 0}.entity-stats small,.entity-stats strong{display:block}.entity-stats small{color:var(--muted);font-size:12px}.entity-stats strong{overflow-wrap:anywhere}.entity-footer{align-items:center}.entity-footer small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action{min-width:105px;border:1px solid #ecc3c7;background:var(--danger-light);color:var(--danger);white-space:nowrap}.action.restore{color:var(--success);background:#e9f7ef;border-color:#b8e4ca}.table-scroll{min-width:0;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:870px;table-layout:fixed}th,td{padding:14px 18px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.table-scroll th:last-child,.table-scroll td:last-child{text-align:center}.table-scroll td:last-child .action{display:inline-flex;align-items:center;justify-content:center;max-width:100%;text-align:center}.sessions-table th:nth-child(n+3):nth-child(-n+6),.sessions-table td:nth-child(n+3):nth-child(-n+6){text-align:center}th{font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);background:#f9fafc}tr:last-child td{border-bottom:0}td{font-size:13px}td .person{display:flex;align-items:center;gap:10px;min-width:0}.person>div{min-width:0}.person strong,.person small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person small,.block{color:var(--muted);font-size:11px}.block{display:block}td code{font-size:12px;white-space:nowrap}.sessions-table table{min-width:1650px}.sessions-table th:nth-child(1){width:18%}.sessions-table th:nth-child(2){width:14%}.sessions-table th:nth-child(3){width:10%}.sessions-table th:nth-child(4),.sessions-table th:nth-child(5){width:11%}.sessions-table th:nth-child(6){width:9%}.sessions-table th:nth-child(7){width:13%}.sessions-table th:nth-child(8){width:14%}.reason-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state,.loading-state{padding:40px;color:var(--muted);text-align:center}.error-banner,.success-banner{padding:12px 16px;border-radius:10px;margin-bottom:20px}.error-banner{display:flex;gap:10px;background:var(--danger-light);color:var(--danger)}.success-banner{background:#e9f7ef;color:var(--success)}.dialog-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:18px;background:#0b1625aa}.dialog{width:min(560px,100%);padding:28px;border-radius:22px;background:#fff;box-shadow:0 25px 80px #0004}.dialog h2{margin:8px 0;font-size:25px;overflow-wrap:anywhere}.dialog p{color:var(--muted)}.dialog label{display:block;font-weight:750;margin:24px 0 7px}.dialog textarea{width:100%;min-height:120px;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:12px}.dialog small{color:var(--muted)}.dialog-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.contact-panel{width:min(100%,900px)}.contact-panel>p{color:var(--muted);margin:0 0 24px}.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.contact-form label{display:grid;gap:7px;font-weight:700;min-width:0}.contact-form input{width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.contact-form-actions{grid-column:1/-1;display:flex;justify-content:flex-end}@media(max-width:600px){.contact-form{grid-template-columns:1fr}}@media(max-width:1180px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.entity-grid{grid-template-columns:1fr}}@media(max-width:800px){.login-shell{grid-template-columns:1fr}.login-visual{display:none}.app-shell{display:block}.sidebar{position:static;height:auto;padding:12px}.brand{padding:5px 7px 12px}.sidebar nav{display:flex;overflow-x:auto}.sidebar nav button{flex:0 0 auto;width:auto}.operator{margin-top:12px;padding-top:10px}.page-header{align-items:flex-start}}@media(max-width:600px){.main-content{padding:24px 15px 45px}.page-header{display:block}.header-actions{margin-top:18px}.kpis{gap:9px}.kpi{padding:14px;min-height:145px}.kpi strong{font-size:23px}.dashboard-grid{grid-template-columns:1fr}.entity-heading,.entity-footer{flex-wrap:wrap}.entity-stats{gap:7px}}.main-content{width:100%;max-width:none;padding-inline:2%}.table-scroll{max-width:100%;overflow-x:auto}.table-scroll table{width:100%;min-width:max-content;table-layout:auto}@media(max-width:600px){.main-content{padding-inline:2%}}
