html,body{min-height:100%;background:#f6f7f9}.brand-logo{width:30px;height:30px;object-fit:contain}.app-navbar{background:var(--brand)}.btn-brand{background:var(--brand);border-color:var(--brand);color:#fff}.btn-brand:hover,.btn-brand:focus{filter:brightness(.9);color:#fff}.metric-card{display:block;height:100%;padding:1rem;border-radius:.75rem;background:#fff;border:1px solid #e4e7eb}.metric-card-link{transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}.metric-card-link:hover,.metric-card-link:focus{transform:translateY(-1px);border-color:var(--brand);box-shadow:0 .25rem .75rem rgba(0,0,0,.06)}.metric-action{margin-top:.35rem;font-size:.78rem;color:#667085}.metric-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#667085}.metric-value{font-size:1.8rem;font-weight:700}.assignment-card{height:100%;transition:transform .12s ease,border-color .12s ease}.assignment-card:hover{transform:translateY(-1px);border-color:var(--brand)}.slot-card{background:#fff;border:1px solid #e2e5e9;border-radius:.75rem;padding:1rem}.status-pill{display:inline-block;border-radius:999px;padding:.3rem .65rem;font-size:.8rem;font-weight:600}.status-complete{background:#dcfce7;color:#166534}.status-incomplete{background:#fff7ed;color:#9a3412}.status-excess{background:#fee2e2;color:#991b1b}.status-conflict{background:#fef3c7;color:#92400e;border:1px solid #f59e0b}.empty-state{padding:2rem;border:1px dashed #c9ced6;border-radius:.75rem;color:#667085;text-align:center}.form-control:focus,.form-select:focus,.form-check-input:focus,.btn:focus{box-shadow:0 0 0 .25rem color-mix(in srgb,var(--brand) 25%,transparent)}code{word-break:break-all}@media(max-width:575.98px){.table-responsive{font-size:.9rem}.metric-value{font-size:1.5rem}.btn{min-height:42px}.btn-sm{min-height:36px}}@media print{body{background:#fff}.no-print,.navbar{display:none!important}main{padding:0!important}.print-header{text-align:center;margin-bottom:1.5rem}.print-header h1{font-size:1.35rem}.print-header h2{font-size:1rem}.print-assignment{break-inside:avoid;margin-bottom:1.5rem}.print-assignment h3{font-size:1rem;border-bottom:1px solid #000;padding-bottom:.25rem}.print-slot{break-inside:avoid}.print-slot ul{margin-top:.25rem}}

.public-lookup-shell{max-width:1100px}.lookup-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:color-mix(in srgb,var(--brand) 12%,white);color:var(--brand);font-size:2.2rem;font-weight:700}.public-lookup-shell .list-group-item form,.public-lookup-shell form.list-group-item{margin:0}.brand-logo{background:#fff;border-radius:.45rem;padding:2px}
