:root{--ink:#211611;--muted:#766a64;--cream:#f7f2ec;--paper:#fffdfa;--gold:#a87b51;--line:#e7ddd3;--shadow:0 24px 70px rgba(35,22,15,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:Montserrat,Arial,sans-serif}button,input,select,textarea{font:inherit}button,a{transition:.2s ease}.site-nav{height:88px;padding:0 clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:20}.brand{color:var(--ink);text-decoration:none;display:flex;flex-direction:column;line-height:.85}.brand strong{font:700 28px/1 'Cormorant Garamond',serif}.brand span{font-size:9px;letter-spacing:4px;text-transform:uppercase;margin-left:10px}.admin-link,.back-link{color:inherit;text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:1.5px;border-bottom:1px solid currentColor;padding:8px 0}.hero{min-height:570px;padding:70px clamp(22px,8vw,130px);display:flex;justify-content:space-between;align-items:center;overflow:hidden;position:relative;background:radial-gradient(circle at 82% 48%,rgba(168,123,81,.25),transparent 23%),linear-gradient(135deg,#f8f3ec 0%,#eee0d3 100%)}.hero:after{content:"";position:absolute;right:-8%;top:-25%;width:53vw;height:53vw;border:1px solid rgba(111,74,48,.15);border-radius:50%;box-shadow:0 0 0 60px rgba(255,255,255,.15),0 0 0 120px rgba(255,255,255,.1)}.hero-copy{position:relative;z-index:2;max-width:720px}.eyebrow{margin:0 0 14px;color:var(--gold);font-size:11px;font-weight:700;letter-spacing:3px}.hero h1,.draw-copy h1,.login-card h1,.dashboard-title h1{font:600 clamp(56px,8vw,110px)/.82 'Cormorant Garamond',serif;margin:0;letter-spacing:-3px}.hero h1 em{font-weight:500;color:var(--gold)}.hero-copy>p:last-child{font-size:16px;line-height:1.8;max-width:500px;color:var(--muted);margin-top:30px}.hero-orbit{position:relative;z-index:2;width:250px;height:250px;border-radius:50%;border:1px solid rgba(63,40,28,.25);display:flex;align-items:center;justify-content:center;flex-direction:column;box-shadow:inset 0 0 80px rgba(255,255,255,.55)}.hero-orbit span{font-size:38px;color:var(--gold)}.hero-orbit b{font:600 22px 'Cormorant Garamond',serif;letter-spacing:4px}.hero-orbit i{font-size:10px;letter-spacing:5px;margin-top:6px}.competition-section{padding:90px clamp(22px,6vw,90px) 110px;max-width:1500px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:40px}.section-heading h2{font:600 52px 'Cormorant Garamond',serif;margin:0}.section-heading>p{color:var(--muted);font-size:12px}.competition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.competition-card{display:flex;min-height:420px;flex-direction:column;text-decoration:none;color:var(--ink);background:var(--paper);border:1px solid var(--line);box-shadow:0 8px 24px rgba(35,22,15,.05);overflow:hidden}.competition-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.competition-card.featured{grid-column:span 2;flex-direction:row}.card-art{height:190px;display:flex;align-items:center;justify-content:center;background:var(--tint);position:relative;overflow:hidden}.featured .card-art{width:48%;height:auto}.card-art span{font-size:72px;z-index:2;filter:drop-shadow(0 12px 16px rgba(0,0,0,.15))}.card-art i{position:absolute;width:230px;height:230px;border:42px solid color-mix(in srgb,var(--primary) 14%,transparent);border-radius:50%;transform:rotate(25deg)}.card-copy{padding:32px;display:flex;flex:1;flex-direction:column}.card-copy p{color:var(--primary);font-size:10px;font-weight:700;letter-spacing:2px;margin:0}.card-copy h3{font:600 36px 'Cormorant Garamond',serif;margin:10px 0}.card-copy>span{font-size:13px;color:var(--muted);line-height:1.7}.card-copy b{margin-top:auto;padding-top:28px;color:var(--primary);font-size:12px;text-transform:uppercase;letter-spacing:1px}.card-copy b i{font-style:normal;font-size:18px;margin-left:8px}.site-footer{padding:30px clamp(22px,6vw,90px);background:var(--ink);color:#d8c8bd;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px;text-transform:uppercase}
/* draw */.draw-body{min-height:100vh;background:linear-gradient(125deg,var(--tint),#fff 60%);overflow-x:hidden}.draw-nav{position:absolute;left:0;right:0}.draw-layout{min-height:100vh;display:grid;grid-template-columns:minmax(350px,.8fr) minmax(500px,1.2fr);align-items:center;padding:120px clamp(24px,5vw,80px) 50px;gap:50px}.draw-copy{max-width:600px}.draw-copy .eyebrow{margin-top:50px;color:var(--primary)}.draw-copy h1{font-size:clamp(58px,7vw,98px);line-height:.88;margin:20px 0 30px}.draw-copy h1 span{font-size:.5em}.draw-description{color:var(--muted);line-height:1.8;font-size:15px}.prize-note{border-left:3px solid var(--secondary);padding:8px 0 8px 20px;margin:32px 0}.prize-note span{display:block;font-size:9px;letter-spacing:2px}.prize-note strong{font:600 25px 'Cormorant Garamond',serif}.draw-status{font-size:13px;margin:28px 0 14px}.start-draw,.primary-button{border:0;background:var(--primary,var(--ink));color:#fff;padding:16px 24px;font-weight:700;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;text-decoration:none;text-align:center}.start-draw{min-width:240px;border-radius:100px;box-shadow:0 12px 30px color-mix(in srgb,var(--primary) 30%,transparent)}.start-draw:disabled{opacity:.4;cursor:not-allowed}.admin-hint{font-size:11px;color:var(--muted)}.wheel-stage{width:min(48vw,650px);aspect-ratio:1;justify-self:center;position:relative;display:grid;place-items:center}.wheel-stage canvas{width:100%;height:100%;filter:drop-shadow(0 30px 30px rgba(36,24,18,.18));transition:filter .3s}.wheel-stage.spinning canvas{filter:drop-shadow(0 30px 45px rgba(36,24,18,.3))}.pointer{position:absolute;z-index:5;top:-8px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:20px solid transparent;border-right:20px solid transparent;border-top:48px solid var(--ink);filter:drop-shadow(0 5px 3px rgba(0,0,0,.2))}.wheel-hub{position:absolute;width:22%;aspect-ratio:1;background:var(--paper);border:8px solid var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;box-shadow:0 8px 22px rgba(0,0,0,.2)}.wheel-hub strong{font:700 clamp(24px,4vw,55px)/.7 'Cormorant Garamond',serif}.wheel-hub span{font-size:8px;letter-spacing:3px}.winner-reveal{position:absolute;z-index:8;inset:8%;background:rgba(255,253,250,.96);border:1px solid var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:20px;animation:reveal .6s ease both}.winner-reveal[hidden]{display:none}.winner-reveal p{color:var(--primary);font-size:11px;letter-spacing:4px}.winner-reveal h2{font:700 clamp(40px,6vw,74px)/.85 'Cormorant Garamond',serif;margin:10px;max-width:90%}.winner-reveal>span{font-size:11px;color:var(--muted)}.winner-reveal button{margin-top:25px;border:0;border-bottom:1px solid var(--ink);background:none;cursor:pointer}.confetti{position:fixed;inset:0;width:100%;height:100%;z-index:50;pointer-events:none}@keyframes reveal{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}
/* admin */.admin-body{background:#f2ede7;min-height:100vh}.admin-main{padding:40px clamp(20px,5vw,75px) 100px}.login-card{background:var(--paper);max-width:480px;margin:8vh auto;padding:55px;box-shadow:var(--shadow)}.login-card h1,.dashboard-title h1{font-size:64px;line-height:1;margin:0 0 12px}.login-card>p{color:var(--muted);font-size:13px}.stack-form{display:grid;gap:16px;margin-top:28px}.stack-form label,.admin-toolbar label{display:grid;gap:7px;font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}input,select,textarea{width:100%;border:1px solid #ddd3ca;background:#fff;padding:13px 14px;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(168,123,81,.1)}textarea{resize:vertical}.form-message{min-height:18px;color:#a02727;font-size:12px}.dashboard{max-width:1500px;margin:auto}.dashboard-title{display:flex;align-items:start;justify-content:space-between;margin-bottom:25px}.text-button{border:0;background:none;text-decoration:underline;cursor:pointer}.admin-toolbar{display:flex;align-items:end;gap:18px;background:var(--ink);padding:20px 25px;margin-bottom:20px}.admin-toolbar label{color:#d8c8bd;min-width:300px}.admin-toolbar select{background:#30231d;color:#fff;border-color:#554239}.admin-toolbar .primary-button{margin-left:auto;background:var(--gold)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.stats-grid article{background:var(--paper);padding:22px 25px;border:1px solid var(--line)}.stats-grid span{display:block;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}.stats-grid strong{font:600 29px 'Cormorant Garamond',serif}.admin-grid{display:grid;grid-template-columns:minmax(320px,.65fr) minmax(500px,1.35fr);gap:20px}.admin-column{display:grid;gap:20px;align-content:start}.admin-panel{background:var(--paper);padding:28px;border:1px solid var(--line)}.panel-heading{display:flex;gap:16px;border-bottom:1px solid var(--line);padding-bottom:18px}.panel-heading>span{color:var(--gold);font:600 28px 'Cormorant Garamond',serif}.panel-heading h2,.list-toolbar h2{font:600 28px 'Cormorant Garamond',serif;margin:0}.panel-heading p{font-size:11px;color:var(--muted);margin:4px 0}.outline-button{border:1px solid var(--ink);background:transparent;padding:12px 18px;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;cursor:pointer}.check-label{display:flex!important;grid-template-columns:20px 1fr;align-items:center}.check-label input{width:17px;height:17px}.list-toolbar{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:15px}.toolbar-actions{display:flex;gap:8px}.toolbar-actions input{max-width:200px}.entry-list{display:grid;max-height:720px;overflow:auto}.entry-row{display:grid;grid-template-columns:1fr 150px 150px 34px;gap:14px;align-items:center;padding:15px 8px;border-bottom:1px solid var(--line);font-size:12px}.entry-row strong{font-size:13px}.entry-row span{color:var(--muted)}.entry-row button{border:0;background:none;color:#a52b2b;font-size:18px;cursor:pointer}.empty-state{padding:70px 20px;text-align:center;color:var(--muted);font-size:12px;border:1px dashed #d2c6bb}.danger-zone{display:flex;justify-content:space-between;align-items:center;margin-top:28px;padding-top:22px;border-top:1px solid #e2c1bd}.danger-zone span{display:flex;flex-direction:column}.danger-zone small{color:var(--muted);margin-top:4px}.danger-zone button{border:1px solid #b43a32;color:#a52b2b;background:none;padding:9px 14px;cursor:pointer}.history-item{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}.history-item strong{font:600 22px 'Cormorant Garamond',serif}.history-item span,.history-item time{color:var(--muted);font-size:10px}.toast{position:fixed;right:24px;bottom:24px;background:var(--ink);color:#fff;padding:15px 20px;box-shadow:var(--shadow);z-index:80;font-size:12px}
@media(max-width:1000px){.competition-grid{grid-template-columns:repeat(2,1fr)}.competition-card.featured{grid-column:span 2}.draw-layout{grid-template-columns:1fr;padding-top:130px;text-align:center}.draw-copy{margin:auto}.prize-note{border-left:0;border-top:2px solid var(--secondary);padding-top:16px}.wheel-stage{width:min(85vw,620px)}.admin-grid{grid-template-columns:1fr}.hero-orbit{display:none}}@media(max-width:650px){.site-nav{height:72px}.hero{min-height:530px;padding:60px 24px}.hero h1{font-size:64px}.competition-section{padding:60px 18px}.competition-grid{grid-template-columns:1fr}.competition-card.featured{grid-column:auto;display:flex;flex-direction:column}.featured .card-art{width:100%;height:190px}.section-heading{align-items:start}.section-heading h2{font-size:42px}.section-heading>p{display:none}.site-footer{gap:15px;flex-direction:column}.draw-layout{padding:110px 20px 50px;gap:40px}.draw-copy h1{font-size:58px}.wheel-stage{width:94vw}.admin-main{padding:25px 12px}.login-card{padding:32px 24px}.login-card h1,.dashboard-title h1{font-size:50px}.admin-toolbar{display:grid}.admin-toolbar label{min-width:0}.admin-toolbar .primary-button{margin:0}.stats-grid{grid-template-columns:1fr}.admin-panel{padding:20px 15px}.list-toolbar{align-items:stretch;flex-direction:column}.toolbar-actions{flex-wrap:wrap}.entry-row{grid-template-columns:1fr 35px}.entry-row span{grid-column:1}.entry-row button{grid-column:2;grid-row:1}.entry-row .entry-date{display:none}}

/* Five-second themed ceremony doors */
.door-portal{position:absolute;z-index:7;inset:-1%;border-radius:50%;overflow:hidden;filter:drop-shadow(0 28px 32px rgba(35,22,15,.28));isolation:isolate}.ceremony-door{position:absolute;top:0;bottom:0;width:50.4%;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 82%,#fff),var(--primary) 50%,color-mix(in srgb,var(--primary) 74%,#000));border:8px solid color-mix(in srgb,var(--secondary) 72%,#fff);box-shadow:inset 0 0 0 4px var(--primary),inset 0 0 70px rgba(0,0,0,.32);transition:transform 5s cubic-bezier(.72,.02,.28,1);will-change:transform}.ceremony-door-left{left:0;border-radius:100% 0 0 100%;border-right:2px solid color-mix(in srgb,var(--secondary) 75%,#fff)}.ceremony-door-right{right:0;border-radius:0 100% 100% 0;border-left:2px solid color-mix(in srgb,var(--secondary) 75%,#fff)}.ceremony-door i{position:absolute;left:14%;right:14%;height:22%;border:2px solid color-mix(in srgb,var(--secondary) 68%,#fff);background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(0,0,0,.1));box-shadow:inset 0 0 18px rgba(0,0,0,.18)}.ceremony-door i:nth-of-type(1){top:9%}.ceremony-door i:nth-of-type(2){top:39%}.ceremony-door i:nth-of-type(3){bottom:9%}.door-icon{position:absolute;z-index:2;top:50%;transform:translateY(-50%);font-size:clamp(30px,5vw,58px);filter:drop-shadow(0 8px 8px rgba(0,0,0,.25))}.ceremony-door-left .door-icon{right:14%}.ceremony-door-right .door-icon{left:14%}.door-start-sign{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);width:34%;aspect-ratio:1;border-radius:50%;border:5px double color-mix(in srgb,var(--secondary) 75%,#fff);background:radial-gradient(circle at 35% 25%,color-mix(in srgb,var(--secondary) 75%,#fff),var(--secondary) 42%,color-mix(in srgb,var(--secondary) 72%,#000));color:#fff;box-shadow:0 14px 32px rgba(0,0,0,.4),inset 0 0 0 4px rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;flex-direction:column;cursor:pointer;text-shadow:0 2px 6px rgba(0,0,0,.35);transition:opacity .4s ease,transform .4s ease}.door-start-sign:hover:not(:disabled){transform:translate(-50%,-50%) scale(1.06);box-shadow:0 18px 38px rgba(0,0,0,.48),0 0 0 8px color-mix(in srgb,var(--secondary) 20%,transparent)}.door-start-sign:disabled{cursor:not-allowed;filter:grayscale(.55);opacity:.72}.door-start-sign span{font-size:clamp(18px,3vw,34px);line-height:1}.door-start-sign strong{font:700 clamp(20px,3.3vw,42px)/1 'Cormorant Garamond',serif;letter-spacing:2px}.door-start-sign small{font-size:clamp(5px,.65vw,9px);font-weight:700;letter-spacing:1px;margin-top:5px}.door-portal.opening{pointer-events:none}.door-portal.opening .ceremony-door-left{transform:translateX(-104%)}.door-portal.opening .ceremony-door-right{transform:translateX(104%)}.door-portal.opening .door-start-sign{opacity:0;transform:translate(-50%,-50%) scale(.72)}
