.collection-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:22px 0 8px}
.primary{background:var(--gold)!important;color:#171309!important;border-color:var(--gold)!important}
#sync-status{min-height:22px;font-size:13px} .error{color:#ff9c90!important}
dialog{background:var(--panel,#202028);color:var(--text,#eee);border:1px solid var(--line,#444);border-radius:18px;width:min(700px,calc(100% - 32px));max-height:88dvh;padding:24px;box-sizing:border-box}
dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}
.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-head h2{margin:0}
dialog p{color:var(--muted);line-height:1.5} dialog label{display:block;margin:14px 0 6px}
dialog input,dialog select,dialog textarea{box-sizing:border-box;width:100%;background:#15151b;color:var(--text);border:1px solid var(--line);border-radius:8px;padding:12px;font:inherit}
.search-row{display:flex;gap:8px}.search-row input{min-width:0}.search-row button{flex-shrink:0}
dialog button:disabled{opacity:.55;cursor:wait}.result{display:flex;gap:14px;border-top:1px solid var(--line);padding:16px 0;align-items:start}
.result img{width:68px;border-radius:6px}.result-info{flex:1;min-width:0}.result h3{margin:0 0 6px;font-size:16px}.result p{font-size:13px;margin:6px 0 10px}
details{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}summary{cursor:pointer;font-weight:700;color:var(--gold)}
.manual-grid{display:grid;grid-template-columns:1fr 2fr;gap:14px}#search-results{max-height:44dvh;overflow:auto}
#login-dialog{max-width:440px}#login-error,#manual-error{color:#ff9c90}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
[hidden]{display:none!important}
.card .scores{max-width:100%;flex-shrink:1}.card h3{flex-basis:100%}.card .pill{white-space:normal;overflow-wrap:anywhere}
.card .mark-btns{flex-wrap:wrap}.card .card-body{overflow-wrap:anywhere}
.school-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.school-choice{width:100%;aspect-ratio:1;background:#f6f5ef;border:3px solid transparent;border-radius:14px;padding:14px;cursor:pointer;transition:transform .15s,border-color .15s}
.school-choice:hover{border-color:var(--gold);transform:translateY(-2px)}
.school-choice img{width:100%;height:100%;object-fit:contain;display:block}
#login-dialog{max-width:560px}
@media(max-width:520px){dialog{padding:18px}.manual-grid{grid-template-columns:1fr}.collection-actions{gap:8px}.result{gap:10px}.result img{width:50px}}
