:root{--bg:#f7f8fb;--surface:#fff;--surface2:#faf9f5;--text:#0f172a;--muted:#64748b;--line:#e5e7eb;--blue:#123c7c;--blue2:#1d64d8;--safe:#059669;--amber:#d97706;--danger:#dc2626;--shadow:0 24px 80px rgba(15,23,42,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:linear-gradient(135deg,#fff 0%,#faf9f5 45%,#eef4ff 100%);color:var(--text)}a{color:inherit}.site-bg{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 85% 8%,rgba(29,100,216,.14),transparent 32%),radial-gradient(circle at 0 20%,rgba(14,165,233,.11),transparent 26%)}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.wrap.narrow{width:min(860px,calc(100% - 40px))}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px max(20px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(229,231,235,.84)}.brand,.logo{display:flex;align-items:center;gap:12px;text-decoration:none}.brand b,.logo b{font-weight:950}.brand small{display:block;color:var(--muted);font-size:12px}.mark{width:44px;height:44px;border-radius:16px;background:linear-gradient(145deg,#e9f2ff 0%,#1d64d8 52%,#061a3d 100%);box-shadow:0 16px 35px rgba(18,60,124,.22);position:relative;flex:0 0 auto}.mark:before{content:"";position:absolute;inset:10px;border:2px solid #fff;border-radius:12px;clip-path:polygon(50% 0,88% 18%,80% 76%,50% 100%,20% 76%,12% 18%)}.toplinks{display:flex;align-items:center;gap:18px;color:var(--muted);font-weight:800}.toplinks a{text-decoration:none}.pill{padding:10px 15px;border-radius:999px;background:var(--text);color:white!important}.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:44px;align-items:center;padding:72px 0 44px}.hero h1{font-size:clamp(42px,6.1vw,76px);letter-spacing:-2.8px;line-height:.96;margin:16px 0;color:var(--text)}.hero p{font-size:19px;line-height:1.75;color:var(--muted);max-width:760px}.badge{display:inline-flex;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:950;letter-spacing:.25px;background:#eff6ff;color:#1d4ed8;border:1px solid #dbeafe}.badge.red{background:#fff1f2;color:#be123c;border-color:#ffe4e6}.badge.green{background:#ecfdf5;color:#047857;border-color:#d1fae5}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 18px;border-radius:16px;background:#101827;color:#fff;text-decoration:none;font-weight:950;border:1px solid #101827;box-shadow:0 15px 34px rgba(15,23,42,.14);cursor:pointer}.btn.secondary{background:#fff;color:#101827;border-color:var(--line);box-shadow:none}.btn.danger{background:var(--danger);border-color:var(--danger)}.btn.warn{background:var(--amber);border-color:var(--amber)}.trust-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.trust-row span{padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.78);font-size:13px;font-weight:850;color:#334155}.card{background:rgba(255,255,255,.95);border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:var(--shadow);backdrop-filter:blur(10px)}.device-card{min-height:520px;overflow:hidden}.device-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}.status{font-size:12px;font-weight:950;padding:6px 10px;border-radius:999px}.status.safe{background:#ecfdf3;color:#027a48}.status.warn{background:#fffbeb;color:#92400e}.status.danger{background:#fef2f2;color:#991b1b}.passport-card{margin:22px 0;padding:24px;border-radius:24px;background:linear-gradient(145deg,#0b1f45,#123c7c);color:#fff;position:relative;overflow:hidden}.passport-card:after{content:"";position:absolute;right:-50px;top:-50px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.08)}.passport-card small{opacity:.78;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.passport-card h3{font-size:32px;margin:8px 0}.passport-card p{color:rgba(255,255,255,.78);font-size:14px}.meter{height:10px;border-radius:999px;background:rgba(255,255,255,.18);overflow:hidden}.meter i{display:block;height:100%;border-radius:999px;background:#34d399}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.action-grid button{border:1px solid var(--line);background:#fff;border-radius:18px;padding:16px 12px;font-weight:950;color:#344054}.action-grid .danger-soft{background:#fef2f2;color:#b42318}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}.feature-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-grid.one{grid-template-columns:1fr}.feature{box-shadow:none}.feature b{font-size:20px}.feature p,.muted{color:var(--muted);line-height:1.65}.split{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;margin:36px 0}.security-card h2{font-size:42px;line-height:1.05;margin:14px 0}.checklist{display:grid;gap:12px;margin:0;padding:0;list-style:none}.checklist li{padding:14px 16px;border-radius:16px;background:#f8fafc;border:1px solid var(--line);font-weight:850}.footer{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;color:var(--muted);padding:40px 20px}.form{display:grid;gap:14px}.input,select,textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;font:inherit}label{font-weight:850;font-size:13px}.alert{padding:14px 16px;border-radius:14px;margin:12px 0}.alert.ok{background:#ecfdf5;color:#064e3b}.alert.err{background:#fef2f2;color:#7f1d1d}.table-wrap{overflow:auto}.table{width:100%;border-collapse:separate;border-spacing:0}.table th,.table td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left;font-size:14px;vertical-align:top}.table th{color:#475569;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.admin-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh;background:#f8fafc}.side{position:sticky;top:0;height:100vh;background:#07142d;color:#fff;padding:22px;overflow:auto}.side .logo{font-weight:950;margin-bottom:24px}.side a{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;text-decoration:none;color:#dbeafe;margin:6px 0;font-weight:850}.side a:hover,.side a.active{background:rgba(255,255,255,.1);color:white}.main{padding:28px;min-width:0}.main h1{font-size:36px;letter-spacing:-1px;margin:0 0 6px}.kpi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.stat{background:white;border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 16px 40px rgba(15,23,42,.06)}.stat b{font-size:32px;display:block}.admin-actions{display:flex;gap:10px;flex-wrap:wrap}.inline-form{display:inline}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tabs a{padding:10px 13px;border-radius:999px;background:#fff;border:1px solid var(--line);text-decoration:none;font-weight:850;color:#334155}.tabs a.active{background:#101827;color:white}.mini{font-size:12px;padding:7px 9px;border-radius:999px;border:1px solid var(--line);background:#fff;color:#334155;font-weight:850}.qr-public{max-width:720px;margin:40px auto}.public-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.public-actions .btn{width:100%}@media(max-width:900px){.topbar{align-items:flex-start;flex-direction:column}.toplinks{gap:10px;flex-wrap:wrap}.hero,.split{grid-template-columns:1fr;padding-top:38px}.feature-grid,.feature-grid.two,.kpi{grid-template-columns:1fr}.admin-shell{grid-template-columns:1fr}.side{height:auto;position:relative}.main{padding:18px}.hero h1{font-size:42px}.device-card{min-height:auto}.public-actions{grid-template-columns:1fr}}@media(max-width:520px){.wrap{width:min(100% - 24px,1180px)}.card{border-radius:22px;padding:18px}.hero h1{font-size:36px;letter-spacing:-1.4px}.action-grid{grid-template-columns:1fr}.toplinks{font-size:13px}.btn{width:100%}}
.toggle-row{display:flex!important;align-items:center;gap:10px;padding:12px;border:1px solid var(--border,#e5e7eb);border-radius:14px;background:#fff}.toggle-row input{width:20px;height:20px}.form-grid{display:grid;gap:14px}.form-grid input[type="text"],.form-grid input:not([type]){width:100%;padding:12px;border:1px solid #dbe3ef;border-radius:12px}.btn.primary{background:#0f4c8a;color:white;border:0;border-radius:12px;padding:12px 18px;font-weight:700;cursor:pointer}
