:root{font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;color:#242326;background:#f7f6f4;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{border:0;border-radius:10px;padding:14px 20px;background:#b01828;color:white;cursor:pointer;font-weight:650}button:disabled{background:#777;cursor:default}.secondary{background:#ece9e5;color:#393739}input{display:block;width:100%;border:1px solid #dedbd7;border-radius:8px;padding:13px;margin:8px 0 18px;background:#fff}input:focus{outline:2px solid #b01828;outline-offset:2px}label{font-size:.88rem;font-weight:650}h1{font-size:2.25rem;line-height:1.35;margin:16px 0}p{line-height:1.6;color:#6b6768}.brand{font-size:2rem;font-weight:850;color:#ae1929;letter-spacing:-1px}.brand span{font-size:1.1rem;color:#353136;margin-left:10px}.eyebrow{font-size:.72rem;letter-spacing:2px;color:#aa2533;font-weight:750}.login{max-width:460px;margin:7vh auto;padding:38px;background:#fff;border:1px solid #e9e5e0;border-radius:24px;box-shadow:0 20px 80px #50311b0b}.login form{margin-top:30px}.login button{width:100%}.login small{display:block;text-align:center;margin-top:24px;color:#777}#portal{max-width:1280px;margin:auto;padding:24px 32px 60px}header,.intro{display:flex;align-items:center;justify-content:space-between;gap:24px}header{border-bottom:1px solid #e4dfd9;padding-bottom:24px}.intro{margin:32px 0}.intro h1{margin:6px 0}.notice{padding:22px;background:#fff7e8;border:1px solid #efdcba;border-radius:14px}.notice p{margin:8px 0}.notice small{color:#78664b}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}.cards article,.settings article{background:#fff;border:1px solid #e7e2dd;border-radius:16px;padding:24px}.cards h2{font-size:2rem;margin:18px 0}.cards small,.muted{color:#8a8281;font-size:.85rem}.settings{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings h2{font-size:1.2rem}.settings form{margin-top:24px}#message:empty{display:none}#message{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:90vw;padding:16px 24px;border-radius:12px;background:#282227;color:white;box-shadow:0 6px 24px #0003}[hidden]{display:none!important}@media(max-width:700px){.login{margin:30px 16px;padding:28px}#portal{padding:20px}.intro{display:block}.intro button{margin-top:12px;width:100%}.cards{grid-template-columns:1fr 1fr}.settings{grid-template-columns:1fr}header{align-items:flex-start}.brand{font-size:1.7rem}.brand span{font-size:.9rem}h1{font-size:1.8rem}}
