:root { --admin-ink:#17251e; --admin-green:#174f36; --admin-mist:#f2f6f3; --admin-line:#dce6df; }
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:9999;background:#fff;color:#164c33;padding:.75rem 1rem;border:2px solid #198754;font-weight:700}.skip-link:focus{top:1rem}.btn:focus-visible,a:focus-visible,.form-control:focus-visible,.form-select:focus-visible,summary:focus-visible{outline:3px solid #9acb53;outline-offset:3px}.photo-review-card{border:1px solid #dce4dd;border-radius:.5rem;overflow:hidden;background:#fff}.photo-review-media{background:#102d20;min-height:280px;position:relative}.photo-review-media>a{display:block;height:100%}.photo-review-media img{width:100%;height:100%;min-height:280px;object-fit:contain}.photo-actions{position:absolute;left:0;right:0;bottom:0;display:flex;background:rgba(0,0,0,.75)}.photo-actions a{color:#fff;flex:1;text-align:center;padding:.6rem;text-decoration:none;font-size:.8rem}.photo-actions a:hover{background:#198754}.photo-meta{display:grid;grid-template-columns:70px 1fr;gap:.25rem .75rem;font-size:.82rem;margin-bottom:1rem}.photo-meta dt{color:#6c757d}.photo-meta dd{margin:0;overflow-wrap:anywhere}.verification-form label,.jury-panel label{font-size:.75rem;font-weight:700}.jury-panel{border-top:1px solid #dce4dd;background:#f6f8f6}.jury-panel summary{cursor:pointer;padding:.8rem 1rem;font-weight:700;color:#17603e}.queue-indicator{border-radius:50rem;padding:.35rem .75rem;font-size:.75rem;font-weight:700}.queue-indicator.queued{background:#fff3cd;color:#664d03}.queue-indicator.failed{background:#f8d7da;color:#842029}.queue-indicator.clear{background:#d1e7dd;color:#0f5132}.rank-badge{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e3f2e9;color:#17603e;font-weight:800}.field-validation-error{display:block;color:#b02a37;font-size:.8rem;margin-top:.25rem}@media(max-width:991px){.position-sticky{position:static!important}.photo-review-media{min-height:220px}.photo-review-media img{min-height:220px;max-height:400px}}
.credential-reveal{border:2px solid #d4b46a;background:#fff9e9;padding:1.5rem;margin-bottom:1.5rem}.credential-reveal p{margin:.3rem 0;color:#6c6250}.credential-reveal dl{display:grid;grid-template-columns:150px 1fr;margin:1rem 0 0}.credential-reveal dt,.credential-reveal dd{padding:.35rem 0;margin:0}.credential-reveal code{font-size:1rem;color:#5d3d00}.jury-capacity{background:#e9f3ed;color:#185c38;padding:.5rem .8rem;border-radius:50px;font-weight:700}.jury-matrix th small,.jury-matrix td small{display:block;font-weight:400;white-space:nowrap}.jury-matrix th{min-width:110px}.jury-matrix th:first-child{min-width:auto}.jury-matrix .final-row{background:#f3fbf5}.final-average{font-size:1.1rem;color:#175d39}@media(max-width:991px){.credential-reveal dl{grid-template-columns:1fr}.credential-reveal dd{padding-top:0}}
.admin-body { background:var(--admin-mist); color:var(--admin-ink); min-height:100vh; }
.admin-nav { background:var(--admin-green); box-shadow:0 2px 12px rgba(0,0,0,.12); }
.admin-tabs { display:flex; gap:.35rem; padding:.35rem; background:#fff; border:1px solid var(--admin-line); border-radius:.7rem; width:max-content; }
.admin-tabs a { color:var(--admin-ink); padding:.55rem .9rem; text-decoration:none; border-radius:.45rem; }
.admin-tabs a:hover { background:var(--admin-mist); color:var(--admin-green); }
.admin-card { background:#fff; border:1px solid var(--admin-line); border-radius:.8rem; box-shadow:0 5px 18px rgba(25,59,42,.05); }
.metric { padding:1.2rem; height:100%; }
.metric .value { font-size:1.8rem; font-weight:700; color:var(--admin-green); }
.metric .label { color:#607067; font-size:.85rem; text-transform:uppercase; letter-spacing:.04em; }
.table > :not(caption) > * > * { padding:.85rem; }
.status-pill { display:inline-block; border-radius:99rem; padding:.25rem .65rem; background:#e7f0ea; color:#174f36; font-size:.8rem; font-weight:600; }
.detail-label { color:#68776f; font-size:.8rem; text-transform:uppercase; letter-spacing:.04em; }
.login-shell { max-width:440px; margin:8vh auto; }
