:root{color-scheme:light;font-family:"Noto Sans SC","Microsoft YaHei",system-ui,sans-serif;color:#fff;background:#101b25}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:linear-gradient(90deg,rgba(7,16,24,.08),rgba(7,16,24,.12) 45%,rgba(7,16,24,.42)),url("/static/baroque-night-entry.png") center center/cover no-repeat}
.entry-shell{width:min(100%,1500px);min-height:100vh;margin:auto;padding:30px clamp(20px,4vw,64px) 42px;display:flex;flex-direction:column}
.entry-brand{display:flex;align-items:center;gap:12px;width:max-content;color:#fff;text-shadow:0 2px 12px #07101b}
.entry-brand strong{font-size:19px;letter-spacing:.08em}
.brand-seal{display:grid;place-items:center;width:46px;height:46px;border:1px solid #e7bd7d;border-radius:12px;background:rgba(12,28,37,.85);color:#f0d3a2;font-size:23px;font-weight:700}
.entry-hero,.login-panel{width:min(100%,440px);margin:auto 0 auto auto;padding:34px;border:1px solid rgba(241,207,157,.48);border-radius:22px;background:rgba(11,26,36,.88);box-shadow:0 22px 66px rgba(0,0,0,.36);backdrop-filter:blur(10px)}
h1{margin:0;font-size:clamp(29px,3vw,38px);line-height:1.3;letter-spacing:.03em}
.entry-grid{display:grid;gap:14px;margin-top:28px}
.entry-card{display:flex;align-items:center;gap:16px;min-height:84px;padding:15px 17px;border:1px solid rgba(255,255,255,.35);border-radius:13px;background:rgba(255,255,255,.09);color:#fff;text-decoration:none;transition:transform .15s,background .15s,border-color .15s}
.entry-card:hover,.entry-card:focus-visible{transform:translateY(-2px);background:rgba(255,255,255,.17);border-color:#e7bd7d;text-decoration:none;outline:2px solid #e7bd7d;outline-offset:2px}
.entry-card strong{font-size:20px}
.visitor-card{background:#e7bd7d;border-color:#e7bd7d;color:#172b36}
.visitor-card:hover,.visitor-card:focus-visible{background:#f2d39f}
.card-icon{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:10px;background:rgba(10,32,40,.12);font-size:25px}
.admin-card .card-icon{background:rgba(255,255,255,.11);color:#f0c98e}
.card-arrow{margin-left:auto;font-size:23px}
.login-panel h1{margin:24px 0 27px}
.back-link,.visitor-link{color:#f0c98e;text-decoration:none;font-size:14px;font-weight:600}
.back-link:hover,.visitor-link:hover{text-decoration:underline}
form{display:flex;flex-direction:column;gap:9px}
label{font-weight:600;font-size:14px}
input{width:100%;height:48px;padding:0 14px;border:1px solid #b9c4c4;border-radius:9px;background:#fff;color:#17313c;font:inherit;margin-bottom:12px}
input:focus{outline:3px solid #e7bd7d;outline-offset:2px}
button{height:50px;border:0;border-radius:9px;background:#e7bd7d;color:#172b36;font:inherit;font-weight:700;cursor:pointer}
button:hover{background:#f2d39f}
button:focus-visible{outline:3px solid #fff;outline-offset:3px}
button:disabled{opacity:.65;cursor:wait}
.login-error{margin:0 0 4px;padding:12px;border-radius:9px;background:#fff0ee;color:#9a3123}
.visitor-link{display:inline-block;margin-top:22px}
@media(max-width:700px){body{background-position:right center}.entry-shell{padding:19px 16px 24px}.entry-brand strong{font-size:16px}.brand-seal{width:40px;height:40px;font-size:20px}.entry-hero,.login-panel{width:100%;margin:auto 0 0;padding:25px;background:rgba(11,26,36,.92)}.entry-card{min-height:76px}.entry-card strong{font-size:18px}.login-panel h1{margin:21px 0 23px}}
