.portal>header{height:auto;min-height:90px;gap:15px;flex-wrap:wrap;background:white}.portal main{margin:0 auto;padding:40px 24px;max-width:1150px}.portal .brand{font-size:24px}.portal .welcome{max-width:700px;margin:0 auto 30px}.portal .auth-card{max-width:520px;margin:30px auto;background:#fff;padding:30px;border:1px solid var(--line);border-radius:16px}.portal form{max-width:600px}.portal label{font-weight:600}.portal .split{display:grid;grid-template-columns:270px minmax(0,1fr);gap:22px}.portal .class-list{display:grid;gap:10px;align-content:start}.portal .class-button{text-align:left;padding:18px}.portal .class-button.active{background:#e3eddd;border-color:#86a57d}.portal .class-button small{display:block;margin-top:6px;color:var(--muted)}.portal .message{padding:14px 18px;border-radius:9px;background:#fff0d5;line-height:1.6;margin:18px 0}.portal .message.error{background:#fce5e2;color:#84261b}.portal .message.success{background:#dcefd8;color:#24552b}.portal .toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:20px 0}.portal .toolbar form{display:flex;gap:8px}.portal .toolbar input{min-width:0}.portal .inline-form{display:flex;gap:10px;flex-wrap:wrap;align-items:end}.portal .inline-form label{display:grid;margin:0;gap:6px}.portal .inline-form input{width:180px}.portal .license{padding:20px;background:#eef3e8;border:1px solid #cfddc7;border-radius:12px;margin:20px 0;line-height:1.8}.portal .price{font:800 30px Manrope}.portal .muted{color:var(--muted);font-size:12px}.portal td button{font-size:11px;padding:7px;margin:3px}.portal .check{display:flex;align-items:flex-start;gap:12px;font-weight:400;font-size:13px;line-height:1.7}.portal .check input{margin-top:6px}.portal .auth-links{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.portal .auth-links button{font-size:12px;padding:8px}.portal a{color:var(--green)}.portal .code{font:800 28px monospace;letter-spacing:3px;background:#edf3e8;padding:18px;border-radius:10px}.portal .row-name{font-weight:700}.portal footer{margin-top:35px;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:12px}.portal #account{font-size:12px;display:flex;align-items:center;gap:12px}.portal .class-code{font-family:monospace;letter-spacing:2px;font-size:20px}.portal table{min-width:540px}.portal .summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.portal .summary-grid div{padding:12px;border-radius:8px}.portal .summary-grid strong{display:block;font-size:23px}.portal .white{border:1px solid #cdd5ce;background:#fff}.portal .red{background:#fce5e2}.portal .orange{background:#fff0d5}.portal .green{background:#dcefd8}@media(max-width:720px){.portal .split{grid-template-columns:1fr}.portal>header{padding:20px}.portal main{padding:25px 16px}.portal h1{font-size:27px}.portal .summary-grid{grid-template-columns:repeat(2,1fr)}}

.portal .brand .site-logo{display:block;width:260px;height:55px;object-fit:cover;max-width:100%}

.planning-panel{margin-top:28px}.plan-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.plan-report{padding:16px 0;border-top:1px solid var(--line)}.plan-report summary{cursor:pointer;line-height:1.8}.planning-panel form{max-width:none}@media(max-width:650px){.plan-fields{grid-template-columns:1fr}}

.portal .danger-zone{margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}.portal button.danger{color:#84261b;border-color:#e7b9b2}.portal button.danger:hover{background:#fdf3f1}.portal .archived-classes{margin-top:8px;font-size:13px}.portal .archived-classes summary{cursor:pointer;color:var(--muted)}.portal .archived-classes button{font-size:11px;padding:6px 9px;margin-left:6px}
