.navlink{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.page-shell{width:min(1000px,100%);margin:auto}.page-card{padding:clamp(22px,5vw,46px);background:linear-gradient(180deg,rgba(28,34,48,.97),rgba(18,22,31,.99));border:1px solid #303849;border-radius:22px;box-shadow:0 20px 55px rgba(0,0,0,.38)}.page-card h2{font-size:clamp(1.8rem,5vw,3rem);margin:0 0 10px;letter-spacing:-.035em}.page-card p{color:#aab2c2;line-height:1.6}.public-form{display:grid;gap:14px;margin-top:24px}.public-form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.public-form label{display:grid;gap:6px;color:#aab2c2;font-size:.86rem}.public-form input,.public-form textarea,.public-form select{width:100%;border:1px solid #303849;background:#0e131b;color:#f6f7fb;border-radius:10px;padding:11px}.public-form textarea{min-height:88px;resize:vertical}.form-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.notice{border:1px solid #40506a;border-radius:14px;padding:14px;background:rgba(140,228,199,.06);color:#dce5f5}.notice.warn{border-color:#765364;background:rgba(255,152,165,.06)}.candidate-list{display:grid;gap:8px;margin-top:12px}.candidate{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:12px;border:1px solid #303849;border-radius:12px;background:#10151e}.candidate small{display:block;color:#aab2c2;margin-top:4px}.candidate .score{color:#8ce4c7;font-weight:800}.status-badge{display:inline-block;border:1px solid #40506a;border-radius:999px;padding:5px 9px;color:#8ce4c7;font-size:.74rem;font-weight:800}.cover-preview{width:min(280px,100%);aspect-ratio:1;object-fit:contain;background:#0e131b;border:1px solid #303849;border-radius:14px}.admin-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:16px}.admin-list{display:grid;gap:7px;max-height:75vh;overflow:auto}.admin-item{width:100%;text-align:left;border:1px solid #303849;background:#10151e;color:#f6f7fb;border-radius:11px;padding:11px}.admin-item:hover,.admin-item.active{border-color:#8ce4c7}.admin-item small{display:block;color:#aab2c2;margin-top:3px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px}.history{display:grid;gap:6px}.history-entry{padding:9px;border-left:3px solid #40506a;background:#10151e;color:#aab2c2}.danger-btn{border:1px solid #713c49;border-radius:11px;padding:11px 15px;background:#331a22;color:#ffd6dc;font-weight:800}.success-btn{border:0;border-radius:11px;padding:11px 15px;background:#8ce4c7;color:#07110f;font-weight:900}.secondary-btn{border:1px solid #303849;border-radius:11px;padding:11px 15px;background:#1a202c;color:#f6f7fb}.tiny{font-size:.78rem;color:#7f899d}.hidden{display:none!important}@media(max-width:760px){.public-form .row,.admin-grid,.detail-grid{grid-template-columns:1fr}.admin-list{max-height:38vh}}
.candidate-cover{width:72px;height:72px;object-fit:contain;background:#0e131b;border:1px solid #303849;border-radius:9px}.candidate-cover-missing{display:grid;place-items:center;text-align:center;padding:5px;color:#7f899d;font-size:.68rem}.candidate{grid-template-columns:72px minmax(0,1fr) auto}.candidate>div:last-child{display:grid;justify-items:end;gap:7px}.candidate code,.notice code{word-break:break-all}.admin-note{border:1px solid #40506a;border-radius:10px;padding:10px;background:#0f151e;color:#dce5f5}.admin-actions{display:grid;gap:12px;margin-top:16px}.admin-actions form{border-top:1px solid #303849;padding-top:14px}.checkbox-line{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:9px!important}.checkbox-line input{width:auto!important;margin-top:3px}.muted{color:#aab2c2}.error{color:#ffb1ba}.success{color:#8ce4c7}@media(max-width:620px){.candidate{grid-template-columns:56px minmax(0,1fr)}.candidate-cover{width:56px;height:56px}.candidate>div:last-child{grid-column:1/-1;justify-items:start}}
