:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#20242a;background:#f4f6f8;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{cursor:pointer}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top right,rgba(200,16,46,.1),transparent 34%),linear-gradient(180deg,#f8fafb,#eef1f4)}.auth-panel{width:min(100%,480px);background:#fff;border:1px solid #e3e7eb;border-radius:24px;box-shadow:0 24px 60px #1018281a;padding:26px}.brand-header{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid #eceff2}.brand-header strong,.brand-header span{display:block}.brand-header span{margin-top:3px;color:#69717c;font-size:.88rem}.brand-mark{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:14px;background:#c8102e;color:#fff;font-weight:800;letter-spacing:.03em}.auth-copy{padding:20px 0 12px}.auth-copy-centered{text-align:center}.auth-copy-compact{padding-bottom:14px}.auth-copy h1,.welcome-card h1{margin:6px 0 8px;line-height:1.08}.auth-copy h1{font-size:clamp(2rem,5vw,2.45rem);letter-spacing:-.025em}.auth-copy p,.welcome-card p,.module-card p,.phase-note{color:#66707b}.auth-copy p{margin:0 auto;max-width:380px;line-height:1.45}.eyebrow{margin:0;font-size:.74rem;font-weight:800;letter-spacing:.12em;color:#c8102e!important}.auth-form{display:grid;gap:14px;margin-top:2px}.auth-form label{display:grid;gap:7px;font-weight:650;font-size:.92rem}.auth-form input{width:100%;border:1px solid #cfd5dc;border-radius:12px;padding:13px 14px;min-height:52px;outline:none;background:#fff}.auth-form input:focus{border-color:#c8102e;box-shadow:0 0 0 3px #c8102e1a}.auth-form input::placeholder{color:#89919b;opacity:1}.primary-button,.secondary-button{border:0;border-radius:12px;padding:13px 16px;min-height:54px;font-weight:750}.primary-button{background:#c8102e;color:#fff}.primary-button:disabled{opacity:.65;cursor:wait}.secondary-button{background:#eef1f4;color:#272c33}.form-error{padding:12px;border-radius:10px;background:#fff1f2;color:#9f1239;border:1px solid #fecdd3;font-size:.9rem}.auth-footer{display:grid;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid #eceff2;font-size:.82rem;color:#737b85}.auth-footer-centered{text-align:center}.auth-footer a{color:#8f0e25}.app-shell{min-height:100vh;max-width:1180px;margin:0 auto;padding:24px}.welcome-card{margin:24px 0;padding:24px;background:#fff;border:1px solid #e1e5e9;border-radius:20px;display:flex;justify-content:space-between;gap:20px;align-items:center}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.module-card{min-height:180px;padding:20px;border:1px solid #e1e5e9;border-radius:18px;background:#fff}.module-card h2{margin:12px 0 8px}.module-icon{font-size:1.7rem}.status-banner{margin:16px 0;padding:14px 16px;border-radius:12px;border:1px solid}.status-info{background:#eef7ff;border-color:#bfdbfe}.status-warning{background:#fff7ed;border-color:#fed7aa}.status-danger{background:#fff1f2;border-color:#fecdd3}.phase-note{font-size:.85rem;margin-top:24px}.loading-screen{min-height:100vh;display:grid;place-items:center}.secret-input{position:relative}.secret-input input{padding-right:48px}.secret-toggle{position:absolute;top:50%;right:8px;width:36px;height:36px;transform:translateY(-50%);display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:#606975}.secret-toggle:hover{background:#f2f4f6}.secret-toggle:focus-visible{outline:3px solid rgba(200,16,46,.18)}.secret-toggle svg{width:21px;height:21px}@media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.auth-shell{padding:10px;place-items:center}.auth-panel{width:100%;padding:20px;border-radius:20px}.brand-header{padding-bottom:16px}.brand-header strong{font-size:1rem;line-height:1.15}.brand-header span{font-size:.82rem}.brand-mark{width:46px;height:46px;flex-basis:46px}.auth-copy{padding:17px 0 11px}.auth-copy h1{font-size:1.92rem;margin-top:5px}.auth-copy p{font-size:.93rem}.auth-form{gap:13px}.auth-form input{min-height:50px}.primary-button{min-height:52px}.auth-footer{margin-top:18px;padding-top:15px}.app-shell{padding:14px}.welcome-card{align-items:stretch;flex-direction:column}.grid{grid-template-columns:1fr}.module-card{min-height:auto}}
