:root{--bg:#fffaf2;--fg:#2c2522;--card:#fff;--mut:#726962;--bd:#e9dfd2;--pri:#23594c;--pri2:#ecf3ee;--ok:#23594c;--no:#ad3434;--red:#9e2e35;--gold:#b89559;color-scheme:light}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:#eee9e1;font-family:"Noto Sans Devanagari","Kohinoor Devanagari",Mukta,system-ui,sans-serif;color:var(--fg);font-size:17px;line-height:1.65}.phone-shell{max-width:480px;min-height:100dvh;margin:auto;background:var(--bg);position:relative;box-shadow:0 0 80px #4833230b}button,input,select,textarea{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ad7333;outline-offset:4px}button{border:0}button:active{transform:translateY(1px)}.topbar{display:flex;align-items:center;gap:10px;padding:17px 20px 13px;border-bottom:1px solid var(--bd);background:#fffdf8}.brand-mark{display:grid;place-items:center;width:35px;height:39px;border:1px solid #cda6a3;background:#f9edeb;color:var(--red);font-size:24px;font-weight:700;border-radius:12px 12px 4px 4px}.topbar b{display:block;font-size:17px;line-height:1.4}.topbar div>span{display:block;font-size:10px;color:var(--mut);margin-top:2px;letter-spacing:.2px}.year-mark{font-size:12px;margin-left:auto;color:#9d7761;border:1px solid var(--bd);padding:4px 8px;border-radius:6px}main{padding:0 20px 110px}.tribute{text-align:center;padding:24px 0 8px}.tribute-caption{display:flex;align-items:center;justify-content:center;gap:10px;font-size:12px;letter-spacing:1px;color:#88664a;font-weight:650}.tribute-caption>span{width:28px;height:1px;background:#d4be98}.portrait-frame{width:104px;height:108px;margin:13px auto 8px;border-radius:50% 50% 44% 44%;padding:4px;border:1px solid #c6a36d;background:#fff8e8;box-shadow:0 5px 20px #7e413018}.portrait-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:49% 43%;border-radius:50% 50% 44% 44%}.tribute-name{font-size:15px;font-weight:700;margin:6px 0 12px;color:#704239}.tribute-rule{display:flex;align-items:center;justify-content:center;gap:12px;color:#b89b68;font-size:12px}.tribute-rule i{height:1px;width:72px;background:linear-gradient(90deg,transparent,#d6c6a9)}.tribute-rule i:last-child{transform:rotate(180deg)}.page-intro{text-align:center;margin:13px 0 23px}.eyebrow{color:var(--red);font-size:11px;font-weight:700;letter-spacing:1.3px}h1{font-size:31px;line-height:1.4;margin:4px 0 5px;letter-spacing:-.7px}h2{font-size:20px;line-height:1.4;margin:0}.page-intro p{color:var(--mut);font-size:14px;margin:0}.search-box{border:1px solid var(--bd);background:var(--card);padding:20px 18px 14px;border-radius:19px;box-shadow:0 6px 24px #694b2310}.l{display:block;font-size:16px;font-weight:650;margin:18px 0 8px}.primary-label{display:flex;align-items:center;gap:9px;font-size:19px;margin:0 0 12px}.step{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;color:var(--red);background:#faefea;font-size:14px}input[type=text],select,textarea{width:100%;min-height:56px;border:1.5px solid #d8cfc2;border-radius:10px;background:#fffefa;color:var(--fg);padding:12px;font-size:18px;outline:none}input::placeholder{color:#9a9186;font-size:16px}input:focus,select:focus,textarea:focus{border-color:var(--pri);box-shadow:0 0 0 3px #23594c13}.field-help{font-size:12px;color:var(--mut);margin:7px 0 0}.optional{font-size:12px;font-weight:400;color:var(--mut)}details{margin:18px 0}.more-details{border-top:1px solid var(--bd);border-bottom:1px solid var(--bd)}summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;min-height:58px;list-style:none;font-size:14px;font-weight:600;color:var(--pri);padding:12px 0}summary::-webkit-details-marker{display:none}.plus{font-size:24px;line-height:1;font-weight:400}details[open]>summary .plus{transform:rotate(45deg)}.extra-body{padding-bottom:16px}.extra-body>.l:first-child{margin-top:2px}.primary-search{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--pri);color:white;border-radius:11px;min-height:60px;font-size:21px;font-weight:700;box-shadow:0 4px 8px #23594c19}.clear-button{display:block;margin:9px auto 0;min-height:44px;background:none;color:var(--mut);font-size:13px;text-decoration:underline;text-underline-offset:4px}.load-status{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:8px;font-size:11px;color:var(--mut)}.status-dot{width:5px;height:5px;border-radius:50%;background:#548569;flex:none}#bar{height:3px;border-radius:5px;overflow:hidden;margin-top:8px;background:#f3ede3}#barf{height:3px;background:var(--pri);width:0}.help-card{display:flex;align-items:flex-start;gap:12px;padding:20px 3px 16px}.help-icon{display:grid;place-items:center;flex:none;width:27px;height:27px;background:#f2eadd;border-radius:50%;color:#8d7454;font-size:15px;margin-top:2px}.help-card b{font-size:14px}.help-card p{font-size:12px;color:var(--mut);margin:3px 0 0;line-height:1.9}.area-box{background:#f8f2e8;border:1px solid var(--bd);border-radius:12px;padding:0 13px}.area-box summary{font-size:13px;color:#736149}.secondary-action,.download-button{width:100%;min-height:50px;border:1px solid #b9cfc1;border-radius:10px;background:var(--pri2);color:var(--pri);font-size:15px;font-weight:650;margin-top:12px}.download-button{margin:16px 0}.download-button>span{font-size:23px;margin-right:6px}.results:empty{display:none}.results{scroll-margin-top:15px;margin-top:26px}.results>p{font-size:17px;line-height:1.7}.m{color:var(--mut);font-size:13px}.note{padding:14px;border:1px solid #e7d9b4;background:#fff6de;border-radius:12px;font-size:14px;line-height:1.8;margin:12px 0;color:#765a25}.card{background:var(--card);border:1px solid var(--bd);border-radius:16px;padding:18px 15px;margin:15px 0;box-shadow:0 3px 12px #5d3b1105}.hd{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.nm{font-size:22px;line-height:1.5;font-weight:750;color:var(--fg)}.sub{font-size:16px;margin:9px 0}.meta{display:flex;gap:9px;flex-wrap:wrap;color:var(--mut);font-size:13px}.ad{font-size:15px;margin-top:10px;line-height:1.8}.wd{color:var(--pri);font-size:13px;margin-top:6px}.bt{color:var(--mut);font-size:12px;margin-top:10px;line-height:1.9;padding-top:10px;border-top:1px dashed var(--bd)}.tags{margin:12px 0}.badge{display:inline-block;flex:none;font-size:10px;padding:3px 7px;border-radius:6px;white-space:nowrap}.c0,.c1{color:#2b644a;background:#e9f3e9}.c2{color:#8d6d32;background:#fbf0d8}.t{background:#f2eee7;color:#79664d;margin-right:6px}.dup{background:#fff1df;color:#8d602e}.chip{font-size:11px;display:inline-block;margin-right:6px}.ok{color:var(--ok)}.no{color:var(--no)}button.s{min-height:44px;padding:9px 10px;border:1px solid #dce5dc;border-radius:8px;background:#f3f7f2;color:var(--pri);font-size:12px;font-weight:650;margin:5px 5px 0 0}.results>button{min-height:50px;border-radius:10px;background:var(--pri2);color:var(--pri);width:100%;font-size:15px;padding:10px}.fam{background:#f5f6ef;padding:12px;border-radius:10px;font-size:13px;margin-top:12px}.fam p{margin:7px 0}.page-footer{text-align:center;font-size:12px;color:#8b7c6a;margin:30px 0 0}.page-footer span{margin:0 6px;color:#b89559}.page-footer small{display:inline-block;font-size:11px;margin-top:3px;color:#a19382}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:480px;display:flex;gap:10px;padding:10px 18px calc(10px + env(safe-area-inset-bottom));background:#fffdf9f5;backdrop-filter:blur(14px);border-top:1px solid var(--bd);z-index:10;box-shadow:0 -5px 20px #58381e05}.bottom-nav button{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;background:transparent;color:#8c8175;border-radius:12px;min-height:54px;font-size:16px;font-weight:650}.bottom-nav button.on{background:#f7e9e5;color:var(--red)}.poster-card{background:white;border:1px solid var(--bd);border-radius:16px;overflow:hidden;margin:0 0 22px}.poster-heading{display:flex;gap:11px;align-items:center;padding:17px 15px}.section-number{color:var(--red);border-right:1px solid #e6cfc7;padding-right:11px;font-size:21px;line-height:1.2}.poster-heading p{font-size:12px;color:var(--mut);margin:3px 0 0}.poster-image{display:block;padding:0;background:#f8f1e4;width:100%;line-height:0}.poster-image img{display:block;width:100%;height:auto}.poster-open{display:flex;justify-content:space-between;align-items:center;background:white;color:var(--red);width:100%;min-height:56px;padding:12px 15px;font-size:14px;font-weight:650}.poster-open span{font-size:21px}.sheet{position:fixed;inset:0;background:#211b1b8c;z-index:30;align-items:flex-end}.sheet>div{width:100%;max-width:480px;margin:auto auto 0;max-height:90dvh;overflow:auto;background:var(--bg);padding:22px 18px calc(22px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.sheet .row{display:flex;gap:8px;margin-top:12px}.sheet .row button{flex:1;min-height:50px;border-radius:10px;padding:10px;background:var(--pri);color:#fff}.sheet textarea{font-size:15px;line-height:1.8}.sheet .m{font-size:12px}.kp{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.kp div{padding:10px;border:1px solid var(--bd);border-radius:10px;background:white}.kp b{display:block;font-size:23px;color:var(--pri)}.kp span{font-size:11px}.w{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}td,th{text-align:left;padding:10px 5px;border-bottom:1px solid var(--bd);min-width:45px}.area-box .row{display:flex;gap:5px}.area-box .row button{flex:1;min-height:48px;background:var(--pri2);color:var(--pri);border-radius:9px;font-size:13px;margin-top:10px}dialog{padding:0;border:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;background:#201c1a;color:white;margin:0;overflow:hidden}dialog::backdrop{background:#201c1a}dialog[open]{display:flex;flex-direction:column}.viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 16px;border-bottom:1px solid #ffffff20}.viewer-toolbar b{font-size:16px}.viewer-toolbar button,.zoom-controls button{min-height:46px;border-radius:9px;padding:8px 13px;background:#ffffff18;color:white;font-size:14px}.zoom-controls{display:flex;justify-content:center;gap:12px;padding:10px}.zoom-controls button{min-width:105px}.poster-viewport{flex:1;overflow:auto;padding:16px 0 32px;overscroll-behavior:contain}.poster-viewport img{display:block;width:100%;max-width:none;height:auto;margin:auto}#toast{position:fixed;bottom:104px;left:50%;transform:translateX(-50%);z-index:50;background:#23594c;color:white;padding:12px 20px;border-radius:12px;box-shadow:0 6px 24px #0002;white-space:nowrap;font-size:15px}body:has(dialog[open]){overflow:hidden}[hidden]{display:none!important}@media(max-width:350px){main{padding-left:14px;padding-right:14px}.topbar{padding-left:14px;padding-right:14px}.search-box{padding-left:14px;padding-right:14px}.topbar div>span{font-size:9px}.year-mark{display:none}.bottom-nav{padding-left:12px;padding-right:12px}.bottom-nav button{font-size:15px}.nm{font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Shared election clock and paired portraits, visible on both pages. */
.countdown-banner{margin:0;padding:11px 20px 12px;background:#922d36;color:#fff7ec;border-bottom:3px solid #cfb17b}
.countdown-heading{display:flex;align-items:center;gap:6px;font-size:11px;line-height:1.5}.countdown-heading b{font-size:12px}.countdown-heading>span:last-child{margin-left:auto;font-size:10px;color:#f0d4c7}.countdown-dot{width:6px;height:6px;background:#ebc888;border-radius:50%;flex:none}
.countdown-clock{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:8px}.countdown-clock>span{display:flex;align-items:baseline;gap:5px}.countdown-clock b{font-size:23px;line-height:1.2;font-variant-numeric:tabular-nums;font-weight:750}.countdown-clock small{font-size:10px;color:#f5ddcf}.countdown-clock i{font-style:normal;color:#d39d9c;font-size:16px}
.portrait-pair{display:flex;align-items:flex-start;justify-content:center;gap:38px;margin:0 auto}.portrait-person{width:128px}.portrait-person .tribute-name{font-size:15px;line-height:1.5;min-height:45px}.candidate-portrait img{object-position:50% 27%}.tribute{padding-top:19px}.portrait-pair .portrait-frame{margin-top:12px}.search-box>.l:not(.primary-label){font-size:17px;margin-top:18px}.poster-image img{min-height:120px;background:#faf1e8}
@media(max-width:350px){.countdown-banner{padding-left:14px;padding-right:14px}.countdown-clock{gap:9px}.countdown-clock b{font-size:21px}.countdown-heading>span:last-child{font-size:9px}.portrait-pair{gap:20px}.portrait-person{width:120px}}


/* Shared portrait composition: quiet tribute on the left, candidate on the right. */
.tribute{padding-top:19px}
.candidate-heading{margin:15px 0 17px;text-align:center}
.candidate-label{display:block;font-size:19px;line-height:1.5;font-weight:750;color:#822d34;letter-spacing:0}
.independent-label{display:inline-flex;align-items:center;gap:8px;margin-top:5px;font-size:12px;font-weight:600;color:#897353}
.independent-label:before,.independent-label:after{content:'';width:20px;height:1px;background:#d7c5a5}
.portrait-pair.candidate-first{display:grid;grid-template-columns:102px 146px;align-items:center;justify-content:center;gap:23px;margin:0 auto;padding:0;min-height:0}
.candidate-first .portrait-person{position:static;width:auto;padding:0;border:0}
.candidate-first .portrait-frame{margin:0;width:100%;padding:4px;border-radius:17px;border:1px solid #c1a16a;background:#fff8e9;box-shadow:0 5px 16px #70402912}
.candidate-first .portrait-frame img{border-radius:12px;display:block;width:100%;height:100%;object-fit:cover}
.candidate-first .shastri-secondary .portrait-frame{height:122px;background:#f7efe1;border-color:#c7ac7b}
.candidate-first .shastri-secondary img{object-position:49% 43%}
.candidate-first .main-candidate .portrait-frame{height:170px;padding:4px;border-color:#b18a50;box-shadow:0 7px 20px #7040291b}
.candidate-first .candidate-portrait img{object-position:50% 50%}
.candidate-name{margin:16px 0 12px;font-size:26px;font-weight:800;line-height:1.5;color:#822d34;letter-spacing:-.4px}
@media(max-width:350px){.portrait-pair.candidate-first{grid-template-columns:92px 136px;gap:19px}.candidate-first .shastri-secondary .portrait-frame{height:112px}.candidate-first .main-candidate .portrait-frame{height:158px}.candidate-label{font-size:18px}.candidate-name{font-size:24px}}

/* Page-specific tribute, immediately below the shared countdown. */
.portrait-pair.candidate-first{display:flex;justify-content:center;gap:0}
.candidate-first .main-candidate{width:146px}
.appeal-tribute{display:flex;justify-content:center;padding:18px 0 0}
.appeal-tribute .portrait-frame{width:82px;height:96px;margin:0;padding:3px;border-radius:15px;border:1px solid #c1a16a;background:#fff8e9;box-shadow:0 4px 14px #70402912}
.appeal-tribute img{display:block;width:100%;height:100%;object-fit:cover;object-position:49% 43%;border-radius:11px}
@media(max-width:350px){.candidate-first .main-candidate{width:136px}.candidate-label{font-size:17px}}

.candidate-heading .independent-label{font-size:15px;font-weight:650;margin-top:7px;color:#79553c;letter-spacing:0}
