:root{--navy:#17365d;--blue:#1d5d91;--bg:#f8fafc;--text:#1f2937;--yellow:#fff2cc;--green:#e2f0d9;--line:#d8e0e8}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,sans-serif}header{background:var(--navy);color:#fff;padding:18px max(18px,calc((100% - 920px)/2));display:flex;justify-content:space-between;align-items:center}header h1{margin:0;font-size:1.35rem}header p{margin:3px 0 0;opacity:.8}header a{color:#fff}.container{max-width:920px;margin:auto;padding:20px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 4px 16px #17365d10}.tabs{display:flex;gap:8px;margin-bottom:12px}.tab{flex:1;background:#e7eef6;color:var(--navy)}.tab.active{background:var(--navy);color:#fff}.system-line{background:#dce6f1;padding:10px;border-radius:8px;margin-bottom:10px;font-weight:600}label{display:block;font-weight:700;margin:13px 0 6px}input{display:block;width:100%;font:inherit;font-size:1.3rem;letter-spacing:.18em;padding:12px;border:1px solid #c7a84c;border-radius:8px;background:var(--yellow);margin-top:6px}button{border:0;border-radius:8px;background:var(--blue);color:#fff;font-weight:700;padding:12px 18px;font-size:1rem;cursor:pointer}.secondary{background:#e5e7eb;color:#28313d}.actions{display:flex;gap:10px;margin-top:16px}.actions button{flex:1}.hidden{display:none!important}.alert{padding:12px;border-radius:8px;margin-top:14px}.error{background:#fee2e2;color:#991b1b}.warn{background:#fff3cd;color:#7c5700}.success{background:var(--green);color:#245c27}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{background:var(--navy);color:#fff}th,td{padding:10px;border-bottom:1px solid var(--line);text-align:center}tbody tr:nth-child(even){background:#f5f8fb}h2{margin-top:0}.notice{margin:16px 0;background:#fce4d6;border-radius:10px;padding:14px}.login,.installer{max-width:520px;margin:7vh auto;padding:20px}.checks{padding:0;list-style:none}.checks li{padding:5px}.ok{color:#237a2c}.bad{color:#a11}small{display:block;font-weight:400;letter-spacing:0;margin-top:6px}@media(max-width:600px){header{padding:14px 16px}.container{padding:12px}.card{padding:14px;border-radius:10px}th,td{padding:9px 8px;font-size:.9rem}}
