.notice{background:#e8f7ef;color:#135c3c;border:1px solid #b7e4cc;padding:12px 15px;border-radius:9px;margin:18px 0}.inline-form{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:15px 0 22px}.inline-form input,.inline-form select{width:auto;min-width:145px;flex:1;padding:10px;border:1px solid #bcccdc;border-radius:8px;background:#fff}.inline-form .check,.check{display:flex;align-items:center;gap:8px;font-weight:600}.check input{width:auto;min-width:auto;flex:none}.table-wrap{overflow:auto}.panel+.panel{margin-top:20px}td small{display:block;color:var(--muted)}@media(max-width:720px){.topbar nav{width:100%;overflow:auto;white-space:nowrap}.inline-form{display:grid}.inline-form input,.inline-form select{width:100%}}
.import-form{display:grid;grid-template-columns:2fr 1fr auto;gap:14px;align-items:end;margin-top:20px}.import-form label,.rollback-box label{display:grid;gap:7px;font-weight:700}.import-form input,.import-form select,.rollback-box input{width:100%;padding:11px;border:1px solid #bcccdc;border-radius:8px;background:#fff}.help{color:var(--muted);font-size:.92rem}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:start}.summary-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:20px 0}.summary-grid article{border:1px solid #d4e0eb;border-radius:10px;padding:15px;background:#f8fbfe}.summary-grid strong{display:block;font-size:1.65rem;color:#0b2948}.summary-grid span{color:var(--muted)}.validation{padding:14px 16px;border-radius:9px;margin:14px 0}.validation.ok{background:#e8f7ef;color:#135c3c;border:1px solid #b7e4cc}.validation.warn,.badge.warn{background:#fff7dc;color:#745700;border:1px solid #ecd47b}.validation.bad,.badge.bad{background:#fdeaea;color:#842828;border:1px solid #efbcbc}.badge.muted{background:#edf1f5;color:#526273}.confirm-box,.rollback-box{margin-top:18px;padding:16px;border:1px solid #c9d8e6;border-radius:10px;background:#f7fafc;display:flex;justify-content:space-between;gap:18px;align-items:center}.rollback-box{border-color:#efbcbc;background:#fff8f8}.danger{background:#a12626}.button.secondary{background:#e8eef5;color:#153b60}@media(max-width:850px){.import-form{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}.confirm-box,.rollback-box,.section-head{display:grid}}@media(max-width:480px){.summary-grid{grid-template-columns:1fr}}
.head-actions{display:flex;gap:10px;flex-wrap:wrap}
.cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.eligibility-form{display:grid;grid-template-columns:1.2fr .65fr 1.5fr auto;gap:12px;align-items:end}.eligibility-form select,.policy-form select,.policy-form input,.rule-form select,.rule-form input,.student-picker select,.stack-form select,.stack-form input,.stack-form textarea{width:100%;padding:10px;border:1px solid #bcccdc;border-radius:8px;background:#fff;font:inherit}.policy-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:end;margin:20px 0 24px}.decision-card{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;padding:20px;border-radius:12px;margin:22px 0;border:1px solid #c9d8e6}.decision-card.ok{background:#e8f7ef;border-color:#b7e4cc}.decision-card.warn{background:#fff7dc;border-color:#ecd47b}.decision-card.bad{background:#fdeaea;border-color:#efbcbc}.decision-card h3{font-size:1.55rem;margin:.25rem 0}.decision-card dl{margin:0}.decision-card dl div{margin-bottom:9px}.decision-card dt{font-size:.8rem;color:var(--muted);font-weight:800;text-transform:uppercase}.decision-card dd{margin:0}.rule-table{max-height:680px}.rule-form{display:grid;grid-template-columns:1.25fr 1.25fr 70px auto auto;gap:7px;align-items:center;min-width:650px}.compact-check{display:flex;align-items:center;gap:5px;font-size:.85rem}.compact-check input{width:auto}.student-picker{display:flex;gap:12px;align-items:end}.student-picker label{min-width:min(580px,75vw)}.student-summary{display:flex;justify-content:space-between;gap:18px;background:#eaf3fa;border-radius:10px;padding:14px 16px;margin:18px 0}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.stack-form{display:grid;gap:12px;padding:18px;border:1px solid #d9e2ec;border-radius:12px;background:#f8fbfe}.stack-form h3{margin:0}.stack-form textarea{min-height:90px;resize:vertical}@media(max-width:980px){.eligibility-form,.policy-form{grid-template-columns:1fr 1fr}.decision-card{grid-template-columns:1fr}}@media(max-width:720px){.eligibility-form,.policy-form,.two-columns{grid-template-columns:1fr}.student-picker,.student-summary{display:grid}.rule-table{max-height:none}}
