:root{--color-bg:#fff8eb;--color-bg-alt:#fffefb;--color-ink:#3f1d17;--color-ink-soft:#6b4a3c;--color-maroon:#8a1f2b;--color-vermilion:#c1442b;--color-gold:#976819;--color-gold-soft:#e8c77a;--color-border:#ecd9b3;--color-danger:#a3211a;--color-danger-bg:#fdecea;--color-success-bg:#eef6ea;--color-success-ink:#2f5c2a;--radius-md:.9rem;--radius-lg:1.4rem;--shadow-card:0 10px 30px -18px #3f1d1773;--font-bn:"Noto Sans Bengali", "Hind Siliguri", system-ui, sans-serif;--font-latin:system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-bn);background:var(--color-bg);color:var(--color-ink);margin:0;line-height:1.6}.app-shell{flex-direction:column;min-height:100vh;display:flex}main{flex:1}.skip-link{background:var(--color-maroon);color:#fff;border-radius:0 0 var(--radius-md) 0;z-index:100;padding:.75rem 1.25rem;position:absolute;top:0;left:-999px}.skip-link:focus{left:0}:focus-visible{outline:3px solid var(--color-vermilion);outline-offset:2px;border-radius:.35rem}.loading-state,.error-state{text-align:center;max-width:32rem;margin:6rem auto;padding:1.5rem;font-size:1.1rem}.error-state{color:var(--color-danger)}.hero{background:radial-gradient(circle at top, #fff3d6 0%, var(--color-bg) 65%);padding-bottom:2rem;position:relative;overflow:hidden}.hero-media{max-width:40rem;margin:0 auto;padding:1.25rem 1.25rem 0;position:relative}.hero-image{z-index:1;border-radius:var(--radius-lg);width:100%;height:auto;box-shadow:var(--shadow-card);display:block;position:relative}.hero-decor{z-index:2;pointer-events:none;position:absolute;inset:0}.halo{z-index:0;filter:blur(2px);background:radial-gradient(circle,#ffd6828c 0%,#ffd6822e 45%,#ffd68200 72%);border-radius:50%;animation:6s ease-in-out infinite halo-breathe;position:absolute;inset:-8%}@keyframes halo-breathe{0%,to{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}.hero-diya{z-index:1;width:1.6rem;height:1.6rem;position:absolute;bottom:.5rem;left:1.75rem}.hero-diya-right{left:auto;right:1.75rem}.diya-flame{background:radial-gradient(circle at 50% 30%, #fff6cf, var(--color-gold) 60%, var(--color-vermilion) 100%);transform-origin:bottom;border-radius:50%/65% 65% 35% 35%;width:.6rem;height:1rem;margin:0 auto;animation:2.4s ease-in-out infinite flame-flicker;display:block;box-shadow:0 0 12px 4px #c896288c,0 8px 10px -4px #c8962866}@keyframes flame-flicker{0%,to{transform:scaleY(1)rotate(-1deg)}50%{transform:scaleY(1.08)rotate(1.5deg)}}.incense{z-index:1;width:.2rem;position:absolute;bottom:.75rem}.incense-left{left:.4rem}.incense-right{left:auto;right:.4rem}.incense-stick{background:linear-gradient(#c98a4b,#7a4a24);border-radius:.1rem;width:.22rem;height:2.4rem;margin:0 auto;display:block;position:relative}.incense-stick:after{content:"";background:radial-gradient(circle,#ff8a3d,#b3340f 70%);border-radius:50%;width:.3rem;height:.3rem;position:absolute;top:-.15rem;left:50%;transform:translate(-50%);box-shadow:0 0 6px 2px #ff8c3c99}.incense-smoke{width:0;height:0;position:absolute;top:-.2rem;left:50%}.smoke-wisp{opacity:0;background:radial-gradient(circle,#ffffff8c,#fff0 70%);border-radius:50%;width:.35rem;height:.9rem;animation:4.5s ease-in infinite smoke-rise-left;position:absolute;bottom:0;left:0}.incense-right .smoke-wisp{animation-name:smoke-rise-right}.smoke-wisp:nth-child(2){animation-delay:1.5s}.smoke-wisp:nth-child(3){animation-delay:3s}@keyframes smoke-rise-left{0%{opacity:0;transform:translate(-50%)scale(.6)}15%{opacity:.32}70%{opacity:.14}to{opacity:0;transform:translate(-160%,-3.6rem)scale(1.5)}}@keyframes smoke-rise-right{0%{opacity:0;transform:translate(-50%)scale(.6)}15%{opacity:.32}70%{opacity:.14}to{opacity:0;transform:translate(60%,-3.6rem)scale(1.5)}}.petal-field{position:absolute;inset:0;overflow:hidden}.petal{background:linear-gradient(135deg, #ffcf7a, var(--color-vermilion));opacity:0;border-radius:60% 10%;width:.55rem;height:.4rem;animation:9s linear infinite petal-fall;position:absolute;top:-1.2rem}.petal-1{animation-delay:0s;left:8%}.petal-2{animation-delay:1.6s;left:22%}.petal-3{animation-delay:3.2s;left:40%}.petal-4{animation-delay:4.8s;left:58%}.petal-5{animation-delay:6.4s;left:76%}.petal-6{animation-delay:8s;left:90%}@keyframes petal-fall{0%{opacity:0;transform:translate(0)rotate(0)}8%{opacity:.85}85%{opacity:.4}to{opacity:0;transform:translate(1.5rem,18rem)rotate(220deg)}}.hero-decor[data-effects-state=paused] .halo,.hero-decor[data-effects-state=paused] .diya-flame,.hero-decor[data-effects-state=paused] .smoke-wisp,.hero-decor[data-effects-state=paused] .petal{animation-play-state:paused}.hero-content{text-align:center;max-width:40rem;margin:0 auto;padding:1.5rem 1.5rem .5rem}.club-name{color:var(--color-ink-soft);letter-spacing:.02em;margin:0;font-size:1rem;font-weight:600}.event-name{color:var(--color-maroon);margin:.4rem 0 .6rem;font-size:clamp(1.6rem,6vw,2.4rem);font-weight:800;line-height:1.3}.supporting-identity{color:var(--color-ink-soft);margin:0 0 1.25rem;font-size:.95rem}.event-facts{flex-wrap:wrap;justify-content:center;gap:.75rem 1.5rem;margin:0 0 1.5rem;display:flex}.event-fact{min-width:8rem}.event-fact dt{color:var(--color-ink-soft);font-size:.8rem}.event-fact dd{color:var(--color-ink);margin:0;font-weight:700}.cta-button,.primary-button{background:linear-gradient(135deg, var(--color-vermilion), var(--color-maroon));color:#fff;cursor:pointer;border:none;border-radius:999px;min-height:3rem;padding:.95rem 2rem;font-size:1.05rem;font-weight:700;transition:filter .15s,transform .15s;display:inline-block;box-shadow:0 12px 24px -12px #8a1f2b99}.cta-button:hover,.primary-button:hover{filter:brightness(1.05);transform:translateY(-1px)}.primary-button:disabled{opacity:.55;cursor:not-allowed}.secondary-button{color:var(--color-maroon);border:2px solid var(--color-gold-soft);cursor:pointer;background:#fff;border-radius:999px;min-height:3rem;padding:.85rem 1.75rem;font-size:1rem;font-weight:700;display:inline-block}.registration-closed{color:var(--color-maroon);font-weight:700}.schedule-section{max-width:42rem;margin:0 auto;padding:2rem 1.25rem}.schedule-section h2{color:var(--color-maroon);margin-bottom:1rem;font-size:1.4rem}.schedule-day{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:1rem;padding:1rem 1.1rem}.schedule-day h3{color:var(--color-vermilion);margin:0 0 .6rem}.ceremony-list,.competition-list,.rules-list{margin:0;padding:0;list-style:none}.ceremony-list li,.competition-list li{border-bottom:1px dashed var(--color-border);flex-wrap:wrap;gap:0 .6rem;padding:.4rem 0;display:flex}.ceremony-list li:last-child,.competition-list li:last-child{border-bottom:none}.schedule-time{color:var(--color-gold);min-width:6rem;font-weight:700}.competition-meta{width:100%;color:var(--color-ink-soft);font-size:.85rem}.schedule-break{color:var(--color-ink-soft);background:var(--color-bg);border-radius:var(--radius-md);text-align:center;font-style:italic}.event-quote{border-left:3px solid var(--color-gold-soft);background:var(--color-bg-alt);border-radius:0 var(--radius-md) var(--radius-md) 0;margin:1.5rem 0 0;padding:1rem 1.25rem}.event-quote p{color:var(--color-ink);margin:0;font-style:italic}.event-quote footer{color:var(--color-ink-soft);margin-top:.4rem;font-size:.85rem}.event-quote cite{font-style:normal}.rules-heading{color:var(--color-maroon);margin-top:1.5rem}.rules-list li{padding:.3rem 0 .3rem 1.2rem;position:relative}.rules-list li:before{content:"॰";color:var(--color-gold);font-weight:700;position:absolute;left:0}.registration-section{max-width:42rem;margin:0 auto;padding:1rem 1.25rem 2.5rem}.registration-section h2{color:var(--color-maroon);font-size:1.4rem}.registration-wizard{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:1.25rem}.step-indicator{flex-wrap:wrap;gap:.4rem;margin:0 0 1.25rem;padding:0;font-size:.78rem;list-style:none;display:flex}.step-indicator li{background:var(--color-border);color:var(--color-ink-soft);border-radius:999px;padding:.35rem .65rem;transition:background-color .2s,color .2s}.step-indicator li.active{background:var(--color-maroon);color:#fff;font-weight:700;box-shadow:0 4px 12px -4px #8a1f2b8c}.step-indicator li.done{background:var(--color-gold-soft);color:var(--color-ink)}.step-indicator li.done:before{content:"✓ "}fieldset{border:none;margin:0;padding:0}legend{color:var(--color-maroon);margin-bottom:1rem;padding:0;font-size:1.15rem;font-weight:700}label{margin:.9rem 0 .35rem;font-weight:600;display:block}input[type=text],input[type=tel],input[type=number]{border:2px solid var(--color-border);border-radius:var(--radius-md);width:100%;min-height:3rem;color:var(--color-ink);background:#fff;padding:.65rem .9rem;font-family:inherit;font-size:1.05rem}input:focus-visible{border-color:var(--color-vermilion)}input[aria-invalid=true]{border-color:var(--color-danger)}.field-error{color:var(--color-danger);background:var(--color-danger-bg);border-radius:.5rem;margin:.4rem 0 0;padding:.5rem .75rem;font-size:.9rem}.wizard-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.competition-grid{gap:.9rem;margin-top:1rem;display:grid}.competition-card{border:2px solid var(--color-border);border-radius:var(--radius-md);background:#fff;padding:.9rem 1rem;transition:border-color .2s,box-shadow .2s,background-color .2s}.competition-card.selected{border-color:var(--color-vermilion);background:#fff6ef;box-shadow:0 8px 20px -14px #c1442ba6}.competition-card.disabled{opacity:.62;background:var(--color-bg)}.competition-card.disabled .competition-select{cursor:not-allowed}.competition-select{cursor:pointer;align-items:center;gap:.6rem;margin:0;font-weight:700;display:flex}.competition-select input[type=checkbox]{flex-shrink:0;width:1.4rem;height:1.4rem}.competition-title{font-weight:700}.disabled-reason{color:var(--color-danger);margin:.4rem 0 0;font-size:.85rem}.teammate-fields{border-top:1px dashed var(--color-border);margin-top:.75rem;padding-top:.75rem}.review-summary{gap:.5rem;margin:0 0 1.25rem;display:grid}.review-summary div{border-bottom:1px dashed var(--color-border);justify-content:space-between;gap:1rem;padding-bottom:.35rem;display:flex}.review-summary dt{color:var(--color-ink-soft)}.review-summary dd{text-align:right;margin:0;font-weight:700}.review-competitions{gap:.6rem;margin:0 0 1.25rem;padding:0;list-style:none;display:grid}.review-competitions li{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.7rem .9rem}.teammate-summary{color:var(--color-ink-soft);margin:.25rem 0 0;font-size:.85rem}.consent-row{align-items:flex-start;gap:.6rem;margin-top:1.25rem;font-weight:500;display:flex}.consent-row input{flex-shrink:0;width:1.4rem;height:1.4rem;margin-top:.15rem}.turnstile-widget{min-height:65px;margin:1.25rem 0}.submitting-state{text-align:center;padding:2rem 0;font-weight:700}.submit-error{background:var(--color-danger-bg);border-radius:var(--radius-md);text-align:center;padding:1.25rem}.submit-error p{color:var(--color-danger);margin-top:0}.success-screen{background:var(--color-success-bg);border-radius:var(--radius-md);text-align:center;padding:1.5rem}.success-screen h3{color:var(--color-success-ink);margin-top:0}.registration-id{font-size:1.15rem}.success-competitions{margin:0 0 1rem;padding:0;list-style:none}.success-competitions li{border-bottom:1px dashed var(--color-border);padding:.35rem 0}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.qr-section{text-align:center;max-width:32rem;margin:0 auto;padding:1.5rem 1.25rem 2.5rem}.qr-section h2{color:var(--color-maroon)}.qr-preview{border-radius:var(--radius-md);width:11rem;height:11rem;box-shadow:var(--shadow-card);border:6px solid #fff;margin:1rem auto}.qr-actions{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:.75rem;display:flex}.qr-actions button{border:2px solid var(--color-gold-soft);min-height:2.75rem;color:var(--color-maroon);cursor:pointer;background:#fff;border-radius:999px;padding:.6rem 1.1rem;font-weight:600}.print-card{display:none}.vively-footer{font-family:var(--font-latin);text-align:center;background:var(--color-bg-alt);border-top:1px solid var(--color-border);color:var(--color-ink-soft);padding:2rem 1.25rem 3rem;font-size:.9rem}.vively-logo{width:min(10rem,60vw);height:auto}.vively-heading{color:var(--color-ink);margin:.75rem 0 .25rem;font-weight:600}.vively-company-link{color:var(--color-maroon);font-weight:700}.vively-footer a{color:inherit;text-decoration:underline}.vively-footer p{margin:.2rem 0}@media print{body *{visibility:hidden}}body[data-print-target=qr-card] #qr-print-card,body[data-print-target=qr-card] #qr-print-card *,body[data-print-target=success] #success-print-card,body[data-print-target=success] #success-print-card *{visibility:visible}body[data-print-target] .print-card{text-align:center;width:100%;padding:2rem;display:block;position:absolute;top:0;left:0}@media (prefers-reduced-motion:reduce){.diya-flame,.halo,.smoke-wisp{animation:none}.halo{opacity:.8}.smoke-wisp{opacity:.14;transform:translate(-50%,-1.1rem)scale(1)}.incense-right .smoke-wisp{transform:translate(-50%,-1.1rem)scale(1)}.petal-field{display:none}}@media (width>=640px){.competition-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.hero-media,.hero-content{max-width:46rem}.schedule-section,.registration-section{max-width:46rem;padding-top:3rem;padding-bottom:3rem}.qr-section{padding-top:2rem;padding-bottom:3rem}}.admin-shell{background:var(--color-bg);flex-direction:column;min-height:100vh;display:flex}.admin-login-main{flex:1;justify-content:center;align-items:center;padding:2rem 1.25rem;display:flex}.admin-login-card{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:min(24rem,100%);box-shadow:var(--shadow-card);text-align:center;padding:1.75rem}.admin-login-card h1{color:var(--color-maroon);margin-top:0}.admin-header{background:var(--color-bg-alt);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.admin-header h1{color:var(--color-maroon);margin:0;font-size:1.2rem}.admin-main{flex:1;width:100%;max-width:72rem;margin:0 auto;padding:1.25rem}.admin-metrics{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.75rem;margin-bottom:1.5rem;display:grid}.admin-metric-card{background:var(--color-bg-alt);border:1px solid var(--color-border);border-top:3px solid var(--color-gold-soft);border-radius:var(--radius-md);text-align:center;padding:.9rem}.admin-empty-state{text-align:center;color:var(--color-ink-soft);background:var(--color-bg-alt);border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:1.75rem 1rem}.admin-metric-value{color:var(--color-maroon);margin:0;font-size:1.6rem;font-weight:800}.admin-metric-label{color:var(--color-ink-soft);margin:.25rem 0 0;font-size:.8rem}.admin-tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.admin-tabs button{border:2px solid var(--color-gold-soft);min-height:2.75rem;color:var(--color-maroon);cursor:pointer;background:#fff;border-radius:999px;padding:.6rem 1.1rem;font-weight:600}.admin-tabs button.active{background:var(--color-maroon);color:#fff;border-color:var(--color-maroon)}.admin-filters{gap:.6rem;max-width:28rem;margin-bottom:1.25rem;display:grid}.admin-checkbox-row{align-items:center;gap:.5rem;font-weight:500;display:flex}.admin-table{border-collapse:collapse;background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);white-space:nowrap;width:100%;display:block;overflow:auto hidden}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:.65rem .9rem}.admin-table tbody tr{cursor:pointer}.admin-table tbody tr:hover{background:#fff6ef}.admin-table tr.deleted-row{opacity:.55;text-decoration:line-through}.admin-pagination{justify-content:center;align-items:center;gap:1rem;margin:1.25rem 0;display:flex}.admin-exports{margin-top:1.5rem}.admin-export-buttons{flex-wrap:wrap;gap:.6rem;display:flex}.admin-export-buttons button{border:2px solid var(--color-gold-soft);min-height:2.75rem;color:var(--color-maroon);cursor:pointer;background:#fff;border-radius:999px;padding:.6rem 1.1rem;font-weight:600}.danger-button{background:var(--color-danger);color:#fff;cursor:pointer;border:none;border-radius:999px;min-height:3rem;padding:.85rem 1.75rem;font-size:1rem;font-weight:700;display:inline-block}.admin-status-message{color:var(--color-success-ink);background:var(--color-success-bg);border-radius:.5rem;padding:.5rem .75rem}.admin-drawer-backdrop{z-index:100;background:#3f1d1773;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.admin-drawer{background:var(--color-bg-alt);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:min(36rem,100%);max-height:90vh;padding:1.5rem;overflow-y:auto}@media (width>=640px){.admin-drawer-backdrop{align-items:center}.admin-drawer{border-radius:var(--radius-lg)}}.admin-drawer-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.admin-detail-summary{gap:.5rem;margin:0 0 1.25rem;display:grid}.admin-detail-summary div{border-bottom:1px dashed var(--color-border);justify-content:space-between;gap:1rem;padding-bottom:.35rem;display:flex}.admin-detail-entries{gap:.6rem;margin:0 0 1.25rem;padding:0;list-style:none;display:grid}.admin-detail-entries li{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.7rem .9rem}.admin-drawer-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.admin-event-settings-help{color:var(--color-ink-soft);max-width:36rem;font-size:.9rem}.admin-event-settings-list{gap:.9rem;margin:0;padding:0;list-style:none;display:grid}.admin-event-settings-row{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-alt);padding:.9rem 1rem}.admin-event-settings-meta{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.4rem;display:flex}.admin-override-badge{background:var(--color-gold-soft);color:var(--color-ink);border-radius:999px;padding:.15rem .6rem;font-size:.75rem;font-weight:700}.admin-canonical-title{color:var(--color-ink-soft);margin:.2rem 0 0;font-size:.85rem}.admin-event-settings-edit input[type=text]{margin-bottom:.5rem}.admin-event-settings-actions{flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.6rem;display:flex}
