:root{--bg:#0b111f;--bg2:#111b2f;--panel:#142039;--line:#253752;--text:#f0f5fa;--muted:#a6b9d0;--accent:#29d2ad;--accent2:#17b894;--amber:#ffc87a}
*{box-sizing:border-box}html{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--text);background:var(--bg)}body{min-height:100vh;margin:0;background:radial-gradient(ellipse at 15% 0%,#16384a 0,transparent 42%),radial-gradient(ellipse at 93% 70%,#192a44 0,transparent 46%),var(--bg)}a{color:var(--accent)}.topbar{position:relative;z-index:2;max-width:1250px;margin:auto;padding:28px 26px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;font-weight:850;letter-spacing:.07em;font-size:15px}.brand small{display:block;color:#9ab3c9;letter-spacing:.19em;font-size:9px;margin-top:3px}.brandmark{font-size:32px;background:#143c48;color:var(--accent);width:45px;height:45px;display:grid;place-items:center;border-radius:13px}.topstatus{color:var(--muted);font-size:13px}.dot{display:inline-block;width:8px;height:8px;background:var(--accent);border-radius:50%;margin-right:7px;box-shadow:0 0 15px var(--accent)}.toplink{font-size:13px;text-decoration:none}.welcome-wrap{max-width:1160px;padding:30px 26px 45px;margin:auto}.hero{text-align:center;max-width:750px;margin:15px auto 40px}.eyebrow{letter-spacing:.21em;color:var(--accent);font-size:11px;font-weight:760}.hero h1{font-size:clamp(42px,6vw,73px);line-height:1.06;letter-spacing:-.05em;margin:17px 0}.hero h1 span{color:var(--accent)}p{color:var(--muted);line-height:1.65}.hero p{font-size:17px;max-width:620px;margin:auto}.welcome-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:18px}.panel{background:linear-gradient(145deg,rgba(21,37,62,.98),rgba(15,27,45,.98));border:1px solid var(--line);border-radius:20px;padding:25px;box-shadow:0 15px 35px rgba(0,0,0,.12)}.main-panel{padding:34px}.round-icon{width:68px;height:68px;background:linear-gradient(135deg,#154f53,#1a6359);color:var(--accent);font-size:46px;display:grid;place-items:center;border-radius:21px}h2{margin:20px 0 9px;font-size:26px;letter-spacing:-.02em}h3{margin:13px 0 6px;font-size:18px}.panel p{font-size:14px}.notice{background:#123a3a;border:1px solid #21695e;border-radius:12px;padding:12px 15px;color:#d9f7f1;font-size:13px;line-height:1.55;margin:19px 0}.side{display:grid;gap:14px}.side-card{padding:24px}.mini-icon{width:40px;height:40px;background:#173c40;color:var(--accent);display:grid;place-items:center;border-radius:11px;font-size:22px}.side-card h3{font-size:17px}.guest-form{display:grid;gap:10px;margin-top:25px}.guest-form label,form label{font-weight:650;font-size:13px}.guest-form label span{color:var(--muted);font-weight:400}input[type=text],input[type=password],input:not([type]){width:100%;height:45px;background:#0d182c;border:1px solid #34506c;border-radius:10px;color:var(--text);padding:0 13px;font-size:15px}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.checkrow{display:flex;gap:10px;align-items:start;color:var(--muted);font-weight:400!important;margin:9px 0}.checkrow input{margin-top:3px;accent-color:var(--accent);width:16px;height:16px}.hidden-input{position:absolute;left:-9999px;height:0;opacity:0}button{cursor:pointer;background:var(--accent);color:#052b28;border:0;border-radius:12px;font-size:14px;font-weight:800;min-height:46px;padding:11px 15px}button:hover{background:#53e7c5}button:disabled{opacity:.6;cursor:not-allowed}.small{font-size:12px!important;min-height:17px}.welcome-wrap footer{font-size:12px;color:#8ea3ba;margin-top:32px;display:flex;align-items:center;justify-content:center;gap:13px;flex-wrap:wrap}.welcome-wrap footer a{font-size:12px}.admin-wrap{max-width:1160px;padding:40px 26px;margin:auto}.login-panel{max-width:430px;margin:40px auto;padding:38px}.login-panel h1{font-size:40px;margin:12px 0}.login-panel form{display:grid;gap:18px;margin-top:25px}.login-panel form label input{display:block;margin-top:8px}.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.admin-heading h1{font-size:36px;margin:12px 0 0}.secondary-btn{background:transparent;border:1px solid #46617d;color:var(--text)}.secondary-btn:hover{background:#23334f}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:25px 0}.stat{display:grid;gap:8px}.stat small{color:var(--muted);font-size:12px}.stat strong{font-size:38px}.stat span{color:var(--muted);font-size:12px}.admin-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:16px}.admin-grid .panel h2{font-size:22px;margin-top:4px}.visit-list{display:grid;max-height:400px;overflow:auto}.visit-item{display:flex;justify-content:space-between;padding:13px 4px;border-bottom:1px solid var(--line);gap:15px;font-size:13px}.visit-item time{color:var(--muted)}.qr-box{background:#fff;min-height:130px;border-radius:12px;display:grid;place-items:center;padding:14px;color:#34445a;font-size:13px}.qr-box img{width:min(260px,100%);height:auto}.mono-box{padding:12px;background:#0d172b;border:1px solid var(--line);border-radius:10px;overflow-wrap:anywhere;font-family:ui-monospace,monospace;font-size:13px}.big-note{margin-top:20px}.light-orb{display:none}
@media(max-width:800px){.welcome-grid,.admin-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.side{grid-template-columns:repeat(2,minmax(0,1fr))}.welcome-wrap{padding-top:12px}.hero{margin-bottom:25px}.hero h1{font-size:48px}.main-panel{padding:26px}}@media(max-width:520px){.stats,.side{grid-template-columns:1fr}.topbar{padding:18px}.welcome-wrap,.admin-wrap{padding:14px 18px 30px}.hero h1{font-size:44px}.hero p{font-size:15px}.admin-heading{align-items:flex-start;flex-direction:column}.login-panel{padding:25px}.main-panel{padding:23px}}

.settings-form{display:grid;gap:14px;margin-top:16px}.settings-form label{display:grid;gap:7px;font-size:13px;font-weight:600}.settings-form textarea{background:#0d182c;border:1px solid #34506c;border-radius:10px;color:var(--text);padding:13px;font:inherit;resize:vertical;min-height:85px}

.settings-panel{margin-top:20px}
