:root{color-scheme:dark;--bg:#080b12;--panel:#101521;--line:#263047;--text:#f4f7ff;--muted:#9ba8bf;--accent:#7c8cff;--accent2:#9d6cff;--danger:#ff6978}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:radial-gradient(circle at 12% 0%,rgba(124,140,255,.17),transparent 31rem),radial-gradient(circle at 92% 15%,rgba(157,108,255,.11),transparent 27rem),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}.topbar{min-height:74px;border-bottom:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:space-between;padding:14px clamp(18px,4vw,48px);background:rgba(8,11,18,.75);backdrop-filter:blur(16px);position:sticky;top:0;z-index:5}.brand-row,.user-row{display:flex;align-items:center;gap:12px}.brand-mark{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;font-weight:900;letter-spacing:-.03em;background:linear-gradient(145deg,var(--accent),var(--accent2));box-shadow:0 18px 48px rgba(124,140,255,.22)}.brand-mark.small{width:43px;height:43px;border-radius:13px;font-size:.9rem}.page{width:min(1180px,calc(100% - 36px));margin:0 auto;padding:48px 0 70px}.hero{padding:34px 0 44px}.hero h1{font-size:clamp(2rem,5vw,4rem);margin:6px 0 10px;letter-spacing:-.045em}.eyebrow{color:#aab6ff;font-size:.78rem;font-weight:800;letter-spacing:.16em}.muted{color:var(--muted)}.tiny{font-size:.76rem}section{margin-bottom:44px}section h2{font-size:1.05rem;margin-bottom:16px;color:#d8def0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:14px}.local-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr))}.service-card{min-height:116px;background:linear-gradient(145deg,rgba(21,28,43,.96),rgba(13,18,29,.96));border:1px solid var(--line);border-radius:20px;padding:20px;display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:15px;transition:transform .18s ease,border-color .18s ease,background .18s ease}.service-card:hover{transform:translateY(-2px);border-color:#53627f;background:linear-gradient(145deg,#1a2233,#111724)}.local-card{background:linear-gradient(145deg,rgba(124,140,255,.15),rgba(157,108,255,.08));border-color:rgba(124,140,255,.34)}.service-icon{width:52px;height:52px;border-radius:15px;background:rgba(255,255,255,.07);display:grid;place-items:center;font-weight:900;font-size:1.05rem}.service-card h3{margin:0 0 6px;font-size:1rem}.service-card p{margin:0;color:var(--muted);font-size:.86rem}.arrow{color:#b8c3da;font-size:1.2rem}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-shell{width:min(430px,100%)}.login-card{background:rgba(16,21,33,.94);border:1px solid var(--line);border-radius:26px;padding:34px;box-shadow:0 30px 90px rgba(0,0,0,.35)}.login-card .brand-mark{margin-bottom:24px}.login-card h1{font-size:2rem;margin:0 0 6px}.login-card form{display:grid;gap:10px;margin-top:28px}label{font-size:.83rem;color:#cbd3e4;margin-top:5px}input{width:100%;background:#0a0f18;color:var(--text);border:1px solid #2a354d;border-radius:12px;padding:13px 14px;outline:none}input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(124,140,255,.13)}button{border:0;border-radius:12px;padding:13px 16px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-weight:800;cursor:pointer;margin-top:9px}button.ghost{background:transparent;border:1px solid #33405a;padding:8px 11px;margin:0;font-size:.8rem}.alert{background:rgba(255,105,120,.11);color:#ffb2ba;border:1px solid rgba(255,105,120,.28);border-radius:12px;padding:11px 12px;margin-top:18px;font-size:.88rem}.footnote{color:var(--muted);font-size:.75rem;line-height:1.5;margin-top:20px}footer{color:#68758d;font-size:.75rem;text-align:center;padding:0 18px 34px}@media(max-width:640px){.topbar{align-items:flex-start}.user-row{flex-direction:column;align-items:flex-end;gap:6px}.page{width:min(100% - 24px,1180px);padding-top:24px}.hero{padding-top:20px}.service-card{grid-template-columns:46px 1fr auto;padding:17px}.service-icon{width:46px;height:46px}.login-card{padding:26px}}