:root{--berry:#ef5d75;--berry2:#d9435f;--cream:#fff9f4;--ink:#372d2a;--muted:#90817a;--line:#eee5de}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:14px -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.login-page{min-height:100vh;background:linear-gradient(135deg,#ffeff1,#fffaf5 55%,#e4f4ec);display:grid;place-items:center}.login-shell{width:min(920px,92vw);min-height:560px;background:#fff;border-radius:30px;box-shadow:0 30px 80px rgba(111,73,63,.14);display:grid;grid-template-columns:1.1fr 1fr;overflow:hidden}.login-brand{padding:62px;background:linear-gradient(150deg,#ef5d75,#db3f61);color:#fff;position:relative}.bead-logo,.brand-mark{width:52px;height:52px;border:13px solid #fff;border-radius:50%;display:inline-block;color:transparent}.login-brand>span{font-size:22px;font-weight:800;margin-left:12px;vertical-align:18px}.login-brand h1{font-size:38px;line-height:1.35;margin:95px 0 18px}.login-brand p{opacity:.8}.login-card{padding:70px 58px}.mobile-brand{display:none}.login-card h2{font-size:27px;margin:40px 0 8px}.login-card>p{color:var(--muted);margin-bottom:28px}.login-card label{display:block;font-weight:700;margin:18px 0}.login-card input{display:block;width:100%;margin-top:9px;padding:14px 15px;border:1px solid var(--line);border-radius:12px;font:inherit;outline:none}.login-card input:focus{border-color:var(--berry);box-shadow:0 0 0 3px #ffe5ea}.login-card button{width:100%;padding:14px;border:0;border-radius:12px;background:var(--berry);color:#fff;font-weight:800;font-size:15px;margin:8px 0 18px}.login-card small{display:block;text-align:center;color:#aaa}.alert{padding:12px;background:#fff0f1;color:#c93853;border-radius:10px}.dashboard-page{background:#f8f6f3;display:flex}.dashboard-page aside{position:fixed;inset:0 auto 0 0;width:230px;background:#fffdf9;border-right:1px solid var(--line);padding:28px 18px;display:flex;flex-direction:column}.side-brand{display:flex;align-items:center;padding:0 10px 30px}.brand-mark{width:43px;height:43px;border-width:10px;border-color:var(--berry);margin-right:12px}.side-brand b,.side-brand small{display:block}.side-brand b{font-size:19px}.side-brand small{color:var(--muted);margin-top:3px}.dashboard-page nav a{display:block;padding:13px 16px;border-radius:12px;margin:4px 0;color:#6f625d;text-decoration:none}.dashboard-page nav a.active{background:#ffe8ec;color:var(--berry);font-weight:700}.logout{margin-top:auto}.logout button{width:100%;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#8e7770}.dashboard-page main{margin-left:230px;padding:34px 38px;width:calc(100% - 230px)}header,.admin-chip{display:flex;align-items:center;justify-content:space-between}header h1{margin:0 0 6px;font-size:25px}header p{margin:0;color:var(--muted)}.admin-chip span{background:#e5f4ec;color:#34815f;padding:7px 12px;border-radius:20px;margin-right:14px}.admin-chip b{width:38px;height:38px;line-height:38px;text-align:center;border-radius:12px;background:var(--berry);color:#fff}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:30px 0}.metric-grid article,.welcome-panel{background:#fff;border:1px solid #f0ebe7;border-radius:18px;box-shadow:0 8px 24px rgba(77,57,48,.05)}.metric-grid article{padding:21px;display:flex;gap:15px}.metric-grid i{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;font-style:normal;font-size:20px}.pink{background:#ffe5ea;color:#e94e69}.green{background:#e2f4eb;color:#3b9874}.yellow{background:#fff1cc;color:#ca9227}.purple{background:#eee7fb;color:#8064bd}.metric-grid span,.metric-grid strong,.metric-grid small{display:block}.metric-grid span{color:var(--muted);font-size:12px}.metric-grid strong{font-size:27px;margin:5px 0}.metric-grid small{color:#76a28e}.welcome-panel{padding:38px;display:flex;justify-content:space-between;align-items:center}.welcome-panel .eyebrow{color:var(--berry);font-size:12px;font-weight:800;letter-spacing:2px}.welcome-panel h2{font-size:25px;margin:10px 0}.welcome-panel>div>p{color:var(--muted)}.checklist{background:#fff8f4;border-radius:16px;padding:15px 25px;min-width:230px}.checklist p{margin:10px;color:#5b8c72}@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-brand{display:none}.mobile-brand{display:block;color:var(--berry);font-weight:900;font-size:23px}.login-card{padding:40px}.metric-grid{grid-template-columns:repeat(2,1fr)}}
