/* HUELLAS v1.1.0 */
/* HUELLAS v1.0.9 */
/* HUELLAS v1.0.5 */
/* HUELLAS v1.0.1 · CSS RECOVERY · 2026-08-16 */
:root{
  --navy:#081d3a;--navy-2:#0b2b55;--blue:#0a3e8c;--blue-2:#175ab5;--gold:#e5b54a;--gold-2:#f4d67a;--ivory:#f8f4ea;--white:#fff;--text:#eaf1fb;--muted:#aabbd2;--success:#73d4a8;--danger:#ff8b8b;--card:rgba(11,43,85,.72);--line:rgba(244,214,122,.18);--shadow:0 24px 80px rgba(0,0,0,.28);--radius:24px;
}
*{box-sizing:border-box}html{min-height:100%;background:var(--navy)}body{margin:0;min-height:100vh;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:
radial-gradient(circle at 70% -10%,rgba(23,90,181,.42),transparent 36%),radial-gradient(circle at 10% 30%,rgba(229,181,74,.08),transparent 30%),linear-gradient(180deg,#06162d 0%,#081d3a 45%,#06162d 100%);padding-bottom:86px}
a{color:var(--gold-2);text-decoration:none}button,input,textarea{font:inherit}.inline{display:inline}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--gold-2);font-weight:800;font-size:.72rem;margin:0 0 .5rem}.lead{color:#d6e0ef;line-height:1.7}.glass-card{background:linear-gradient(145deg,rgba(15,54,102,.8),rgba(6,24,48,.8));border:1px solid rgba(244,214,122,.18);box-shadow:var(--shadow);backdrop-filter:blur(16px);border-radius:var(--radius)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;border-radius:14px;border:1px solid rgba(244,214,122,.28);padding:.78rem 1rem;font-weight:800;cursor:pointer;color:var(--text);background:rgba(255,255,255,.05);transition:.2s ease}.btn:hover{transform:translateY(-1px);border-color:var(--gold)}.btn.primary{background:linear-gradient(135deg,var(--blue-2),var(--blue));border-color:rgba(255,255,255,.12)}.btn.gold{background:linear-gradient(135deg,#f8dc7b,#c78f22);color:#122342;border-color:#ffe6a2}.btn.ghost{background:rgba(255,255,255,.04)}.btn.wide{width:100%}.btn.small{min-height:36px;padding:.5rem .7rem;font-size:.82rem}.alert{padding:.8rem 1rem;border-radius:14px;margin-bottom:1rem}.alert.error{background:rgba(255,93,93,.12);border:1px solid rgba(255,139,139,.3);color:#ffd0d0}.alert.success{background:rgba(115,212,168,.12);border:1px solid rgba(115,212,168,.3);color:#c9ffe7}
.auth-page{padding-bottom:0}.auth-shell{min-height:calc(100vh - 54px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.75fr);max-width:1180px;margin:auto;align-items:center;gap:4rem;padding:3rem 2rem}.auth-hero{text-align:center}.auth-logo{width:min(520px,88%);filter:drop-shadow(0 28px 50px rgba(0,0,0,.28))}.auth-hero h1{font-family:Georgia,serif;font-size:clamp(2rem,4vw,4.2rem);line-height:1.05;margin:.4rem 0 1rem;color:#fff}.auth-panel{padding:1.4rem}.tabs{display:grid;grid-template-columns:1fr 1fr;background:rgba(0,0,0,.18);border-radius:14px;padding:4px;margin-bottom:1.1rem}.tab-btn{border:0;background:transparent;color:var(--muted);padding:.75rem;border-radius:11px;font-weight:800;cursor:pointer}.tab-btn.active{background:rgba(244,214,122,.12);color:var(--gold-2)}.tab-panel{display:none}.tab-panel.active{display:block}.tab-panel label{display:block;font-size:.82rem;color:#c8d5e7;font-weight:700;margin:.9rem 0}.tab-panel input,.question textarea{width:100%;margin-top:.4rem;border-radius:13px;border:1px solid rgba(255,255,255,.14);background:rgba(2,13,28,.62);color:#fff;padding:.85rem .9rem;outline:0}.tab-panel input:focus,.question textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(229,181,74,.12)}.demo-box{margin-top:1.3rem;padding:1rem;border:1px dashed rgba(244,214,122,.25);border-radius:16px;color:var(--muted)}.demo-box p{margin:.5rem 0}.demo-pill{font-size:.66rem;letter-spacing:.14em;font-weight:900;color:var(--gold-2)}.demo-actions{display:flex;gap:.55rem;flex-wrap:wrap}.auth-footer,.site-footer{max-width:1000px;margin:0 auto;padding:1rem 1.5rem;text-align:center;color:#7289a6;font-size:.72rem;line-height:1.5}
.topbar{position:sticky;top:0;z-index:30;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 max(1rem,calc((100vw - 1120px)/2));background:rgba(4,18,36,.82);border-bottom:1px solid rgba(244,214,122,.1);backdrop-filter:blur(18px)}.brand-mini{display:flex;align-items:center;gap:.65rem;color:#fff;font-weight:900;letter-spacing:.12em}.brand-mini img{width:44px;height:44px;object-fit:contain}.topbar-actions{display:flex;align-items:center;gap:.55rem}.user-chip{font-size:.78rem;color:#c4d1e3}.icon-btn{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#fff;cursor:pointer}
.app-shell,.admin-shell{max-width:1120px;margin:0 auto;padding:2rem 1rem 3rem}.narrow{max-width:820px}.mission-hero{display:grid;grid-template-columns:1fr 240px;align-items:center;padding:2rem;overflow:hidden;position:relative}.mission-hero:before{content:"";position:absolute;inset:auto -8% -60% 30%;height:260px;background:radial-gradient(circle,rgba(229,181,74,.16),transparent 65%)}.mission-hero-copy{position:relative;z-index:1}.mission-hero h1,.page-title h1,.admin-hero h1,.profile-card h1{font-family:Georgia,serif;color:#fff;font-size:clamp(2rem,4vw,3.7rem);margin:.2rem 0 .4rem;line-height:1.05}.scripture-line{color:#c7d5e8;margin:.2rem 0 1.4rem}.week-chip{display:inline-flex;padding:.38rem .65rem;border-radius:999px;background:rgba(244,214,122,.1);border:1px solid rgba(244,214,122,.18);color:var(--gold-2);font-size:.7rem;font-weight:800}.mission-emblem{width:250px;max-width:100%;justify-self:end;filter:drop-shadow(0 20px 30px rgba(0,0,0,.28))}.progress-row{display:flex;justify-content:space-between;color:#c9d6e7;font-size:.8rem;margin-bottom:.45rem}.progress-track{height:10px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden}.progress-track.large{height:14px}.progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold),#ffe28a);box-shadow:0 0 16px rgba(229,181,74,.35);transition:width .4s ease}.stats-inline{display:flex;gap:1.25rem;flex-wrap:wrap;color:#9fb0c7;font-size:.78rem;margin-top:.8rem}.stats-inline b{color:#fff}.principles-panel{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0 1.4rem}.principle-card{display:flex;gap:.8rem;align-items:flex-start;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:1rem;background:rgba(255,255,255,.035)}.principle-card span{display:grid;place-items:center;min-width:32px;height:32px;border-radius:50%;background:rgba(23,90,181,.28);color:#fff;font-weight:900}.principle-card.christ{border-color:rgba(244,214,122,.2);background:rgba(229,181,74,.06)}.principle-card.christ span{background:rgba(229,181,74,.15);color:var(--gold-2)}.principle-card p{margin:.15rem 0;line-height:1.5;color:#d6e1ef}
.mission-path{position:relative;display:grid;gap:.9rem}.mission-path:before{content:"";position:absolute;left:31px;top:32px;bottom:32px;width:2px;background:linear-gradient(var(--gold),rgba(23,90,181,.3));opacity:.55}.step-card{position:relative;background:rgba(9,31,62,.76);border:1px solid rgba(255,255,255,.08);border-radius:20px;overflow:hidden;transition:.2s ease}.step-card.done{border-color:rgba(115,212,168,.35)}.step-card.locked{opacity:.48}.step-head{width:100%;display:grid;grid-template-columns:64px 1fr auto 26px;align-items:center;gap:.7rem;text-align:left;border:0;background:transparent;color:#fff;padding:.9rem 1rem;cursor:pointer}.step-head:disabled{cursor:not-allowed}.step-node{position:relative;z-index:2;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#154d98,#0a315f);border:2px solid rgba(244,214,122,.35);font-size:1.15rem}.done .step-node{background:linear-gradient(135deg,#31886c,#1d594a);border-color:rgba(115,212,168,.6)}.step-title-wrap{display:flex;flex-direction:column}.step-title-wrap small{font-size:.64rem;letter-spacing:.16em;color:#8298b5;font-weight:900}.step-title-wrap strong{font-size:1.05rem}.xp-badge{font-size:.72rem;color:var(--gold-2);background:rgba(229,181,74,.08);border:1px solid rgba(229,181,74,.16);padding:.35rem .5rem;border-radius:999px}.chevron{color:#8fa2bc;transition:.2s}.step-card.open .chevron{transform:rotate(180deg)}.step-body{display:none;padding:0 1rem 1.1rem 5.8rem}.step-card.open .step-body{display:block}.step-intro{color:#c3d1e3;line-height:1.65;max-width:760px}.scripture-box{display:flex;align-items:center;gap:.8rem;background:linear-gradient(135deg,rgba(229,181,74,.12),rgba(23,90,181,.08));border:1px solid rgba(244,214,122,.18);padding:.9rem;border-radius:16px;margin:1rem 0}.scripture-box span{font-size:1.5rem}.scripture-box p{margin:.2rem 0 0;color:#e8d79f}.question{border:0;padding:0;margin:1.4rem 0}.question legend{font-weight:800;line-height:1.5;margin-bottom:.7rem}.option{display:flex;gap:.75rem;align-items:flex-start;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:.75rem;margin:.45rem 0;cursor:pointer}.option:has(input:checked){border-color:rgba(229,181,74,.5);background:rgba(229,181,74,.08)}.option input{accent-color:var(--gold);margin-top:.18rem}.feedback{padding:.7rem .8rem;border-left:3px solid var(--gold);background:rgba(229,181,74,.07);color:#e8d9aa;border-radius:0 10px 10px 0}.step-result{margin-top:.8rem;padding:.75rem;border-radius:12px;background:rgba(115,212,168,.1);border:1px solid rgba(115,212,168,.2);color:#caffea}.completion-card{display:none;text-align:center;margin:1.3rem 0;padding:2rem;border-radius:24px;border:1px solid rgba(244,214,122,.35);background:radial-gradient(circle at 50% 10%,rgba(229,181,74,.18),transparent 38%),rgba(8,29,58,.9)}.completion-card.show{display:block}.completion-card h2{font-family:Georgia,serif;font-size:2rem;margin:.2rem 0}.sparkle{font-size:2rem;color:var(--gold)}.source-note{margin:1.2rem 0 0;padding:1rem;border-radius:16px;background:rgba(255,255,255,.025);color:#8fa2bc;font-size:.76rem;line-height:1.6}.source-note a{display:inline-block;margin-left:.35rem}.bottom-nav{position:fixed;z-index:25;left:50%;bottom:12px;transform:translateX(-50%);display:flex;gap:.2rem;background:rgba(4,18,36,.9);border:1px solid rgba(244,214,122,.14);border-radius:20px;padding:.35rem;box-shadow:0 18px 50px rgba(0,0,0,.35);backdrop-filter:blur(16px)}.nav-item{min-width:86px;padding:.55rem .7rem;border-radius:15px;color:#91a5bf;display:flex;flex-direction:column;align-items:center;gap:.18rem;font-size:.65rem;font-weight:800}.nav-item.active{color:var(--gold-2);background:rgba(229,181,74,.08)}.nav-icon{font-size:1rem}
.page-title{padding:1rem 0}.page-title p{color:#a8b8cd;line-height:1.6}.leaderboard{padding:.7rem 1rem}.rank-row{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:.5rem;padding:.85rem .25rem;border-bottom:1px solid rgba(255,255,255,.07)}.rank-row:last-child{border-bottom:0}.rank-row.me{background:rgba(229,181,74,.06);margin:0 -.45rem;padding-left:.7rem;padding-right:.7rem;border-radius:12px}.rank-pos{font-size:1.05rem;text-align:center}.rank-name{color:#e7eef7}.rank-name small{font-size:.55rem;color:var(--gold-2);border:1px solid rgba(229,181,74,.25);border-radius:999px;padding:.15rem .3rem;margin-left:.3rem}.collective-card{padding:1.2rem;margin-top:1rem;border:1px solid rgba(244,214,122,.18);border-radius:18px;background:rgba(229,181,74,.04)}.profile-card{text-align:center;padding:2rem}.profile-emblem{width:150px}.profile-card>p{color:#9eb0c6}.profile-xp{display:flex;flex-direction:column;margin:1rem auto 1.4rem;width:150px;padding:1rem;border-radius:16px;background:rgba(229,181,74,.07);border:1px solid rgba(229,181,74,.14)}.profile-xp strong{font-size:2rem;color:var(--gold-2)}.profile-xp span{font-size:.7rem;color:#aabbd2}.badge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.mini-badge{padding:.8rem;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06);opacity:.35;display:flex;flex-direction:column;gap:.4rem}.mini-badge.unlocked{opacity:1;border-color:rgba(244,214,122,.2);background:rgba(229,181,74,.05)}.mini-badge span{font-size:.72rem}
.admin-shell{padding-bottom:3rem}.admin-hero{padding:1.4rem 1.6rem;display:flex;justify-content:space-between;align-items:center}.admin-hero h1{font-size:2.2rem}.admin-hero img{width:120px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin:1rem 0}.stat-card{padding:1rem;border-radius:18px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column}.stat-card span{font-size:1.1rem}.stat-card strong{font-size:1.8rem;margin:.35rem 0}.stat-card small{color:#8ea1bb}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.admin-card{padding:1.2rem;margin-bottom:1rem}.admin-card h2{font-family:Georgia,serif;margin:.2rem 0 .5rem}.admin-card p{color:#aebfd3;line-height:1.6}.section-head{display:flex;justify-content:space-between;align-items:flex-start}.response-card{padding:1rem;margin-bottom:.8rem}.response-meta{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap}.response-meta span{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold-2)}.response-meta time{margin-left:auto;color:#758aa5;font-size:.7rem}.response-card pre{white-space:pre-wrap;word-break:break-word;background:rgba(0,0,0,.18);border-radius:12px;padding:.8rem;color:#cbd8e8;font-size:.75rem}.empty-state{padding:2rem;text-align:center;color:#96a9c0}.attendance-list{padding:.6rem}.attendance-row{display:grid;grid-template-columns:1.3fr auto auto auto;gap:.7rem;align-items:center;padding:.8rem;border-bottom:1px solid rgba(255,255,255,.07)}.attendance-row:last-child{border-bottom:0}.attendance-row>div{display:flex;flex-direction:column}.attendance-row small{color:#8296b0}.attendance-row label{font-size:.8rem;color:#bdc9da}
@media (max-width:850px){.auth-shell{grid-template-columns:1fr;gap:1rem;padding:1.5rem 1rem}.auth-logo{width:min(360px,90%)}.auth-hero h1{font-size:2.35rem}.mission-hero{grid-template-columns:1fr;padding:1.3rem}.mission-emblem{position:absolute;right:-35px;bottom:-35px;width:190px;opacity:.2}.principles-panel{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}.attendance-row{grid-template-columns:1fr auto;align-items:start}.attendance-row label{grid-row:auto}.step-body{padding-left:1rem}.mission-path:before{display:none}.step-head{grid-template-columns:52px 1fr auto 20px}.step-node{width:40px;height:40px}.xp-badge{font-size:.62rem}}
@media (max-width:560px){body{padding-bottom:80px}.topbar{height:62px;padding:0 .8rem}.brand-mini span{display:none}.user-chip{display:none}.app-shell,.admin-shell{padding:1rem .7rem 2rem}.mission-hero h1,.page-title h1{font-size:2rem}.week-chip{font-size:.58rem}.principle-card{font-size:.86rem}.step-head{padding:.8rem .65rem;grid-template-columns:46px 1fr auto 18px}.xp-badge{padding:.25rem .35rem}.step-title-wrap strong{font-size:.95rem}.bottom-nav{width:calc(100% - 18px);bottom:8px;justify-content:space-around}.nav-item{min-width:0;flex:1}.badge-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr 1fr}.admin-hero img{width:85px}.admin-hero h1{font-size:1.65rem}.rank-row{grid-template-columns:44px 1fr auto}.attendance-row{grid-template-columns:1fr}.attendance-row .btn{width:100%}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* ==============================
   HUELLAS Sprint 1.1 — Journey & Game Feel Pass
   ============================== */
:root{--journey-glow:0 0 28px rgba(244,214,122,.28);--soft-blue:#163b68}

/* Brand / navigation clarity */
.brand-mini img{width:38px;height:48px;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(0,0,0,.22))}
.nav-item{min-height:52px;min-width:92px;justify-content:center;transition:transform .18s ease,color .18s ease,background .18s ease}
.nav-item:active{transform:scale(.96)}
.nav-item.active{box-shadow:inset 0 0 0 1px rgba(244,214,122,.12)}
.nav-icon{font-size:1.1rem}

/* Journey map */
.journey-map{margin:0 0 1.2rem;padding:1.15rem 1.25rem 1rem;overflow:hidden;position:relative}
.journey-map:after{content:"";position:absolute;inset:auto -10% -70px auto;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(229,181,74,.12),transparent 68%);pointer-events:none}
.journey-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.9rem}
.journey-head h2{font-family:Georgia,serif;margin:.1rem 0;color:#fff;font-size:1.5rem}
.journey-counter{display:flex;align-items:baseline;gap:.3rem;padding:.55rem .75rem;border-radius:14px;background:rgba(229,181,74,.07);border:1px solid rgba(244,214,122,.14)}
.journey-counter strong{font-size:1.35rem;color:var(--gold-2)}
.journey-counter span{font-size:.7rem;color:#94a8c1}
.journey-route{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:.4rem;align-items:end;padding:1rem .2rem .55rem}
.journey-route:before{content:"";position:absolute;left:6%;right:6%;top:44px;height:3px;border-radius:999px;background:linear-gradient(90deg,rgba(244,214,122,.8),rgba(23,90,181,.5));box-shadow:0 0 18px rgba(229,181,74,.15)}
.journey-stop{position:relative;z-index:1;border:0;background:transparent;color:#e8eef7;display:flex;flex-direction:column;align-items:center;gap:.2rem;cursor:pointer;padding:.2rem;min-width:0;transition:transform .2s ease,filter .2s ease}
.journey-stop:nth-child(even){transform:translateY(16px)}
.journey-stop:hover:not(:disabled){filter:brightness(1.1)}
.journey-stop:nth-child(even):hover:not(:disabled){transform:translateY(13px)}
.journey-stop:nth-child(odd):hover:not(:disabled){transform:translateY(-3px)}
.journey-stop:disabled{cursor:not-allowed}
.journey-foot{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:linear-gradient(145deg,#123f77,#0b274a);border:2px solid rgba(244,214,122,.36);font-size:1.25rem;box-shadow:0 10px 28px rgba(0,0,0,.25)}
.journey-stop.done .journey-foot{color:#082544;background:linear-gradient(145deg,#ffe596,#d4a83b);border-color:#fff0ad;box-shadow:var(--journey-glow)}
.journey-stop.locked{opacity:.58}
.journey-stop.locked .journey-foot{border-color:rgba(255,255,255,.14);filter:saturate(.45)}
.journey-stop small{font-size:.55rem;letter-spacing:.14em;color:#7086a2;font-weight:900}
.journey-stop strong{font-size:.72rem;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.journey-stop.done strong{color:var(--gold-2)}
.journey-hint{text-align:center;color:#8195af;font-size:.72rem;margin:.8rem 0 .1rem}

/* Step cards now read as mission details, not as the map itself */
.mission-path{gap:.65rem}
.mission-path:before{display:none}
.step-card{border-radius:18px;background:linear-gradient(145deg,rgba(9,31,62,.88),rgba(7,25,49,.8))}
.step-card:not(.locked):hover{border-color:rgba(244,214,122,.16)}
.step-card.locked{opacity:.7;filter:saturate(.55)}
.step-card.locked .step-title-wrap strong{color:#9aabc0}
.step-card.locked .step-node{background:#0e2848;border-color:rgba(255,255,255,.14);color:#9fb0c4}
.step-card.done{background:linear-gradient(145deg,rgba(19,66,78,.52),rgba(7,25,49,.84));border-color:rgba(115,212,168,.32)}
.step-card.done .step-title-wrap small{color:#78cdae}
.step-head{min-height:72px}
.step-result{position:relative;overflow:hidden}
.step-result:before{content:"👣";margin-right:.35rem}

/* Reward feedback */
.xp-celebration{position:fixed;z-index:80;right:24px;top:92px;display:flex;align-items:center;gap:.8rem;min-width:260px;padding:.9rem 1rem;border-radius:18px;background:linear-gradient(135deg,rgba(19,61,105,.98),rgba(7,28,57,.98));border:1px solid rgba(244,214,122,.38);box-shadow:0 24px 70px rgba(0,0,0,.4),var(--journey-glow);transform:translateY(-20px) scale(.96);opacity:0;pointer-events:none;transition:.28s ease}
.xp-celebration.show{transform:translateY(0) scale(1);opacity:1}
.xp-burst{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(145deg,#ffe89e,#ca9125);color:#0d2c50;font-size:1.3rem;box-shadow:0 0 24px rgba(244,214,122,.38)}
.xp-celebration div:last-child{display:flex;flex-direction:column}.xp-celebration strong{font-size:1.25rem;color:#fff3bd}.xp-celebration span{font-size:.72rem;color:#b5c5d8;margin-top:.1rem}
.reward-particle{position:fixed;z-index:79;width:7px;height:7px;border-radius:50%;background:var(--gold-2);pointer-events:none;animation:rewardParticle 720ms ease-out forwards}
@keyframes rewardParticle{0%{transform:translate(0,0) scale(1);opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(.1);opacity:0}}
.mission-complete-overlay{position:fixed;z-index:90;inset:0;background:rgba(1,10,22,.76);display:grid;place-items:center;padding:1rem;opacity:0;pointer-events:none;transition:.25s ease;backdrop-filter:blur(12px)}
.mission-complete-overlay.show{opacity:1;pointer-events:auto}
.mission-complete-panel{max-width:520px;width:100%;padding:2rem;text-align:center;transform:translateY(20px) scale(.96);transition:.3s ease}
.mission-complete-overlay.show .mission-complete-panel{transform:none}
.mission-complete-panel h2{font-family:Georgia,serif;font-size:2rem;margin:.35rem 0;color:#fff}
.mission-complete-panel p:not(.eyebrow){color:#b9c8da;line-height:1.6}
.completion-footsteps{font-size:3rem;filter:drop-shadow(0 0 20px rgba(244,214,122,.4))}
.completion-xp{display:flex;flex-direction:column;margin:1.2rem auto;width:150px;padding:1rem;border-radius:18px;background:rgba(229,181,74,.08);border:1px solid rgba(244,214,122,.22)}
.completion-xp strong{font-size:2.2rem;color:var(--gold-2)}
.completion-xp span{font-size:.7rem;color:#9eb0c6}

/* Ranking */
.ranking-title{text-align:center;padding-bottom:.5rem}
.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;align-items:end;margin:.3rem 0 1rem}
.podium-card{position:relative;text-align:center;padding:1.15rem .7rem 1rem;border-radius:20px;background:linear-gradient(180deg,rgba(15,57,103,.82),rgba(8,31,60,.82));border:1px solid rgba(255,255,255,.08);min-height:170px;box-shadow:0 20px 50px rgba(0,0,0,.2);overflow:hidden}
.podium-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:linear-gradient(90deg,transparent,var(--medal,#789),transparent)}
.podium-card.place-1{min-height:205px;border-color:rgba(244,214,122,.32);--medal:#e5b54a;background:radial-gradient(circle at 50% 0,rgba(229,181,74,.18),transparent 48%),linear-gradient(180deg,rgba(15,57,103,.9),rgba(8,31,60,.86))}
.podium-card.place-2{--medal:#b8c7dc}.podium-card.place-3{--medal:#c78958}
.podium-card.me{box-shadow:0 0 0 1px rgba(244,214,122,.24),0 20px 50px rgba(0,0,0,.24)}
.podium-medal{font-size:2rem}.podium-place{font-size:.62rem;color:#7f95af;letter-spacing:.12em}.podium-card h2{font-size:1rem;margin:.4rem 0 .25rem;color:#fff}.podium-card h2 small{font-size:.48rem;color:var(--gold-2);border:1px solid rgba(229,181,74,.22);padding:.12rem .3rem;border-radius:999px}.podium-card>strong{font-size:1.25rem;color:var(--gold-2)}.podium-foot{position:absolute;right:8px;bottom:5px;opacity:.11;font-size:2.6rem;transform:rotate(-18deg)}
.compact-leaderboard{margin-bottom:1rem}
.collective-journey{display:grid;grid-template-columns:1fr 130px;gap:1rem;align-items:center;padding:1.35rem}
.collective-copy p{color:#aabbd2;line-height:1.6}.collective-ring{--size:116px;width:var(--size);height:var(--size);border-radius:50%;display:grid;place-items:center;align-content:center;background:radial-gradient(circle at center,#0b2b55 56%,transparent 57%),conic-gradient(var(--gold-2) calc(var(--p)*1%),rgba(255,255,255,.08) 0);box-shadow:0 10px 30px rgba(0,0,0,.22)}
.collective-ring strong{font-size:1.5rem;color:#fff}.collective-ring span{font-size:.62rem;color:#8fa2bc}.collective-journey .progress-track,.collective-stats{grid-column:1/-1}.collective-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.collective-stats div{padding:.75rem;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column}.collective-stats strong{font-size:1.2rem;color:var(--gold-2)}.collective-stats span{font-size:.66rem;color:#92a6bf;margin-top:.15rem}

/* Profile */
.profile-shell{display:grid;gap:1rem}.profile-hero{padding:1.7rem 1.5rem}.profile-emblem{width:124px}.profile-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:1.2rem}.profile-stat{display:flex;flex-direction:column;padding:.9rem;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}.profile-stat strong{font-size:1.35rem;color:var(--gold-2)}.profile-stat span{font-size:.67rem;color:#94a8c1;margin-top:.2rem}.profile-section{padding:1.2rem}.profile-section h2{font-family:Georgia,serif;margin:.15rem 0;color:#fff}.badge-count{display:grid;place-items:center;min-width:48px;height:32px;border-radius:999px;background:rgba(229,181,74,.08);border:1px solid rgba(244,214,122,.16);color:var(--gold-2);font-size:.72rem;font-weight:800}.journey-badges{grid-template-columns:repeat(4,1fr);margin-top:.85rem}.journey-badges .mini-badge{min-height:128px;justify-content:center;align-items:center;text-align:center}.journey-badges .mini-badge b{font-size:1.55rem}.journey-badges .mini-badge span{font-weight:800;color:#d7e1ee}.journey-badges .mini-badge small{font-size:.58rem;color:#758ba6;line-height:1.35}.journey-badges .mini-badge.unlocked small{color:#9eb0c6}.history-list{margin-top:.75rem}.history-row{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:.7rem;padding:.75rem .2rem;border-bottom:1px solid rgba(255,255,255,.06)}.history-row:last-child{border-bottom:0}.history-foot{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:rgba(229,181,74,.08);border:1px solid rgba(244,214,122,.14)}.history-row>div{display:flex;flex-direction:column}.history-row small{font-size:.65rem;color:#8094ad;margin-top:.15rem}.history-row>b{color:var(--gold-2);font-size:.8rem}

/* Teacher preparation */
.teacher-prep-card{overflow:hidden;position:relative}.teacher-prep-card:after{content:"👣";position:absolute;right:-14px;bottom:-26px;font-size:7rem;opacity:.035;transform:rotate(-20deg)}
.teacher-prep-icon{font-size:1.8rem}.insight-layout{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:.9rem}.theme-bars{display:grid;gap:.9rem}.theme-row>div:first-child{display:flex;justify-content:space-between;gap:.8rem;margin-bottom:.35rem}.theme-row strong{font-size:.82rem}.theme-row span{font-size:.65rem;color:#7e93ae}.theme-track{height:8px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}.theme-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue-2),var(--gold-2));box-shadow:0 0 15px rgba(229,181,74,.2)}
.teacher-recommendation{padding:1rem;border-radius:18px;background:linear-gradient(145deg,rgba(229,181,74,.08),rgba(23,90,181,.06));border:1px solid rgba(244,214,122,.16)}.recommendation-label{font-size:.58rem;letter-spacing:.13em;color:var(--gold-2);font-weight:900}.teacher-recommendation h3{margin:.45rem 0;font-size:1.05rem;color:#fff}.teacher-recommendation p{font-size:.78rem!important}.teacher-recommendation blockquote{margin:.8rem 0 0;padding:.75rem;border-left:3px solid var(--gold);background:rgba(0,0,0,.1);color:#e9ddad;font-size:.78rem;line-height:1.5;border-radius:0 10px 10px 0}

@media(max-width:850px){
  .journey-route{grid-template-columns:repeat(5,minmax(92px,1fr));overflow-x:auto;padding-bottom:1.15rem;scroll-snap-type:x proximity}.journey-route:before{left:48px;right:48px}.journey-stop{scroll-snap-align:center}.journey-stop:nth-child(even){transform:none}.journey-stop:nth-child(even):hover:not(:disabled){transform:translateY(-3px)}
  .podium{gap:.5rem}.podium-card{min-height:155px}.podium-card.place-1{min-height:180px}
  .journey-badges{grid-template-columns:repeat(2,1fr)}
  .insight-layout{grid-template-columns:1fr}
}
@media(max-width:560px){
  .journey-map{padding:1rem .85rem}.journey-head h2{font-size:1.15rem}.journey-counter{padding:.4rem .55rem}.journey-route{margin:0 -.35rem}.journey-foot{width:48px;height:48px}.journey-stop strong{font-size:.65rem}.journey-hint{text-align:left}
  .xp-celebration{left:10px;right:10px;top:72px;min-width:0}
  .podium{grid-template-columns:1fr 1fr;align-items:stretch}.podium-card.place-1{grid-column:1/-1;grid-row:1;min-height:145px}.podium-card.place-2,.podium-card.place-3{min-height:130px}.podium-card.place-1 .podium-foot{font-size:4rem}
  .collective-journey{grid-template-columns:1fr}.collective-ring{justify-self:center}.collective-stats{grid-template-columns:1fr}.collective-stats div{flex-direction:row;align-items:baseline;gap:.5rem}.collective-stats span{margin:0}
  .profile-stat-grid{grid-template-columns:1fr 1fr}.profile-stat:last-child{grid-column:1/-1}.journey-badges{grid-template-columns:1fr 1fr}.history-row{grid-template-columns:38px 1fr auto}
  .mission-complete-panel{padding:1.4rem}.mission-complete-panel h2{font-size:1.55rem}
}
/* Sprint 1.1 QA refinements */
.journey-badges .mini-badge:not(.unlocked){opacity:.55}.journey-badges .mini-badge:not(.unlocked) span{color:#a6b4c6}.journey-badges .mini-badge:not(.unlocked) small{color:#71869f}
@media(max-width:560px){.brand-mini span{display:inline;font-size:.76rem;letter-spacing:.1em}.brand-mini img{width:32px;height:40px}.journey-stop strong{white-space:normal;line-height:1.1;min-height:28px;max-width:88px}.journey-stop small{font-size:.52rem}}

/* =========================================================
   HUELLAS Sprint 2 — Weekly Content System + Admin Editor
   ========================================================= */
.btn.danger{background:rgba(255,139,139,.09);border-color:rgba(255,139,139,.32);color:#ffd0d0}.hidden{display:none!important}
.principles-panel.single{grid-template-columns:1fr}.discovery-callout{display:flex;gap:1rem;align-items:center;padding:1rem 1.2rem;margin:1rem 0 1.4rem}.discovery-callout>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(229,181,74,.1);border:1px solid rgba(244,214,122,.22);font-size:1.25rem}.discovery-callout strong{color:#fff}.discovery-callout p{margin:.25rem 0 0;color:#aebfd3;font-size:.84rem}.stats-inline a{margin-left:auto}.upcoming-strip{padding:1.1rem 1.2rem;margin-top:1.2rem}.upcoming-strip h2{font-family:Georgia,serif;margin:.15rem 0}.upcoming-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:.9rem}.upcoming-grid article{display:flex;flex-direction:column;gap:.35rem;padding:.85rem;border-radius:15px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.07)}.upcoming-grid strong{color:#fff}.upcoming-grid small{color:#8fa2bc;line-height:1.45}.lock-pill{width:max-content;max-width:100%;font-size:.58rem;letter-spacing:.08em;color:#aabbd2;border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:.25rem .45rem}

/* Member year path */
.weeks-shell{max-width:960px;margin:0 auto;padding:2rem 1rem 4rem}.weeks-hero{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;padding:1.6rem 1.8rem;margin-bottom:1.2rem}.weeks-hero h1{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.3rem);margin:.2rem 0 .6rem;color:#fff}.weeks-hero p{color:#aec0d6;line-height:1.65;max-width:720px}.calendar-orb{width:118px;height:118px;border-radius:50%;display:grid;place-items:center;align-content:center;background:radial-gradient(circle at 35% 30%,rgba(244,214,122,.24),rgba(23,90,181,.15));border:1px solid rgba(244,214,122,.28)}.calendar-orb strong{font-family:Georgia,serif;font-size:2.4rem;color:var(--gold-2)}.calendar-orb span{font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;color:#aebfd3}.year-road{position:relative}.year-road:before{content:"";position:absolute;left:27px;top:25px;bottom:25px;width:2px;background:linear-gradient(rgba(115,212,168,.35),var(--gold),rgba(23,90,181,.2))}.week-road-card{position:relative;display:grid;grid-template-columns:56px 1fr;gap:.85rem;margin:.7rem 0;padding:.8rem 1rem .8rem .3rem;border-radius:18px;background:rgba(9,31,62,.58);border:1px solid rgba(255,255,255,.06)}.week-road-card.current{border-color:rgba(244,214,122,.48);box-shadow:0 16px 50px rgba(229,181,74,.08)}.week-road-card.locked{opacity:.72}.week-road-marker{position:relative;display:flex;justify-content:center}.week-road-marker span{position:relative;z-index:2;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#0b315f;border:2px solid rgba(244,214,122,.26)}.week-road-card.archived .week-road-marker span{background:#1f5f4f;border-color:rgba(115,212,168,.4)}.week-road-card.current .week-road-marker span{background:linear-gradient(135deg,#d09a2f,#7d5711);box-shadow:0 0 0 5px rgba(229,181,74,.08)}.week-road-meta{display:flex;gap:.55rem;flex-wrap:wrap;color:#8197b2;font-size:.62rem;font-weight:900;letter-spacing:.1em}.week-road-copy h2{margin:.3rem 0 .25rem;color:#fff;font-family:Georgia,serif;font-size:1.25rem}.week-road-copy>p{margin:0;color:#9eb0c6;font-size:.78rem}.week-road-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:.7rem}.week-road-actions small{color:#758aa5}.state-pill,.ready-pill,.draft-pill{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:.27rem .48rem;font-size:.56rem;letter-spacing:.09em;font-weight:900}.state-pill.open{color:#172b21;background:#8ce5bd}.state-pill.locked{color:#c0cee0;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08)}.state-pill.archived{color:#a6ceb9;background:rgba(115,212,168,.08);border:1px solid rgba(115,212,168,.17)}.state-pill.hidden{display:inline-flex!important;color:#d4a9a9;background:rgba(255,139,139,.08)}.ready-pill{color:#baf7da;background:rgba(115,212,168,.08);border:1px solid rgba(115,212,168,.2)}.draft-pill{color:#dbcfa8;background:rgba(229,181,74,.07);border:1px solid rgba(229,181,74,.16)}

/* Teacher navigation */
.admin-nav{position:sticky;top:72px;z-index:24;display:flex;gap:.3rem;overflow-x:auto;max-width:1120px;margin:0 auto;padding:.55rem 1rem;background:rgba(6,22,45,.88);border-bottom:1px solid rgba(244,214,122,.08);backdrop-filter:blur(14px)}.admin-nav a{flex:0 0 auto;display:flex;align-items:center;gap:.35rem;padding:.52rem .7rem;border-radius:12px;color:#96aac3;font-size:.7rem;font-weight:800}.admin-nav a.active{color:var(--gold-2);background:rgba(229,181,74,.08);border:1px solid rgba(229,181,74,.12)}.three-cards{grid-template-columns:repeat(3,1fr)}

/* Content manager */
.content-admin-shell{max-width:1180px}.content-hero{gap:1.2rem}.content-hero p{max-width:760px;color:#aebfd3;line-height:1.6}.auto-unlock-badge{min-width:180px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem;border-radius:18px;background:rgba(229,181,74,.06);border:1px solid rgba(244,214,122,.18)}.auto-unlock-badge>span{font-size:1.6rem}.auto-unlock-badge strong{color:var(--gold-2);font-size:.8rem}.auto-unlock-badge small{color:#8296b0;margin-top:.25rem}.content-toolbar{display:flex;align-items:center;justify-content:space-between}.content-toolbar h2{margin:.2rem 0}.lesson-admin-list{display:grid;gap:.65rem}.lesson-admin-row{display:grid;grid-template-columns:74px 1fr auto;align-items:center;gap:.9rem;padding:.8rem 1rem;border-radius:18px}.lesson-admin-row.current{border-color:rgba(244,214,122,.42)}.lesson-admin-row.locked{opacity:.82}.lesson-week-number{display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;height:56px;border-radius:15px;background:rgba(23,90,181,.12);border:1px solid rgba(255,255,255,.06)}.lesson-week-number span{font-size:1.3rem;font-weight:900;color:#fff}.lesson-week-number small{font-size:.48rem;letter-spacing:.12em;color:#7f94ad}.lesson-admin-meta{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;color:#8ea2bb;font-size:.64rem}.lesson-admin-main h3{margin:.32rem 0 .15rem;color:#fff;font-family:Georgia,serif;font-size:1.16rem}.lesson-admin-main p{margin:0;color:#879bb4;font-size:.74rem}.lesson-admin-actions{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}

/* Editor */
.editor-shell{max-width:1020px}.narrow-editor{max-width:760px}.editor-breadcrumb{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap;margin:.2rem 0 1rem;color:#8196b1;font-size:.72rem}.editor-card{padding:1.2rem 1.3rem;margin-bottom:1rem}.editor-card h1{font-family:Georgia,serif;font-size:2rem;margin:.15rem 0;color:#fff}.editor-form{display:grid;gap:.85rem;margin-top:1rem}.editor-form.compact{margin-top:.6rem}.editor-form label{display:flex;flex-direction:column;gap:.38rem;color:#c3d0e0;font-size:.75rem;font-weight:750}.editor-form label small{color:#7187a2;font-weight:500}.editor-form input,.editor-form textarea,.editor-form select{width:100%;border:1px solid rgba(255,255,255,.11);background:rgba(2,13,28,.55);color:#f6f9fd;border-radius:12px;padding:.72rem .78rem;outline:none}.editor-form textarea{resize:vertical;line-height:1.5}.editor-form input:focus,.editor-form textarea:focus,.editor-form select:focus{border-color:rgba(244,214,122,.52);box-shadow:0 0 0 3px rgba(229,181,74,.08)}.form-grid{display:grid;gap:.75rem}.form-grid.two{grid-template-columns:1fr 1fr}.form-grid.three{grid-template-columns:repeat(3,1fr)}.editor-divider{display:flex;align-items:center;gap:.7rem;color:var(--gold-2);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;font-weight:900;margin:.25rem 0}.editor-divider:before,.editor-divider:after{content:"";height:1px;flex:1;background:rgba(244,214,122,.12)}.check-card{flex-direction:row!important;align-items:flex-start!important;padding:.75rem;border-radius:13px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02)}.check-card input{width:auto!important;margin-top:.15rem}.check-card span{display:flex;flex-direction:column}.inline-check{flex-direction:row!important;align-items:center!important}.inline-check input{width:auto!important}.editor-actions{display:flex;justify-content:space-between;align-items:center;gap:.7rem;flex-wrap:wrap}.editor-switches{align-items:stretch}.editor-steps-head{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin:1.8rem .1rem .8rem}.editor-steps-head h2{font-family:Georgia,serif;margin:.1rem 0;color:#fff}.editor-steps-head>p{max-width:430px;color:#879bb4;font-size:.76rem}.editor-step-title{display:flex;gap:.65rem;align-items:center}.editor-step-title>span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:rgba(23,90,181,.18);border:1px solid rgba(244,214,122,.17)}.editor-step-title small{font-size:.56rem;letter-spacing:.12em;color:#8296b0}.editor-step-title h2{margin:.1rem 0;font-family:Georgia,serif}.question-manager{margin-top:1.1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.07)}.question-manager h3{margin:.15rem 0;color:#fff}.question-admin-row{display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;align-items:center;padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.06)}.question-admin-row:last-child{border-bottom:0}.question-admin-row>div{display:flex;flex-direction:column;gap:.18rem}.question-admin-row strong{font-size:.78rem;color:#dbe5f1}.question-admin-row small{font-size:.58rem;color:#7e93ad}.question-type-pill{font-size:.54rem;text-transform:uppercase;letter-spacing:.08em;color:#d9ca94;background:rgba(229,181,74,.07);border:1px solid rgba(229,181,74,.14);border-radius:999px;padding:.25rem .38rem}.empty-note{color:#7f93ac;font-size:.76rem}.options-editor{padding:.2rem 0}.preview-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;margin-bottom:1rem}.preview-toolbar>div:last-child{display:flex;gap:.5rem}.preview-state-row{display:flex;gap:.5rem;margin-top:.8rem}.preview-step-list{display:grid;gap:.75rem;margin-top:1rem}.preview-step{overflow:visible}.preview-step .step-head{cursor:default}.preview-step-body{padding:0 1rem 1rem 5.8rem;color:#aebfd3}.preview-question{display:flex;gap:.6rem;align-items:flex-start;padding:.55rem .7rem;margin:.35rem 0;border-radius:11px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06)}.preview-question span{font-size:.5rem;text-transform:uppercase;color:var(--gold-2);letter-spacing:.08em}.preview-question strong{font-size:.74rem;color:#d7e2ef}.admin-preview-shell{padding-bottom:3rem}

@media(max-width:900px){.three-cards{grid-template-columns:1fr}.lesson-admin-row{grid-template-columns:64px 1fr}.lesson-admin-actions{grid-column:2;justify-content:flex-start}.form-grid.three{grid-template-columns:1fr 1fr}.content-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.admin-nav{top:62px;padding:.45rem .6rem}.admin-nav a{font-size:.62rem}.weeks-hero{grid-template-columns:1fr;padding:1.2rem}.calendar-orb{width:84px;height:84px;justify-self:start}.calendar-orb strong{font-size:1.8rem}.week-road-card{grid-template-columns:50px 1fr;padding:.7rem .65rem .7rem .2rem}.year-road:before{left:23px}.week-road-marker span{width:40px;height:40px}.form-grid.two,.form-grid.three{grid-template-columns:1fr}.editor-card{padding:1rem .85rem}.editor-steps-head{align-items:flex-start;flex-direction:column}.question-admin-row{grid-template-columns:auto 1fr}.question-admin-row>a{grid-column:2}.lesson-admin-row{grid-template-columns:52px 1fr;padding:.7rem}.lesson-admin-actions{grid-column:1/-1}.lesson-week-number{width:46px;height:46px}.content-toolbar{align-items:flex-start;gap:.7rem;flex-direction:column}.content-hero{align-items:flex-start}.auto-unlock-badge{min-width:0;width:100%}.upcoming-grid{grid-template-columns:1fr}.stats-inline a{margin-left:0;width:100%}.preview-toolbar{align-items:flex-start;flex-direction:column}.preview-step-body{padding-left:1rem}}

/* Sprint 2 — unlocked historical missions */
.review-banner{display:grid;grid-template-columns:auto 1fr auto;gap:.85rem;align-items:center;padding:.9rem 1rem;margin:-.35rem 0 1rem;border-color:rgba(115,212,168,.16);background:linear-gradient(135deg,rgba(31,95,79,.16),rgba(9,31,62,.7))}.review-banner>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(115,212,168,.1);border:1px solid rgba(115,212,168,.2);color:#9be7c3;font-size:1.1rem}.review-banner strong{color:#e9fff5}.review-banner p{margin:.18rem 0 0;color:#93ad9f;font-size:.75rem;line-height:1.45}.review-banner>a{color:var(--gold-2);font-size:.7rem;font-weight:850;white-space:nowrap}.week-road-card.archived{opacity:.92}.week-road-card.archived:hover{border-color:rgba(115,212,168,.25)}
@media(max-width:650px){.review-banner{grid-template-columns:auto 1fr}.review-banner>a{grid-column:2;white-space:normal}}

/* Sprint 2.1 — Game Feel + Minijuegos */
.journey-stop{position:relative;isolation:isolate}.journey-stop:before{content:"";position:absolute;inset:-7px;border-radius:18px;background:radial-gradient(circle,rgba(229,181,74,.16),transparent 68%);opacity:0;transform:scale(.9);transition:.25s ease;z-index:-1}.journey-stop.active:before,.journey-stop:not(.locked):hover:before{opacity:1;transform:scale(1)}.journey-stop.active .journey-foot{box-shadow:0 0 0 6px rgba(229,181,74,.08),0 0 30px rgba(229,181,74,.26)}.journey-stop.done .journey-foot{animation:footGlow 2.6s ease-in-out infinite}.journey-route{position:relative}.journey-route:after{content:"";position:absolute;inset:50% 5% auto;height:2px;background:linear-gradient(90deg,transparent,rgba(244,214,122,.55),transparent);filter:blur(.3px);opacity:.4;pointer-events:none}
@keyframes footGlow{0%,100%{filter:brightness(1);box-shadow:0 0 0 4px rgba(115,212,168,.05)}50%{filter:brightness(1.16);box-shadow:0 0 0 7px rgba(115,212,168,.08),0 0 24px rgba(115,212,168,.22)}}

.mini-game{position:relative;margin:1.1rem 0 1.35rem;padding:1rem;border-radius:20px;border:1px solid rgba(244,214,122,.18);background:radial-gradient(circle at 90% 0,rgba(229,181,74,.09),transparent 30%),linear-gradient(145deg,rgba(10,45,86,.84),rgba(5,24,49,.9));overflow:hidden;box-shadow:0 18px 42px rgba(0,0,0,.18)}
.mini-game:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.035) 50%,transparent 68%);transform:translateX(-120%);pointer-events:none}.mini-game.game-good:before{animation:gameSweep .7s ease}.mini-game.game-warn{animation:gameShake .38s ease}.mini-game.game-good{border-color:rgba(115,212,168,.46);box-shadow:0 18px 44px rgba(0,0,0,.2),0 0 0 1px rgba(115,212,168,.08) inset}.mini-game.game-warn{border-color:rgba(255,139,139,.36)}
@keyframes gameSweep{to{transform:translateX(120%)}}@keyframes gameShake{20%{transform:translateX(-5px)}40%{transform:translateX(4px)}60%{transform:translateX(-3px)}80%{transform:translateX(2px)}}
.mini-game-heading{display:flex;align-items:center;gap:.75rem;margin-bottom:.9rem}.mini-game-heading small{display:block;color:var(--gold-2);letter-spacing:.15em;font-size:.58rem;font-weight:900}.mini-game-heading h3{font-family:Georgia,serif;color:#fff;font-size:1.35rem;margin:.13rem 0 0}.mini-game-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;font-size:1.2rem;background:linear-gradient(135deg,rgba(229,181,74,.2),rgba(23,90,181,.18));border:1px solid rgba(244,214,122,.28);box-shadow:0 0 24px rgba(229,181,74,.09)}.mini-game-icon.christ{color:var(--gold-2)}
.scenario-card{position:relative;padding:1rem 1rem 1rem 1.1rem;margin-bottom:.85rem;border-radius:16px;background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08)}.scenario-card>span{display:inline-flex;margin-bottom:.45rem;color:#8fb2dd;font-size:.55rem;letter-spacing:.16em;font-weight:900}.scenario-card p,.mini-game-prompt{margin:0;color:#d5e1ef;line-height:1.6}.decision-options{display:grid;gap:.55rem}.decision-option,.trace-option{width:100%;display:flex;align-items:flex-start;gap:.7rem;text-align:left;color:#dbe7f5;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);border-radius:15px;padding:.72rem .8rem;cursor:pointer;transition:.18s ease}.decision-option:hover,.trace-option:hover{transform:translateY(-1px);border-color:rgba(244,214,122,.3);background:rgba(229,181,74,.055)}.decision-option.selected{border-color:rgba(229,181,74,.45)}.decision-option.correct{border-color:rgba(115,212,168,.58);background:rgba(115,212,168,.1)}.decision-option.wrong,.trace-option.wrong{border-color:rgba(255,139,139,.55);background:rgba(255,139,139,.08)}.decision-letter{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:9px;color:var(--gold-2);font-weight:900;background:rgba(229,181,74,.08);border:1px solid rgba(229,181,74,.15)}
.game-feedback-box{margin-top:.75rem;padding:.72rem .8rem;border-radius:13px;font-size:.78rem;line-height:1.5}.game-feedback-box.success{color:#cffff0;background:rgba(115,212,168,.09);border:1px solid rgba(115,212,168,.2)}.game-feedback-box.retry{color:#ffd4d4;background:rgba(255,139,139,.07);border:1px solid rgba(255,139,139,.18)}.game-reflection{display:flex!important;flex-direction:column;gap:.45rem;margin-top:.8rem;color:#d6e2ef;font-size:.76rem;font-weight:800}.game-reflection textarea{width:100%;border:1px solid rgba(255,255,255,.12);background:rgba(2,13,28,.54);color:#fff;border-radius:13px;padding:.75rem .8rem;resize:vertical;outline:0}.game-reflection textarea:focus{border-color:rgba(244,214,122,.48);box-shadow:0 0 0 3px rgba(229,181,74,.08)}

.trace-stage{--trace-progress:0;position:relative;height:100px;margin:.9rem 0 1rem;border-radius:17px;overflow:hidden;background:radial-gradient(circle at 88% 38%,rgba(244,214,122,.2),transparent 28%),linear-gradient(135deg,rgba(5,22,45,.92),rgba(12,51,98,.8));border:1px solid rgba(255,255,255,.07)}.trace-stage:before{content:"";position:absolute;left:8%;right:10%;top:61%;height:12px;border-radius:999px;background:linear-gradient(90deg,rgba(229,181,74,.12),rgba(244,214,122,.28));transform:rotate(-5deg);filter:blur(.2px)}.trace-light{position:absolute;right:8%;top:13px;width:68px;height:68px;border-radius:50%;background:radial-gradient(circle,#fff6c9 0,#f2c85f 25%,rgba(229,181,74,.25) 54%,transparent 72%);box-shadow:0 0 calc(20px + 45px * var(--trace-progress)) rgba(244,214,122,.42);transition:.3s ease}.trace-destination{position:absolute;right:10%;top:37px;color:#fff8d7;font-size:1.15rem;text-shadow:0 0 18px #f4d67a}.trace-path{position:absolute;left:18%;top:52%;display:flex;gap:14%;width:56%;transform:rotate(-5deg)}.trace-path i{position:relative;width:20px;height:31px;border-radius:55% 45% 60% 38%;background:rgba(125,153,188,.22);border:1px solid rgba(255,255,255,.08);transform:rotate(20deg);transition:.25s ease}.trace-path i:nth-child(even){transform:rotate(-18deg) scaleX(-1)}.trace-path i.lit{background:linear-gradient(145deg,#fff4ba,#d69b25);box-shadow:0 0 18px rgba(244,214,122,.65);border-color:#ffe79a}.trace-options{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.trace-option{align-items:center}.trace-option.found{border-color:rgba(115,212,168,.5);background:rgba(115,212,168,.09);color:#e8fff5}.trace-foot{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:10px;background:rgba(23,90,181,.18);filter:grayscale(.4);transition:.2s}.trace-option.found .trace-foot{filter:none;background:rgba(229,181,74,.15);box-shadow:0 0 18px rgba(229,181,74,.15)}.christ-trace-game.complete .trace-stage{border-color:rgba(229,181,74,.34);box-shadow:0 0 34px rgba(229,181,74,.1) inset}

/* Admin minigame editor */
.minigame-editor{margin-top:.25rem;padding:1rem;border-radius:16px;border:1px solid rgba(244,214,122,.12);background:rgba(229,181,74,.025)}.minigame-editor-head{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-bottom:.75rem}.minigame-editor-head strong{font-family:Georgia,serif;color:#fff}.minigame-editor-head span{font-size:.56rem;letter-spacing:.13em;color:var(--gold-2);font-weight:900}.game-config-fields{display:grid;gap:.75rem}.game-config-fields.hidden{display:none}.minigame-help{color:#7f96b0;font-size:.68rem;line-height:1.45;margin:0}

@media(max-width:720px){.trace-options{grid-template-columns:1fr}.mini-game{padding:.85rem}.mini-game-heading h3{font-size:1.18rem}.decision-option,.trace-option{padding:.68rem}.trace-stage{height:88px}.journey-route:after{display:none}}
@media(prefers-reduced-motion:reduce){.journey-stop.done .journey-foot,.mini-game.game-good:before,.mini-game.game-warn{animation:none!important}.decision-option,.trace-option,.journey-stop:before{transition:none!important}}
.preview-game-pill{display:flex;align-items:center;gap:.65rem;margin:.7rem 0;padding:.65rem .75rem;border-radius:13px;border:1px solid rgba(244,214,122,.17);background:rgba(229,181,74,.05)}.preview-game-pill>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(229,181,74,.11);color:var(--gold-2)}.preview-game-pill div{display:flex;flex-direction:column}.preview-game-pill small{font-size:.52rem;letter-spacing:.12em;color:#8296b0}.preview-game-pill strong{font-size:.78rem;color:#f3e6b9}
.game-reflection[hidden]{display:none!important}

/* Sprint 2.2 — Rewards, Daily/Weekly Engagement & Sunday Ceremony */
.engagement-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:1rem;padding:1.05rem 1.15rem;margin:1rem 0}.engagement-copy h2{font-family:Georgia,serif;color:#fff;margin:.1rem 0 .35rem;font-size:1.45rem}.engagement-copy>p:last-of-type{margin:.15rem 0;color:#b9c9dc;line-height:1.55}.commitment-chip{display:flex;gap:.7rem;align-items:flex-start;margin-top:.8rem;padding:.7rem .8rem;border-radius:14px;background:rgba(229,181,74,.06);border:1px solid rgba(244,214,122,.15)}.commitment-chip>span{color:#ffaaa8}.commitment-chip div{display:flex;flex-direction:column;gap:.16rem}.commitment-chip small{font-size:.52rem;letter-spacing:.13em;color:#cfb86f;font-weight:900}.commitment-chip strong{font-size:.78rem;color:#f5edd1;line-height:1.45}.week-presence{padding:.85rem;border-radius:18px;background:rgba(3,17,35,.32);border:1px solid rgba(255,255,255,.06)}.presence-head{display:flex;align-items:center;justify-content:space-between;font-size:.72rem;color:#9fb1c7}.presence-head strong{color:var(--gold-2)}.presence-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.35rem;margin:.7rem 0}.presence-day{display:flex;flex-direction:column;gap:.22rem;align-items:center;justify-content:center;min-height:48px;border-radius:11px;border:1px solid rgba(255,255,255,.06);color:#657d9a;background:rgba(255,255,255,.02)}.presence-day i{font-style:normal;font-size:.85rem}.presence-day span{font-size:.56rem;font-weight:800}.presence-day.active{color:#fff4c2;background:rgba(229,181,74,.08);border-color:rgba(244,214,122,.18)}.presence-day.today{box-shadow:0 0 0 2px rgba(23,90,181,.25) inset}.presence-note{display:block;color:#7188a2;font-size:.61rem;line-height:1.45}.reward-track{padding:1rem 1.1rem;margin:1rem 0 1.2rem}.reward-count{display:grid;place-items:center;min-width:48px;height:34px;border-radius:999px;background:rgba(229,181,74,.08);border:1px solid rgba(244,214,122,.16);color:var(--gold-2);font-weight:900;font-size:.75rem}.reward-milestones{display:grid;grid-template-columns:repeat(5,1fr);gap:.55rem}.reward-milestone{display:flex;gap:.55rem;align-items:flex-start;min-width:0;padding:.68rem;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06);opacity:.55}.reward-milestone.unlocked{opacity:1;border-color:rgba(115,212,168,.18);background:rgba(115,212,168,.045)}.reward-milestone>span{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:9px;background:rgba(255,255,255,.05)}.reward-milestone.unlocked>span{background:rgba(229,181,74,.1);box-shadow:0 0 16px rgba(229,181,74,.08)}.reward-milestone div{display:flex;flex-direction:column;min-width:0}.reward-milestone strong{font-size:.7rem;color:#edf4fb;line-height:1.3}.reward-milestone small{font-size:.58rem;color:#8094ad;line-height:1.35;margin-top:.12rem}.profile-rewards{grid-template-columns:1fr 1fr}.profile-presence{display:flex;align-items:center;gap:.55rem;margin-top:.8rem;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.06)}.profile-presence strong{color:var(--gold-2)}.profile-presence span{font-size:.72rem;color:#8ba0ba}.commitment-card blockquote{margin:.7rem 0 .4rem;padding:.9rem 1rem;border-left:3px solid var(--gold);background:rgba(229,181,74,.05);border-radius:0 13px 13px 0;color:#f4ead1;font-family:Georgia,serif;line-height:1.55}.commitment-card>p{color:#8499b2;font-size:.7rem}.commitment-heart{font-size:1.25rem;color:#ffaaa8}.sunday-awards{padding:1rem 1.1rem;margin:1rem 0}.award-disclaimer{color:#8599b2;font-size:.7rem;line-height:1.5}.sunday-award-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.sunday-award-grid article{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem .7rem;border-radius:17px;background:radial-gradient(circle at 50% 0,rgba(229,181,74,.11),transparent 48%),rgba(255,255,255,.025);border:1px solid rgba(244,214,122,.14)}.sunday-award-grid article>span{font-size:1.45rem}.sunday-award-grid small{margin:.35rem 0;color:var(--gold-2);font-size:.58rem;letter-spacing:.1em;font-weight:900}.sunday-award-grid strong{color:#fff}.sunday-award-grid em{font-style:normal;color:#87a0bb;font-size:.62rem;margin-top:.35rem}

.engagement-admin-card p:last-child{color:#8fa3bc;font-size:.75rem;line-height:1.55}.engagement-admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:.85rem 0}.engagement-admin-stats>div{display:flex;flex-direction:column;padding:.85rem;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}.engagement-admin-stats strong{font-size:1.45rem;color:#fff}.engagement-admin-stats span{font-size:.64rem;color:#8398b2}.ceremony-launch{border-color:rgba(244,214,122,.24)!important;background:radial-gradient(circle at 90% 0,rgba(229,181,74,.1),transparent 36%),linear-gradient(145deg,rgba(15,54,102,.8),rgba(6,24,48,.8))!important}.ceremony-admin-hero{border-color:rgba(244,214,122,.22)}.ceremony-status-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin:1rem 0}.ceremony-status{display:flex;align-items:center;gap:.7rem;padding:.85rem}.ceremony-status>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(229,181,74,.08)}.ceremony-status div{display:flex;flex-direction:column}.ceremony-status small{font-size:.58rem;color:#8398b2;letter-spacing:.08em}.ceremony-status strong{color:#fff;font-size:1.05rem}.ceremony-editor{padding:1.1rem}.ceremony-policy{padding:.75rem .85rem;border-radius:13px;background:rgba(23,90,181,.09);border:1px solid rgba(93,149,218,.14);font-size:.72rem;color:#a9bdd5;line-height:1.5}.ceremony-editor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.ceremony-editor-card{padding:.9rem;border-radius:17px;background:rgba(255,255,255,.028);border:1px solid rgba(255,255,255,.07)}.ceremony-editor-title{display:flex;align-items:center;gap:.65rem}.ceremony-editor-title>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(229,181,74,.08);font-size:1.15rem}.ceremony-editor-title small{display:block;font-size:.5rem;letter-spacing:.12em;color:#7d91aa}.ceremony-editor-title h3{margin:.1rem 0;color:#fff;font-family:Georgia,serif}.ceremony-editor-card>p{color:#879bb3;font-size:.67rem;line-height:1.45;min-height:40px}.ceremony-editor-card label,.ceremony-message{display:flex;flex-direction:column;gap:.3rem;color:#b8c7d9;font-size:.7rem;font-weight:800;margin-top:.6rem}.ceremony-editor-card select,.ceremony-editor-card input,.ceremony-message textarea{width:100%;border:1px solid rgba(255,255,255,.11);background:rgba(2,13,28,.56);color:#fff;border-radius:12px;padding:.7rem .75rem;outline:0}.ceremony-editor-card select:focus,.ceremony-editor-card input:focus,.ceremony-message textarea:focus{border-color:rgba(244,214,122,.4);box-shadow:0 0 0 3px rgba(229,181,74,.07)}.ceremony-message{margin-top:.9rem}.ceremony-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.9rem}.ceremony-close-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;margin-top:1rem}.ceremony-close-card h2{font-family:Georgia,serif;color:#fff;margin:.15rem 0}.ceremony-close-card p:last-child{margin:.2rem 0;color:#8499b2;font-size:.72rem;line-height:1.5}.ceremony-close-card .btn:disabled{opacity:.5;cursor:not-allowed}

.ceremony-page{padding:0;background:radial-gradient(circle at 50% 0,rgba(23,90,181,.42),transparent 35%),radial-gradient(circle at 50% 45%,rgba(229,181,74,.09),transparent 35%),linear-gradient(180deg,#031126,#071e3e 60%,#031126);min-height:100vh}.ceremony-page .site-footer{display:none}.ceremony-stage{position:relative;max-width:1200px;margin:auto;min-height:100vh;padding:2rem 1.2rem 4rem;overflow:hidden}.ceremony-stars{position:fixed;inset:0;pointer-events:none;opacity:.34;background-image:radial-gradient(circle at 10% 20%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 72% 12%,#ffe9a1 0 1px,transparent 1.5px),radial-gradient(circle at 28% 78%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 92% 68%,#fff 0 1px,transparent 1.5px);background-size:240px 220px,330px 280px,260px 300px,390px 340px}.ceremony-brand{text-align:center;position:relative;z-index:1}.ceremony-brand img{width:min(330px,75vw);max-height:190px;object-fit:contain;filter:drop-shadow(0 24px 40px rgba(0,0,0,.32))}.ceremony-brand h1{font-family:Georgia,serif;color:#fff;font-size:clamp(2rem,5vw,4.5rem);margin:.15rem 0 .3rem}.ceremony-brand>p:last-child{color:#aabbd0}.ceremony-group-progress{position:relative;z-index:1;max-width:760px;margin:1.2rem auto;padding:1rem;text-align:center}.ceremony-group-progress>div:first-child{display:flex;align-items:baseline;justify-content:center;gap:.55rem;flex-wrap:wrap}.ceremony-group-progress small{color:var(--gold-2);letter-spacing:.12em;font-weight:900}.ceremony-group-progress strong{font-size:2rem;color:#fff}.ceremony-group-progress span{color:#8299b5}.ceremony-progress-track{height:9px;background:rgba(255,255,255,.06);border-radius:999px;overflow:hidden;margin:.65rem 0}.ceremony-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold),#fff0a5);box-shadow:0 0 18px rgba(229,181,74,.4)}.ceremony-group-progress p{margin:.3rem 0;color:#adbed2}.ceremony-reveals{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.1rem}.ceremony-award-reveal{position:relative;min-height:310px;border-radius:26px;overflow:hidden;border:1px solid rgba(244,214,122,.18);background:radial-gradient(circle at 50% 5%,rgba(229,181,74,.13),transparent 38%),rgba(6,27,54,.88);box-shadow:0 28px 70px rgba(0,0,0,.28)}.ceremony-award-cover,.ceremony-award-winner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1.2rem;transition:.55s cubic-bezier(.2,.8,.2,1)}.ceremony-award-cover>span{font-size:2.8rem;filter:grayscale(.2)}.ceremony-award-cover small,.ceremony-award-winner small{margin-top:.6rem;color:var(--gold-2);font-size:.62rem;letter-spacing:.15em;font-weight:900}.ceremony-award-cover strong{font-family:Georgia,serif;font-size:1.55rem;color:#fff;margin:.3rem 0 1rem}.ceremony-award-winner{opacity:0;transform:scale(.9) translateY(12px);pointer-events:none;background:radial-gradient(circle at 50% 20%,rgba(229,181,74,.16),transparent 45%)}.ceremony-award-winner .award-big-icon{font-size:3rem}.ceremony-award-winner h2{font-family:Georgia,serif;color:#fff;font-size:2.2rem;margin:.3rem 0}.ceremony-award-winner p{color:#aabbd0;line-height:1.45;font-size:.74rem}.symbolic-prize{margin-top:.65rem;color:#ffe6a2;font-size:.78rem}.ceremony-award-reveal.revealed{border-color:rgba(244,214,122,.42);box-shadow:0 28px 70px rgba(0,0,0,.28),0 0 45px rgba(229,181,74,.09)}.ceremony-award-reveal.revealed .ceremony-award-cover{opacity:0;transform:scale(1.08);pointer-events:none}.ceremony-award-reveal.revealed .ceremony-award-winner{opacity:1;transform:none;pointer-events:auto}.ceremony-finale{position:relative;z-index:1;max-width:760px;margin:1.5rem auto 0;text-align:center;padding:1.5rem}.ceremony-finale .finale-footsteps{font-size:2.4rem}.ceremony-finale h2{font-family:Georgia,serif;color:#fff;font-size:2rem;margin:.3rem 0}.ceremony-finale p{color:#a9bbd0;line-height:1.6}.ceremony-particle{position:fixed;z-index:1000;pointer-events:none;color:#f7d677;font-style:normal;font-size:.9rem;animation:ceremonyBurst 1.25s ease-out forwards}@keyframes ceremonyBurst{0%{opacity:0;transform:translate(0,0) scale(.4) rotate(0)}15%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.15) rotate(280deg)}}

@media(max-width:900px){.engagement-card{grid-template-columns:1fr}.reward-milestones{grid-template-columns:1fr 1fr}.ceremony-editor-grid{grid-template-columns:1fr}.ceremony-reveals{grid-template-columns:1fr}.ceremony-award-reveal{min-height:260px}.ceremony-status-row{grid-template-columns:1fr 1fr}.ceremony-close-card{align-items:flex-start;flex-direction:column}.sunday-award-grid{grid-template-columns:1fr}.profile-rewards{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.reward-milestones,.profile-rewards{grid-template-columns:1fr}.presence-days{gap:.22rem}.presence-day{min-height:44px}.engagement-admin-stats{grid-template-columns:1fr}.ceremony-status-row{grid-template-columns:1fr}.ceremony-stage{padding:1rem .75rem 3rem}.ceremony-brand img{max-height:145px}.ceremony-award-winner h2{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){.ceremony-award-cover,.ceremony-award-winner,.ceremony-particle{transition:none!important;animation:none!important}}

/* ========================================================================
   HUELLAS — Sprint 2.3 · Onboarding + Notifications + WhatsApp
   ===================================================================== */
.notification-bell{position:relative;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(244,214,122,.18);border-radius:14px;background:rgba(255,255,255,.035);text-decoration:none;font-size:1.05rem}.notification-bell.has-unread{box-shadow:0 0 0 1px rgba(229,181,74,.18),0 0 24px rgba(229,181,74,.08)}.notification-bell b{position:absolute;right:-4px;top:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:99px;display:grid;place-items:center;background:#e5b54a;color:#081d3a;font-size:.68rem;line-height:1;font-weight:900}
.onboarding-page{min-height:100vh;background:radial-gradient(circle at 50% -8%,rgba(23,90,181,.32),transparent 34%),radial-gradient(circle at 50% 23%,rgba(229,181,74,.07),transparent 24%),#06162d}.onboarding-shell{width:min(800px,calc(100% - 2rem));margin:0 auto;padding:2.25rem 0 3rem;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.onboarding-brand{position:relative;text-align:center;margin:0 auto 1.85rem;display:flex;flex-direction:column;align-items:center;isolation:isolate}.onboarding-brand-glow{position:absolute;z-index:-1;top:4%;left:50%;width:390px;height:285px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(244,214,122,.22) 0,rgba(23,90,181,.12) 36%,transparent 70%);filter:blur(9px);pointer-events:none}.onboarding-brand-mark{display:block;width:min(230px,45vw);height:auto;max-height:245px;object-fit:contain;filter:drop-shadow(0 16px 32px rgba(0,0,0,.30)) drop-shadow(0 0 20px rgba(229,181,74,.16));animation:brandReveal .6s cubic-bezier(.2,.75,.2,1) both}.onboarding-wordmark{margin-top:-.2rem;font-family:Georgia,'Times New Roman',serif;font-weight:900;font-size:clamp(2.75rem,7.4vw,4.8rem);line-height:.9;letter-spacing:.075em;color:#fff8e8;background:linear-gradient(180deg,#fffdf4 10%,#f9edc6 58%,#e8c768 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 5px 24px rgba(229,181,74,.13);filter:drop-shadow(0 2px 0 rgba(6,22,45,.75));white-space:nowrap}.onboarding-tagline{margin:.55rem 0 0;color:#f4d67a;font-size:.92rem;font-weight:700;letter-spacing:.075em;text-transform:uppercase}.onboarding-progress{display:flex;justify-content:center;gap:.45rem;margin-top:1rem}.onboarding-progress i{width:29px;height:4px;border-radius:99px;background:rgba(255,255,255,.12);transition:.25s ease}.onboarding-progress i.active{background:#e5b54a;box-shadow:0 0 12px rgba(229,181,74,.45)}.onboarding-stage{display:none;min-height:360px;padding:2rem;text-align:center;animation:onboardIn .35s ease}.onboarding-stage.active{display:block}.onboarding-stage-welcome{min-height:330px}.onboarding-stage h1{font-family:Georgia,serif;color:#fff;font-size:clamp(2rem,6vw,3.3rem);line-height:1.05;margin:.35rem auto .9rem;max-width:650px}.onboarding-stage>p:not(.eyebrow){max-width:620px;margin:.4rem auto;color:#c3d1e2;line-height:1.65;font-size:1.03rem}.onboarding-icon{display:grid;place-items:center;margin:0 auto .6rem;width:64px;height:64px;border-radius:21px;background:linear-gradient(145deg,rgba(229,181,74,.15),rgba(23,90,181,.12));border:1px solid rgba(244,214,122,.18);font-size:1.7rem;box-shadow:0 20px 50px rgba(0,0,0,.18)}.onboarding-stage-welcome .onboarding-icon{width:56px;height:56px;border-radius:18px;font-size:1.45rem;opacity:.88}.onboarding-mini-route{display:flex;align-items:center;justify-content:center;gap:.65rem;margin:1.6rem auto 0}.onboarding-mini-route span{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);font-size:1.3rem}.onboarding-mini-route b{color:#e5b54a}.onboarding-list{display:grid;gap:.55rem;text-align:left;max-width:570px;margin:1.15rem auto}.onboarding-list div{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;column-gap:.75rem;padding:.65rem .8rem;border-radius:15px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06)}.onboarding-list div>span{grid-row:1/3;display:grid;place-items:center;font-size:1.25rem}.onboarding-list strong{color:#fff}.onboarding-list small{color:#9fb2c9}.onboarding-rule{display:flex;align-items:center;gap:1rem;text-align:left;max-width:580px;margin:1.35rem auto 0;padding:1rem;border:1px solid rgba(229,181,74,.2);border-radius:18px;background:rgba(229,181,74,.06)}.onboarding-rule span{font-family:Georgia,serif;font-size:1.7rem;color:#f4d67a;white-space:nowrap}.onboarding-rule p{margin:0;color:#b9c9dc}.onboarding-note{display:block;color:#8fa5be;margin-top:.7rem}.onboarding-actions{display:flex;justify-content:center;gap:.7rem;margin-top:1rem}.onboarding-actions .btn{min-width:150px}.onboarding-skip{align-self:center;margin-top:.8rem;border:0;background:none;color:#849ab3;text-decoration:underline;cursor:pointer}.hidden{display:none!important}@keyframes onboardIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes brandReveal{from{opacity:0;transform:translateY(-9px) scale(.96)}to{opacity:1;transform:none}}
@media(max-width:760px){.onboarding-shell{width:min(100% - 1rem,760px);padding:1.15rem 0 2rem;justify-content:flex-start}.onboarding-brand{margin-bottom:1.25rem}.onboarding-brand-glow{width:300px;height:220px}.onboarding-brand-mark{width:min(170px,46vw);max-height:185px}.onboarding-wordmark{font-size:clamp(2.45rem,13vw,3.65rem);letter-spacing:.055em}.onboarding-tagline{max-width:330px;font-size:.72rem;line-height:1.45;letter-spacing:.055em}.onboarding-progress{margin-top:.8rem}.onboarding-stage{min-height:400px;padding:1.35rem 1rem}.onboarding-stage-welcome{min-height:365px}.onboarding-stage h1{font-size:2rem}.onboarding-actions{position:sticky;bottom:.6rem;background:rgba(6,22,45,.88);backdrop-filter:blur(12px);padding:.6rem;border-radius:18px}.onboarding-actions .btn{min-width:0;flex:1}.notification-settings{align-items:flex-start;flex-direction:column}.communication-grid{grid-template-columns:1fr}.communication-card textarea{min-height:250px}.notification-card{grid-template-columns:45px 1fr auto;padding:.85rem}.notifications-hero{padding:1rem}.notifications-hero>span{display:none}}
@media(prefers-reduced-motion:reduce){.onboarding-stage,.onboarding-brand-mark{animation:none}.notification-card{transition:none}}


/* Sprint 2.4 — Scripture Library + Badge Collection */
.badge-library-shell{width:min(1180px,calc(100% - 2rem));padding-bottom:7rem}.badge-library-hero{display:flex;justify-content:space-between;gap:2rem;align-items:center;padding:2rem;margin:1.5rem 0}.badge-library-hero h1{font-family:Georgia,serif;color:#fff;font-size:clamp(2.1rem,5vw,3.7rem);margin:.2rem 0 .65rem}.badge-library-hero p{max-width:700px;color:#aebfd3}.badge-library-total{text-align:center;min-width:180px;padding:1.15rem;border-radius:24px;background:radial-gradient(circle at 50% 10%,rgba(229,181,74,.16),rgba(255,255,255,.03));border:1px solid rgba(229,181,74,.2)}.badge-library-total strong{display:block;font-family:Georgia,serif;font-size:3rem;color:#f4d67a}.badge-library-total span,.badge-library-total small{display:block;color:#c8d5e5}.badge-library-total small{font-size:.75rem;color:#8299b3;margin-top:.2rem}.scripture-library-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem;margin-bottom:1rem}.scripture-book-card{display:flex;align-items:center;gap:.9rem;padding:1rem;text-decoration:none;color:#fff;min-height:92px;transition:.2s}.scripture-book-card:hover,.scripture-book-card.active{transform:translateY(-2px);border-color:rgba(229,181,74,.42);box-shadow:0 18px 45px rgba(0,0,0,.18)}.scripture-book-card.future{opacity:.55;pointer-events:none}.scripture-book-icon{font-size:2rem}.scripture-book-card strong,.scripture-book-card small{display:block}.scripture-book-card small{color:#8fa5bd;margin-top:.22rem}.collection-section{padding:1.5rem;margin:1rem 0}.collection-section .section-head{align-items:flex-start}.collection-ring{width:72px;height:72px;border-radius:50%;display:grid;place-content:center;text-align:center;border:5px solid rgba(229,181,74,.35);background:#0a2445}.collection-ring strong{font-size:1.35rem;color:#fff}.collection-ring span{font-size:.75rem;color:#f4d67a}.weekly-badge-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;margin-top:1.25rem}.badge-medallion{text-align:center;text-decoration:none;color:#fff;min-width:0}.badge-disc{position:relative;width:92px;height:92px;margin:0 auto .55rem;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#102b52,#07182e);border:3px solid rgba(255,255,255,.08);box-shadow:inset 0 0 0 4px rgba(255,255,255,.025),0 14px 28px rgba(0,0,0,.2);transition:.2s}.badge-disc b{font-size:2.25rem}.badge-disc i{position:absolute;right:-5px;bottom:-2px;background:#0a1d38;border:1px solid rgba(255,255,255,.12);border-radius:99px;padding:.15rem .38rem;font-style:normal;font-size:.62rem;color:#aebfd3}.badge-medallion.unlocked .badge-disc{border-color:#e5b54a;background:radial-gradient(circle at 50% 35%,rgba(244,214,122,.2),transparent 45%),linear-gradient(145deg,#153b6d,#081d3a);box-shadow:0 0 28px rgba(229,181,74,.15),0 15px 30px rgba(0,0,0,.24)}.badge-medallion.locked{opacity:.54}.badge-medallion strong,.badge-medallion small{display:block}.badge-medallion strong{font-size:.82rem;line-height:1.2;min-height:2.25em}.badge-medallion small{font-size:.59rem;letter-spacing:.08em;color:#7890aa;margin-top:.25rem}.badge-medallion.unlocked small{color:#e5b54a}.achievement-badge-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem;margin-top:1rem}.achievement-badge{display:flex;gap:.85rem;align-items:center;text-decoration:none;color:#fff;padding:.85rem;border-radius:18px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07)}.achievement-badge.tier-bronze{border-color:rgba(190,115,60,.42)}.achievement-badge.tier-silver{border-color:rgba(205,216,230,.44)}.achievement-badge.tier-gold{border-color:rgba(229,181,74,.52);box-shadow:0 0 22px rgba(229,181,74,.08)}.achievement-icon{width:50px;height:50px;flex:none;display:grid;place-items:center;border-radius:16px;background:#0a2344;font-size:1.5rem}.achievement-badge div{min-width:0;flex:1}.achievement-badge strong,.achievement-badge small{display:block}.achievement-badge small{color:#91a7c0;margin:.2rem 0 .45rem}.badge-progress{height:5px;border-radius:99px;background:rgba(255,255,255,.08);display:block;overflow:hidden}.badge-progress i{display:block;height:100%;background:linear-gradient(90deg,#175ab5,#e5b54a);border-radius:99px}.secret-badge-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.8rem;margin-top:1rem}.secret-badge{min-height:135px;text-decoration:none;color:#fff;border-radius:20px;border:1px solid rgba(255,255,255,.07);background:radial-gradient(circle at 50% 0,rgba(128,91,220,.12),transparent 55%),#081b34;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:.7rem}.secret-badge>span{font-family:Georgia,serif;font-size:2rem;color:#8ca0b9}.secret-badge strong{margin:.45rem 0;font-size:.82rem}.secret-badge small{font-size:.6rem;letter-spacing:.08em;color:#7088a5}.secret-badge.discovered{border-color:rgba(229,181,74,.32);background:radial-gradient(circle at 50% 5%,rgba(229,181,74,.15),transparent 58%),#081b34}.secret-badge.discovered>span{color:#f4d67a}.collection-two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.compact-badge-list{display:grid;gap:.5rem;margin-top:.8rem}.compact-badge-list a{display:flex;align-items:center;gap:.75rem;padding:.65rem .75rem;border-radius:15px;background:rgba(255,255,255,.035);text-decoration:none;color:#fff}.compact-badge-list a>span{font-size:1.3rem;width:34px;text-align:center}.compact-badge-list strong,.compact-badge-list small{display:block}.compact-badge-list small{color:#8299b3}.compact-badge-list .dim{opacity:.52}.empty-library{text-align:center;padding:4rem 1rem}.empty-library>span{font-size:4rem}.badge-detail-shell{padding-bottom:7rem}.badge-detail-card{text-align:center;padding:2rem;margin-top:1rem}.badge-detail-medal{width:150px;height:150px;margin:0 auto 1rem;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,rgba(229,181,74,.2),rgba(23,90,181,.08) 58%,transparent 60%),#0a2445;border:5px solid rgba(255,255,255,.1);box-shadow:0 25px 55px rgba(0,0,0,.25)}.badge-detail-medal span{font-size:4rem}.badge-detail-card.tier-bronze .badge-detail-medal{border-color:#a96f43}.badge-detail-card.tier-silver .badge-detail-medal{border-color:#c7d2df}.badge-detail-card.tier-gold .badge-detail-medal,.badge-detail-card.tier-unique .badge-detail-medal{border-color:#e5b54a;box-shadow:0 0 40px rgba(229,181,74,.15),0 25px 55px rgba(0,0,0,.25)}.badge-detail-card h1{font-family:Georgia,serif;color:#fff;font-size:clamp(2rem,6vw,3.5rem)}.badge-scripture{color:#f4d67a!important}.tier-track{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;max-width:600px;margin:1.5rem auto}.tier-step{padding:1rem .5rem;border-radius:18px;background:rgba(255,255,255,.035);opacity:.42}.tier-step.on{opacity:1;border:1px solid rgba(229,181,74,.25)}.tier-step b,.tier-step small{display:block}.tier-step small{color:#839bb6}.badge-detail-progress{color:#c4d2e2}.unique-badge-status{display:inline-block;padding:.65rem 1rem;border-radius:99px;background:rgba(255,255,255,.05);color:#91a7c0;margin:1rem}.unique-badge-status.earned{background:rgba(229,181,74,.12);color:#f4d67a}.badge-memory{max-width:650px;margin:2rem auto 0;padding:1.25rem;text-align:left;border-radius:18px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07)}.badge-memory blockquote{border-left:3px solid #e5b54a;padding-left:1rem;color:#fff}.secret-note{color:#9e8acb!important}.profile-collection-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:.6rem;margin-top:1rem}.profile-collection-stats div{padding:.8rem .5rem;border-radius:15px;background:rgba(255,255,255,.035);text-align:center}.profile-collection-stats strong,.profile-collection-stats span{display:block}.profile-collection-stats span{font-size:.66rem;color:#839bb6;margin-top:.2rem}.badge-admin-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:.65rem;margin:1rem 0}.badge-admin-summary div{padding:1rem;text-align:center;border-radius:16px;background:#0b2241;border:1px solid rgba(255,255,255,.07)}.badge-admin-summary strong,.badge-admin-summary span{display:block}.badge-admin-summary strong{font-size:1.65rem;color:#f4d67a}.badge-admin-summary span{font-size:.7rem;color:#94a9c1}.badge-admin-filters{display:flex;gap:.4rem;flex-wrap:wrap;margin:1rem 0}.badge-admin-filters a{padding:.5rem .75rem;border-radius:99px;color:#aabbd0;text-decoration:none;background:#0b2241}.badge-admin-filters a.active{background:#175ab5;color:#fff}.admin-badge-table{display:grid;gap:.55rem}.admin-badge-table article{display:grid;grid-template-columns:54px 1fr auto;gap:.85rem;align-items:center;padding:.75rem;border-radius:15px;background:#0b2241;border:1px solid rgba(255,255,255,.06)}.admin-badge-icon{font-size:1.5rem;text-align:center}.admin-badge-table strong,.admin-badge-table small{display:block}.admin-badge-table small{color:#7890aa}.admin-badge-table p{margin:.2rem 0 0;color:#9db0c6;font-size:.78rem}.admin-badge-target{display:flex;gap:.35rem}.admin-badge-target span{font-size:.68rem;padding:.3rem .45rem;border-radius:9px;background:rgba(255,255,255,.05)}
@media(max-width:900px){.scripture-library-grid{grid-template-columns:repeat(2,1fr)}.weekly-badge-grid{grid-template-columns:repeat(4,1fr)}.secret-badge-grid{grid-template-columns:repeat(4,1fr)}.collection-two-col{grid-template-columns:1fr}.badge-admin-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.badge-library-shell{width:min(100% - 1rem,1180px)}.badge-library-hero{display:block;padding:1.25rem}.badge-library-total{margin-top:1rem}.scripture-library-grid{grid-template-columns:1fr 1fr}.scripture-book-card{min-height:78px;padding:.75rem}.scripture-book-icon{font-size:1.6rem}.collection-section{padding:1rem}.weekly-badge-grid{grid-template-columns:repeat(3,1fr);gap:.7rem}.badge-disc{width:75px;height:75px}.badge-disc b{font-size:1.8rem}.achievement-badge-grid{grid-template-columns:1fr}.secret-badge-grid{grid-template-columns:repeat(3,1fr)}.secret-badge{min-height:116px}.profile-collection-stats{grid-template-columns:repeat(2,1fr)}.profile-collection-stats div:first-child{grid-column:1/3}.badge-admin-summary{grid-template-columns:repeat(2,1fr)}.admin-badge-table article{grid-template-columns:44px 1fr}.admin-badge-target{grid-column:2;flex-wrap:wrap}.bottom-nav{grid-template-columns:repeat(5,1fr)}.bottom-nav .nav-item{font-size:.62rem}.bottom-nav .nav-icon{font-size:1.1rem}}

.completion-badge-reveal{display:flex;align-items:center;gap:.8rem;text-align:left;margin:1rem auto;max-width:440px;padding:.85rem 1rem;border-radius:18px;border:1px solid rgba(229,181,74,.3);background:radial-gradient(circle at 0 0,rgba(229,181,74,.15),transparent 48%),rgba(255,255,255,.035)}.completion-badge-reveal[hidden]{display:none}.completion-badge-icon{width:64px;height:64px;display:grid;place-items:center;flex:none;border-radius:50%;font-size:2rem;background:#0b284d;border:2px solid #e5b54a;box-shadow:0 0 24px rgba(229,181,74,.14)}.completion-badge-reveal small,.completion-badge-reveal strong,.completion-badge-reveal a{display:block}.completion-badge-reveal small{color:#f4d67a;font-size:.62rem;letter-spacing:.1em}.completion-badge-reveal strong{color:#fff;margin:.15rem 0}.completion-badge-reveal a{color:#9ec7ff;font-size:.75rem;text-decoration:none}

/* Sprint 3.0 — HUELLAS Games integration */
.games-top-link{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(244,214,122,.18);border-radius:14px;background:rgba(255,255,255,.035);text-decoration:none;font-size:1.05rem;transition:.18s ease}.games-top-link:hover{border-color:rgba(244,214,122,.42);background:rgba(229,181,74,.08);transform:translateY(-1px)}
.home-games-card{position:relative;display:grid;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:1.1rem;padding:1.25rem 1.35rem;margin:1.15rem 0;overflow:hidden;border-color:rgba(229,181,74,.22);background:radial-gradient(circle at 11% 50%,rgba(23,90,181,.2),transparent 22%),linear-gradient(120deg,rgba(7,32,70,.94),rgba(5,20,45,.9))}.home-games-card:after{content:"";position:absolute;right:-80px;top:-140px;width:320px;height:320px;border-radius:50%;border:1px solid rgba(229,181,74,.1);box-shadow:inset 0 0 70px rgba(23,90,181,.08);pointer-events:none}.home-games-symbol{position:relative;z-index:1;width:78px;height:78px;border-radius:24px;display:grid;place-items:center;background:radial-gradient(circle,#174f9b,#071c40);border:1px solid rgba(229,181,74,.25);box-shadow:0 15px 35px rgba(0,0,0,.22),0 0 35px rgba(23,90,181,.12)}.home-games-symbol>span{font-size:1.8rem}.home-games-symbol>i{position:absolute;right:7px;bottom:4px;font-style:normal;font-size:.85rem;filter:drop-shadow(0 0 6px rgba(229,181,74,.45))}.home-games-copy{position:relative;z-index:1}.home-games-copy h2{font-family:Georgia,serif;color:#fff;margin:.15rem 0 .35rem;font-size:1.55rem}.home-games-copy>p:not(.eyebrow){color:#9fb1c8;margin:.2rem 0 .7rem;line-height:1.5}.home-games-copy>div{display:flex;gap:.4rem;flex-wrap:wrap}.home-games-copy>div span{font-size:.65rem;border:1px solid rgba(255,255,255,.09);padding:.3rem .5rem;border-radius:99px;color:#c6d4e5;background:rgba(255,255,255,.03)}.home-game-btn{position:relative;z-index:2;background:linear-gradient(180deg,#f4d67a,#d7a83e)!important;color:#07162d!important;border:0!important;font-weight:900!important;letter-spacing:.07em!important;min-width:100px}.bottom-nav .nav-item{min-width:78px}
@media(max-width:700px){.home-games-card{grid-template-columns:64px 1fr;padding:1rem}.home-games-symbol{width:58px;height:58px;border-radius:18px}.home-games-symbol>span{font-size:1.4rem}.home-games-copy h2{font-size:1.28rem}.home-games-copy>p:not(.eyebrow){font-size:.78rem}.home-game-btn{grid-column:1/3;width:100%}.bottom-nav .nav-item{min-width:0;padding:.48rem .25rem;font-size:.56rem}.bottom-nav{width:calc(100% - 12px);gap:.05rem}}


/* HUELLAS v1.0 Production — final clean launch adjustments */
.brand-mini{width:auto!important;min-width:0;height:50px!important;overflow:visible!important;padding:4px 0!important}
.brand-mini img{width:40px!important;height:44px!important;object-fit:contain!important;object-position:center!important;transform:none!important;flex:none}
.brand-mini span{margin-left:8px}
.mission-emblem img{object-fit:contain!important;object-position:center!important;transform:none!important}
.empty-ranking-card{display:flex;gap:18px;align-items:center;padding:24px;margin:18px 0 26px}
.empty-ranking-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:rgba(229,181,74,.09);border:1px solid rgba(244,214,122,.2);font-size:30px;flex:none}
.empty-ranking-card h2{font-family:Georgia,serif;font-size:clamp(24px,4vw,34px);margin:.2rem 0 .45rem}.empty-ranking-card p{color:#aebfd3;line-height:1.55}
.class-profile-card strong{color:#f5d878}
@media(max-width:760px){.brand-mini{height:46px!important}.brand-mini img{width:36px!important;height:40px!important}.empty-ranking-card{align-items:flex-start;padding:18px 16px}.empty-ranking-icon{width:50px;height:50px;font-size:24px}}


/* Communications / WhatsApp production readability */
.communication-grid{grid-template-columns:1fr!important;gap:16px!important}.communication-card{padding:20px 22px!important}.communication-card h3{margin:.2rem 0 .7rem}.communication-card textarea,.message-box textarea{width:100%!important;min-height:190px!important;padding:16px 18px!important;border-radius:18px!important;background:#071a34!important;color:#e9f1fb!important;border:1px solid rgba(255,255,255,.1)!important;font-size:16px!important;line-height:1.6!important;resize:vertical!important}.communication-actions{display:flex!important;gap:10px!important;flex-wrap:wrap;margin-top:12px!important}.communication-actions .btn{min-height:48px}@media(max-width:760px){.communication-card{padding:16px!important}.communication-card textarea,.message-box textarea{min-height:210px!important}}


/* =====================================================================
   HUELLAS v1.0.3 · Maestro/Admin Comfort Spacing
   ===================================================================== */
.admin-shell{
  max-width:1180px!important;
  padding-left:1.25rem!important;
  padding-right:1.25rem!important;
}
.admin-section{
  padding:1.35rem 1.5rem!important;
  margin:1rem 0!important;
}
.admin-hero{
  padding:1.6rem 1.75rem!important;
  gap:1.2rem!important;
}
.admin-hero>div{min-width:0!important}
.stat-grid>article{
  padding:1rem 1.05rem!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.03)!important;
  border:1px solid rgba(255,255,255,.06)!important;
}
.section-head{gap:1rem!important}
.section-head>div{min-width:0!important}

.ceremony-editor{
  padding:1.45rem 1.55rem!important;
}
.ceremony-policy{
  padding:.95rem 1rem!important;
  margin:.9rem 0 1.15rem!important;
}
.ceremony-editor-grid{
  gap:1rem!important;
}
.ceremony-editor-card{
  padding:1.15rem 1.15rem 1.2rem!important;
}
.ceremony-editor-card>p{
  min-height:0!important;
  margin:.7rem 0 1rem!important;
}
.ceremony-editor-card label,.ceremony-message{
  gap:.42rem!important;
  margin-top:.8rem!important;
}
.ceremony-editor-card select,
.ceremony-editor-card input,
.ceremony-message textarea{
  min-height:48px!important;
  padding:.8rem .9rem!important;
}
.ceremony-message textarea{min-height:84px!important}
.ceremony-actions{margin-top:1.15rem!important}
.ceremony-close-card{
  padding:1.3rem 1.45rem!important;
  margin-top:1.15rem!important;
}

@media(max-width:700px){
  .admin-shell{padding-left:.8rem!important;padding-right:.8rem!important}
  .admin-section{padding:1.05rem!important}
  .admin-hero{padding:1.15rem!important}
  .ceremony-editor{padding:1.05rem!important}
  .ceremony-editor-card{padding:1rem!important}
}


/* =====================================================================
   HUELLAS v1.0.9 · DIRECT SCRIPTURE LINKS
   ===================================================================== */
.scripture-links{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
  margin:.75rem 0 .25rem;
}
.scripture-link{
  appearance:none;
  border:1px solid rgba(244,214,122,.28);
  background:linear-gradient(180deg,rgba(31,74,123,.82),rgba(13,43,82,.92));
  color:#f8fbff;
  min-height:44px;
  max-width:100%;
  padding:.58rem .78rem;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  gap:.48rem;
  font:inherit;
  cursor:pointer;
  text-align:left;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}
.scripture-link:hover{
  transform:translateY(-1px);
  border-color:rgba(244,214,122,.58);
  background:linear-gradient(180deg,rgba(39,91,148,.92),rgba(17,52,97,.98));
}
.scripture-link:focus-visible{
  outline:3px solid rgba(244,214,122,.6);
  outline-offset:2px;
}
.scripture-link>span{font-size:1.05rem;flex:0 0 auto}
.scripture-link>strong{
  font-size:.84rem;
  line-height:1.25;
  overflow-wrap:break-word;
  word-break:normal;
}
.scripture-link>i{
  color:#f6d66e;
  font-style:normal;
  font-weight:900;
  flex:0 0 auto;
}
.scripture-link.opened{
  border-color:rgba(92,210,158,.42);
  background:linear-gradient(180deg,rgba(24,89,91,.9),rgba(11,55,68,.96));
}
.scripture-link.opened::after{
  content:"✓";
  color:#84e3b8;
  font-weight:950;
}
.hero-scripture-links{margin-top:.55rem}
.reading-scripture-links{margin-top:.7rem}
.question-scripture-links,.feedback-scripture-links{margin:.55rem 0 .2rem}
.week-scripture-links{margin:.55rem 0 .2rem}
.scripture-help-note{
  margin:.7rem 0 .9rem!important;
  color:#9db3cf!important;
  font-size:.88rem!important;
  line-height:1.45!important;
}
.feedback-wrap[hidden]{display:none!important}
.feedback-wrap{
  margin:.65rem 0 .15rem;
}
.feedback-wrap .feedback{margin:0}
.scripture-box .scripture-links{margin-bottom:0}

body.scripture-modal-open{overflow:hidden}
.scripture-modal{
  position:fixed;
  inset:0;
  z-index:300;
  display:grid;
  place-items:center;
  padding:18px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease,visibility .18s ease;
}
.scripture-modal.open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.scripture-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(1,10,25,.82);
  backdrop-filter:blur(7px);
}
.scripture-modal-panel{
  width:min(560px,100%);
  position:relative;
  z-index:1;
  border:1px solid rgba(244,214,122,.25);
  border-radius:26px;
  background:
    radial-gradient(circle at 50% 0,rgba(47,108,171,.28),transparent 42%),
    linear-gradient(180deg,#103865,#092547 58%,#071b35);
  box-shadow:0 28px 70px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.05);
  padding:30px;
  text-align:center;
}
.scripture-modal-close{
  position:absolute;
  right:14px;
  top:14px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.06);
  color:#fff;
  font-size:1.5rem;
  cursor:pointer;
}
.scripture-modal-icon{
  width:66px;
  height:66px;
  margin:2px auto 14px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:rgba(244,214,122,.08);
  border:1px solid rgba(244,214,122,.22);
  font-size:2rem;
}
.scripture-modal-panel h2{
  margin:.2rem 0 .35rem;
  font-family:Georgia,serif;
  font-size:clamp(1.8rem,4vw,2.55rem);
}
.scripture-modal-reference{
  display:block;
  color:#f6d66e;
  font-size:1.15rem;
  margin-bottom:.8rem;
}
.scripture-modal-panel>p{
  color:#c0cee0;
  line-height:1.6;
  margin:.4rem auto 1rem;
  max-width:45ch;
}
.scripture-open-official,
.scripture-copy-reference,
.scripture-return-button{
  width:100%;
  min-height:52px;
  margin-top:.65rem;
  justify-content:center;
}
.scripture-return-button{
  appearance:none;
  border:0;
  background:transparent;
  color:#b8cae1;
  text-decoration:underline;
  cursor:pointer;
  font-weight:800;
}
.scripture-modal-panel>small{
  display:block;
  color:#7188a7;
  font-size:.76rem;
  line-height:1.45;
  margin-top:.9rem;
}

@media(max-width:700px){
  .scripture-links{
    display:grid;
    grid-template-columns:1fr;
    gap:.6rem;
    margin-top:.7rem;
  }
  .scripture-link{
    width:100%;
    min-height:52px;
    padding:.72rem .82rem;
    border-radius:15px;
  }
  .scripture-link>strong{
    font-size:.98rem;
    line-height:1.3;
  }
  .scripture-modal{
    align-items:end;
    padding:10px;
  }
  .scripture-modal-panel{
    width:100%;
    border-radius:26px 26px 18px 18px;
    padding:27px 18px 20px;
    max-height:88dvh;
    overflow:auto;
  }
  .scripture-modal-panel h2{
    font-size:2rem;
  }
  .scripture-modal-panel>p{
    font-size:1rem;
  }
}


/* =====================================================================
   HUELLAS v1.1.0 · TEACHER INTELLIGENCE & ADAPTIVE LESSON BUILDER
   ===================================================================== */
.teacher-intelligence-shell{max-width:1220px!important}.intelligence-hero{position:relative;overflow:hidden}.intelligence-hero:after{content:"✦";position:absolute;right:125px;bottom:-42px;font-size:9rem;color:rgba(244,214,122,.035)}.intelligence-disclaimer{display:inline-flex;margin-top:.55rem;padding:.42rem .7rem;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#91a6bf;font-size:.7rem}.intelligence-overview,.intelligence-principles,.intelligence-voices,.intelligence-issues,.adaptive-builder{padding:1.4rem 1.5rem!important;margin:1rem 0!important}.confidence-pill{padding:.48rem .7rem;border-radius:999px;font-size:.7rem;font-weight:900;border:1px solid rgba(255,255,255,.08);color:#afc1d8}.confidence-pill.high{color:#8de0b1;border-color:rgba(91,220,147,.25);background:rgba(44,150,92,.08)}.confidence-pill.medium{color:#f4d77b;border-color:rgba(244,215,123,.24);background:rgba(229,181,74,.07)}.intelligence-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-top:1rem}.intelligence-stats article{padding:1rem;border-radius:17px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column}.intelligence-stats strong{font-size:1.7rem}.intelligence-stats span{font-weight:800;color:#eaf2ff;font-size:.82rem;margin:.15rem 0}.intelligence-stats small{color:#7f94af;font-size:.68rem}.data-caution{padding:.8rem .9rem!important;border-radius:14px;background:rgba(229,181,74,.06);border:1px solid rgba(244,214,122,.12);font-size:.78rem!important;margin:1rem 0 0!important}.principle-intel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin-top:1rem}.principle-intel-card{padding:1rem;border-radius:19px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07)}.principle-intel-card.attention{border-color:rgba(239,113,101,.27)}.principle-intel-card.reinforce{border-color:rgba(244,214,122,.24)}.principle-intel-card.consolidate{border-color:rgba(91,210,151,.23)}.principle-intel-head{display:grid;grid-template-columns:34px 1fr auto;gap:.6rem;align-items:start}.principle-intel-head>span{font-size:1.2rem}.principle-intel-head small{color:#7890ad;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}.principle-intel-head h3{font-size:.95rem;line-height:1.4;margin:.2rem 0;color:#eef5ff}.principle-intel-head>b{font-size:.58rem;color:#f2d375;padding:.3rem .45rem;border-radius:999px;background:rgba(229,181,74,.07)}.principle-score{display:flex;align-items:baseline;gap:.35rem;margin:.9rem 0}.principle-score strong{font-size:1.8rem}.principle-score span{font-size:.66rem;color:#758ba8}.metric-bars{display:grid;gap:.55rem}.metric-bars>div{display:grid;grid-template-columns:1fr auto;gap:.35rem;align-items:center}.metric-bars span,.metric-bars b{font-size:.63rem}.metric-bars span{color:#8ea3bd}.metric-bars b{color:#dbe6f4}.metric-bars i{grid-column:1/3;height:6px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}.metric-bars em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2678d4,#f0ca5f)}.priority-recommendation{margin-top:1rem;padding:1rem 1.1rem;border-radius:17px;background:linear-gradient(135deg,rgba(117,45,45,.12),rgba(229,181,74,.055));border:1px solid rgba(239,120,105,.18)}.priority-recommendation>span{display:block;color:#f3b26e;font-size:.62rem;letter-spacing:.1em;font-weight:900}.priority-recommendation>strong{display:block;margin:.35rem 0;color:#fff;font-family:Georgia,serif;font-size:1.05rem}.priority-recommendation p{margin:0!important;color:#aebfd3!important}.intelligence-two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.voice-list{display:grid;gap:.65rem;margin-top:.9rem}.voice-list blockquote{margin:0;padding:.85rem 1rem;border-radius:15px;background:rgba(255,255,255,.03);border-left:3px solid rgba(47,128,220,.7);color:#d5e0ee;font-size:.8rem;line-height:1.55}.voice-list blockquote span{display:block;font-size:.56rem;color:#f1d06e;letter-spacing:.09em;font-weight:900;margin-bottom:.3rem}.privacy-note{display:block;margin-top:.8rem;color:#7187a3;line-height:1.5}.issue-list{display:grid;gap:.65rem;margin-top:.9rem}.issue-list article{padding:.8rem .9rem;border-radius:14px;background:rgba(180,58,58,.07);border:1px solid rgba(239,109,109,.13)}.issue-list strong{display:block;font-size:.8rem;line-height:1.4}.issue-list span{display:block;color:#f4a29b;font-weight:900;font-size:.7rem;margin:.35rem 0}.issue-list small{color:#7288a5}.empty-intel{color:#8298b2!important;padding:.8rem 0}.keyword-cloud{margin-top:1rem;padding-top:.85rem;border-top:1px solid rgba(255,255,255,.06);display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}.keyword-cloud>small{width:100%;color:#7187a3;font-size:.55rem;letter-spacing:.1em}.keyword-cloud span{padding:.36rem .55rem;border-radius:999px;background:rgba(35,104,183,.08);border:1px solid rgba(91,145,208,.13);font-size:.68rem;color:#a9bfd9}.keyword-cloud b{color:#f1d16e}.builder-head{gap:1.2rem}.builder-head p{max-width:700px}.duration-switch{display:flex;gap:.35rem;padding:.3rem;border-radius:14px;background:rgba(255,255,255,.04)}.duration-switch a{padding:.55rem .8rem;border-radius:11px;color:#849ab5;text-decoration:none;font-weight:900;font-size:.75rem}.duration-switch a.active{background:linear-gradient(180deg,#e8bd4d,#b68122);color:#07152d}.lesson-objective,.adaptive-note{display:grid;grid-template-columns:110px 1fr;gap:.8rem;padding:.9rem 1rem;border-radius:16px;margin:1rem 0;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}.lesson-objective span{font-size:.62rem;letter-spacing:.1em;color:#f1ce67;font-weight:900}.lesson-objective p,.adaptive-note p{margin:0!important;color:#c3d1e2!important}.adaptive-note{grid-template-columns:34px 1fr;background:rgba(29,95,166,.07)}.adaptive-note>span{font-size:1.2rem}.lesson-plan-timeline{display:grid;gap:.8rem;margin-top:1rem}.lesson-plan-section{display:grid;grid-template-columns:76px minmax(0,1fr);gap:.9rem}.plan-time{height:76px;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,rgba(34,94,164,.28),rgba(9,40,78,.7));border:1px solid rgba(97,157,225,.18)}.plan-time strong{font-size:1.45rem}.plan-time small{font-size:.53rem;color:#82a2c8}.plan-body{position:relative;padding:1rem 1.1rem;border-radius:18px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.065)}.plan-index{position:absolute;right:.8rem;top:.55rem;color:rgba(255,255,255,.07);font-size:1.7rem;font-weight:950}.plan-body h3{font-family:Georgia,serif;margin:.1rem 2.2rem .4rem 0;font-size:1.08rem;color:#fff}.plan-body>p{margin:0 0 .7rem!important;color:#9fb2c9!important}.plan-scripture{display:inline-flex;padding:.38rem .55rem;border-radius:10px;background:rgba(229,181,74,.07);border:1px solid rgba(244,214,122,.13);color:#f0d57b;font-size:.7rem}.plan-questions{display:grid;gap:.4rem;margin-top:.7rem}.plan-questions>small{font-size:.55rem;letter-spacing:.1em;color:#7188a5}.plan-questions blockquote{margin:0;padding:.62rem .75rem;border-radius:12px;background:rgba(20,75,137,.09);border-left:2px solid #2d7fd9;color:#d9e5f4;font-size:.78rem}.plan-why{margin-top:.7rem;padding-top:.65rem;border-top:1px solid rgba(255,255,255,.06);font-size:.68rem;color:#8096b0}.plan-why strong{color:#a9bdd5}.teacher-plan-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.07)}.teacher-plan-actions label{display:grid;gap:.45rem;font-size:.74rem;color:#a8b9cd;font-weight:800}.teacher-plan-actions textarea{width:100%;padding:.85rem .9rem;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(4,20,42,.65);color:#fff;resize:vertical;font:inherit;line-height:1.5}.teacher-plan-actions>div{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.8rem}.teacher-prep-card{position:relative}.teacher-prep-overlay-link{position:absolute;inset:0;z-index:1}.teacher-prep-card .section-head,.teacher-prep-card .insight-layout{position:relative;z-index:2;pointer-events:none}.teacher-builder-launch{border-color:rgba(244,214,122,.18)!important;background:linear-gradient(145deg,rgba(229,181,74,.065),rgba(33,82,145,.04))!important}
@media(max-width:900px){.principle-intel-grid{grid-template-columns:1fr}.intelligence-two-col{grid-template-columns:1fr}.intelligence-stats{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.teacher-intelligence-shell{padding:.8rem!important}.intelligence-overview,.intelligence-principles,.intelligence-voices,.intelligence-issues,.adaptive-builder{padding:1rem!important}.intelligence-stats{grid-template-columns:1fr 1fr;gap:.55rem}.intelligence-stats article{padding:.75rem}.principle-intel-head{grid-template-columns:30px minmax(0,1fr)}.principle-intel-head>b{grid-column:2;justify-self:start}.builder-head{display:grid!important}.duration-switch{width:100%;display:grid;grid-template-columns:1fr 1fr}.duration-switch a{text-align:center}.lesson-objective,.adaptive-note{grid-template-columns:1fr}.lesson-plan-section{grid-template-columns:58px minmax(0,1fr);gap:.55rem}.plan-time{height:58px;border-radius:14px}.plan-time strong{font-size:1.15rem}.plan-body{padding:.85rem}.teacher-plan-actions>div{display:grid}.teacher-plan-actions .btn{width:100%}}
@media print{.topbar,.admin-nav,.teacher-plan-actions,.intelligence-overview,.intelligence-principles,.intelligence-two-col,.site-footer{display:none!important}body{background:#fff!important;color:#111!important}.adaptive-builder{border:0!important;background:#fff!important;box-shadow:none!important}.adaptive-builder *{color:#111!important}.plan-body,.plan-time,.lesson-objective,.adaptive-note{background:#fff!important;border:1px solid #ddd!important}.lesson-plan-section{break-inside:avoid}}
