:root{color:#172033;background:#f4f7fb;font-family:Inter,Noto Sans JP,Noto Sans SC,Yu Gothic UI,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}.app-shell{min-height:100vh}.brand{color:#fff;letter-spacing:.04em;place-items:center;height:64px;font-size:20px;font-weight:700;display:grid}.topbar{background:#fff;border-bottom:1px solid #e8edf4;justify-content:space-between;align-items:center;gap:24px;padding:0 24px;display:flex}.topbar h4{margin:0}.language-switcher{white-space:nowrap}.content{padding:24px}.login-screen{background-color:#151a22;background-image:radial-gradient(at 50% 45%,#0a0e146b 0%,#0a0e14d6 100%),url(/login.jpg);background-position:50% 60%;background-repeat:no-repeat;background-size:cover;place-items:center;min-height:100vh;padding:24px;display:grid;position:relative}.login-lang{position:absolute;top:20px;right:24px}.login-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121720b8;border:1px solid #ffffff1f;border-radius:16px;width:min(400px,100%);box-shadow:0 24px 60px #00000080}.login-card .ant-card-body{flex-direction:column;gap:28px;padding:40px 32px 32px;display:flex}.login-brand{text-align:center}.login-brand__name.ant-typography{letter-spacing:.1em;color:#f5f1e6;margin:0 0 12px;font-weight:600}.login-brand__rule{background:#c9a24a;border-radius:2px;width:40px;height:2px;margin:0 auto 14px;display:block}.login-card .ant-btn-primary{letter-spacing:.04em;height:48px;font-weight:600;box-shadow:0 6px 18px #c9a24a4d}.metrics{margin-top:16px}.content h2{margin-top:0;margin-bottom:4px}.page-card{place-items:center;min-height:280px;margin-top:20px;display:grid}@media (max-width:640px){.topbar{flex-direction:column;align-items:flex-start;gap:8px;height:auto;min-height:64px;padding:10px 16px}}
