:root{color:#14243b;font-synthesis:none;background:#f5f6f8;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,a{font:inherit}button{cursor:pointer}.masthead{color:#fff;background:#102340;justify-content:space-between;align-items:center;height:70px;padding:0 max(20px,50vw - 430px);display:flex;box-shadow:0 2px 12px #10234018}.brand{letter-spacing:.03em;color:#fff;align-items:center;gap:14px;min-width:0;font-size:.9rem;font-weight:700;text-decoration:none;display:flex}.brand-logo{border-radius:7px;flex:none;width:auto;height:45px;display:block}.masthead nav{flex:none;align-items:center;gap:16px;display:flex}.nav-link{color:#f2c57a;border:1px solid #f2c57a80;border-radius:999px;padding:6px 13px;font-size:.85rem;font-weight:750;text-decoration:none}.brand-mark{color:#f2c57a;letter-spacing:-.05em;border:1.5px solid #e2b56e;border-radius:50%;place-items:center;width:46px;height:46px;font-family:Georgia,serif;font-size:1rem;display:grid}.text-button{color:#fff;text-underline-offset:4px;background:0 0;border:0;text-decoration:underline}main{max-width:860px;margin:0 auto;padding:42px 20px 48px}footer{text-align:center;color:#8b95a3;padding:25px 12px;font-size:.8rem}.hero{text-align:center;background:#fff;border:1px solid #e9ebef;border-radius:24px;max-width:560px;margin:7vh auto 0;padding:44px 30px;box-shadow:0 14px 45px #15294e0d}.spark{color:#d7a457;margin-bottom:15px;font-size:2.5rem}.eyebrow{letter-spacing:.16em;color:#a57937;text-transform:uppercase;margin:0 0 14px;font-size:.75rem;font-weight:800}h1,h2{color:#102340;margin:0;font-family:Georgia,Times New Roman,serif}h1{font-size:clamp(2rem,5vw,3.15rem);line-height:1.1}h2{font-size:1.65rem}.lead,.intro p:not(.eyebrow),.panel p{color:#586579;line-height:1.6}.lead{margin:23px auto 28px;font-size:1.1rem}.fine{color:#768396;margin-top:17px;font-size:.82rem}.primary,.secondary{border-radius:10px;justify-content:center;align-items:center;min-height:48px;padding:11px 22px;font-weight:750;text-decoration:none;display:inline-flex}.primary{color:#102340;background:#c7934e;border:1px solid #bd873d;box-shadow:0 3px #a87532}.primary:hover{background:#e1ad67}.primary:disabled{opacity:.5;cursor:default;box-shadow:none}.secondary{color:#183454;background:#fff;border:1px solid #b8c3d2}.intro{margin:0 0 28px}.intro p:not(.eyebrow){max-width:620px;margin:16px 0 0}.ranking{gap:10px;margin:0;padding:0;list-style:none;display:grid}.candidate{background:#fff;border:1px solid #e2e7ed;border-radius:15px;grid-template-columns:44px 1fr 52px;align-items:center;gap:13px;min-height:86px;padding:9px 12px;display:grid;box-shadow:0 2px 8px #15294e0a}.candidate.dragging{border-color:#d8a75b;box-shadow:0 12px 30px #15294e2b}.position{color:#23466e;background:#edf1f6;border-radius:11px;place-items:center;width:39px;height:39px;font-size:1.05rem;font-weight:800;display:grid}.candidate-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.candidate-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.candidate-copy span{color:#515d70;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.candidate-copy small{color:#778394;font-size:.8rem}.new{color:#926018;background:#fff1d8;border-radius:999px;margin-left:8px;padding:2px 7px;font-style:normal;font-weight:750;display:inline-block}.handle{color:#647289;touch-action:none;cursor:grab;background:#f3f5f8;border:0;border-radius:10px;width:44px;height:56px;font-size:2rem}.handle:active{cursor:grabbing}.save-bar{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:13px 20px calc(13px + env(safe-area-inset-bottom));background:#f5f6f8f2;border-top:1px solid #dfe5eb;position:fixed;bottom:0;left:0;right:0}body.has-save-bar footer{padding-bottom:calc(110px + env(safe-area-inset-bottom))}.save-inner{justify-content:space-between;align-items:center;gap:18px;max-width:820px;margin:auto;display:flex}.save-inner span{color:#526075;font-size:.9rem;font-weight:650}.admin{margin-top:58px}.admin .panel{margin-top:20px}.panel{background:#fff;border:1px solid #e3e8ee;border-radius:18px;padding:30px;box-shadow:0 3px 14px #15294e0a}.centered{text-align:center;max-width:650px;margin:7vh auto}.centered p:last-child{margin-bottom:0}.selected-list{text-align:left;gap:10px;margin-top:25px;display:grid}.selected-list div{border-bottom:1px solid #e7eaf0;justify-content:space-between;gap:15px;padding:10px 0;display:flex}.selected-list span{color:#667487}.result-table{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.89rem}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #e7eaf0;padding:11px 9px}th{color:#5e6a7a;text-transform:uppercase;letter-spacing:.07em;font-size:.75rem}td:first-child{color:#a57937;font-weight:800}.notice{border-radius:9px;padding:12px 15px}.error{background:#fff0ed;color:#9d301c!important}@media (width<=600px){.masthead{height:62px;padding:0 17px}.brand{gap:9px;font-size:.8rem}.brand-logo{height:38px}.masthead nav{gap:10px}.nav-link{padding:5px 10px;font-size:.8rem}.brand span:last-child{white-space:nowrap;text-overflow:ellipsis;max-width:180px;overflow:hidden}main{padding:28px 15px 36px}.hero{margin:2vh auto 0;padding:39px 23px}.candidate{grid-template-columns:37px 1fr 48px;gap:9px;min-height:80px;padding:9px}.position{width:35px;height:35px}.handle{width:43px}.save-bar{padding-left:15px;padding-right:15px}.save-inner{gap:10px}.save-inner span{font-size:.78rem}.save-inner .primary{min-width:135px;padding:10px 12px}.panel{padding:23px}.selected-list div{flex-direction:column;gap:2px}}:root .video-link{color:#245c94;text-underline-offset:2px;font-weight:750;text-decoration:underline}.hero-logo{border-radius:12px;width:150px;height:auto;margin:0 auto 22px;display:block;box-shadow:0 6px 20px #15294e1f}.intro .description{white-space:pre-line;font-size:1.05rem;color:#33435a!important}.closing{background:#fff6e5;border:1px solid #f0d49e;border-radius:10px;padding:9px 14px;display:inline-block;color:#7a5414!important;line-height:1.45!important}.closing strong{color:#5f3f08}.admin-hint{text-align:center;margin-top:24px}.admin-form{gap:16px;margin-bottom:22px;display:grid}.admin-form h2,.admin-form h3{margin:0}.admin-form h3{color:#102340;grid-column:1/-1;font-family:Georgia,Times New Roman,serif;font-size:1.2rem}.field{color:#3b4a60;gap:6px;font-size:.85rem;font-weight:700;display:grid}.field input,.field textarea{font:inherit;color:#14243b;background:#fff;border:1px solid #c9d2de;border-radius:9px;width:100%;min-height:44px;padding:10px 12px;font-size:16px;font-weight:400}.field textarea{resize:vertical;line-height:1.5}.field input:focus,.field textarea:focus{outline-offset:1px;border-color:#c7934e;outline:2px solid #c7934e}.field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.check{color:#26364d;align-items:center;gap:10px;min-height:32px;font-weight:650;display:flex}.check input{accent-color:#c7934e;width:20px;height:20px}.hint{margin:0;font-size:.86rem;color:#6a7689!important}.form-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;align-items:center;gap:14px;display:flex}.form-status{color:#3c7a4a;font-size:.88rem;font-weight:650}.error-text{color:#9d301c}.candidate-forms{gap:10px;display:grid}.candidate-edit{background:#fff;border:1px solid #e2e7ed;border-radius:14px}.candidate-edit[open]{border-color:#d8b47a}.candidate-edit summary{cursor:pointer;grid-template-columns:1fr auto;align-items:center;gap:10px;min-height:56px;padding:13px 15px;list-style:none;display:grid}.candidate-edit summary::-webkit-details-marker{display:none}.candidate-edit summary strong{color:#14243b;display:block}.candidate-edit summary span{color:#5a6779;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;display:block;overflow:hidden}.candidate-edit summary em{color:#245c94;font-size:.8rem;font-style:normal;font-weight:750}.candidate-edit[open] summary em,.candidate-edit.inactive summary strong,.candidate-edit.inactive summary span{color:#8b95a3}.candidate-edit .candidate-form{border:0;border-top:1px solid #edf0f4;border-radius:0 0 14px 14px}.tag{color:#5f6b7c;vertical-align:1px;background:#eceff3;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:.72rem;font-weight:750;display:inline-block}.candidate-form{background:#fbfcfd;border:1px solid #e2e7ed;border-radius:14px;grid-template-columns:2fr 2fr 1fr;gap:12px 14px;padding:16px;display:grid}.candidate-form .full,.candidate-form .check{grid-column:1/-1}.candidate-id{letter-spacing:.1em;text-transform:uppercase;grid-column:1/-1;margin:0;font-size:.75rem;font-weight:800;color:#a57937!important}.new-candidate{background:#fffaf1;border-style:dashed;border-color:#d8b47a;margin-top:8px}.admin-results #admin-content{margin-top:16px}@media (width<=600px){.field-row{grid-template-columns:1fr}.candidate-form .field:not(.wide),.candidate-form .wide{grid-column:1/-1}.brand span:last-child{max-width:130px}}.candidate-edit summary .tag{color:#5f6b7c;font-size:.72rem;display:inline-block}.candidate-edit summary>div,.candidate-forms,.candidate-edit{min-width:0}.admin-nav{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.admin-nav button{color:#183454;background:#fff;border:1px solid #c9d2de;border-radius:999px;padding:7px 14px;font-size:.85rem;font-weight:700}.admin-results{margin-bottom:22px}.admin-results h3{color:#102340;margin:26px 0 10px;font-family:Georgia,Times New Roman,serif;font-size:1.2rem}.panel-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.secondary.small{min-height:38px;padding:6px 14px;font-size:.85rem}tr.is-selected td{background:#fffaf1}.vote-ranking{border-top:1px solid #edf0f4;gap:7px;margin:0;padding:12px 16px 14px 40px;display:grid}.vote-ranking li{color:#14243b;font-weight:650}.vote-ranking li span{color:#5a6779;font-weight:400}.vote-later{padding:0 16px 14px}.pending-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.pending-list li{border-bottom:1px solid #edf0f4;flex-direction:column;padding:6px 0;display:flex}.pending-list span{color:#5a6779;font-size:.85rem}#ranking-panel,#votes-panel,#contest-form,#candidates-panel{scroll-margin-top:16px}.selected-tag{color:#7a5414;background:#f6e3bf;margin:5px 0 0}.admin-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.admin-list li{border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:11px 0;display:flex}.admin-list li>span:first-child{overflow-wrap:anywhere;color:#14243b;min-width:0;font-weight:650}.owner-tag{color:#7a5414;background:#f6e3bf;flex:none}.text-danger{color:#9d301c;text-underline-offset:3px;background:0 0;border:0;flex:none;padding:8px 4px;font-weight:750;text-decoration:underline}.text-danger:disabled{opacity:.5}#admins-status:empty{display:none}.add-admin{gap:10px;display:grid}#admins-panel{scroll-margin-top:16px}.import-box{background:#fffaf1;border:1px dashed #d8b47a;border-radius:14px;margin:4px 0 10px}.import-box>summary{cursor:pointer;color:#7a5414;padding:14px 16px;font-weight:750;list-style:none}.import-box>summary::-webkit-details-marker{display:none}.import-box>summary:before{content:"▸ "}.import-box[open]>summary:before{content:"▾ "}.import-box>form,.import-box>#yt-preview{padding:0 16px 16px}.yt-summary{color:#26364d;margin:4px 0 8px;font-weight:700}.yt-toolbar{gap:16px;margin-bottom:10px;display:flex}.text-button-dark{color:#245c94;text-underline-offset:3px;background:0 0;border:0;padding:4px 0;font-weight:750;text-decoration:underline}.yt-items{gap:10px;margin-bottom:14px;display:grid}.yt-item{background:#fff;border:1px solid #e2e7ed;border-radius:12px;grid-template-columns:2fr 2fr 1fr;gap:10px 14px;min-width:0;margin:0;padding:12px 14px;display:grid}.yt-item .check,.yt-item .yt-title{grid-column:1/-1}.yt-item.excluded{background:#f3f4f6}.yt-item.excluded .field{opacity:.55}.yt-title{overflow-wrap:anywhere;font-size:.88rem}@media (width<=600px){.yt-item{grid-template-columns:1fr}}.candidate-form .form-actions .text-danger{margin-right:auto}footer a{color:#8b95a3}
