:root{--ink:#18334a;--navy:#102b40;--cream:#f7f3e9;--paper:#fffdf8;--gold:#e1a93d;--coral:#d96a4b;--sage:#5f887b;--muted:#6b7881;--line:#dce1df;--shadow:0 18px 45px rgba(16,43,64,.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}h1,h2,h3{font-family:'Fraunces',serif;line-height:1.08;margin:.2em 0 .55em}h1{font-size:clamp(2.7rem,6vw,5.8rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.03em}h3{font-size:1.45rem}p{margin:.3em 0 1em}a{color:inherit;text-decoration:none}main{min-height:70vh}.site-header{height:84px;padding:0 clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(24,51,74,.1);background:rgba(255,253,248,.95);position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:12px;font-family:'Fraunces',serif;font-size:1.2rem;font-weight:700;line-height:1}.brand small{display:block;font:600 .68rem/1.4 'DM Sans';text-transform:uppercase;letter-spacing:.17em;color:var(--sage)}.brand-mark{width:42px;height:42px;border-radius:50% 50% 48% 52%;background:var(--gold);display:grid;place-items:center;color:var(--navy);font-size:1.4rem}.site-header nav{display:flex;align-items:center;gap:28px;font-size:.88rem;font-weight:600}.site-header nav>a:not(.button):hover{color:var(--coral)}.nav-toggle{display:none}.button{display:inline-flex;border:0;background:var(--gold);color:var(--navy);padding:14px 22px;border-radius:99px;font:700 .9rem 'DM Sans';cursor:pointer;justify-content:center}.button:hover{transform:translateY(-1px);filter:brightness(1.03)}.button.small{padding:10px 17px}.button.ghost{background:transparent;color:white;border:1px solid rgba(255,255,255,.5)}.button.ghost.dark{color:var(--navy);border-color:var(--navy)}.hero{min-height:680px;padding:clamp(90px,12vw,155px) clamp(24px,8vw,125px);color:white;background:radial-gradient(circle at 82% 18%,rgba(225,169,61,.6),transparent 18%),radial-gradient(circle at 76% 70%,rgba(95,136,123,.45),transparent 28%),linear-gradient(128deg,#102b40 0%,#193f56 65%,#315d64 100%);position:relative;overflow:hidden}.hero:after{content:'';position:absolute;width:440px;height:440px;border:1px solid rgba(255,255,255,.14);border-radius:50%;right:-100px;bottom:-210px}.hero h1{max-width:880px}.lead{font-size:clamp(1.05rem,2vw,1.35rem);max-width:760px;color:inherit;opacity:.86}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-weight:700;font-size:.72rem;color:var(--coral);display:block;margin-bottom:18px}.hero .eyebrow{color:#f2c66d}.actions{display:flex;gap:14px;margin-top:32px}.statement{padding:42px clamp(24px,8vw,125px);background:var(--gold);font-size:1.12rem}.statement p{max-width:970px;margin:auto}.section{padding:clamp(65px,8vw,110px) clamp(24px,8vw,125px)}.section.soft{background:var(--cream)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}.section-head h2{max-width:740px}.cards{display:grid;gap:22px}.cards.three{grid-template-columns:repeat(3,1fr)}.card{border:1px solid var(--line);border-radius:18px;padding:30px;background:white;box-shadow:0 3px 0 rgba(16,43,64,.02)}.card .icon{font-size:1.7rem;color:var(--coral)}.card a{font-weight:700;color:var(--coral)}.card ul{padding-left:20px}.band{padding:90px clamp(24px,14vw,210px);background:var(--navy);color:white;text-align:center}.band.light{background:var(--cream);color:var(--ink)}.band p{max-width:800px;margin:auto;font-size:1.15rem;opacity:.82}.split-hero,.dashboard-hero,.module-hero{padding:clamp(64px,8vw,110px) clamp(24px,8vw,125px);display:flex;justify-content:space-between;gap:60px;align-items:center;background:var(--cream)}.split-hero>div:first-child,.module-hero>div:first-child{max-width:760px}.split-hero h1,.module-hero h1,.dashboard-hero h1{font-size:clamp(2.7rem,5vw,4.8rem)}.quote-card,.tool-note{background:var(--navy);color:white;border-radius:24px;padding:35px;max-width:400px;font:600 1.3rem/1.4 'Fraunces'}.quote-card small{display:block;font:500 .75rem 'DM Sans';margin-top:24px;color:#f2c66d}.tool-note p{font:400 .9rem/1.6 'DM Sans';opacity:.8}.form-section,.auth-wrap{padding:80px clamp(24px,10vw,150px);display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.form-card{padding:35px;border:1px solid var(--line);border-radius:20px;background:white;box-shadow:var(--shadow);display:grid;gap:18px}.form-card label{font-size:.82rem;font-weight:700}.form-card label span{font-weight:400;color:var(--muted)}input,select,textarea{display:block;width:100%;margin-top:7px;padding:13px 14px;border:1px solid #cbd3d2;border-radius:9px;background:#fff;font:inherit;color:var(--ink)}textarea{resize:vertical}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.check{display:flex;gap:10px;align-items:flex-start}.check input{width:auto;margin-top:5px}.form-error,.flash{padding:14px 18px;border-radius:9px;background:#fff0ec;color:#923f29}.flash{position:fixed;top:95px;left:50%;transform:translateX(-50%);z-index:30;box-shadow:var(--shadow)}.flash.success,.success-panel{background:#eaf5ef;color:#245c47}.fine{font-size:.78rem;color:var(--muted)}.auth-intro{padding-top:25px}.check-list{padding:0;list-style:none}.check-list li{padding:10px 0;border-bottom:1px solid var(--line)}.check-list li:before{content:'✓';color:var(--sage);font-weight:700;margin-right:10px}.narrow{max-width:900px;margin:auto}.success-panel{padding:30px;border-radius:16px}.wheel-layout{padding:70px clamp(24px,8vw,125px);display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.wheel-stage{text-align:center}.wheel{width:min(430px,78vw);aspect-ratio:1;border-radius:50%;margin:auto;border:12px solid white;box-shadow:0 15px 50px rgba(16,43,64,.22);transition:transform 3s cubic-bezier(.12,.65,.08,1);position:relative}.wheel:after{content:'';position:absolute;inset:42%;background:var(--paper);border-radius:50%;box-shadow:0 3px 12px rgba(0,0,0,.2)}#wheel-pointer{position:absolute;top:-35px;left:calc(50% - 12px);z-index:2;color:var(--navy);font-size:2rem}.wheel-result{font:700 1.4rem 'Fraunces';margin-top:25px}.wheel-controls{max-width:520px}.wheel-controls .button{margin:8px 8px 0 0}.badge{display:inline-block;border-radius:99px;background:#eaf1ef;color:#39695d;padding:6px 11px;font:700 .7rem 'DM Sans';text-transform:uppercase;letter-spacing:.08em}.area-pta .site-header{background:var(--navy);color:white;border:0}.area-pta .brand-mark{background:var(--coral);color:white}.dashboard-hero{background:linear-gradient(120deg,var(--navy),#28536a);color:white}.dashboard-hero .eyebrow{color:#f2c66d}.year-chip{border:1px solid rgba(255,255,255,.25);border-radius:18px;padding:22px 28px;text-align:center;font:700 1.4rem 'Fraunces'}.year-chip small{font:500 .7rem 'DM Sans';text-transform:uppercase;letter-spacing:.1em;opacity:.7}.metrics{display:grid;grid-template-columns:repeat(4,1fr);padding:0 clamp(24px,8vw,125px);background:var(--navy);color:white}.metrics div{padding:25px;border-left:1px solid rgba(255,255,255,.12)}.metrics strong{display:block;font:700 1.8rem 'Fraunces';color:#f2c66d}.metrics span{font-size:.75rem;opacity:.7}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.module-card{padding:28px;border-radius:16px;border:1px solid var(--line);background:white;transition:.2s}.module-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}.module-card>span{color:var(--coral);font-size:.7rem;font-weight:700}.module-card b{font-size:.82rem;color:var(--sage)}.committee-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.committee-row a{background:white;padding:22px;border-radius:14px;display:grid;gap:8px;border:1px solid var(--line)}.committee-row a>span{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:var(--gold);font-weight:700}.committee-row small{color:var(--coral)}.module-hero{padding-top:65px;padding-bottom:65px}.back{display:block;margin-bottom:22px;font-size:.82rem}.workspace{display:grid;grid-template-columns:250px 1fr;min-height:580px}.workspace aside{background:#f0ede4;padding:40px 24px}.workspace aside strong{display:block;margin-bottom:15px}.workspace aside a{display:block;padding:10px;border-radius:7px;font-size:.82rem}.workspace aside a.active{background:white;color:var(--coral);font-weight:700}.workspace-main{padding:55px clamp(24px,6vw,90px)}.workspace-title{display:flex;justify-content:space-between;align-items:center}.demo-list{border-top:1px solid var(--line)}.demo-list article{display:grid;grid-template-columns:85px 1fr 40px;align-items:center;padding:20px 5px;border-bottom:1px solid var(--line)}.demo-list article>span{color:var(--coral);font-weight:700;font-size:.8rem}.demo-list h3{font:700 1rem 'DM Sans';margin:0}.demo-list p{margin:2px 0;color:var(--muted);font-size:.8rem}.demo-list button{border:0;background:transparent;font-size:1.3rem}.insight{margin-top:30px;padding:22px;border-left:4px solid var(--gold);background:var(--cream)}.insight p{margin:5px 0}.progress{display:block;height:7px;background:#e6e6e2;border-radius:10px;margin:18px 0 8px}.progress i{display:block;height:100%;background:var(--sage);border-radius:10px}.empty{text-align:center;padding:70px;border:1px dashed var(--line);border-radius:20px}.idea-list{display:grid;gap:14px}.idea{border:1px solid var(--line);border-radius:14px;background:white}.idea summary{padding:22px;display:grid;grid-template-columns:110px 1fr 80px;align-items:center;cursor:pointer}.idea summary h3,.idea summary p{margin:0}.idea summary p{font-size:.8rem;color:var(--muted)}.idea-body{border-top:1px solid var(--line);padding:25px 12%;background:var(--cream)}.idea-body form{display:grid;gap:14px}footer{padding:45px clamp(24px,8vw,125px);background:#0a202f;color:white;display:flex;justify-content:space-between;align-items:center}footer p{opacity:.65;font-size:.8rem;margin:3px 0}footer a{color:#f2c66d;font-size:.82rem}
@media(max-width:900px){.nav-toggle{display:block;border:0;background:transparent;color:inherit}.site-header nav{display:none;position:absolute;top:84px;left:0;right:0;padding:25px;background:inherit;flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.cards.three,.module-grid{grid-template-columns:1fr 1fr}.committee-row{grid-template-columns:1fr 1fr}.split-hero,.dashboard-hero,.module-hero{align-items:flex-start}.form-section,.auth-wrap,.wheel-layout{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr}.workspace{grid-template-columns:1fr}.workspace aside{display:flex;overflow:auto;gap:5px}.workspace aside strong{display:none}.workspace aside a{white-space:nowrap}.quote-card,.tool-note{max-width:none}}
@media(max-width:620px){.site-header{height:70px}.site-header nav{top:70px}.hero{min-height:590px}.actions{flex-direction:column;align-items:flex-start}.cards.three,.module-grid,.committee-row{grid-template-columns:1fr}.split-hero,.dashboard-hero,.module-hero{flex-direction:column;gap:25px}.form-section,.auth-wrap{padding-left:20px;padding-right:20px;gap:30px}.form-card{padding:22px}.two-fields{grid-template-columns:1fr}.metrics{padding:0}.metrics div{padding:18px}.workspace-title{align-items:flex-start;gap:15px}.demo-list article{grid-template-columns:55px 1fr 25px}.idea summary{grid-template-columns:1fr;gap:10px}.idea-body{padding:20px}footer{flex-direction:column;align-items:flex-start;gap:20px}}

/* Apt Academy brand layer: preserves the Hub palette and restores Apt purple. */
:root{--purple:#552378;--purple-dark:#321045;--purple-mid:#754494;--purple-light:#f5eff8}
.site-header{background:var(--purple-dark);color:#fff;border-bottom-color:rgba(255,255,255,.12)}
.brand{gap:14px}.brand img{display:block;width:155px;height:auto}.hub-label{border-left:1px solid rgba(255,255,255,.35);padding-left:14px;font:700 .62rem/1.35 'DM Sans';letter-spacing:.15em;text-transform:uppercase;color:#fff;max-width:92px}
.site-header nav>a:not(.button):hover,.card a,.committee-row small{color:var(--purple-mid)}
.hero{background:radial-gradient(circle at 82% 18%,rgba(225,169,61,.55),transparent 18%),radial-gradient(circle at 76% 70%,rgba(117,68,148,.55),transparent 30%),linear-gradient(128deg,var(--purple-dark) 0%,var(--purple) 52%,#315d64 100%)}
.area-pta .site-header{background:var(--purple-dark)}.dashboard-hero{background:linear-gradient(120deg,var(--purple-dark),var(--purple),#28536a)}
.module-card:hover{border-color:var(--purple-mid)}.workspace aside{background:var(--purple-light)}.workspace aside a.active{color:var(--purple)}
.wheel{box-shadow:0 15px 50px rgba(85,35,120,.25)}
@media(max-width:620px){.brand img{width:124px}.hub-label{font-size:.54rem;padding-left:9px;max-width:70px}}

/* Functional workspace components */
.metrics.light{background:var(--purple-light);color:var(--ink)}.metrics.light div{border-color:rgba(85,35,120,.12)}.metrics.light strong{color:var(--purple)}
.drawer-form{display:none;padding:40px clamp(24px,8vw,125px);background:var(--purple-light);border-bottom:1px solid #dfd3e6}.drawer-form.open{display:block}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-grid .wide{grid-column:1/-1}.form-grid>button{justify-self:start}
.toolbar,.library-search{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.toolbar form,.library-search{flex:1}.toolbar form{display:flex;gap:10px}.toolbar input{margin:0}.library-search input,.library-search select{margin:0}.library-search{justify-content:flex-start}.library-search input{max-width:600px}.library-search select{max-width:230px}
.data-table{border:1px solid var(--line);border-radius:15px;overflow:hidden}.data-table>a,.data-table>div{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr .8fr;align-items:center;gap:15px;padding:17px 20px;border-bottom:1px solid var(--line)}.data-table>a:last-child,.data-table>div:last-child{border:0}.data-table>a:hover{background:var(--purple-light)}.data-table span{min-width:0}.data-table small{display:block;color:var(--muted)}.table-head{background:var(--navy);color:#fff;text-transform:uppercase;letter-spacing:.09em;font-size:.68rem;font-weight:700}.status-pill{font-style:normal;background:var(--purple-light);color:var(--purple);border-radius:99px;padding:5px 9px;font-size:.72rem}
.record-layout{padding:60px clamp(24px,6vw,90px);display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:35px;background:#f7f7f4}.record-main,.record-side .form-card{background:#fff;border-radius:18px;border:1px solid var(--line)}.record-main{padding:35px}.record-title{display:flex;justify-content:space-between;align-items:start;padding-bottom:25px}.record-title h2{margin:.2em 0}.record-title p{color:var(--muted)}.score{width:80px;height:80px;border-radius:50%;display:grid;place-items:center;background:var(--purple);color:white;text-align:center}.score strong{font:700 1.6rem 'Fraunces'}.score small{display:block;font-size:.6rem}.panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}.panel summary{cursor:pointer;font-weight:700}.panel .form-grid{margin-top:20px}.timeline{margin-top:40px}.section-head.compact{margin-bottom:20px}.timeline article{display:grid;grid-template-columns:20px 1fr;gap:15px;padding-bottom:25px}.timeline-dot{width:12px;height:12px;border:3px solid var(--purple);border-radius:50%;margin-top:5px}.timeline article h3{font:700 1rem 'DM Sans';margin:3px 0}.timeline article p{margin:5px 0}.timeline pre{white-space:pre-wrap;background:var(--cream);padding:15px;border-radius:8px}.empty-inline{padding:25px;background:var(--cream);border-radius:10px;color:var(--muted)}
.calendar-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.calendar-nav h2{margin:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--line);border-radius:14px;overflow:hidden}.day-name{padding:10px;background:var(--navy);color:white;text-align:center;font-size:.75rem}.day{min-height:125px;padding:10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:white}.day.today{background:var(--purple-light)}.day.today>b{background:var(--purple);color:#fff;border-radius:50%;padding:3px 8px}.day article{margin-top:7px;padding:6px;border-left:3px solid var(--gold);background:var(--cream);font-size:.7rem}.day article strong,.day article small{display:block}.day.muted{background:#f3f3f0}
.event-layout{display:grid;grid-template-columns:350px 1fr;min-height:600px}.event-list{padding:45px 25px;background:var(--cream)}.event-list>a{display:grid;grid-template-columns:55px 1fr;gap:12px;padding:15px;border-radius:10px}.event-list>a.active,.event-list>a:hover{background:#fff;box-shadow:0 5px 18px rgba(16,43,64,.08)}.event-list small{display:block;color:var(--muted)}.event-date{text-align:center;text-transform:uppercase;font-size:.65rem;color:var(--purple)}.event-date b{display:block;font:700 1.5rem 'Fraunces'}.event-detail{padding:50px clamp(25px,6vw,85px)}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:25px 0}.facts span{padding:15px;background:var(--purple-light);border-radius:10px;font-weight:700}.facts small{display:block;text-transform:uppercase;font-size:.65rem;color:var(--muted)}.quick-add{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:8px;margin:30px 0}.quick-add input{margin:0}.task{display:grid;grid-template-columns:35px 1fr;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.task button{width:28px;height:28px;border-radius:50%;border:1px solid var(--line);background:white}.task small{display:block;color:var(--muted)}.task.done strong{text-decoration:line-through;color:var(--muted)}
.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.resource-grid article{padding:25px;border:1px solid var(--line);border-radius:14px;background:white}.resource-grid article>a{display:block;color:var(--purple);font-weight:700;margin-top:15px}.resource-grid small{display:block;color:var(--muted)}
.admin-layout,.committee-work{padding:60px clamp(24px,7vw,105px);display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:40px;align-items:start}.admin-layout aside{display:grid;gap:20px}.data-table.people>div{grid-template-columns:1fr 1.3fr .6fr .6fr}.committee-item{display:grid;grid-template-columns:100px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}.committee-item h3{margin:0}.committee-item small{color:var(--muted)}
.panther-badge{width:250px;height:250px;border-radius:50%;display:grid;place-items:center;text-align:center;background:var(--purple);color:#fff;border:12px solid var(--gold);font-weight:700;letter-spacing:.12em;box-shadow:var(--shadow)}.panther-badge strong{font:700 2.2rem 'Fraunces'}.prize-list{display:grid;gap:10px}.prize-list form{display:grid;grid-template-columns:25px 1.5fr .6fr .6fr .7fr auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:10px}.prize-list i{width:20px;height:50px;border-radius:5px}.prize-list label{font-size:.7rem}.prize-list input{margin-top:2px;padding:8px}.wheel-table>div{grid-template-columns:1.4fr .8fr 1fr .5fr 1fr}
@media(max-width:980px){.record-layout,.admin-layout,.committee-work{grid-template-columns:1fr}.event-layout{grid-template-columns:1fr}.event-list{display:flex;overflow:auto}.event-list h2{display:none}.event-list>a{min-width:260px}.resource-grid{grid-template-columns:1fr 1fr}.calendar-grid{overflow-x:auto}.day{min-width:110px}.data-table{overflow-x:auto}.data-table>a,.data-table>div{min-width:760px}}
@media(max-width:620px){.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.toolbar,.toolbar form,.library-search{flex-direction:column;align-items:stretch}.record-layout{padding:25px 15px}.record-main{padding:20px}.record-title{gap:15px}.calendar-grid{display:flex;flex-direction:column}.day-name,.day.muted,.day:not(:has(article)){display:none}.day{min-height:auto;border-right:0}.facts,.quick-add{grid-template-columns:1fr}.resource-grid{grid-template-columns:1fr}.admin-layout,.committee-work{padding:35px 18px}.prize-list form{grid-template-columns:20px 1fr 1fr}.prize-list form strong{grid-column:2/-1}.panther-badge{width:190px;height:190px}}
.research-intake{grid-template-columns:1fr 1.25fr}.research-intake .insight textarea{background:white;margin:15px 0}.research-prompt-wrap{margin-top:22px;border:1px solid var(--line);border-radius:12px;padding:15px;background:white}.research-prompt-wrap summary{cursor:pointer;font-weight:700}.research-prompt-wrap p{font-size:.82rem}.research-button{border-radius:10px}.success-text{color:#26734d;font-weight:700}.error-text{color:#b42318;font-weight:700}.family-table>div{grid-template-columns:1.35fr 1fr 1.25fr .8fr 1fr}
@media(max-width:900px){.research-intake{grid-template-columns:1fr}}

/* Panther Prize Wheel presentation */
.premium-wheel-page{min-height:calc(100vh - 84px);padding:55px 20px 80px;text-align:center;background:radial-gradient(circle at 80% 20%,rgba(117,68,148,.6),transparent 26%),radial-gradient(circle at 12% 80%,rgba(49,77,101,.35),transparent 25%),linear-gradient(145deg,#321045,#552378 58%,#754494);color:white;position:relative;overflow:hidden}.premium-heading{position:relative;z-index:2}.premium-heading .paw{display:block;font-size:2rem}.premium-heading .eyebrow{color:#f0cf65;margin:6px 0}.premium-heading h1{font-size:clamp(3rem,6vw,5rem);margin:0}.premium-heading p{font-size:1.2rem;opacity:.76}.premium-wheel-shell{width:min(690px,88vw);aspect-ratio:1;margin:35px auto 22px;position:relative;filter:drop-shadow(0 24px 28px rgba(20,5,31,.35))}.premium-wheel-shell canvas{display:block;width:100%;height:100%}.wheel-pointer{position:absolute;z-index:3;top:-22px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:32px solid transparent;border-right:32px solid transparent;border-top:70px solid #241c26;filter:drop-shadow(0 7px 7px rgba(0,0,0,.35))}.wheel-pointer i{position:absolute;width:14px;height:14px;border-radius:50%;background:#f0c94e;top:-58px;left:-7px}.premium-spin,.next-family{border:0;border-radius:15px;padding:20px 55px;background:#f0c94e;color:#321045;font:800 1.15rem 'DM Sans';cursor:pointer;box-shadow:0 9px 0 #bd8d1d}.premium-spin:active{transform:translateY(5px);box-shadow:0 4px 0 #bd8d1d}.premium-spin:disabled{opacity:.72}.premium-wheel-page>.fine{color:rgba(255,255,255,.7)}.prize-celebration{position:fixed;z-index:100;inset:0;padding:35px;display:grid;place-items:center;background:linear-gradient(140deg,rgba(50,16,69,.96),rgba(117,68,148,.96));opacity:0;visibility:hidden;transition:.35s}.prize-celebration.show{opacity:1;visibility:visible}.celebration-card{width:min(800px,94vw);background:#fff;color:var(--purple-dark);border-radius:35px;padding:65px clamp(25px,7vw,90px);position:relative;overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.3)}.celebration-card .prize-icon{width:130px;height:130px;margin:0 auto 20px;border-radius:50%;display:grid;place-items:center;background:#f9e5a8;font-size:4rem}.celebration-card .eyebrow{color:var(--purple);margin-bottom:5px}.celebration-card h2{font-size:clamp(3rem,7vw,5rem);margin:0}.celebration-card h3{font-size:clamp(2rem,5vw,3.5rem);color:var(--purple);margin:.25em 0}.celebration-card>p{color:var(--muted);font-size:1.1rem}.claim-box{margin:30px auto;max-width:580px;border:3px dashed #d8c0e3;border-radius:18px;padding:18px 24px;display:flex;align-items:center;gap:20px;text-align:left;background:var(--purple-light)}.claim-box>span{font-size:2rem}.claim-box strong,.claim-box small{display:block}.claim-box small{color:var(--muted)}.next-family{width:min(470px,100%);background:#251d27;color:#fff;box-shadow:none}.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti i{position:absolute;top:-30px;width:12px;height:24px;animation:confetti-fall 3.7s linear forwards}@keyframes confetti-fall{to{top:110%;transform:rotate(760deg) translateX(70px)}}
@media(max-width:620px){.premium-wheel-page{padding-top:35px}.premium-wheel-shell{width:94vw}.wheel-pointer{border-left-width:22px;border-right-width:22px;border-top-width:52px;top:-12px}.wheel-pointer i{top:-44px}.premium-spin{width:90%;padding:18px}.prize-celebration{padding:12px}.celebration-card{padding:35px 20px;border-radius:24px}.celebration-card .prize-icon{width:90px;height:90px;font-size:3rem}.claim-box{padding:14px}}

/* Volunteer Center and QR Studio */
fieldset{border:1px solid var(--line);border-radius:12px;padding:16px}legend{font-size:.82rem;font-weight:700;padding:0 7px}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px 18px}.volunteer-card{display:flex;flex-direction:column}.volunteer-card small{color:var(--muted);margin-top:auto}.volunteer-card a{margin-top:18px}.volunteer-admin{padding:60px clamp(24px,7vw,105px);display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:40px;align-items:start}.opportunity-list{display:grid;gap:12px}.opportunity-list article{display:grid;grid-template-columns:1fr 110px auto;gap:20px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:14px;background:white}.opportunity-list article.inactive{opacity:.6}.opportunity-list h3,.opportunity-list p{margin:.2em 0}.opportunity-list>article>strong{text-align:center;font:700 1.6rem 'Fraunces'}.opportunity-list>article>strong small{display:block;font:500 .65rem 'DM Sans';color:var(--muted)}.volunteer-list{display:grid;gap:10px}.volunteer-list>details{border:1px solid var(--line);border-radius:12px;background:white}.volunteer-list summary{display:grid;grid-template-columns:100px 1fr 1.2fr;gap:15px;align-items:center;padding:18px;cursor:pointer}.volunteer-list summary small{display:block;color:var(--muted)}.volunteer-detail{display:grid;grid-template-columns:1fr 260px;gap:30px;padding:25px 10%;border-top:1px solid var(--line);background:var(--cream)}
.qr-studio{padding:70px clamp(24px,10vw,150px);display:grid;grid-template-columns:420px 1fr;gap:70px;align-items:start;background:var(--cream)}.qr-preview{text-align:center;background:#fff;border:1px solid var(--line);border-radius:25px;padding:45px;box-shadow:var(--shadow)}#qrcode{width:min(512px,100%);aspect-ratio:1;margin:0 auto 25px;display:grid;place-items:center;padding:18px;background:#fff;border-radius:16px}#qrcode canvas,#qrcode img{width:100%!important;height:auto!important;image-rendering:pixelated}.qr-preview h2{margin-bottom:5px}.qr-preview>p{word-break:break-all;color:var(--muted)}.qr-preview .actions{justify-content:center}.qr-preset{text-align:left;cursor:pointer;font:inherit;color:inherit}.qr-preset b{color:var(--purple)}
@media(max-width:900px){.volunteer-admin,.qr-studio{grid-template-columns:1fr}.qr-studio{padding:45px 24px}.volunteer-detail{grid-template-columns:1fr}.opportunity-list article{grid-template-columns:1fr 90px}.opportunity-list article form{grid-column:1/-1}.volunteer-list summary{grid-template-columns:90px 1fr}.volunteer-list summary>span:last-child{grid-column:2}}
@media(max-width:620px){.check-grid{grid-template-columns:1fr}.volunteer-admin{padding:35px 18px}.opportunity-list article{grid-template-columns:1fr}.volunteer-list summary{grid-template-columns:1fr}.volunteer-list summary>span:last-child{grid-column:auto}.volunteer-detail{padding:20px}.qr-preview{padding:25px 15px}.qr-preview .actions{align-items:stretch}}
@media print{body.area-pta .site-header,.module-hero,.qr-studio>.form-card,.qr-preview .actions,.qr-preview .insight,footer,.section.soft{display:none!important}.qr-studio{display:block;padding:0;background:#fff}.qr-preview{border:0;box-shadow:none}.qr-preview #qrcode{width:650px;max-width:90vw}}

/* Restricted School Operations prototype */
.school-demo-callout{padding:36px clamp(24px,8vw,125px);background:linear-gradient(100deg,var(--purple-light),#fff8df);display:flex;justify-content:space-between;align-items:center;gap:35px;border-bottom:1px solid #e4d5ea}.school-demo-callout h2{margin:.1em 0;font-size:2.2rem}.school-demo-callout p{max-width:780px;margin:0}.school-command-hero{min-height:570px;padding:90px clamp(24px,8vw,125px);display:grid;grid-template-columns:1.4fr .6fr;gap:70px;align-items:center;color:white;background:radial-gradient(circle at 80% 20%,rgba(225,169,61,.45),transparent 22%),linear-gradient(130deg,#24102f,var(--purple) 57%,#315d64)}.school-command-hero h1{font-size:clamp(3.4rem,7vw,6rem);margin:.1em 0}.school-command-hero p{max-width:750px;font-size:1.18rem;opacity:.82}.school-command-hero .eyebrow{color:#f0cf65}.school-hero-panel{padding:32px;border:1px solid rgba(255,255,255,.22);border-radius:24px;background:rgba(255,255,255,.1);backdrop-filter:blur(12px)}.school-hero-panel>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;opacity:.7}.school-hero-panel>strong{display:block;font:700 2.1rem 'Fraunces';margin:12px 0}.school-hero-panel>div{margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,255,255,.2)}.school-hero-panel b{display:block;font:700 3rem 'Fraunces';color:#f0cf65}.school-hero-panel small{opacity:.7}.school-pulse{display:grid;grid-template-columns:repeat(4,1fr);background:#150c1a;color:white;padding:0 clamp(24px,8vw,125px)}.school-pulse article{padding:25px;border-right:1px solid rgba(255,255,255,.12)}.school-pulse span,.school-pulse small{display:block;font-size:.7rem;opacity:.65}.school-pulse strong{display:block;font:700 1.9rem 'Fraunces';color:#f0cf65;margin:4px 0}.school-attention{padding:75px clamp(24px,8vw,125px)}.attention-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.attention-grid a{display:grid;grid-template-columns:45px 1fr auto;gap:16px;align-items:center;padding:22px;border:1px solid var(--line);border-radius:14px;background:white;transition:.2s}.attention-grid a:hover{border-color:var(--purple);box-shadow:var(--shadow)}.attention-grid i{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--purple-light);color:var(--purple);font-style:normal;font-weight:700}.attention-grid small{display:block;color:var(--muted)}.attention-grid b{color:var(--purple);font-size:.8rem}.school-module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.school-module-grid>a{min-height:270px;padding:27px;border-radius:16px;border:1px solid var(--line);background:white;display:flex;flex-direction:column;transition:.2s}.school-module-grid>a:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}.school-module-grid>a>span{font:700 2rem 'Fraunces';color:var(--purple)}.school-module-grid>a>small{color:var(--muted)}.school-module-grid h3{margin-top:auto}.school-module-grid b{color:var(--purple);font-size:.82rem}.school-boundary{padding:70px clamp(24px,10vw,150px);display:grid;grid-template-columns:1fr 1fr;gap:70px;background:#1b111e;color:white}.school-boundary h2{font-size:2.4rem}.school-boundary p{opacity:.75;font-size:1.05rem}.school-module-hero{padding:60px clamp(24px,6vw,90px);display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(120deg,var(--purple-light),#fff);border-bottom:1px solid #e3d6e9}.school-module-hero>div{max-width:800px}.school-module-hero h1{font-size:clamp(2.7rem,5vw,4.7rem)}.school-module-hero p{font-size:1.1rem;color:var(--muted)}.school-module-shell{display:grid;grid-template-columns:270px 1fr;min-height:700px;background:#f8f7f4}.school-module-shell>aside{padding:32px 18px;background:#1b111e;color:white}.school-module-shell>aside>strong{display:block;padding:8px 12px 20px;color:#f0cf65}.school-module-shell>aside>a{display:block;padding:10px 12px;border-radius:7px;font-size:.78rem;opacity:.72}.school-module-shell>aside>a:hover,.school-module-shell>aside>a.active{background:rgba(255,255,255,.1);opacity:1;color:#f0cf65}.school-module-content{padding:45px clamp(22px,5vw,75px)}.school-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.school-metrics article{padding:20px;border-radius:13px;border:1px solid var(--line);background:white}.school-metrics span,.school-metrics small{display:block;font-size:.68rem;color:var(--muted)}.school-metrics strong{display:block;font:700 1.8rem 'Fraunces';color:var(--purple);margin:5px 0}.school-toolbar{display:flex;justify-content:space-between;gap:18px;margin:28px 0}.school-toolbar>div{display:flex;gap:8px;flex-wrap:wrap}.school-toolbar input{margin:0;min-width:280px}.school-data{border:1px solid var(--line);border-radius:14px;overflow:auto;background:white}.school-data-head,.school-row{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));min-width:730px}.school-data-head{padding:13px 18px;background:#24102f;color:white;font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;font-weight:700}.school-row{width:100%;padding:0 18px;border:0;border-bottom:1px solid var(--line);background:white;text-align:left;color:var(--ink);font:inherit;cursor:pointer}.school-row:last-child{border-bottom:0}.school-row:hover{background:var(--purple-light)}.school-row span{padding:17px 8px}.prototype-detail{margin-top:38px;padding:30px;border-radius:17px;background:var(--purple-light)}.prototype-detail>div{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.prototype-detail article{background:white;border-radius:12px;padding:20px}.prototype-detail p{margin:5px 0;color:var(--muted);font-size:.85rem}.school-demo-modal{position:fixed;z-index:80;inset:0;padding:20px;background:rgba(20,8,27,.75);display:grid;place-items:center;opacity:0;visibility:hidden;transition:.2s}.school-demo-modal.show{opacity:1;visibility:visible}.school-demo-modal>div{width:min(600px,95vw);padding:35px;background:white;border-radius:22px;position:relative;box-shadow:0 25px 80px rgba(0,0,0,.35)}.school-demo-modal>div>button:first-child{position:absolute;top:14px;right:16px;border:0;background:transparent;font-size:1.8rem;cursor:pointer}.school-demo-modal label{display:block;margin:20px 0;font-weight:700;font-size:.8rem}
@media(max-width:1000px){.school-command-hero{grid-template-columns:1fr}.school-hero-panel{max-width:500px}.school-module-grid{grid-template-columns:1fr 1fr}.school-module-shell{grid-template-columns:1fr}.school-module-shell>aside{display:flex;overflow:auto}.school-module-shell>aside>strong{display:none}.school-module-shell>aside>a{white-space:nowrap}.school-metrics{grid-template-columns:1fr 1fr}.school-toolbar{flex-direction:column}.prototype-detail>div{grid-template-columns:1fr}.school-boundary{grid-template-columns:1fr;gap:20px}}
@media(max-width:620px){.school-demo-callout,.school-module-hero{flex-direction:column;align-items:flex-start}.school-command-hero{padding:60px 22px}.school-pulse{grid-template-columns:1fr 1fr;padding:0}.attention-grid,.school-module-grid{grid-template-columns:1fr}.school-boundary{padding:50px 22px}.school-module-content{padding:30px 15px}.school-metrics{grid-template-columns:1fr 1fr}.school-toolbar input{min-width:0;width:100%}.school-module-hero{padding:45px 22px}}
