:root{--nav:#101b2d;--nav2:#17263e;--accent:#2b7fff;--bg:#f3f6fb;--text:#111827;--muted:#374151;--border:#e4e9f2;--success:#12a36d;--danger:#dc3545;--warning:#f4a100;--info:#1783d6}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px}a{text-decoration:none;color:inherit}.layout{min-height:100vh;display:flex}.sidebar{width:248px;background:linear-gradient(180deg,var(--nav),#0b1423);color:#dce7f8;position:fixed;inset:0 auto 0 0;overflow:auto;z-index:20}.brand{padding:22px 20px;font-size:20px;font-weight:800;border-bottom:1px solid #273750}.brand small{display:block;font-size:11px;font-weight:500;color:#8ea3bf;margin-top:4px}.nav{padding:14px 10px}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:#7187a5;padding:15px 12px 6px}.nav a{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:9px;margin:2px 0;color:#b9c8db}.nav a:hover,.nav a.active{background:#203552;color:white}.nav .icon{width:22px;text-align:center}.main{margin-left:248px;width:calc(100% - 248px)}.topbar{height:66px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:15}.content{padding:24px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;gap:15px}.page-head h1{margin:0;font-size:24px}.page-head p{margin:5px 0 0;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-6{grid-column:span 6}.col-8{grid-column:span 8}.col-12{grid-column:span 12}.card{background:white;border:1px solid var(--border);border-radius:14px;box-shadow:0 5px 20px rgba(21,32,51,.04);overflow:hidden}.card-header{padding:17px 19px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.card-title{font-size:15px;font-weight:750;margin:0}.card-body{padding:19px}.stat{padding:20px}.stat .label{color:var(--muted);font-size:12px}.stat .value{font-size:26px;font-weight:800;margin-top:7px}.stat .note{font-size:11px;color:var(--muted);margin-top:8px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px 14px;text-align:left;border-bottom:1px solid #edf0f5;white-space:nowrap}th{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#68758a;background:#fafbfe}tr:hover td{background:#fbfcff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:8px;padding:9px 13px;font-size:13px;font-weight:650;cursor:pointer}.btn-primary{background:var(--accent);color:white}.btn-success{background:var(--success);color:white}.btn-danger{background:var(--danger);color:white}.btn-warning{background:var(--warning);color:#1b1b1b}.btn-light{background:#eef2f8;color:#26334b}.btn-sm{padding:6px 9px;font-size:12px}.badge{display:inline-block;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:700}.badge-success{background:#dff8ee;color:#087a50}.badge-danger{background:#ffe6e9;color:#b5192c}.badge-warning{background:#fff1ce;color:#955d00}.badge-info{background:#e1f1ff;color:#1168a5}.badge-dark{background:#e3e6ea;color:#202734}.badge-secondary{background:#eceff3;color:#596273}.form-group{margin-bottom:16px}.form-label{display:block;font-size:12px;font-weight:700;margin-bottom:7px}.form-control,.form-select{width:100%;border:1px solid #dce3ee;border-radius:8px;padding:10px 11px;background:white;font:inherit;outline:none}.form-control:focus,.form-select:focus{border-color:#74a9ff;box-shadow:0 0 0 3px rgba(43,127,255,.1)}textarea.form-control{min-height:90px;resize:vertical}.form-row{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-6{grid-column:span 6}.span-8{grid-column:span 8}.span-12{grid-column:span 12}.filterbar{display:flex;gap:9px;flex-wrap:wrap}.filterbar .form-control,.filterbar .form-select{width:auto;min-width:150px}.alert{padding:12px 14px;border-radius:9px;margin-bottom:16px}.alert-success{background:#e4f8f0;color:#087a50}.alert-danger{background:#ffe8eb;color:#a91728}.pagination{display:flex;gap:5px;padding:16px;justify-content:flex-end}.pagination li{list-style:none}.pagination a,.pagination span{display:block;padding:7px 10px;border:1px solid var(--border);border-radius:7px;background:white}.pagination .active a{background:var(--accent);color:white;border-color:var(--accent)}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#244d82,#0b1423 55%)}.login-card{width:min(420px,92vw);background:white;border-radius:18px;padding:30px;box-shadow:0 30px 80px rgba(0,0,0,.3)}.login-logo{font-size:26px;font-weight:850;margin-bottom:5px}.muted{color:var(--muted)}.actions{display:flex;gap:6px}.mobile-toggle{display:none}.portal-body{background:#eef3f9}.portal-nav{background:#10213a;color:white;padding:14px 5%;display:flex;align-items:center;justify-content:space-between}.portal-main{max-width:1000px;margin:25px auto;padding:0 16px}.invoice-box{max-width:800px;margin:20px auto;background:white;padding:28px;border:1px solid #ddd}.text-right{text-align:right}.text-center{text-align:center}.mb-0{margin-bottom:0}.mt-2{margin-top:8px}.w-100{width:100%}@media(max-width:950px){.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:none}.main{margin-left:0;width:100%}.mobile-toggle{display:inline-flex}.content{padding:16px}.col-3,.col-4,.col-6,.col-8{grid-column:span 12}.form-row{display:block}.form-row>*{margin-bottom:12px}.page-head{flex-direction:column}.topbar{padding:0 15px}}@media print{.no-print{display:none!important}.invoice-box{border:0;margin:0;padding:0}.main{margin:0;width:100%}}
.portal-links{display:flex;align-items:center;gap:18px}.portal-links a{color:#dce7f8}.portal-links a:hover{color:white}.portal-menu-button{display:none}.portal-main .card{min-width:0}@media(max-width:760px){.portal-nav{padding:12px 16px;position:relative}.portal-menu-button{display:inline-flex}.portal-links{display:none;position:absolute;top:60px;left:12px;right:12px;background:#10213a;padding:14px;border-radius:12px;flex-direction:column;align-items:stretch;z-index:30}.portal-links.open{display:flex}.portal-links a{padding:8px 4px}.portal-main{margin:16px auto}.portal-main table th,.portal-main table td{padding:10px}.portal-main .page-head h1{font-size:21px}}

/* ARGALYTA ISP Manager SaaS */
.tenant-chip{display:inline-flex;margin-left:10px;padding:4px 9px;border-radius:999px;background:#eaf2ff;color:#1769e0;font-size:10px;font-weight:800;letter-spacing:.25px;vertical-align:middle}.usage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.usage-box{border:1px solid var(--border);border-radius:12px;padding:16px;background:#fbfdff}.usage-box strong{display:block;font-size:24px}.usage-box span{display:block;color:var(--muted);font-size:12px;margin-top:5px}.progress{height:7px;background:#e9eef6;border-radius:999px;overflow:hidden;margin-top:12px}.progress i{display:block;height:100%;background:var(--accent);border-radius:999px}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.plan-mini{border:1px solid var(--border);border-radius:14px;padding:18px;background:#fff}.plan-mini h3{margin:0 0 8px}.plan-mini ul{padding-left:18px;min-height:92px}.plan-price{font-size:23px;font-weight:850;margin:8px 0}.plan-price small{font-size:11px;color:var(--muted);font-weight:600}.btn-lg{padding:12px 18px;font-size:14px;border-radius:10px}
.saas-site{background:#f7f9fd;color:#152036}.saas-header{max-width:1180px;margin:auto;min-height:76px;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px}.saas-logo{font-weight:900;font-size:21px;letter-spacing:.2px}.saas-logo b{color:#2b7fff}.saas-header nav{display:flex;align-items:center;gap:22px}.saas-header nav>a:not(.btn){color:#526078;font-weight:650}.saas-hero{max-width:1180px;margin:34px auto 70px;padding:56px 34px;border-radius:30px;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;background:radial-gradient(circle at 18% 20%,#edf5ff,#f9fbff 46%,#edf0ff);border:1px solid #e2e8f3}.hero-copy h1{font-size:46px;line-height:1.07;margin:12px 0 18px;letter-spacing:-1.5px;max-width:760px}.hero-copy p{font-size:17px;line-height:1.7;color:#58677e;max-width:720px}.eyebrow{font-size:11px;font-weight:850;letter-spacing:1.7px;color:#1769e0}.hero-actions{display:flex;gap:10px;margin:26px 0 16px}.hero-trust{font-size:12px;color:#66758d}.hero-panel{background:#10213a;color:white;border-radius:22px;padding:22px;box-shadow:0 25px 60px rgba(24,59,111,.22)}.mini-top{display:flex;justify-content:space-between;font-weight:750}.mini-top span{color:#73e4b7;font-size:11px}.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:18px 0}.mini-grid div{background:#172d4d;border:1px solid #244064;border-radius:12px;padding:14px}.mini-grid b,.mini-grid span{display:block}.mini-grid b{font-size:22px}.mini-grid span{font-size:10px;color:#a9bdd7;margin-top:4px}.mini-chart{height:120px;display:flex;align-items:end;gap:7px;padding:14px;border-radius:12px;background:#0c1a2f}.mini-chart i{flex:1;background:linear-gradient(180deg,#65b2ff,#2b7fff);border-radius:5px 5px 2px 2px}.mini-alert{display:flex;justify-content:space-between;gap:10px;margin-top:12px;padding:12px;border-radius:10px;background:#15385a}.mini-alert span{color:#a9bdd7;font-size:11px}.saas-section{max-width:1180px;margin:0 auto;padding:55px 20px}.saas-section.soft{max-width:none;background:#eef4fc;padding-left:max(20px,calc((100vw - 1180px)/2 + 20px));padding-right:max(20px,calc((100vw - 1180px)/2 + 20px))}.section-title{text-align:center;max-width:700px;margin:0 auto 32px}.section-title h1,.section-title h2{font-size:34px;margin:9px 0 10px}.section-title p{color:#6a7688;line-height:1.6}.feature-grid,.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.feature-card,.pricing-card{background:white;border:1px solid #e3e8f1;border-radius:18px;padding:24px;box-shadow:0 8px 30px rgba(24,47,84,.05)}.feature-icon{width:42px;height:42px;border-radius:12px;background:#eaf2ff;display:grid;place-items:center;font-size:19px}.feature-card h3,.pricing-card h3{margin:15px 0 8px}.feature-card p,.pricing-card p{color:#66758c;line-height:1.55}.price{font-size:29px;font-weight:900;margin:12px 0}.price small{font-size:11px;color:#738198}.pricing-card ul{padding-left:0;list-style:none;min-height:142px}.pricing-card li{padding:6px 0;color:#445167}.limit-list{display:grid;gap:6px;border:1px solid #e7edf5;background:#f8faff;border-radius:10px;padding:12px;margin:14px 0}.limit-list span{font-size:12px}.register-wrap{max-width:1100px;margin:45px auto 70px;padding:20px;display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}.register-copy{padding-top:48px}.register-copy h1{font-size:42px;line-height:1.08;margin:12px 0}.register-copy p{font-size:16px;color:#65738a;line-height:1.65}.check-list{display:grid;gap:11px;margin-top:24px;font-weight:650}.register-card{background:white;border:1px solid #e1e7f0;border-radius:20px;padding:26px;box-shadow:0 22px 60px rgba(24,47,84,.09)}.saas-footer{max-width:1180px;margin:30px auto;padding:30px 20px;border-top:1px solid #e2e7ef;display:flex;justify-content:space-between;gap:20px;color:#647188}.saas-footer strong{color:#172033}
@media(max-width:900px){.saas-header{align-items:flex-start}.saas-header nav{gap:10px;flex-wrap:wrap;justify-content:flex-end}.saas-hero,.register-wrap{grid-template-columns:1fr}.hero-copy h1,.register-copy h1{font-size:36px}.feature-grid,.pricing-grid,.plan-grid{grid-template-columns:1fr}.usage-grid{grid-template-columns:1fr}.register-copy{padding-top:5px}.saas-hero{margin:15px 14px 45px;padding:35px 22px}.saas-footer{flex-direction:column}.tenant-chip{display:none}}@media(max-width:620px){.saas-header nav>a:not(.btn){display:none}.hero-copy h1{font-size:31px}.section-title h1,.section-title h2{font-size:28px}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.saas-section{padding:38px 14px}.register-wrap{padding:14px;gap:18px}.register-card{padding:18px}}

/* v1.6 Traffic Analytics */
.chart-legend{display:flex;gap:18px;justify-content:flex-end;font-size:12px;color:var(--muted);margin-top:8px}.chart-legend span:first-child:before{content:' ';display:inline-block;width:10px;height:3px;background:#2b7fff;margin-right:6px;vertical-align:middle}.chart-legend span:last-child:before{content:' ';display:inline-block;width:10px;height:3px;background:#13a877;margin-right:6px;vertical-align:middle}.hour-bars{display:grid;gap:6px;max-height:250px;overflow:auto;padding-right:4px}.hour-row{display:grid;grid-template-columns:42px 1fr 52px;gap:8px;align-items:center;font-size:11px;color:#5d697d}.hour-row i{height:8px;background:#edf1f6;border-radius:9px;overflow:hidden}.hour-row i b{display:block;height:100%;background:var(--accent);border-radius:9px}.hour-row em{font-style:normal;text-align:right}.analytics-kpis .value{font-size:24px}
/* v3.5.0 Platform Control Center */
.platform-alert-stack{display:grid;gap:10px;margin-bottom:18px}.platform-alert{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 15px;border-radius:14px;border:1px solid #e2eaf5;background:#fff}.platform-alert div{display:flex;flex-direction:column;gap:3px}.platform-alert span{font-size:12px;color:#65758d}.platform-alert b{font-size:12px;white-space:nowrap}.platform-alert-danger{border-color:#f2c8cf;background:#fff7f8}.platform-alert-warning{border-color:#f3dfad;background:#fffaf0}.platform-alert-info{border-color:#cfe2f7;background:#f7fbff}.platform-kpi-grid{margin-bottom:0}.platform-trend-list{display:grid;gap:13px}.platform-trend-row{display:grid;grid-template-columns:72px minmax(120px,1fr) 150px;gap:12px;align-items:center}.platform-trend-row>span{font-size:12px;color:var(--muted)}.platform-trend-row>strong{text-align:right;font-size:12px}.platform-trend-bar{height:10px;border-radius:999px;background:#edf2f8;overflow:hidden}.platform-trend-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#176fff,#12c3bd)}.platform-shortcuts{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--border)}.platform-shortcuts a{padding:8px 11px;border-radius:10px;background:#eef4fb;color:#245182;font-weight:700;font-size:12px}.platform-tenant-health{overflow:visible}.platform-health-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.platform-health-actions{display:flex;gap:8px;flex-wrap:wrap}.platform-health-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:16px}.platform-health-metrics>div{padding:12px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.platform-health-metrics span,.platform-health-metrics strong{display:block}.platform-health-metrics span{font-size:10px;text-transform:uppercase;letter-spacing:.45px;color:var(--muted)}.platform-health-metrics strong{font-size:14px;margin-top:5px}.platform-signal-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.platform-signal{font-size:11px;font-weight:700;padding:7px 9px;border-radius:999px;background:#eef3f8;color:#536176}.platform-signal-critical{background:#ffe8eb;color:#a91728}.platform-signal-warning{background:#fff1ce;color:#955d00}.platform-signal-info{background:#e1f1ff;color:#1168a5}.platform-inline-pager .pagination{padding:12px 16px}.report-health-list>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #edf1f6}.report-health-list>div:last-child{border-bottom:0}.report-health-list span{color:var(--muted)}
@media(max-width:950px){.platform-trend-row{grid-template-columns:62px 1fr}.platform-trend-row>strong{grid-column:2;text-align:left}.platform-health-head{flex-direction:column}.platform-health-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-alert{align-items:flex-start}.platform-alert b{display:none}}

/* v3.5.1 - platform sync recovery */
.platform-health-metrics small{display:block;margin-top:4px;font-size:10px;color:var(--muted);line-height:1.35}.platform-sync-recovery{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px;padding:14px 15px;border:1px solid #f1d59a;background:#fffaf0;border-radius:14px}.platform-sync-recovery strong{display:block;margin-bottom:3px}.platform-sync-recovery p{max-width:780px}.platform-sync-errors{margin-top:10px;border:1px solid var(--border);border-radius:12px;overflow:auto}.platform-sync-errors table{margin:0}.platform-sync-errors td:nth-child(3){min-width:320px;white-space:normal;word-break:break-word}@media(max-width:760px){.platform-sync-recovery{align-items:stretch;flex-direction:column}.platform-sync-recovery .btn{width:100%}.platform-sync-errors td:nth-child(3){min-width:240px}}

/* v3.6.0 - RBAC & access hardening */


/* v3.8.1 - MikroTik connection method / ARGALYTA VPN recommendation */
.connection-method-card{height:100%;padding:16px;border:1px solid var(--border,#e2e8f0);border-radius:14px;background:var(--card,#fff)}
.connection-method-card p{margin:8px 0 0}.connection-method-recommended{border-width:2px;box-shadow:0 8px 22px rgba(15,23,42,.06)}
.argalyta-vpn-card .actions{align-items:center;flex-wrap:wrap}
@media(max-width:767px){.connection-method-card{margin-bottom:10px}.argalyta-vpn-card .actions .muted{display:block;width:100%;margin-top:5px}}

/* v3.8.2 - RouterOS 6/7 compatibility engine */
.routeros-compat-grid strong{display:block;margin-top:4px;font-size:1rem}.routeros-compat-grid small{display:block;margin-top:3px}.compat-cap-list{display:flex;flex-wrap:wrap;gap:7px}.routeros-compat-line{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.routeros-compat-line>div{min-width:0}.router-meta .badge{vertical-align:middle}.router-card .router-meta span{min-width:0}@media(max-width:760px){.routeros-compat-line{align-items:flex-start}.routeros-compat-grid>[class*="col-"]{grid-column:span 12!important}.compat-cap-list{gap:6px}}

/* v3.9.0 - Infrastructure Map, Customer Realtime Status & Realtime Admin NOC */

/* Smart AJAX Select v3.9.7 */
.card.has-smart-select{overflow:visible}.smart-select{position:relative;width:100%;min-width:0;z-index:2}.smart-select.open{z-index:60}.smart-select-native{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.smart-select-control{width:100%;min-height:42px;border:1px solid #dce3ee;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;font:inherit;color:var(--text);cursor:pointer;text-align:left}.smart-select-control:focus{outline:none;border-color:#74a9ff;box-shadow:0 0 0 3px rgba(43,127,255,.1)}.smart-select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.smart-select-value.is-placeholder{color:#8a94a6}.smart-select-caret{font-size:11px;color:#7b8799;flex:none}.smart-select-menu{position:absolute;z-index:1000;left:0;right:0;top:calc(100% + 5px);background:#fff;border:1px solid #d8e0ec;border-radius:10px;box-shadow:0 14px 36px rgba(20,35,60,.16);overflow:hidden;display:none}.smart-select.open .smart-select-menu{display:block}.smart-select.drop-up .smart-select-menu{top:auto;bottom:calc(100% + 5px)}.smart-select-search-wrap{padding:9px;border-bottom:1px solid #edf0f5}.smart-select-search{width:100%;border:1px solid #cfd8e6;border-radius:7px;padding:9px 10px;font:inherit;outline:none}.smart-select-search:focus{border-color:#74a9ff;box-shadow:0 0 0 3px rgba(43,127,255,.08)}.smart-select-results{max-height:280px;overflow:auto;padding:5px}.smart-select-option{width:100%;display:block;border:0;background:#fff;text-align:left;padding:9px 10px;border-radius:7px;font:inherit;color:var(--text);cursor:pointer;white-space:normal}.smart-select-option:hover,.smart-select-option.is-active{background:#eef5ff}.smart-select-option.is-selected{background:#e4efff;font-weight:700}.smart-select-empty,.smart-select-loading{padding:14px 12px;color:var(--muted);text-align:center;font-size:12px}.smart-select-more{margin:5px;width:calc(100% - 10px);border:1px solid #dce3ee;background:#f7f9fc;border-radius:7px;padding:8px;cursor:pointer;color:#40516b}.smart-select-clear{border:0;background:transparent;color:#8793a5;cursor:pointer;padding:0 2px;font-size:16px;line-height:1}.filterbar .smart-select{width:auto;min-width:220px}@media(max-width:950px){.filterbar .smart-select{width:100%;min-width:0}.smart-select-results{max-height:240px}}
