:root{--border:#e5e9f0;--border-soft:#eef1f6;--text:#0f172a;--muted:#667085;--muted-soft:#98a2b3;--bg:#f6f7fb;--card:#fff;--accent:#2952e3;--accent-hover:#1f42c4;--accent-soft:#eef2ff;--accent-ring:#2952e329;--danger:#dc2626;--danger-soft:#fef2f2;--success:#16a34a;--success-soft:#f0fdf4;--warning:#d97706;--warning-soft:#fffbeb;--radius:14px;--radius-sm:8px;--shadow-sm:0 1px 2px #0f172a0d;--shadow:0 1px 2px #0f172a0a, 0 6px 20px #0f172a0f;--shadow-lg:0 8px 16px #0f172a0f, 0 24px 48px #0f172a1a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}h1{letter-spacing:-.01em;margin:0 0 4px;font-size:22px;font-weight:700}h2{letter-spacing:-.01em}.page-subtitle{color:var(--muted);margin-bottom:28px;font-size:14px}.login-page{background:radial-gradient(560px circle at 15% 20%, var(--accent-soft), transparent 60%), radial-gradient(480px circle at 85% 80%, #eef9f3, transparent 55%), var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{border:1px solid var(--border-soft);box-shadow:var(--shadow-lg);background:#fff;border-radius:20px;flex-direction:column;gap:14px;width:340px;padding:36px 32px;display:flex}.login-card h1{font-size:20px}.login-card .subtitle{color:var(--muted);margin:-8px 0 8px;font-size:14px}.login-card label{color:var(--text);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.login-card button{margin-top:6px}.layout{min-height:100vh;display:flex}.sidebar{color:#fff;background:#0b1220;flex-direction:column;flex-shrink:0;width:248px;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0}.sidebar-title{color:#e2e8f0;letter-spacing:-.01em;align-items:center;gap:10px;margin-bottom:30px;padding:0 8px;font-size:14px;font-weight:700;display:flex}.sidebar-logo{background:linear-gradient(135deg, var(--accent), #6d8bff);color:#fff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:flex;box-shadow:0 4px 10px #2952e359}.sidebar-nav{flex-direction:column;flex:1;gap:2px;display:flex}.sidebar-nav a{color:#97a2b8;border-radius:10px;align-items:center;gap:11px;padding:9px 12px;font-size:13.5px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s;display:flex}.sidebar-nav a:hover{color:#f1f5f9;background:#ffffff0f}.sidebar-nav a.active{color:#fff;background:#2952e338}.sidebar-nav-icon{opacity:.95;flex-shrink:0;justify-content:center;align-items:center;width:17px;height:17px;display:flex}.sidebar-nav-icon svg{width:100%;height:100%}.sidebar-footer{border-top:1px solid #ffffff14;margin-top:10px;padding-top:14px}.logout-button{color:#cbd5e1;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #263041;width:100%;padding:9px;font-size:13px;font-weight:600;transition:background-color .15s,border-color .15s}.logout-button:hover{background:#ffffff0f;border-color:#334155}.content{flex:1;max-width:980px;padding:36px 44px 60px}input,button,select,textarea{font:inherit}input[type=text],input[type=email],input[type=password],input:not([type]){border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);background:#fff;padding:10px 12px;transition:border-color .15s,box-shadow .15s}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input:not([type]):focus,.textarea:focus,.filters-row select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring);outline:none}button{cursor:pointer;border-radius:var(--radius-sm);background:var(--accent);color:#fff;border:none;padding:10px 16px;font-size:13.5px;font-weight:600;transition:background-color .15s,transform 50ms,box-shadow .15s;box-shadow:0 1px 2px #2952e326}button:hover:not(:disabled){background:var(--accent-hover)}button:active:not(:disabled){transform:translateY(1px)}button.danger{background:var(--danger);box-shadow:0 1px 2px #dc262626}button.danger:hover:not(:disabled){background:#b91c1c}button.secondary{color:var(--text);border:1px solid var(--border);box-shadow:none;background:#fff}button.secondary:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}button:disabled{opacity:.55;cursor:default}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.stat-card{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:7px;padding:20px 22px;transition:box-shadow .15s,transform .15s;display:flex}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.stat-label{color:var(--muted-soft);text-transform:uppercase;letter-spacing:.05em;font-size:11.5px;font-weight:700}.stat-value{color:var(--text);letter-spacing:-.02em;font-size:30px;font-weight:700;line-height:1.1}.stat-value-text{font-size:18px}.stat-accent-success{color:var(--success)}.stat-hint{color:var(--muted);font-size:12.5px}.textarea{border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;resize:vertical;background:#fff;padding:10px 12px}.severity-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-bottom:12px;display:grid}.severity-option{border:1.5px solid var(--border);cursor:pointer;border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;font-weight:400;transition:border-color .15s,background-color .15s;display:flex}.severity-option:hover{border-color:currentColor}.severity-option input{opacity:0;position:absolute}.severity-option-label{font-size:13px;font-weight:700}.severity-option-hint{color:var(--muted);font-size:12px;font-weight:400}.severity-option.selected{background:var(--accent-soft);border-color:currentColor}.severity-info{color:var(--accent)}.severity-success{color:var(--success)}.severity-warning{color:var(--warning)}.severity-critical{color:var(--danger)}.status-tabs{gap:6px;margin-bottom:16px;display:flex}.status-tab{border:1px solid var(--border);color:var(--muted);box-shadow:none;background:#fff;border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:600;transition:background-color .15s,color .15s,border-color .15s}.status-tab:hover:not(.active){background:#f8fafc;border-color:#cbd5e1}.status-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.announcement-list{flex-direction:column;gap:10px;display:flex}.announcement-row{background:var(--card);border:1px solid var(--border-soft);box-shadow:var(--shadow);border-left:4px solid;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 16px;display:flex}.announcement-row-main{color:var(--text)}.announcement-row-title{align-items:center;gap:8px;margin-bottom:4px;display:flex}.announcement-row-message{color:var(--muted);margin:0;font-size:13px}.announcement-row-actions{flex-shrink:0;gap:6px;display:flex}.announcement-row-actions button{color:var(--text);box-shadow:none;background:#eef1f6;padding:6px 10px;font-size:12px}.announcement-row-actions button:hover:not(:disabled){background:#e2e8f0}.announcement-row-actions button.danger{background:var(--danger);color:#fff}.announcement-row-actions button.danger:hover:not(:disabled){background:#b91c1c}.badge{background:var(--accent-soft);color:currentColor;text-transform:uppercase;letter-spacing:.03em;border-radius:999px;align-items:center;padding:3px 8px;font-size:10.5px;font-weight:700;display:inline-flex}.checklist{color:var(--text);flex-direction:column;gap:8px;margin:0;padding-left:18px;font-size:14px;display:flex}.form-section{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;padding:22px 24px}.form-section h2{margin:0 0 16px;font-size:15px}.settings-form label{flex-direction:column;gap:5px;margin-bottom:14px;font-size:13px;font-weight:600;display:flex}.color-row{gap:24px;display:flex}.color-row label{flex-direction:row;align-items:center;gap:8px}.checkbox-row{align-items:center;flex-direction:row!important;gap:8px!important}.preview-bar{border-radius:var(--radius-sm);align-items:center;padding:16px;display:flex}.preview-bar span{align-items:center;gap:8px;font-weight:700;display:flex}.preview-logo{height:24px}.banner-preview{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border);width:100%;max-height:160px;margin-top:12px}.error{color:var(--danger);font-size:13px}.success{color:var(--success);font-size:13px}.inline-form{gap:8px;margin-bottom:20px;display:flex}.inline-form input{flex:1}.filters-row{gap:8px;margin-bottom:16px;display:flex}.filters-search{flex:1}.filters-row select{border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;background:#fff;padding:10px 12px}.contract-badges{flex-wrap:wrap;gap:4px;display:flex}.contract-badge{white-space:nowrap;border-radius:999px;padding:3px 8px;font-size:10.5px;font-weight:700}.contract-active{background:var(--success-soft);color:#166534}.contract-suspended{background:var(--warning-soft);color:#92400e}.contract-canceled{background:var(--danger-soft);color:#991b1b}.links-table{border-collapse:collapse;background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);overflow:hidden}.links-table th{text-align:left;border-bottom:1px solid var(--border);color:var(--muted-soft);text-transform:uppercase;letter-spacing:.04em;background:#fafbfd;padding:11px 14px;font-size:11.5px;font-weight:700}.links-table td{text-align:left;border-bottom:1px solid var(--border-soft);padding:12px 14px;font-size:14px}.links-table tbody tr{transition:background-color .1s}.links-table tbody tr:hover{background:#fafbfd}.links-table tbody tr:last-child td{border-bottom:none}.url-cell{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.order-cell button{color:var(--text);box-shadow:none;background:#eef1f6;margin-right:4px;padding:4px 8px}.order-cell button:hover:not(:disabled){background:#e2e8f0}.banner-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.banner-card{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;display:flex;overflow:hidden}.banner-card-image{object-fit:cover;background:#eef1f6;width:100%;height:120px}.banner-card-body{flex-direction:column;gap:4px;padding:14px 16px 16px;display:flex}.banner-card-actions{justify-content:space-between;align-items:center;margin-top:10px;display:flex}
