/* PSOTS Chhath 2026 — resident Vrati registration */
:root{--vr-card:#fffdf8;--vr-border:#efd8bf;--vr-muted:#8b6b58;--vr-ink:#371507;--vr-soft:#fff7ec;--vr-yellow:#fff2c9}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#f7e5cc 0,#fff4e4 32rem,#fdf0e0 100%);color:var(--vr-ink);font-family:var(--font-body);min-height:100vh}.vr-page{min-height:100vh}.vr-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 74% 48%,rgba(255,137,0,.35),transparent 25%),linear-gradient(120deg,#2d0800 0%,#571300 50%,#230700 100%);color:#fff4cf;border-bottom:1px solid rgba(255,194,0,.16)}.vr-hero::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,194,0,.55),transparent)}.vr-hero-inner{width:min(1180px,calc(100% - 2rem));margin:0 auto;min-height:330px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,520px);gap:3.5rem;align-items:center;padding:2.7rem 0}.vr-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#ffc200;margin-bottom:.7rem}.vr-title{font-family:var(--font-display);font-size:clamp(2.3rem,5vw,4.3rem);line-height:1.02;margin:0 0 .8rem;color:#fff8df}.vr-subtitle{font-size:clamp(.9rem,1.8vw,1.05rem);line-height:1.65;max-width:620px;margin:0;color:rgba(255,237,200,.88)}.vr-hero-pills{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.vr-pill-dark{border:1px solid rgba(255,194,0,.38);background:rgba(255,194,0,.09);color:#ffe680;border-radius:999px;padding:.43rem .72rem;font-size:.72rem;font-weight:700}.vr-hero-art{position:relative;height:230px;border-radius:24px;overflow:hidden;border:1px solid rgba(255,194,0,.24);box-shadow:0 22px 60px rgba(0,0,0,.32);background:#3d1000}.vr-hero-art img{width:100%;height:100%;object-fit:cover;display:block}.vr-hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(45,8,0,.35),transparent 36%),linear-gradient(0deg,rgba(26,5,0,.18),transparent)}.vr-shell{width:min(940px,calc(100% - 2rem));margin:0 auto;padding:1.4rem 0 4rem}.vr-progress{display:grid;grid-template-columns:repeat(5,1fr);gap:.25rem;background:rgba(255,253,248,.84);border:1px solid var(--vr-border);border-radius:18px;padding:.72rem .6rem;box-shadow:var(--sh-xs);backdrop-filter:blur(14px)}.vr-step{text-align:center;color:#8e7564;font-size:.67rem;line-height:1.2}.vr-step b{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;margin:0 auto .25rem;background:#f6eadb;color:#9c6a4d;font-size:.68rem}.vr-step.active{color:#c93800;font-weight:700}.vr-step.active b{background:#e85c00;color:#fff;box-shadow:0 4px 12px rgba(232,92,0,.25)}.vr-status,.vr-history,.vr-auth-card{margin-top:1rem;border-radius:16px}.vr-status{display:none;padding:.8rem 1rem;font-size:.84rem;line-height:1.5;border:1px solid transparent}.vr-status.show{display:block}.vr-status.info{background:#fff5d9;border-color:#f2d27b;color:#6d4500}.vr-status.success{background:#ecf8ed;border-color:#b7dfba;color:#1f6425}.vr-status.error{background:#fff0ed;border-color:#efb8ae;color:#973b2d}.vr-auth-card{padding:1.15rem 1.2rem;background:#fff;border:1px solid var(--vr-border);box-shadow:var(--sh-sm);display:none}.vr-auth-card.show{display:flex;align-items:center;justify-content:space-between;gap:1rem}.vr-auth-card h2{font-family:var(--font-display);font-size:1.25rem;margin:0 0 .25rem}.vr-auth-card p{margin:0;color:var(--vr-muted);font-size:.84rem}.vr-link-btn{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--c-saffron),var(--c-saffron-dark));color:#fff;text-decoration:none;border-radius:12px;padding:.7rem 1rem;font-weight:700;font-size:.82rem;white-space:nowrap}.vr-history{display:none;padding:1rem 1.05rem;background:linear-gradient(135deg,#fff7d7,#fff4cf);border:1px solid #edca65}.vr-history.show{display:block}.vr-history-head{display:flex;gap:.8rem;align-items:flex-start}.vr-history-icon{width:38px;height:38px;border-radius:50%;background:#ffe89a;display:grid;place-items:center;color:#a65000;font-size:1.05rem;flex:0 0 auto}.vr-history h2{font-size:.9rem;margin:0;color:#5b2500}.vr-history p{font-size:.75rem;line-height:1.5;color:#8a5a33;margin:.2rem 0 0}.vr-history-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.vr-history-chip{appearance:none;border:1px solid #e8bd65;background:#fffaf0;color:#6f3200;border-radius:999px;padding:.55rem .78rem;font:700 .75rem var(--font-body);cursor:pointer;transition:.2s ease}.vr-history-chip:hover,.vr-history-chip:focus-visible{border-color:#e85c00;box-shadow:0 3px 12px rgba(232,92,0,.14);outline:none;transform:translateY(-1px)}.vr-history-chip span{font-weight:500;color:#9c7658;margin-left:.28rem}.vr-form{margin-top:1rem;background:var(--vr-card);border:1px solid var(--vr-border);border-radius:24px;box-shadow:0 15px 45px rgba(93,30,0,.10);padding:1.3rem 1.35rem 1.5rem;display:none}.vr-form.show{display:block}.vr-section{padding:1.2rem 0 1.35rem;border-bottom:1px solid #f0dfcf}.vr-section:first-child{padding-top:.2rem}.vr-section:last-of-type{border-bottom:0;padding-bottom:.8rem}.vr-section-heading{display:grid;grid-template-columns:36px 1fr;gap:.65rem;align-items:start;margin-bottom:1rem}.vr-section-number{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#fff0e5;color:#e85c00;font-size:.7rem;font-weight:800;margin-top:.05rem}.vr-section-title{margin:0;font-size:1.02rem;line-height:1.25;color:#451d0e}.vr-section-help{margin:.18rem 0 0;color:#9a735d;font-size:.74rem;line-height:1.45}.vr-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.vr-grid .full{grid-column:1/-1}.vr-field{display:block}.vr-label{display:block;font-size:.67rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#75402a;margin:0 0 .38rem}.vr-input,.vr-textarea,.vr-select{width:100%;border:1px solid #ead0b8;background:#fff9f2;color:#4b2819;border-radius:12px;padding:.75rem .85rem;font:400 .86rem var(--font-body);outline:none;transition:border-color .18s,box-shadow .18s,background .18s}.vr-input{min-height:47px}.vr-textarea{min-height:92px;resize:vertical;line-height:1.55}.vr-input:focus,.vr-textarea:focus,.vr-select:focus{border-color:#e85c00;background:#fff;box-shadow:0 0 0 3px rgba(232,92,0,.10)}.vr-input[readonly]{background:#faf2e8;color:#a27a64}.vr-hint{font-size:.68rem;color:#a07c68;line-height:1.45;margin:.35rem 0 0}.vr-choice-group{display:flex;flex-wrap:wrap;gap:.45rem}.vr-choice{position:relative}.vr-choice input{position:absolute;opacity:0;pointer-events:none}.vr-choice span{display:inline-flex;align-items:center;min-height:34px;padding:.45rem .7rem;border:1px solid #e5cdb6;background:#fffaf4;border-radius:999px;color:#6b3a24;font-size:.73rem;font-weight:700;cursor:pointer;transition:.18s ease}.vr-choice input:checked+span{border-color:#e85c00;background:#fff0e4;color:#b43d00;box-shadow:0 2px 8px rgba(232,92,0,.08)}.vr-choice input:focus-visible+span{outline:2px solid #e85c00;outline-offset:2px}.vr-inline-question{font-size:.78rem;line-height:1.5;color:#4b2b1c;margin:0 0 .45rem}.vr-soop-wrap{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.vr-soop-count{transition:.2s ease}.vr-soop-count.disabled{opacity:.45}.vr-declaration{border:1px solid #e9ceb5;border-radius:15px;background:#fff8ef;padding:1rem}.vr-declaration p{font-size:.76rem;line-height:1.65;margin:0;color:#624333}.vr-check{display:flex;align-items:flex-start;gap:.65rem;margin-top:.9rem;font-size:.76rem;line-height:1.5;color:#563625;cursor:pointer}.vr-check input{width:18px;height:18px;accent-color:#e85c00;flex:0 0 auto;margin:.1rem 0 0}.vr-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.9rem}.vr-submit{border:0;border-radius:12px;background:linear-gradient(135deg,#e85c00,#c93800);color:#fff;padding:.82rem 1.2rem;font:800 .84rem var(--font-body);cursor:pointer;box-shadow:0 5px 15px rgba(232,92,0,.24);transition:.18s ease}.vr-submit:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(232,92,0,.30)}.vr-submit:disabled{opacity:.55;cursor:not-allowed;transform:none}.vr-actions-note{color:#a17a64;font-size:.68rem;line-height:1.45;text-align:right}.vr-help{margin-top:1rem;border-radius:18px;background:linear-gradient(135deg,#3d1000,#2b0800);color:#ffe4a3;padding:1rem 1.1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.vr-help strong{display:block;color:#ffc200;font-size:.78rem;margin-bottom:.18rem}.vr-help p{margin:0;font-size:.68rem;line-height:1.45;color:rgba(255,224,130,.72)}.vr-help a{color:#ffd463;text-decoration:none;border:1px solid rgba(255,194,0,.35);border-radius:999px;padding:.5rem .72rem;font-size:.7rem;font-weight:700;white-space:nowrap}.vr-private-note{display:flex;align-items:flex-start;gap:.45rem;margin-top:.65rem;color:#8d674f;font-size:.68rem;line-height:1.5}.vr-private-note svg{flex:0 0 auto;margin-top:.1rem}.vr-family-warning{display:none;margin:.75rem 0 0;padding:.7rem .8rem;border:1px solid #efc2a5;background:#fff3e9;border-radius:12px;color:#8c421d;font-size:.74rem;line-height:1.5}.vr-family-warning.show{display:block}
@media(max-width:760px){.vr-hero-inner{width:100%;min-height:410px;display:flex;flex-direction:column;align-items:stretch;gap:1.2rem;padding:1.6rem 1rem 1.4rem}.vr-title{font-size:2.2rem}.vr-subtitle{font-size:.86rem}.vr-hero-art{height:160px;border-radius:20px}.vr-shell{width:min(100% - 1rem,560px);padding-top:.9rem}.vr-progress{padding:.65rem .25rem;border-radius:15px}.vr-step{font-size:.57rem}.vr-step b{width:23px;height:23px}.vr-form{border-radius:20px;padding:1rem .85rem 1.15rem}.vr-grid,.vr-soop-wrap{grid-template-columns:1fr;gap:.85rem}.vr-section{padding:1.05rem 0}.vr-section-heading{grid-template-columns:30px 1fr;gap:.55rem}.vr-section-number{width:28px;height:28px}.vr-section-title{font-size:1rem}.vr-history{padding:.9rem}.vr-history-head{gap:.6rem}.vr-history-icon{width:34px;height:34px}.vr-auth-card.show,.vr-help,.vr-actions{align-items:stretch;flex-direction:column}.vr-link-btn,.vr-submit{width:100%}.vr-actions-note{text-align:left}.vr-help a{text-align:center;align-self:flex-start}.vr-choice-group{gap:.4rem}.vr-choice span{font-size:.69rem;padding:.42rem .62rem}.vr-declaration{padding:.85rem}.vr-declaration p{font-size:.73rem}}
@media(max-width:390px){.vr-shell{width:calc(100% - .65rem)}.vr-form{padding:.9rem .7rem}.vr-choice span{padding:.4rem .52rem;font-size:.66rem}.vr-history-chip{font-size:.7rem}.vr-title{font-size:2rem}}
