@font-face{font-family:Atkinson;src:url(../fonts/atkinson-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Atkinson;src:url(../fonts/atkinson-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--ink:#1B2A47;--quiet:#4A5870;--bg:#EEF4FB;--card:#fff;--line:#C8D3E4;--navy:#1F4E8C;--orange:#B13E0C;--peach:#FFF0E3;--purple:#6A3DAA;--teal:#00796B;--gold:#F2B600;--goldInk:#7A5200;--red:#C62828;--amber:#D97706;--green:#2E7D32;--focus:#1B5FD1;--ok:#0B6B3A;--warn:#8A4B00}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:linear-gradient(#eaf2fc,#fbf8f2) fixed;color:var(--ink);font:18px/1.5 Atkinson,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}main{max-width:1040px;margin:0 auto;padding:8px 16px 110px}h1{font-size:1.9rem;line-height:1.2;margin:6px 0 4px;color:var(--navy)}h1:focus{outline:none}h2{font-size:1.1rem;margin:0 0 8px;color:var(--navy)}h3{font-size:1.1rem;margin:0;color:var(--navy)}p{margin:6px 0}a{color:var(--navy)}.small{font-size:.95rem;color:var(--quiet)}.strong{font-weight:700;color:var(--navy)}.orange{color:var(--orange);font-weight:700}.kicker{font-size:.85rem;letter-spacing:.08em;font-weight:700;color:var(--quiet);margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:4px solid var(--focus);outline-offset:2px;border-radius:6px}.skip{position:absolute;left:-999px;top:0;background:#fff;padding:12px 16px;z-index:20}.skip:focus{left:8px;top:8px}.top{position:sticky;top:0;z-index:10;background:#fffffff5;border-bottom:2px solid var(--line);padding:6px 12px;padding-top:calc(6px + env(safe-area-inset-top))}.top nav{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;max-width:1040px;margin:0 auto}.tab{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:6px 16px;border-radius:999px;border:2px solid var(--line);background:#fff;text-decoration:none;font-weight:700;color:var(--navy)}.tab.cur{background:var(--navy);border-color:var(--navy);color:#fff}.savestate{text-align:center;font-size:.9rem;margin:2px 0 0;min-height:1.3em;color:var(--quiet)}.savestate.error{color:var(--red);font-weight:700}.weektabs{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:10px 0 4px}.tab.chip{background:#211244;border:2px solid #D4AF37;color:#f4dd8a;gap:6px}.chipstar{width:22px;height:22px}.tab.chip.pulse{background:#43267d;box-shadow:0 0 0 4px #d4af3761}.toastwrap{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));display:flex;justify-content:center;pointer-events:none;z-index:15}.toast{pointer-events:none;display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff;border:3px solid #C99A00;border-radius:16px;padding:10px 14px;max-width:640px;box-shadow:0 6px 24px #1e284647}.toast p{margin:0;font-weight:700;color:var(--navy);flex:1 1 220px}.toast a,.toast button{pointer-events:auto;margin:0}.toast.t10{border-color:#b8692b}.toast.t16{border-color:#8a97a8}.toast.t21{border-color:#c99a00}.tier.celebrate.t10{outline:4px solid #B8692B;outline-offset:-4px}.tier.celebrate.t16{outline:4px solid #8A97A8;outline-offset:-4px}.tier.celebrate.t21{outline:4px solid #C99A00;outline-offset:-4px}@media(prefers-reduced-motion:no-preference){.tab.chip.pulse{animation:chippulse 1.6s ease-out 1}@keyframes chippulse{0%{transform:scale(1)}35%{transform:scale(1.1)}to{transform:scale(1)}}.tier.celebrate.t10{animation:glow10 2.6s ease-out 1}@keyframes glow10{0%,to{box-shadow:0 0 #b8692b00}30%{box-shadow:0 0 26px 8px #b8692b99}}.tier.celebrate.t16:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.8) 50%,transparent 65%);transform:translate(-120%);animation:sheen 1.8s ease-out 1 forwards}@keyframes sheen{to{transform:translate(120%)}}.tier.celebrate.t21{animation:glow21 2.6s ease-out 1}@keyframes glow21{0%,to{box-shadow:0 0 #f2b60000}30%{box-shadow:0 0 30px 10px #f2b600b3}}.tier.celebrate.t21:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;animation:sparkle 2.2s ease-out 1;background:radial-gradient(circle at 18% 28%,#fff 0 3px,transparent 4px),radial-gradient(circle at 30% 70%,#FFE58A 0 4px,transparent 5px),radial-gradient(circle at 12% 55%,#fff 0 2px,transparent 3px),radial-gradient(circle at 25% 15%,#FFE58A 0 3px,transparent 4px)}@keyframes sparkle{0%,to{opacity:0}40%{opacity:1}}}button,.btn{font:inherit;font-weight:700;min-height:48px;min-width:48px;padding:8px 18px;border-radius:12px;border:2px solid var(--navy);background:var(--navy);color:#fff;cursor:pointer;margin:4px 6px 4px 0;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}button.secondary,.btn.secondary,.btn.plain{background:#fff;color:var(--navy)}.btn.teal{background:var(--teal);border-color:var(--teal)}.gold{background:var(--gold);border-color:var(--goldInk);color:#3a2800}.big-btn{font-size:1.1rem;padding:10px 24px;border-radius:999px;margin-right:0}button[disabled]{opacity:.55;cursor:default}.updrow{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0;align-items:center}.filebtn{position:relative}input[type=file]{position:absolute;width:1px;height:1px;opacity:0}.card{background:var(--card);border:2px solid var(--line);border-radius:16px;padding:16px;margin:14px 0}.banner{border:2px solid var(--line);border-left-width:8px;border-radius:10px;padding:10px 14px;margin:12px 0;background:#fff}.banner.good{border-color:var(--ok)}.banner.note{border-color:var(--warn)}.field{width:100%;font:inherit;min-height:44px;padding:8px 12px;border:2px solid #8C9CBB;border-radius:10px;background:#f4f7ff;color:var(--ink)}textarea.field{resize:vertical}.flabel{display:block;font-weight:700;font-size:.85rem;letter-spacing:.06em;color:var(--quiet)}.status{font-weight:700;min-height:1.5em}.back{margin:10px 0 0}.back a{display:inline-block;padding:10px 0;min-height:44px;font-weight:700}.foot{text-align:center;color:var(--quiet);margin-top:24px}.stars-now{font-weight:700;color:var(--navy);background:#fff;border:2px solid var(--line);border-radius:999px;display:inline-block;padding:4px 16px;margin:8px 0}.hero{text-align:center;padding:16px 0 4px}.hero img{display:block;margin:0 auto 4px}.lead{font-size:1.1rem;color:var(--quiet)}.months{list-style:none;margin:16px 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.mcard{display:flex;flex-direction:column;align-items:center;gap:4px;background:#fff;border:2px solid var(--line);border-radius:20px;padding:12px 8px 14px;text-decoration:none;color:var(--ink);height:100%;text-align:center}a.mcard{border-color:var(--navy)}.mcard.off{background:#f6f8fb;color:var(--quiet)}.mname{font-weight:700;letter-spacing:.06em;font-size:.95rem}.avatar{position:relative;display:inline-block;line-height:0}.avatar img{border-radius:50%}.avatar.grey img,.sealimg:not(.got) img{filter:grayscale(1);opacity:.7}.avbadge{position:absolute;right:-4px;bottom:-4px;width:34px;height:34px;border-radius:50%;background:var(--ok);color:#fff;display:grid;place-items:center;border:3px solid #fff}.avbadge .check{width:20px;height:20px}.fname{font-weight:700}.fnote{font-size:.95rem;font-style:italic;color:var(--quiet)}.pagehead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin:8px 0 4px;flex-wrap:wrap}.friend{border-radius:50%;border:3px solid #fff}.actions{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-start;margin:8px 0}.lq{display:flex;flex-direction:column}.namecard{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.namecard .flabel{margin:0}.namecard .field{flex:1;min-width:200px;max-width:420px}.reset{background:#eaf5f2;border-color:#8cc4b8}.reset h2{color:#0b5a4f}.legend{display:grid;grid-template-columns:1fr;gap:10px;margin:14px 0}.legend p{margin:0}.legend .ratepanel{padding:6px 10px 8px}.legend .ratepanel h2{font-size:.9rem;letter-spacing:.08em;margin:0 0 4px;color:var(--ink)}.ratelabel{display:block;font-size:.8rem;font-weight:700;letter-spacing:.08em;color:var(--quiet);margin-bottom:2px}.key{list-style:none;display:flex;gap:10px 18px;margin:0;padding:0;flex-wrap:wrap;font-weight:700}.key li{display:flex;align-items:center;gap:6px}.days{display:grid;grid-template-columns:1fr;gap:14px;margin:14px 0}.day{background:#fff;border:2px solid var(--line);border-radius:16px;padding:12px 14px}.day.weekend{background:#fffbf0;border-color:#e5cd8a}.dayhead{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 12px;margin-bottom:4px}.wk{font-size:.8rem;font-weight:700;letter-spacing:.06em;color:var(--goldInk)}.dayrate{display:grid;grid-template-columns:1fr;gap:6px;margin-bottom:8px}.ratepanel{border:2px solid;border-radius:12px;padding:4px 8px 5px}.ratepanel.battery{background:#efeaf9;border-color:#8e7bc4}.ratepanel.waves{background:#ddf0fa;border-color:#6fb1d6}.ratepanel .ratelabel{color:var(--ink);font-size:.82rem;margin-bottom:1px;line-height:1.25}.ratepanel .sqgroup{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.ratepanel .sq{justify-content:flex-start}.ratepanel .sq.on{background:#fff}.magictag{font-size:.8rem;font-weight:700;color:#00564b;background:#e3f7f4;border:2px solid #00695C;border-radius:999px;padding:0 10px}.quests{list-style:none;margin:0;padding:0;display:grid;gap:8px}.quest{display:grid;grid-template-columns:96px 1fr 44px 52px;align-items:center;gap:8px;border-radius:999px;padding:4px 6px}.qlabel{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-align:center;color:#fff;padding:4px 6px;border-radius:999px}.quest.brain{background:#e7eefb}.quest.brain .qlabel{background:#3c5fb0}.quest.fuel{background:#e4f3e8}.quest.fuel .qlabel{background:#2e7048}.quest.recharge{background:#f2e9fa}.quest.recharge .qlabel{background:#7447a3}.qtext{background:#fff;border-radius:999px}.sqgroup{display:flex;gap:6px;flex-wrap:wrap}.sq{margin:0;padding:2px 10px 2px 4px;min-height:44px;min-width:44px;background:#fff;color:var(--ink);border:2px solid transparent;border-radius:10px;font-weight:700;font-size:.9rem}.sqbox{display:inline-grid;place-items:center;width:28px;height:28px;border:3px solid currentColor;border-radius:7px;background:#fff;flex:none}.sqbox .check{width:18px;height:18px;color:#fff}.sq.red .sqbox,.sqbox.red{color:var(--red)}.sq.amber .sqbox,.sqbox.amber{color:var(--amber)}.sq.green .sqbox,.sqbox.green{color:var(--green)}.sq.on{border-color:var(--ink);background:#f4f7ff}.sq.on .sqbox{background:currentColor}.legend .sqbox{width:22px;height:22px;border-width:3px}.startick{position:relative;margin:0;padding:0;width:48px;height:48px;border-radius:50%;background:#211244;border:2px dashed #9C89DA;display:grid;place-items:center}.startick.on{border:3px solid #D4AF37;border-style:solid;box-shadow:inset 0 0 8px #d4af3738,0 0 6px #d4af3733}.startick.magic{background:#0f3340;border:3px solid #5FD0C5;cursor:default}.startick.big{width:56px;height:56px;border-width:3px}.startick.big.magic{background:#0f3340;border:3px solid #5FD0C5}.startick.big.on{border:3px solid #D4AF37}.starsbox :focus-visible{outline-color:#fff}.staricon{width:30px;height:30px}.startick.big .staricon{width:36px;height:36px}.starsbox{background:linear-gradient(160deg,#2b1960,#43267d);border-color:#5e43a8;color:#eadfff}.starsbox .vgh{color:#e9c75a;border-bottom-color:#7b62c6}.starsbox .vdn,.starsbox .vlab,.starsbox .vrow,.starsbox .starkey{color:#eadfff}.trail{display:flex;justify-content:space-between;align-items:center;margin:8px 2px 14px}.pip{width:12px;height:12px;border-radius:50%;border:2px solid #8C9CBB;background:#fff;display:grid;place-items:center;font-size:.7rem;font-weight:700;line-height:1;color:var(--ink);flex:none}.pip.on{background:var(--gold);border-color:var(--goldInk)}.pip.medalpip{width:28px;height:28px;border-width:3px}.pip.medalpip.m10{border-color:#b8692b}.pip.medalpip.m16{border-color:#6e7c8e}.pip.medalpip.m21{border-color:#c99a00}.pip.medalpip.on{background:var(--gold)}.medals{display:grid;grid-template-columns:1fr;gap:14px;margin:0 0 14px}.medals>.card{margin:0}.tier{position:relative;overflow:hidden;display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center}.tier img{width:100%;height:auto;filter:saturate(1.1) contrast(1.05)}.tier.open{border-color:#c99a00;background:#fffbea}.tier.open img{filter:saturate(1.25) contrast(1.1) drop-shadow(0 3px 6px rgba(120,80,0,.35))}.tier h2{font-size:1.3rem;margin:0}.sm{font-size:.82rem;margin:2px 0;letter-spacing:.04em}.state{display:flex;align-items:center;gap:6px;font-weight:700;margin:2px 0 6px;color:var(--quiet)}.tier.open .state,.sealprog.got .state{color:var(--ok)}.state .check{width:20px;height:20px}.rlabel{display:block;font-size:.9rem;font-style:italic;color:var(--quiet)}.reward{border:2px dotted #C99A00;background:#f4f7ff}.starsbox h2{font-size:.95rem;letter-spacing:.06em;margin:0}.vgrid{display:flex;flex-direction:column}.vgh.g1{order:0}.vday{order:1}.vgh.g2{order:2}.vday.we{order:3}.vgh{margin:10px 0 6px}.vday{background:transparent;border:2px solid #5E43A8;border-radius:14px;padding:6px 10px 8px;margin:0 0 8px}.vday.we{background:transparent;border-color:#5e43a8}.vdn{display:block;font-weight:700;color:var(--navy);margin-bottom:2px}.vdshort{display:none}.vstar{display:flex;align-items:center;gap:12px;margin:4px 0}.vlab{font-size:.85rem;font-weight:700;letter-spacing:.06em;color:var(--quiet)}.vrow{display:none}.starkey{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:8px 0 0}.keystar .staricon{width:22px;height:22px;vertical-align:middle}.vaultbottom{display:grid;grid-template-columns:1fr;gap:0}.vaultbottom>.card{margin:14px 0 0}.magiccard{background:#e8f7f5;border-color:#8fd3cb}.resets{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0}.resetpick{flex:1 1 180px}.resetpick .flabel{color:var(--navy)}.select{min-height:48px;padding-right:8px;background:#fff;font-weight:700}.resetpick.on .select{border-color:#00695c;background:#e3f7f4}.sealprog{position:relative;overflow:hidden;display:grid;grid-template-columns:84px 1fr;gap:14px;align-items:start;background:#fffdf5;border-color:#e5cd8a}.sealprog.got{background:#fff9e3;border-color:var(--goldInk)}.sealprog h2{margin:0 0 4px}.sealtext{margin:2px 0 8px;color:var(--ink)}.segs{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;margin:0 0 8px}.seg{height:14px;border-radius:4px;border:2px solid #8C9CBB;background:#fff}.seg.on{background:var(--gold);border-color:var(--goldInk)}.sealprog .q{width:28px;height:28px;line-height:22px;font-size:1rem;right:-4px;bottom:-4px}.explain{background:#eaf5f2;border:2px solid #8CC4B8;border-radius:16px;margin:14px 0;overflow:hidden}.explain summary{list-style:none;margin:0;padding:12px 16px;min-height:64px;display:flex;align-items:center;gap:12px;cursor:pointer;color:#0b5a4f;font-weight:400}.explain summary::-webkit-details-marker{display:none}.explain summary:hover{background:#ddf0ea}.explain summary:focus-visible{outline-offset:-4px}.explain .etext{flex:1;min-width:0;display:grid;gap:2px}.explain .etitle{font-weight:700;font-size:1.1rem;line-height:1.25;color:#0b5a4f}.explain .eintro{font-size:.95rem;color:#2b4a45}.explain .ehint{font-weight:700;font-size:.9rem;color:#0b5a4f;letter-spacing:.04em;text-transform:uppercase}.explain .ehint .hide,.explain[open] .ehint .show{display:none}.explain[open] .ehint .hide{display:inline}.explain .chev{width:30px;height:30px;flex:none;color:#0b5a4f;background:#fff;border:2px solid #00695C;border-radius:50%;padding:3px;transition:transform .2s}.explain[open] .chev{transform:rotate(180deg)}.explain[open] summary{border-bottom:2px solid #8CC4B8}.explain .exbody{padding:4px 16px 14px}.explain dl{margin:4px 0 8px;display:grid;gap:2px}.explain dt{font-weight:700;color:#0b5a4f;margin-top:8px}.explain dd{margin:0;color:var(--ink)}.infoicon{width:26px;height:26px;flex:none}.exnote{display:flex;gap:10px;align-items:flex-start;background:#ddf0ea;border-radius:12px;padding:10px 12px;margin:8px 0 0;color:#1d3b36}.exnote p{margin:0;font-size:.95rem}.exnote.guide{margin:0}.reset .field{background:#fff;border:2px solid #00695C}.reset .rlabel{color:#0b5a4f;font-style:normal;font-weight:700;font-size:.85rem;letter-spacing:.04em;margin-top:6px}.ideas{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 4px}.idea{margin:0;min-height:44px;padding:6px 14px;background:#fff;color:#0b5a4f;border:2px solid #00695C;border-radius:999px;font-size:.95rem;box-shadow:0 2px #00695c}.idea:hover{background:#e3f7f4}.idea:active{background:#00695c;color:#fff;box-shadow:none;transform:translateY(2px)}.idea.use{background:#00695c;color:#fff}.idea.use:active{background:#0b5a4f}.nowline{margin:0 0 6px;font-size:.9rem;color:var(--quiet)}.sealprog.celebrate{outline:4px solid #C99A00;outline-offset:-4px}.toast .pair{display:flex;gap:6px;align-items:center}.toast .pair img:first-child{border-radius:50%}.toast.seal{border-color:#c99a00;border-width:4px}.sealrow{margin:8px 0}@media(prefers-reduced-motion:no-preference){.sealprog.celebrate{animation:glow21 2.6s ease-out 1}.sealprog.celebrate:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;animation:sparkle 2.2s ease-out 1;background:radial-gradient(circle at 12% 30%,#fff 0 3px,transparent 4px),radial-gradient(circle at 26% 70%,#FFE58A 0 4px,transparent 5px),radial-gradient(circle at 60% 20%,#fff 0 2px,transparent 3px),radial-gradient(circle at 88% 55%,#FFE58A 0 3px,transparent 4px)}}.huggrid{display:grid;grid-template-columns:1fr;gap:14px}.huggrid>.card{margin:0}.hughead{display:grid;grid-template-columns:minmax(0,1fr);gap:8px 12px;align-items:start}.hughead .datebox{width:100%;max-width:220px}.talk{display:flex;flex-direction:column}.talk .prompt{flex:1 1 auto;display:flex;flex-direction:column;margin:8px 0 12px}.talk .prompt:last-child{margin-bottom:0}.talk .prompt textarea{flex:1 1 auto;min-height:76px}fieldset{border:0;padding:0;margin:12px 0 4px}legend{font-size:.82rem;font-weight:700;letter-spacing:.06em;color:var(--navy);padding:0;margin-bottom:2px}.checkrow{display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer}.checkrow input{width:28px;height:28px;flex:none;accent-color:var(--navy)}.prompt{margin:8px 0 12px}.plabel{display:block;font-style:italic;color:var(--quiet);margin-bottom:2px}.endpills{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.endpill{margin:0;color:#fff;border-color:transparent;border-radius:999px;justify-content:flex-start}.endpill .sqbox{color:#fff;background:#fff3;border-color:#fff}.endpill.on{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--ink)}.endpill.on .sqbox{background:#fff}.endpill.on .sqbox .check{color:var(--ink)}.hearts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0}.heartbox{border:2px solid var(--navy);border-radius:16px;padding:10px 12px;text-align:center;background:#f4f7ff;width:100%}.heartwho{font-weight:700;color:var(--navy)}.heartbtn{margin:0 auto;width:64px;height:64px;padding:6px;background:#fff;color:var(--ink);border-color:#8c9cbb;border-radius:50%}.heartbtn svg{width:44px;height:44px}.heartname{font-weight:700;min-height:1.5em}.dots{display:flex;gap:2px;justify-content:center;flex-wrap:wrap}.dot{margin:0;padding:0;width:44px;height:44px;background:transparent;border:2px solid transparent;border-radius:50%}.dot.on{border-color:var(--ink)}.dotfill{width:28px;height:28px;border-radius:50%;border:3px solid;display:grid;place-items:center}.dotfill .check{width:16px;height:16px;color:#fff}.dot[aria-label$=Gold] .check{color:#3a2800}.seals{list-style:none;padding:0;margin:14px 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.sealcard{margin:0;width:100%;height:100%;flex-direction:column;align-items:center;gap:4px;background:#fff;color:var(--ink);border:2px solid var(--line);border-radius:20px;padding:12px 8px;font-weight:400;display:flex;text-align:center}.sealcard.got{border-color:var(--goldInk);background:#fff9e3}.sealcard.off{background:#f6f8fb;color:var(--quiet)}.sealimg{position:relative;line-height:0}.q{position:absolute;right:-6px;bottom:-6px;width:36px;height:36px;line-height:30px;border-radius:50%;background:#fff;border:3px solid var(--quiet);color:var(--quiet);font-weight:700;font-size:1.2rem;text-align:center}.sealcard .fnote{display:flex;align-items:center;gap:4px}.sealcard .fnote .check{width:18px;height:18px;color:var(--ok)}dl.diag{display:grid;grid-template-columns:max-content 1fr;gap:4px 14px;margin:8px 0 0;font-size:.95rem}dl.diag dt{color:var(--quiet)}dl.diag dd{margin:0;word-break:break-word}pre{white-space:pre-wrap;word-break:break-word;background:#eef2fa;border-radius:10px;padding:10px;font-size:.85rem;max-height:320px;overflow:auto}hr{border:0;border-top:2px solid var(--line);margin:14px 0}details{margin:8px 0}summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:700}@media(min-width:521px){.hughead{grid-template-columns:minmax(0,1fr) 182px}.hughead .datebox{max-width:none}}@media(min-width:700px){.medals{grid-template-columns:repeat(3,minmax(0,1fr))}.tier{grid-template-columns:1fr;text-align:center;justify-items:center;align-content:start}.tier img{width:120px}.tier .tierbody{width:100%;text-align:center}.tier .state{justify-content:center}.tier .rlabel{text-align:left}.vgh.g1,.vgh.g2,.vday,.vday.we{order:0}.vgrid{display:grid;grid-template-columns:90px repeat(7,minmax(0,1fr));column-gap:8px;row-gap:6px;align-items:center}.vgh{margin:0;text-align:center;grid-row:1;padding-bottom:2px;border-bottom:3px solid #7B62C6}.vgh.g1{grid-column:2 / 7}.vgh.g2{grid-column:7 / 9}.vday{display:contents}.vdn{grid-row:2;grid-column:var(--c);text-align:center;margin:0}.vstar{grid-column:var(--c);justify-content:center;margin:0;padding:6px 0;background:transparent;border-radius:12px}.vstar.r0{grid-row:3}.vstar.r1{grid-row:4}.vstar.r2{grid-row:5}.vlab{display:none}.vrow{display:block;grid-column:1;font-weight:700;font-size:.85rem;letter-spacing:.06em;color:var(--quiet)}.vrow.r0{grid-row:3}.vrow.r1{grid-row:4}.vrow.r2{grid-row:5}}@media(min-width:700px)and (max-width:939px){.vdfull{display:none}.vdshort{display:inline}}@media(min-width:621px){.endpills{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:760px){.days{grid-template-columns:1fr 1fr}.huggrid{grid-template-columns:1fr 1fr;align-items:stretch}.huggrid>.finish{grid-column:1 / -1}.legend{grid-template-columns:1fr 1fr}.legend p{grid-column:1 / -1}}@media(max-width:620px){.hearts{grid-template-columns:minmax(0,300px);justify-content:center;gap:12px}}@media(max-width:520px){body{font-size:17px}h1{font-size:1.55rem}.quest{grid-template-columns:1fr 44px 52px}.qlabel{grid-column:1 / -1;justify-self:start;padding:2px 10px}.qtext{grid-column:1}.quest .qidea{grid-column:2}.tier{grid-template-columns:84px 1fr}dl.diag{grid-template-columns:1fr}dl.diag dd{margin-bottom:6px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}@media print{.top,.banner,.actions button{display:none}}.svgdefs{position:absolute;width:0;height:0;overflow:hidden}.spark{display:none}@media(prefers-reduced-motion:no-preference){.spark{display:block;position:absolute;inset:0;pointer-events:none}.spark .shimmer{position:absolute;inset:0;border-radius:50%;opacity:0;background:linear-gradient(115deg,transparent 30%,rgba(255,247,205,.95) 50%,transparent 70%);background-size:260% 100%;animation:starshim .8s ease-out .1s 1 forwards}.spark .sp{position:absolute;left:50%;top:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:#f2b600;box-shadow:0 0 5px 1px #ffd84a,0 0 0 1px #b8901f;opacity:0;animation:starfly .9s ease-out 1 forwards}.spark .sp1,.spark .sp4{background:#ffe27a;width:5px;height:5px;margin:-2.5px 0 0 -2.5px}.spark .sp0{--x:0px;--y:-34px}.spark .sp1{--x:30px;--y:-18px;animation-delay:.04s}.spark .sp2{--x:32px;--y:20px;animation-delay:.02s}.spark .sp3{--x:0px;--y:36px;animation-delay:.06s}.spark .sp4{--x:-31px;--y:18px;animation-delay:.03s}.spark .sp5{--x:-31px;--y:-20px;animation-delay:.05s}.startick.earning{animation:starring .9s ease-out 1}.startick.earning .staricon{animation:starpop .9s cubic-bezier(.2,.9,.3,1.2) 1}@keyframes starpop{0%{transform:scale(.8);filter:brightness(1)}28%{transform:scale(1.55);filter:brightness(1.4) drop-shadow(0 0 5px #FFD84A)}55%{transform:scale(.94);filter:brightness(1.15)}78%{transform:scale(1.07);filter:brightness(1)}to{transform:scale(1);filter:brightness(1)}}@keyframes starring{0%{box-shadow:0 0 #ffd646e6,0 0 6px #d4af3733}to{box-shadow:0 0 0 15px #ffd64600,0 0 6px #d4af3733}}@keyframes starshim{0%{opacity:1;background-position:130% 0}to{opacity:0;background-position:-30% 0}}@keyframes starfly{0%{opacity:0;transform:translate(0) scale(.4)}25%{opacity:1}to{opacity:0;transform:translate(var(--x),var(--y)) scale(1)}}}@media(prefers-reduced-motion:reduce){.startick.on{transition:box-shadow .7s ease-out!important}.startick.earning{box-shadow:0 0 0 5px #ffd646e6,0 0 12px 4px #ffd6468c!important;transition:none!important}}.qidea{position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff6d6;border:2px solid #B8901F}.qideaicon{width:24px;height:24px;pointer-events:none}.qideasel{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:16px}.qidea:focus-within{outline:4px solid var(--focus);outline-offset:2px}.quest .qidea{margin:0}.opencoll{display:flex;align-items:center;gap:5px;font-weight:700;font-size:.9rem;color:var(--navy)}.albumicon{width:24px;height:24px;flex:none}a.sealcard.openable{text-decoration:none;cursor:pointer;border-width:3px;border-color:var(--navy)}a.sealcard.openable:hover{background:#fff3c4}.album{background:#f7faff;border:2px solid var(--line);border-radius:22px;padding:14px;margin:10px 0 18px;position:relative}.album.locked{text-align:center;padding:24px 16px}.albumhead{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center}.albumhead .friend{border-radius:50%}.albumhead .stars-now{grid-column:1 / -1;justify-self:start;margin:0}.completebar{display:flex;align-items:center;gap:8px;margin:10px 0 0;padding:6px 14px 6px 8px;border-radius:999px;background:linear-gradient(90deg,#fff9e3,#fff0bf);border:2px solid #C99A00;color:#4f3500;font-weight:700}.celebrate-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin:14px 0;padding:16px 18px;border-radius:20px;background:linear-gradient(160deg,#fffdf2,#fff1c4);border:2px solid #B8901F;box-shadow:inset 0 0 0 4px #fff,inset 0 0 0 6px #e5cd8a}.ccart{display:grid;place-items:center;width:116px;height:116px;border-radius:50%;background:radial-gradient(circle at 50% 40%,#fff,#dcebfb 75%);border:3px solid #C99A00;box-shadow:0 2px 8px #b8901f59}.ccart img{max-width:78%;max-height:88%;width:auto;height:auto}.cckick{margin:0 0 2px;font-size:.78rem;font-weight:700;letter-spacing:.14em;color:#7a5200}.celebrate-card h2{margin:0 0 4px;font-size:1.4rem;color:var(--navy)}.celebrate-card p{margin:0}.celebrate-card .cckick{margin-bottom:2px}.celebrate-card button{align-self:start;margin:0}.stickers{list-style:none;margin:14px 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.slot,.champ{position:relative;border-radius:18px;text-align:center;outline-offset:3px}.slot{background:#eaf0fa;border:2px dashed #7C8CBB;padding:8px 8px 10px}.slot.rev{background:linear-gradient(180deg,#fff 0,#f3f8ff);border:2px solid #D9BC62;box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 4px #ebd79b,0 3px 10px #1b2a4729}.art{position:relative;aspect-ratio:1 / 1;width:100%;z-index:1}.art img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;pointer-events:none}.art .glow{position:absolute;inset:-12%;border-radius:50%;opacity:0;pointer-events:none}.sil{opacity:.92}.col{opacity:0;filter:drop-shadow(0 3px 4px rgba(27,42,71,.28))}.rev .col{opacity:1}.rev .sil{opacity:0}.num{position:absolute;left:8px;top:6px;min-width:26px;height:26px;line-height:22px;border-radius:50%;background:#fff;border:2px solid #7C8CBB;color:#34417a;font-weight:700;font-size:.85rem;z-index:2}.sname{display:block;margin:4px 10px 0;padding:2px 6px;font-weight:700;color:var(--navy);line-height:1.2;border-top:2px solid #EBD79B;position:relative;z-index:1}.hit{position:absolute;inset:0;width:100%;height:100%;min-height:0;min-width:0;margin:0;padding:0;background:transparent;border:0;border-radius:18px;cursor:pointer;z-index:3}.slot:not(.rev):hover{background:#dde7f8}.shine{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none;z-index:2}.shine i{position:absolute;top:-10%;bottom:-10%;left:-40%;width:34%;background:linear-gradient(100deg,#fff0,#fff6cdcc,#fff0);transform:skew(-18deg);opacity:0}.sparks{position:absolute;inset:0;pointer-events:none;z-index:2}.sparks .sp{display:none}.champ{margin:8px auto 4px;max-width:360px;padding:12px 14px 14px}.cname{margin:0 0 2px;font-size:1.15rem;font-weight:700;letter-spacing:.04em;color:var(--navy);position:relative;z-index:1}.ctitle{margin:6px 0 0;font-size:.9rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#6b4a00;position:relative;z-index:1}.ctitle span{color:#b8901f}.champ .art{max-width:260px;margin:0 auto;aspect-ratio:2 / 3}.champ.lockd{background:#eef1f8;border:3px dashed #8C93B3}.champ.lockd .cname,.champ.lockd .ctitle{color:#4a5278}.champ.lockd .ctitle span{color:#8c93b3}.champ.lockd .sil{opacity:.5}.champ.ready{background:#fffbea;border:3px solid #D4AF37}.champ.ready .sil{opacity:1;filter:drop-shadow(0 0 9px rgba(242,182,0,.8))}.champ.rev{background:radial-gradient(circle at 50% 36%,#fffdf2 0,#fff3cc 52%,#f6dd93);border:3px solid #B8901F;box-shadow:inset 0 0 0 3px #fff6d0,inset 0 0 0 5px #c99a00,inset 0 0 0 7px #fff6d0,0 6px 18px #b8901f52;padding-top:24px}.champ.rev:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(118deg,#fff0 36%,#fff6,#fff0 60%);z-index:2}.champ.rev.play:after,.champ.rev.play .crest{opacity:0}.champ.rev .col{opacity:1;filter:drop-shadow(0 4px 6px rgba(90,61,0,.3))}.champ.rev .sil{opacity:0}.crest{position:absolute;left:50%;top:-17px;width:38px;height:38px;margin-left:-19px;display:grid;place-items:center;border-radius:50%;background:#2b1960;border:3px solid #D4AF37;z-index:4;box-shadow:0 2px 5px #1b2a4759}.crest svg{width:22px;height:22px}.padlock{position:absolute;left:50%;bottom:6%;width:56px;height:56px;margin-left:-28px;filter:drop-shadow(0 2px 3px rgba(27,42,71,.35))}.cnote{display:block;margin-top:6px;font-weight:700;color:var(--ink);position:relative;z-index:1}.champ.ready .cnote{color:#5a3d00}.champ .hit{border-radius:20px}.ring{display:none}.motiontest{display:inline-block;margin-left:14px;font-size:2rem;line-height:1;color:#d4af37;vertical-align:middle}.elsebox{margin-top:16px}.elsebox .plabel{font-weight:700;font-style:normal;color:var(--navy)}.elsebox textarea{min-height:76px}@media(prefers-reduced-motion:no-preference){.slot:not(.rev):hover .art{transform:scale(1.05);transition:transform .2s}.champ.ready{animation:champglow 2.8s ease-in-out infinite}@keyframes champglow{0%,to{box-shadow:0 0 6px 1px #f2b6004d}50%{box-shadow:0 0 18px 4px #f2b6008c}}.champ.nope{animation:nope .45s ease-in-out 1}@keyframes nope{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.slot.anim{z-index:2;animation:frameglow 1.2s ease-out 1}.slot.anim .art{animation:slotlift 1.2s cubic-bezier(.3,.8,.3,1) 1}.slot.anim .sil{animation:silout 1.2s ease-in-out 1 both}.slot.anim .col{animation:colin 1.2s ease-in-out 1 both}.slot.anim .glow{animation:glowpulse 1.2s ease-out 1 both;background:radial-gradient(circle,rgba(255,250,215,.9) 0,rgba(255,226,122,.45) 45%,transparent 70%)}.slot.anim .shine i{animation:sweep .6s ease-in-out .3s 1 both}@keyframes frameglow{0%{box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 4px #ebd79b,0 0 #f2b60000}35%{box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 4px #ebd79b,0 0 14px 4px #f2b6008c}to{box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 4px #ebd79b,0 3px 10px #1b2a4729}}@keyframes slotlift{0%{transform:translateY(0) scale(1)}30%{transform:translateY(-6px) scale(1.1)}70%{transform:translateY(-3px) scale(1.05)}to{transform:translateY(0) scale(1)}}@keyframes silout{0%,25%{opacity:.92}55%,to{opacity:0}}@keyframes colin{0%,30%{opacity:0}65%,to{opacity:1}}@keyframes glowpulse{0%{opacity:0;transform:scale(.6)}40%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}@keyframes sweep{0%{left:-40%;opacity:0}20%{opacity:1}to{left:110%;opacity:0}}.sparks .sp{display:block;position:absolute;left:50%;top:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:#f2b600;box-shadow:0 0 5px 1px #ffe27a;opacity:0;animation:spsettle 1s ease-out 1 forwards}.sparks .sp:nth-child(2n){background:#fff;box-shadow:0 0 5px 1px #ffd84a;width:5px;height:5px;margin:-2.5px 0 0 -2.5px}.sparks .sp0{--x:0px;--y:-52px;animation-delay:.45s}.sparks .sp1{--x:44px;--y:-34px;animation-delay:.5s}.sparks .sp2{--x:54px;--y:10px;animation-delay:.48s}.sparks .sp3{--x:30px;--y:46px;animation-delay:.52s}.sparks .sp4{--x:-30px;--y:46px;animation-delay:.47s}.sparks .sp5{--x:-54px;--y:10px;animation-delay:.5s}.sparks .sp6{--x:-44px;--y:-34px;animation-delay:.53s}@keyframes spsettle{0%{opacity:0;transform:translate(0) scale(.3)}30%{opacity:1}to{opacity:0;transform:translate(var(--x),calc(var(--y) + 14px)) scale(.9)}}.champ.play{z-index:3;animation:champframe 2.8s ease-in-out 1}.champ.play .art{animation:champlift 2.8s cubic-bezier(.3,.8,.3,1) 1}.champ.play .glow{inset:-8%;animation:champglowin 2.8s ease-in-out 1 both;background:radial-gradient(circle,rgba(255,246,200,.85) 0,rgba(255,214,100,.4) 45%,transparent 70%)}.champ.play .sil{animation:champsil 2.8s ease-in-out 1 both}.champ.play .col{animation:champcol 2.8s ease-in-out 1 both}.champ.play .shine i{width:42%;animation:sweep .8s ease-in-out 1.55s 1 both;background:linear-gradient(100deg,#fff0,#fff0b4e6,#fff0)}.champ.play .sparks .sp{animation:rain 1.1s ease-in 1 forwards;animation-delay:var(--d);left:var(--l);top:3%}@keyframes champframe{0%{box-shadow:0 0 #f2b60000}25%{box-shadow:0 0 16px 3px #f2b60073}80%{box-shadow:0 0 16px 3px #f2b60073}to{box-shadow:0 0 #f2b60000}}@keyframes champlift{0%{transform:scale(1)}22%{transform:translateY(-4px) scale(1.04)}65%{transform:translateY(-6px) scale(1.07)}to{transform:scale(1)}}@keyframes champglowin{0%{opacity:0}25%{opacity:.55}62%{opacity:.9}to{opacity:0}}@keyframes champsil{0%,50%{opacity:1}70%,to{opacity:0}}@keyframes champcol{0%,52%{opacity:0}80%,to{opacity:1}}@keyframes rain{0%{opacity:0;transform:translateY(0) scale(.5)}25%{opacity:1}to{opacity:0;transform:translateY(190px) scale(.9)}}@supports ((-webkit-mask-composite: xor) or (mask-composite: exclude)){.champ.play .ring{display:block;position:absolute;inset:0;border-radius:inherit;padding:6px;overflow:hidden;pointer-events:none;z-index:0;opacity:0;animation:ringfade 2.8s ease-in-out 1 both;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.champ.play .runner{position:absolute;left:50%;top:50%;width:230%;aspect-ratio:1;margin:-115% 0 0 -115%;background:conic-gradient(from 0deg,#ffe27a00 0 72%,#e6b422 90%,#fff3b8 99%,#ffe27a00);animation:ringspin 1.3s ease-in-out .45s 1 both}@keyframes ringspin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ringfade{0%,12%{opacity:0}22%,58%{opacity:1}72%,to{opacity:0}}}}@media(prefers-reduced-motion:reduce){.slot .col,.slot .sil,.champ .col,.champ .sil{transition:opacity .6s ease!important}.slot,.champ{transition:box-shadow .8s ease-out!important}.slot.anim,.champ.anim{box-shadow:0 0 0 4px #f2b600,0 0 14px 4px #f2b6008c!important;transition:none!important}.champ.ready{border-color:#d4af37;box-shadow:0 0 12px 3px #f2b60073}}@media(max-width:520px){.celebrate-card{grid-template-columns:1fr;text-align:center;justify-items:center}.celebrate-card button{align-self:center}}
