:root{color-scheme:dark;font-family:Inter,"Noto Sans JP","Yu Gothic",sans-serif;color:#eef2f6;background:#090d13;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 12% 30%,#8c213712,transparent 45%),radial-gradient(ellipse at 90% 50%,#075aa51c,transparent 50%)}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}a{color:#d4eea0;text-decoration:none}a:hover{text-decoration:underline}.auth-header{min-height:88px;border-bottom:1px solid #232b34;display:flex;align-items:center;justify-content:space-between;padding:20px 5vw;gap:20px}.brand{font-size:21px;font-weight:900;letter-spacing:1px;color:#eff2f6}.brand b{color:#d0f892}.auth-header>span{font:10px monospace;letter-spacing:1px;color:#84919b}.auth-main{width:min(448px,calc(100% - 40px));margin:64px auto 80px;padding:0 4px}.auth-main.wide{width:min(1100px,calc(100% - 40px));margin-top:45px}.eyebrow{font:10px monospace;letter-spacing:2px;color:#b8c6b3;display:flex;align-items:center;gap:10px}.eyebrow i{height:5px;width:5px;background:#cef791;box-shadow:0 0 13px #b6df6c66}h1{font-size:28px;line-height:1.6;letter-spacing:-.8px;margin:18px 0 8px}h2{font-size:17px;margin:0 0 24px}.intro{font-size:13px;color:#96a2ad;line-height:1.9;margin:0 0 35px}label{display:block;font-size:12px;font-weight:600;margin:22px 0 10px}input{width:100%;background:#111821;color:#f1f5fa;border:1px solid #2b3642;padding:14px 15px;border-radius:7px;font-size:15px;min-height:49px}input:focus{outline:2px solid #c6ef8c;outline-offset:2px}button:focus-visible,a:focus-visible{outline:2px solid #c6ef8c;outline-offset:4px}button{cursor:pointer;border-radius:7px;border:1px solid #334352;padding:9px 14px;background:#17222d;color:#dde5ed;font-size:12px}button:hover{filter:brightness(1.12)}button:disabled{opacity:.55;cursor:wait}.primary{background:#cff991;border:0;color:#152012;width:100%;padding:15px 20px;font-size:14px;font-weight:800;min-height:49px}.password-wrap{position:relative}.password-wrap input{padding-right:65px}.reveal{position:absolute;right:8px;top:9px;border:0;background:transparent;color:#a9b6bf;padding:7px 10px}.message{color:#ffc0bd;font-size:12px;line-height:1.7;min-height:21px;margin:16px 0}.message.success{color:#c9ef9e}.note,.hint{font-size:11px;color:#8997a2;line-height:1.9}.note{border-top:1px solid #27323d;margin-top:28px;padding-top:22px}.hint{margin:14px 0 0}.text-button{background:transparent;border:0;color:#a1afb9;padding:10px 0}.auth-main> .text-button{margin-top:20px}footer{text-align:center;font:10px monospace;letter-spacing:1.5px;color:#53616d;padding:24px}.admin-nav{display:flex;gap:24px;align-items:center;font-size:12px;margin-bottom:30px;flex-wrap:wrap}.admin-grid{display:grid;grid-template-columns:minmax(240px,330px) 1fr;gap:24px}.panel{border:1px solid #26313d;background:#101720;border-radius:12px;padding:26px}.user-list{display:grid;gap:12px}.user-row{border:1px solid #283642;background:#131e28;border-radius:7px;padding:17px}.user-title{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:14px;font-weight:700}.badge{font-size:10px;font-weight:400;color:#c9efa5}.muted{color:#9da8b3;font-size:11px;line-height:1.8;margin:8px 0}.user-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.danger{color:#ffc1bb}.user-row.disabled{opacity:.7}dialog{background:#111923;border:1px solid #394c5b;color:#f1f5fa;border-radius:12px;padding:28px;width:min(430px,calc(100% - 32px))}dialog::backdrop{background:#03070cbb}dialog .text-button{margin-top:16px}#userCount{color:#b9caac;font:12px monospace;margin-left:6px}@media(max-width:720px){.auth-header{min-height:72px;padding:18px 22px}.auth-header>span{display:none}.auth-main{margin-top:46px}h1{font-size:25px}.admin-grid{grid-template-columns:1fr}.panel{padding:22px}.auth-main.wide{margin-top:35px}}
