@font-face{font-family:Fraunces;src:url(/fonts/fraunces-latin-full-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Fraunces;src:url(/fonts/fraunces-latin-full-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:Nunito;src:url(/fonts/nunito-latin-wght-normal.woff2) format("woff2");font-weight:200 1000;font-style:normal;font-display:swap}@font-face{font-family:Yesteryear;src:url(/fonts/yesteryear-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Black Ops One;src:url(/fonts/black-ops-one-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Courier Prime;src:url(/fonts/courier-prime-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Courier Prime;src:url(/fonts/courier-prime-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--paper:#f6eedd;--card:#fffaf0;--ink:#2c2521;--red:#c23b2f;--red-dk:#8f271f;--green:#2e6b45;--green-dk:#1f4d31;--gold:#d9a527;--butter:#f6dc8c;--pink:#f3cbc3;--mint:#d3e6d4;--muted:#74695c;--line:#e2d5bb;--night:#1c2c4a;--r:18px;--script:"Yesteryear","Brush Script MT",cursive;--display:"Fraunces",Georgia,serif;--stencil:"Black Ops One",Impact,sans-serif;--type:"Courier Prime","Courier New",monospace;--body:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;--soft:"SOFT" 100,"WONK" 1;--grain:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.11  0 0 0 0 0.1  0 0 0 0 0.08  0 0 0 .07 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");--sprinkle:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='90' height='90'><g fill='none' stroke='%23c23b2f' stroke-opacity='.13' stroke-width='1.6' stroke-linecap='round'><path d='M14 10v8M10 14h8'/><path d='M62 52v8M58 56h8'/></g><g fill='%232e6b45' fill-opacity='.12'><circle cx='44' cy='24' r='2'/><circle cx='20' cy='70' r='2.5'/><circle cx='80' cy='82' r='1.6'/></g><path d='M78 18l1.6 3.4 3.6.4-2.7 2.4.8 3.6-3.3-1.9-3.3 1.9.8-3.6-2.7-2.4 3.6-.4z' fill='%23d9a527' fill-opacity='.22'/></svg>");--squiggle:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='8'><path d='M0 4 Q5 0 10 4 T20 4' fill='none' stroke='%23c23b2f' stroke-width='2.2' stroke-linecap='round'/></svg>");--candy:repeating-linear-gradient(135deg,var(--red) 0 10px,var(--card) 10px 20px);color-scheme:light}*{box-sizing:border-box}body,html{margin:0;color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55}body{background:var(--night);min-height:100%}button,input,select,textarea{font:inherit}#snowfx{position:fixed;inset:0;z-index:0;pointer-events:none}.frame{position:relative;z-index:1;max-width:560px;margin:0 auto;background:var(--sprinkle),var(--grain),var(--paper);min-height:100vh;overflow:hidden}.frame.wide,.frame:has(.wrap.wide){max-width:1040px}@media (min-width:600px){.frame{margin:24px auto;min-height:calc(100vh - 48px);border-radius:28px;box-shadow:0 24px 60px -20px rgba(0,0,0,.6)}}.apphead{background:var(--grain),var(--green);color:var(--card);padding:0 18px 14px;position:relative;margin-bottom:14px}.apphead:after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:13px;background:radial-gradient(circle at 12px 0,var(--green) 11.5px,transparent 12px) 0 0 /24px 13px repeat-x}.lights{list-style:none;display:flex;justify-content:space-between;margin:0 -8px 4px;padding:0 10px;height:30px;position:relative;overflow:hidden}.lights:before{content:"";position:absolute;left:0;right:0;top:-2px;height:12px;border-bottom:1.5px solid rgba(255,250,240,.55);border-radius:0 0 50% 50%/0 0 100% 100%}.lights li{width:10px;height:15px;margin-top:9px;border-radius:50% 50% 50% 50%/60% 60% 40% 40%;background:var(--red);transform-origin:50% -4px;animation:sway 3s ease-in-out infinite,glow 2.4s steps(1) infinite;position:relative}.lights li:before{content:"";position:absolute;left:2px;top:-4px;width:6px;height:5px;border-radius:2px;background:#3d4a3f}.lights li:nth-child(4n+2){background:var(--butter);animation-delay:-.7s,.6s}.lights li:nth-child(4n+3){background:#7cc3e8;animation-delay:-1.4s,1.2s}.lights li:nth-child(4n){background:#f39bb0;animation-delay:-2.1s,1.8s}@keyframes sway{0%,to{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}@keyframes glow{50%{filter:brightness(.7) saturate(.8)}}.headrow{justify-content:space-between;gap:8px;flex-wrap:wrap}.brand,.headrow{display:flex;align-items:center}.brand{font-family:var(--script);font-size:34px;line-height:1;gap:10px}.brand>span{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.assassin{font-family:var(--stencil);font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--card);background:var(--red);padding:4px 9px 2px;margin-left:6px;display:inline-block;transform:rotate(-5deg);border-radius:4px;box-shadow:0 0 0 2px var(--red),0 0 0 3.5px var(--card);line-height:1.2}.daychip{font-family:var(--type);font-size:13px;background:rgba(255,250,240,.16);border-radius:999px;padding:2px 12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.whoami{margin-top:8px;font-family:var(--type);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--butter)}.tabs{display:flex;gap:8px;padding:10px 14px 6px;overflow-x:auto;position:-webkit-sticky;position:sticky;top:0;z-index:2;background:linear-gradient(var(--paper) 80%,transparent);scrollbar-width:none}.tabs a,.tabs button{background:var(--card);border:1.5px solid var(--line);color:var(--ink);border-radius:999px;padding:6px 16px;font-weight:800;white-space:nowrap;box-shadow:none}.tabs a:hover,.tabs button:hover{transform:rotate(-2deg);border-color:var(--red);box-shadow:none}.tabs a.on,.tabs button.on{background:var(--red);border-color:var(--red);color:var(--card);transform:rotate(-2deg);box-shadow:0 3px 0 var(--red-dk)}main{padding:10px 18px 120px}h1,h2{font-family:var(--display);font-variation-settings:var(--soft);font-weight:800;text-wrap:balance;color:var(--ink);letter-spacing:-.01em}h1{font-size:36px;margin:4px 0 10px;line-height:1.05}h2{font-size:23px;margin:30px 0 10px;line-height:1.2;padding-bottom:12px;position:relative}h2:after{content:"";position:absolute;left:0;bottom:0;width:80px;height:8px;background:var(--squiggle) 0 0 /20px 8px repeat-x}h3{font-size:16px;margin:0 0 6px;font-weight:800}.eyebrow,.label,.stamp,.tag-from,.tag-label,.target-label{font-family:var(--type);font-weight:700;text-transform:uppercase;letter-spacing:.12em}.eyebrow,.stamp{font-size:13px;color:var(--red);margin:0}.codename{font-variation-settings:var(--soft);font-weight:900;font-style:italic;font-size:38px;line-height:1.05;margin:2px 0 8px}.codename,.tcode{font-family:var(--display);color:var(--red)}.tcode{font-variation-settings:var(--soft);font-weight:900;font-style:italic;font-size:24px}.card,.panel{background:var(--grain),var(--card);border-radius:var(--r);padding:16px 18px;margin:14px 0;box-shadow:0 1px 0 rgba(44,37,33,.06),0 8px 20px -14px rgba(44,37,33,.55);outline:1.5px dashed rgba(44,37,33,.18);outline-offset:-7px}.card.alert{background:var(--grain),#fff1ec;outline-color:rgba(194,59,47,.45)}.card.target,.panel.target{position:relative;padding-top:24px;background:var(--candy) 0 0 /100% 9px no-repeat,var(--grain),var(--card)}details.card summary{cursor:pointer;font-weight:800}.sub{border-top:1.5px dashed var(--line);padding-top:10px;margin-top:10px}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:14px;gap:14px}.grid2 .card{margin:0}.moves{background:var(--grain),var(--mint);border-radius:24px;padding:4px 16px 18px;margin:18px 0;position:relative}.moves h2{margin:14px 0 12px}.moves ol{list-style:none;padding:0;margin:0;display:grid;grid-gap:10px;gap:10px;counter-reset:m}.moves li{counter-increment:m}.moves li:nth-child(odd) .move{transform:rotate(-.5deg)}.moves li:nth-child(2n) .move{transform:rotate(.5deg)}.move{display:grid;grid-gap:2px;gap:2px;width:100%;text-align:left;background:var(--card);color:var(--ink);border:0;border-radius:14px;padding:12px 14px 12px 54px;position:relative;cursor:pointer;font-weight:400;box-shadow:0 3px 0 rgba(44,37,33,.1)}.move:before{content:counter(m);position:absolute;left:12px;top:13px;width:28px;height:28px;border-radius:50%;background:radial-gradient(circle at 26% 22%,rgba(255,255,255,.5) 0 2px,transparent 3px),var(--green);color:var(--card);font-family:var(--display);font-weight:800;font-size:14px;line-height:28px;text-align:center}.move:after{content:"";position:absolute;left:22px;top:8px;width:8px;height:6px;border-radius:2px;background:var(--gold)}.moves li:nth-child(3n+2) .move:before{background:radial-gradient(circle at 26% 22%,rgba(255,255,255,.5) 0 2px,transparent 3px),var(--gold);color:var(--ink)}.move strong{font-weight:800}.move span{color:var(--muted);font-size:14px}a.move:hover,button.move:hover{transform:rotate(0) translateY(-2px);box-shadow:0 6px 0 rgba(44,37,33,.12);background:#fff}.move.static{cursor:default}.move.urgent,.urgent .move{background:#fff1ec}.move.urgent:before,.urgent .move:before{background:radial-gradient(circle at 26% 22%,rgba(255,255,255,.5) 0 2px,transparent 3px),var(--red);content:"!"}.intro{background:var(--grain),var(--card);border-radius:24px;padding:4px 18px 16px;margin:18px 0;outline:2px dashed rgba(46,107,69,.35);outline-offset:-8px}.howto{padding-left:20px;display:grid;grid-gap:6px;gap:6px;margin:4px 0 12px}.tracker{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);padding:0;margin:10px 0 14px;counter-reset:s;position:relative}.tracker:before{content:"";position:absolute;left:12%;right:12%;top:3px;height:14px;border-bottom:2px solid var(--green);border-radius:0 0 50% 50%/0 0 100% 100%}.tracker li{text-align:center;padding:34px 2px 0;counter-increment:s;line-height:1.2;position:relative}.tracker li,.tracker li:before{font-size:12px;font-weight:800;color:var(--muted)}.tracker li:before{content:counter(s);position:absolute;left:50%;top:6px;width:24px;height:24px;margin-left:-12px;border-radius:50%;background:var(--card);border:2px solid var(--line);font-family:var(--display);line-height:20px}.tracker li.done{color:var(--green)}.tracker li.done:before{content:"\2713";background:var(--green);border-color:var(--green);color:var(--card)}.tracker li.now{color:var(--red)}.tracker li.now:before{background:var(--red);border-color:var(--red);color:var(--card);animation:sway 2.4s ease-in-out infinite;transform-origin:50% -6px}.note,.notice{position:relative;background:var(--butter);border-radius:6px 14px 8px 12px;padding:12px 14px 10px;margin:18px 0 14px;font-weight:700;transform:rotate(-.6deg);box-shadow:0 4px 10px -6px rgba(44,37,33,.5)}.note:before,.notice:before{content:"";position:absolute;left:50%;top:-9px;width:64px;height:18px;margin-left:-32px;background:rgba(255,255,255,.55);transform:rotate(2deg);border-radius:2px}.note.err,.notice.error{background:var(--pink);transform:rotate(.6deg)}.note.ok{background:var(--mint)}.badge,.pill{display:inline-block;font-family:var(--type);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:1px 10px;border-radius:999px;background:var(--line);color:var(--ink)}.badge.green,.pill.good{background:var(--green);color:var(--card)}.badge.gold,.pill.gold{background:var(--butter)}.badge.red,.pill.bad{background:var(--red);color:var(--card)}.bad-text{color:var(--red);font-weight:800}.muted{color:var(--muted)}.small{font-size:14px}.label{font-size:12px;color:var(--muted);margin:12px 0 4px}.btns,.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.spread{justify-content:space-between}ul{padding-left:20px;margin:4px 0}.btn,button{background:var(--red);color:var(--card);border:0;border-radius:999px;padding:9px 20px;cursor:pointer;font-weight:800;box-shadow:0 4px 0 var(--red-dk);transition:transform .12s ease,box-shadow .12s ease}.btn:hover,button:hover{transform:translateY(-1px) rotate(-1.5deg);box-shadow:0 5px 0 var(--red-dk)}.btn:active,button:active{transform:translateY(3px);box-shadow:0 1px 0 var(--red-dk)}.btn.secondary,button.ghost{background:var(--card);color:var(--ink);box-shadow:0 0 0 1.5px var(--line) inset,0 3px 0 var(--line)}.btn.secondary:hover,button.ghost:hover{box-shadow:0 0 0 1.5px var(--red) inset,0 4px 0 var(--line)}.small-btn{padding:4px 12px;font-size:13px;box-shadow:0 2px 0 var(--red-dk)}button.ghost.small-btn{box-shadow:0 0 0 1.5px var(--line) inset,0 2px 0 var(--line)}button.hit{display:inline-flex;gap:8px;align-items:center;background:var(--ink);color:var(--card);box-shadow:0 4px 0 var(--red)}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:2px}label{display:block;font-weight:800;margin:12px 0 4px;font-size:14px}.puppet-intro{position:fixed;inset:0;z-index:110;background:#000;color:#efeadf;display:grid;place-content:center;justify-items:center;grid-gap:14px;gap:14px;cursor:pointer;transition:opacity .5s ease}.puppet-intro.out{opacity:0;pointer-events:none}.puppet-svg{height:min(52vh,320px);width:auto;animation:puppet-in 1s cubic-bezier(.3,1.3,.5,1) backwards;transform-origin:50% 100%}@keyframes puppet-in{0%{opacity:0;transform:translateY(46px) rotate(-9deg)}62%{transform:rotate(4deg)}to{opacity:1;transform:none}}.puppet-jaw{transition:transform .1s ease}.puppet-intro.talking .puppet-jaw{animation:puppet-jaw .2s steps(2) infinite alternate}@keyframes puppet-jaw{to{transform:translateY(11px)}}.puppet-eye{animation:puppet-eye 1.5s steps(2) infinite}@keyframes puppet-eye{50%{opacity:.35}}.puppet-line{font-family:var(--type);font-size:clamp(20px,5.4vw,30px);min-height:1.4em;margin:0;padding:0 16px;text-align:center;max-width:560px}.puppet-line.ho{color:#e0303e;font-family:var(--display);font-weight:900;font-size:clamp(38px,11vw,64px);letter-spacing:.04em}.puppet-intro.laughing .puppet-svg{animation:puppet-laugh .28s ease-in-out infinite alternate}.puppet-intro.laughing .puppet-eye{animation:none;r:7}@keyframes puppet-laugh{0%{transform:rotate(-3deg)}to{transform:rotate(3deg) translateY(-5px)}}.puppet-call{display:none;text-align:center}.puppet-call p{font-family:var(--type);font-size:clamp(18px,4.6vw,24px);margin:0 0 18px;padding:0 16px;animation:puppet-eye 1.5s steps(2) infinite}.puppet-intro.waiting{cursor:default}.puppet-intro.waiting .puppet-call{display:block}.puppet-intro.waiting .puppet-line,.puppet-intro.waiting .puppet-skip,.puppet-intro.waiting .puppet-svg{display:none}.puppet-skip{position:absolute;left:0;right:0;bottom:22px;margin:0;text-align:center;font-family:var(--type);font-size:13px;color:#9b9486}@media (prefers-reduced-motion:reduce){.puppet-eye,.puppet-intro.laughing .puppet-svg,.puppet-intro.talking .puppet-jaw,.puppet-svg{animation:none}.puppet-intro{transition:none}}.fly{position:fixed;inset:0;z-index:60;pointer-events:none;display:flex;justify-content:center;background:rgba(20,30,50,0);visibility:hidden;transition:background .25s ease,visibility 0s linear .3s}.fly.open{pointer-events:auto;background:rgba(20,30,50,.55);visibility:visible;transition:background .25s ease}.fly-panel{width:min(560px,100%);height:100%;background:var(--grain),var(--paper);overflow:hidden;transform:translateX(105%);transition:transform .3s cubic-bezier(.2,.8,.2,1)}.fly.open .fly-panel{transform:none}.fly-track{display:flex;height:100%;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.fly-step{flex:0 0 100%;box-sizing:border-box;min-width:0;overflow-y:auto;padding:12px 16px 32px}.fly-head{display:flex;align-items:center;justify-content:space-between;min-height:44px}.fly-count{font-family:var(--type);font-size:13px;color:var(--muted)}.fly-x{width:44px;height:44px;padding:0;font-size:24px;line-height:1;background:transparent;color:var(--ink)}.fly-x,.fly-x:hover{box-shadow:none}.fly-summary{background:#eef5e6;border:1.5px solid var(--green);border-radius:12px;padding:10px 12px;font-weight:700;margin:8px 0}.fly-summary:empty{display:none}body:has(.fly.open){overflow:hidden}@media (prefers-reduced-motion:reduce){.fly,.fly-panel,.fly-track{transition:none}}label.gift{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:15px;line-height:1.35;margin:0 0 6px;padding:10px 12px;min-height:44px;box-sizing:border-box;background:#fffdf8;border:1.5px solid var(--line);border-radius:12px;cursor:pointer}label.gift input{width:20px;height:20px;flex:none;margin:0}label.gift:hover{border-color:var(--green)}label.gift:has(input:checked){border-color:var(--green);background:#eef5e6;font-weight:700}label.inline{display:flex;gap:8px;align-items:center;font-weight:600;font-size:14px;color:var(--muted);margin:8px 0}.hint{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;padding:9px 12px;border-radius:12px;border:1.5px solid var(--line);background:#fffdf8;color:var(--ink)}input:focus,select:focus,textarea:focus{border-color:var(--green)}.row select{width:auto;max-width:100%}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--green)}textarea{min-height:64px}form button{margin-top:12px}.msg{margin:6px 0 0;font-family:var(--type);font-size:15px}.scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}td,th{text-align:left;padding:6px 8px;border-bottom:1.5px dashed var(--line);vertical-align:top}th{font-family:var(--type);text-transform:uppercase;font-size:12px;letter-spacing:.06em;color:var(--muted)}img.proof{max-width:100%;max-height:260px;border-radius:10px;border:6px solid #fff;box-shadow:0 6px 14px -8px rgba(0,0,0,.5);display:block;margin:8px 0;transform:rotate(-1.5deg)}.icon{vertical-align:middle}.tag,.tagwrap{position:relative;display:inline-block}.tag{background:var(--card);padding:10px 26px 10px 44px;margin:14px 0 10px 10px;transform:rotate(-3deg);-webkit-clip-path:polygon(22px 0,100% 0,100% 100%,22px 100%,0 50%);clip-path:polygon(22px 0,100% 0,100% 100%,22px 100%,0 50%);filter:drop-shadow(0 4px 0 rgba(44,37,33,.12))}.tag:before{content:"";position:absolute;left:15px;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--paper);box-shadow:inset 0 0 0 2px var(--gold)}.tag .codename{margin:0}.tag-from,.tag-label{display:block;font-size:11px;color:var(--muted)}.stamp-big{position:absolute;right:-16px;top:50%;transform:translateY(-50%) rotate(-12deg);font-family:var(--stencil);font-size:20px;letter-spacing:.06em;text-transform:uppercase;color:var(--red);border:3px solid var(--red);border-radius:6px;padding:3px 9px;background:rgba(255,250,240,.6);opacity:.85;mix-blend-mode:multiply}.scope{position:relative}.scope:after,.scope:before{content:"";position:absolute;width:18px;height:18px;border:3px solid var(--red);pointer-events:none;border-radius:4px}.scope:before{left:8px;bottom:8px;border-right:0;border-top:0}.scope:after{right:8px;bottom:8px;border-left:0;border-top:0}.target-label{font-size:12px;color:var(--red);margin:0}.winner-art{text-align:center;margin-top:8px}.winner-title{text-align:center;font-family:var(--script);font-size:40px;margin:6px 0 0}#musicbtn{position:fixed;left:16px;bottom:16px;z-index:120;background:var(--card);color:var(--ink);font-family:var(--type);box-shadow:0 0 0 1.5px var(--line) inset,0 4px 0 rgba(0,0,0,.35)}.loader{position:fixed;inset:0;z-index:100;display:grid;place-items:center;overflow:hidden;background:var(--night) var(--grain);transition:opacity .6s ease}.loader.leaving{opacity:0;pointer-events:none}.loader-snow{position:absolute;inset:0}.stars{inset:0 0 45%;background-image:radial-gradient(1.5px 1.5px at 10% 20%,#f4ecdb,transparent),radial-gradient(1px 1px at 25% 60%,#f4ecdb,transparent),radial-gradient(1.5px 1.5px at 40% 15%,#f4ecdb,transparent),radial-gradient(1px 1px at 55% 45%,#f4ecdb,transparent),radial-gradient(2px 2px at 70% 25%,#f1d27a,transparent),radial-gradient(1px 1px at 85% 55%,#f4ecdb,transparent),radial-gradient(1.5px 1.5px at 92% 12%,#f4ecdb,transparent)}.moon,.stars{position:absolute}.moon{top:9%;right:12%;width:104px;height:104px;border-radius:50%;background:radial-gradient(circle at 30% 35%,#e6d6ad 0 9px,transparent 10px),radial-gradient(circle at 62% 64%,#e6d6ad 0 6px,transparent 7px),#f3e7c4;box-shadow:0 0 0 10px rgba(243,231,196,.08),0 0 0 22px rgba(243,231,196,.05)}.sleigh-fly{position:absolute;top:13%;left:-200px;width:170px;animation:fly 16s linear infinite}.sleigh-fly svg{width:100%;height:auto;overflow:visible}@keyframes fly{0%{transform:translateY(30px) rotate(-4deg)}to{transform:translate(calc(100vw + 400px),-40px) rotate(-8deg)}}.laser{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#ff2a3c;box-shadow:0 0 0 4px rgba(255,42,60,.25);left:15%;top:25%;z-index:2}@keyframes sweep{0%{left:15%;top:25%}30%{left:75%;top:40%}60%{left:35%;top:70%}to{left:50%;top:84%;opacity:0}}[hidden]{display:none!important}.loader .glasses{transform:translateY(-150px);transition:transform .8s cubic-bezier(.3,1.4,.6,1)}.loader .eyes{transform-box:fill-box;transform-origin:center;animation:blink 3.2s ease-in-out infinite}@keyframes blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}.loader.s1 .glasses{transform:translateY(0)}.loader .earpiece{opacity:0;transition:opacity .3s ease}.loader.s2 .earpiece{opacity:1}.loader .crosshair{opacity:0;transform-box:view-box;transform-origin:100px 100px;transform:scale(2.2) rotate(40deg);transition:transform .8s ease-out,opacity .4s ease}.loader.s2 .crosshair{opacity:.9;transform:scale(1) rotate(0deg)}.loader-title .assassin{opacity:0;transform:scale(3) rotate(-10deg);transition:transform .3s cubic-bezier(.2,1.7,.4,1),opacity .12s ease}.loader.s3 .loader-title .assassin{opacity:1;transform:scale(1) rotate(-3deg)}.loader .classified{opacity:0;transition:opacity .2s ease}.loader.s3 .classified{opacity:1}.loader.s3 .loader-card{animation:thud .25s ease .2s}.loader .laser{display:none}.loader.s4 .laser{display:block;animation:sweep 2.8s ease-in-out forwards}.loader.ready .laser{display:none}@keyframes thud{30%{transform:translate(3px,2px)}60%{transform:translate(-3px,-1px)}}@media (prefers-reduced-motion:reduce){.loader .eyes{animation:none}.loader .classified,.loader .crosshair,.loader .earpiece,.loader .glasses,.loader-title .assassin{transition:none}.loader.s3 .loader-card{animation:none}}.hills{position:absolute;left:0;right:0;bottom:0;width:100%;height:26vh}.loader-card{position:relative;text-align:center;padding:24px;max-width:440px;color:var(--paper)}.classified,.portrait{display:inline-block}.classified{font-family:var(--stencil);font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:#ff8d80;border:3px solid #ff8d80;border-radius:6px;padding:3px 10px 1px;transform:rotate(-4deg);margin:10px 0 0}.loader-title{font-family:var(--script);font-weight:400;font-size:clamp(58px,15vw,96px);margin:6px 0 0;color:var(--card);text-shadow:3px 3px 0 var(--red);line-height:.95}.loader-title .assassin{display:block;width:max-content;margin:14px auto 0;font-size:26px;padding:6px 16px 3px;text-shadow:none}.loader-sub{font-family:var(--type);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#f1d27a;margin:14px 0 16px}.loader-line{min-height:1.5em;font-family:var(--type);color:var(--paper)}.cane-bar{height:14px;border-radius:999px;box-shadow:0 0 0 2px var(--card);background:rgba(255,250,240,.12);overflow:hidden;margin:8px auto 18px;max-width:280px}.cane-bar span{display:block;height:100%;width:0;border-radius:999px;background:repeating-linear-gradient(135deg,var(--red) 0 8px,var(--card) 8px 16px)}.loader-go{font-size:18px;padding:12px 28px;background:var(--butter);color:var(--ink);box-shadow:0 5px 0 var(--red)}.loader-quiet{display:block;margin:14px auto 0;padding:6px 14px;background:rgba(20,30,50,.72);border:0;box-shadow:none;color:#fff;font-weight:600}.mail{margin:26px 16px;padding:9px;border-radius:20px;background:repeating-linear-gradient(135deg,var(--red) 0 16px,var(--card) 16px 26px,var(--green) 26px 42px,var(--card) 42px 52px);box-shadow:0 20px 40px -18px rgba(0,0,0,.6);transform:rotate(-.6deg)}.mailhead{position:relative;font-size:13px;padding:14px 110px 12px 16px;background:var(--card);border-radius:12px 12px 0 0;border-bottom:1.5px dashed var(--line);grid-gap:2px;gap:2px}.mailhead,.mailhead:after{font-family:var(--type);display:grid}.mailhead:after{content:"NORTH POLE\A DEC 1";white-space:pre;position:absolute;right:14px;top:12px;width:78px;height:78px;border-radius:50%;border:2px solid rgba(194,59,47,.55);box-shadow:inset 0 0 0 4px var(--card),inset 0 0 0 5.5px rgba(194,59,47,.4);color:rgba(194,59,47,.7);font-weight:700;font-size:9px;letter-spacing:.04em;text-align:center;place-content:center;line-height:1.4;transform:rotate(12deg)}.mailbody{padding:16px 18px 18px;background:var(--grain),var(--card);border-radius:0 0 12px 12px}.mailbody h1{margin-top:4px;font-family:var(--script);font-weight:400;font-size:46px;color:var(--red);letter-spacing:0}.clock{text-align:center}.clock .countdown{display:block;margin:4px 0}.clockline{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:6px 0}.clockline .countdown{font-size:22px}.countdown{font-family:var(--display);font-variation-settings:var(--soft);font-weight:900;font-size:34px;color:var(--red);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}ul.wishlist{list-style:none;padding:0;margin:0}ul.wishlist li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-bottom:1.5px dashed var(--line)}.choices{display:flex;gap:8px;flex-wrap:wrap}.choices label{display:inline-flex;align-items:center;gap:6px;margin:0;font-weight:700;border:1.5px solid var(--line);background:var(--card);padding:5px 14px;cursor:pointer;border-radius:999px;transition:transform .1s ease}.choices label:hover{transform:rotate(-2deg)}.choices label:has(input:checked){background:var(--green);border-color:var(--green);color:var(--card);transform:rotate(-2deg)}.choices input{accent-color:var(--butter);width:auto}.q{padding:11px 0;border-bottom:1.5px dashed var(--line)}.q:last-child{border-bottom:0}.q p{margin:0 0 6px}.frame.invite,.frame:has(.mail){background:transparent;box-shadow:none;padding:4px 0 90px}.secure{margin:18px 22px 0;font-family:var(--type);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--butter);display:flex;align-items:center;gap:10px}.rec{width:10px;height:10px;border-radius:50%;background:#ff4d5e;box-shadow:0 0 0 3px rgba(255,77,94,.25);animation:rec 1.2s steps(1) infinite}@keyframes rec{50%{opacity:.2}}.folder{position:relative;background:var(--grain),#ecd7a4;border-radius:6px 16px 14px 14px;padding:18px 16px 14px;margin:2px 0 16px;box-shadow:inset 0 0 0 1.5px rgba(44,37,33,.12)}.folder:before{content:"";position:absolute;left:0;top:-12px;width:120px;height:16px;background:#ecd7a4;border-radius:10px 10px 0 0}.folder h1{font-family:var(--script);font-weight:400;font-size:48px;color:var(--red);letter-spacing:0;margin:2px 0 6px;max-width:64%;line-height:.95;min-height:116px}.folder .eyebrow{max-width:62%}.lede{font-size:15px;margin:0 0 12px}.stamp-classified{position:absolute;left:16%;top:64%;font-family:var(--stencil);font-size:30px;letter-spacing:.1em;text-transform:uppercase;color:rgba(194,59,47,.22);border:4px solid rgba(194,59,47,.22);border-radius:8px;padding:2px 14px 0;transform:rotate(-16deg);pointer-events:none}.clip-photo{position:absolute;right:12px;top:-6px;width:124px;background:#fff;padding:8px 8px 6px;transform:rotate(4deg);box-shadow:0 6px 14px -8px rgba(0,0,0,.6);border-radius:3px;text-align:center}.clip-photo:before{content:"";position:absolute;left:50%;top:-12px;width:14px;height:34px;margin-left:-7px;border-radius:8px;border:3px solid #9aa3ad;border-bottom-color:transparent}.clip-photo svg{display:block;width:100%;height:auto}.photo-cap{display:block;font-size:10px;letter-spacing:.06em;margin-top:4px;color:var(--muted)}.brief,.photo-cap{font-family:var(--type)}.brief{display:grid;grid-template-columns:auto 1fr;grid-gap:6px 12px;gap:6px 12px;margin:0;font-size:14px;border-top:1.5px dashed rgba(44,37,33,.3);padding-top:10px;position:relative}.brief dt{font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--muted);padding-top:2px}.brief dd{margin:0;font-weight:700}.redact{background:var(--ink);color:transparent;border-radius:3px;padding:0 4px;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color .2s ease;cursor:help}.redact:hover{color:rgba(255,250,240,0);background:repeating-linear-gradient(90deg,var(--ink) 0 6px,#3a322d 6px 8px)}.cta{display:grid;grid-gap:10px;gap:10px;text-align:center}.cta-due{margin:0;font-size:15px}button.big{font-size:19px;padding:14px 24px;width:100%}.mailbody .cta button.big:not(.ghost){animation:nudge 3.5s ease-in-out 1.5s infinite}@keyframes nudge{0%,88%,to{transform:none}92%{transform:rotate(-2deg) scale(1.02)}96%{transform:rotate(2deg) scale(1.02)}}@media (max-width:380px){.folder .eyebrow,.folder h1{max-width:58%}.clip-photo{width:104px}}.testsite{position:relative;z-index:110;background:#f2c230;color:#1d1a16;font-size:14px;line-height:1.35;padding:8px 16px;text-align:center}.signup{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--grain),var(--pink);border-radius:16px;padding:14px 16px;margin:12px 0}.signup.ok{background:var(--grain),var(--mint)}.signup button{flex:none}body.modal-open{overflow:hidden}.overlay{position:fixed;inset:0;z-index:50;background:rgba(16,24,40,.62);display:grid;place-items:center;padding:16px;animation:fade .2s ease;cursor:pointer}.overlay,.pop{overflow-y:auto}.pop{position:relative;cursor:auto;width:min(480px,100%);max-height:calc(100vh - 32px);background:var(--sprinkle),var(--grain),var(--paper);border-radius:24px;padding:22px 20px 20px;box-shadow:0 30px 60px -20px rgba(0,0,0,.7);animation:popin .35s cubic-bezier(.3,1.5,.6,1);outline:2px dashed rgba(46,107,69,.3);outline-offset:-9px}.pop h2{margin-top:4px;font-size:28px}.pop-x{position:absolute;right:12px;top:12px;width:36px;height:36px;padding:0;font-size:22px;line-height:1;background:var(--card);color:var(--ink);box-shadow:0 0 0 1.5px var(--line) inset,0 3px 0 var(--line)}.pop-btns{margin-top:16px}.pop-btns button{flex:1 1 auto}@keyframes fade{0%{opacity:0}}@keyframes popin{0%{opacity:0;transform:translateY(24px) scale(.94) rotate(-1deg)}}.briefsteps{list-style:none;padding:0;margin:6px 0 0;display:grid;grid-gap:10px;gap:10px;counter-reset:b}.briefsteps li{counter-increment:b;position:relative;background:var(--card);border-radius:14px;padding:10px 14px 10px 56px;display:grid;grid-gap:2px;gap:2px;box-shadow:0 3px 0 rgba(44,37,33,.08)}.briefsteps li:nth-child(odd){transform:rotate(-.5deg)}.briefsteps li:nth-child(2n){transform:rotate(.5deg)}.briefsteps li:before{content:counter(b);position:absolute;left:12px;top:12px;width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 26% 22%,rgba(255,255,255,.5) 0 2px,transparent 3px),var(--red);color:var(--card);font-family:var(--display);font-weight:800;text-align:center;line-height:30px}.briefsteps li:nth-child(2):before{background:radial-gradient(circle at 26% 22%,rgba(255,255,255,.5) 0 2px,transparent 3px),var(--green)}.briefsteps li:nth-child(3):before{background:radial-gradient(circle at 26% 22%,rgba(255,255,255,.5) 0 2px,transparent 3px),var(--ink)}.briefsteps li:nth-child(4):before{background:radial-gradient(circle at 26% 22%,rgba(255,255,255,.5) 0 2px,transparent 3px),var(--gold);color:var(--ink)}.briefsteps span{font-size:14px;color:var(--muted)}.fine{margin-top:14px}.fine ul{display:grid;grid-gap:3px;gap:3px}.pop-moves{margin:12px 0 0}.pop-moves li.done .move{opacity:.7}.pop-moves li.done .move:before{content:"\2713"}@media (prefers-reduced-motion:reduce){.mailbody .cta button.big,.overlay,.pop,.rec{animation:none}}.fab{right:16px;bottom:16px;z-index:20;background:var(--ink);color:var(--card);box-shadow:0 4px 0 var(--gold);font-family:var(--type)}.drawer,.fab{position:fixed}.drawer{right:0;top:0;bottom:0;width:min(340px,92vw);background:var(--grain),#efe8d6;border-radius:22px 0 0 22px;box-shadow:-20px 0 40px -20px rgba(0,0,0,.5);z-index:30;padding:16px 18px 80px;overflow-y:auto;transform:translateX(105%);transition:transform .25s cubic-bezier(.3,1.3,.6,1);font-family:var(--body)}.drawer.open{transform:none}.drawer button{background:var(--ink);color:var(--card);box-shadow:0 3px 0 #000}.drawer button.ghost{background:var(--card);color:var(--ink);box-shadow:0 0 0 1.5px var(--line) inset,0 3px 0 var(--line)}.drawerhead{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}.botlog,.drawerhead{font-family:var(--type)}.botlog{max-height:220px;overflow-y:auto;margin-top:6px}@media (prefers-reduced-motion:reduce){.laser,.lights li,.sleigh-fly,.tracker li.now:before{animation:none}.laser,.sleigh-fly{display:none}.choices label:hover,.tabs button:hover,button:active,button:hover{transform:none}}.btn{display:inline-block;text-decoration:none;cursor:pointer;font-weight:800}.btn:disabled{opacity:.6;cursor:default}a{color:var(--red);font-weight:700}.btn,.btn.secondary:hover{text-decoration:none}.btn:not(.secondary){color:var(--card)}.btn.secondary,a.move{color:var(--ink)}.tabs a,a.move{text-decoration:none}.tabs a{white-space:nowrap;font-weight:800}.tabs a.on{color:var(--card)}.tabs a:not(.on){color:var(--ink)}.tabs form{display:contents}.brand{color:inherit;text-decoration:none}.stamp{display:block}p.ok,span.ok{color:var(--green);font-weight:700}.no{color:var(--muted)}.check{display:flex;gap:10px;align-items:flex-start;font-weight:600}.check input{margin-top:5px}ul.wish{list-style:none;padding:0;margin:0}ul.wish li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-bottom:1.5px dashed var(--line)}.tablewrap{overflow-x:auto}.msg{white-space:pre-wrap}.intro summary{cursor:pointer;font-family:var(--display);font-weight:800;font-size:20px}.killalert{position:fixed;top:16px;right:16px;z-index:130;width:min(360px,calc(100vw - 32px));box-sizing:border-box;padding:16px;background:var(--grain),var(--paper);border-radius:16px;box-shadow:0 0 0 2px var(--red) inset,0 12px 32px rgba(0,0,0,.45);animation:killalert-in .35s cubic-bezier(.2,.8,.2,1)}.killalert h3{margin:2px 0 6px;color:var(--red);font-family:var(--display);font-size:26px}.alertframe,.killalert p{margin:0 0 10px}.alertframe{padding:12px;border-radius:10px;background:repeating-linear-gradient(45deg,var(--red) 0 14px,#fff8ec 14px 28px);box-shadow:0 2px 8px rgba(0,0,0,.35)}.alertframe img{display:block;width:100%;max-height:45vh;object-fit:contain;background:#1d1a16;border:3px solid #f2c230;border-radius:4px;box-sizing:border-box}@keyframes killalert-in{0%{opacity:0;transform:translateX(110%)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.killalert{animation:none}}body:has(.fly.open) #musicbtn,body:has(.overlay) #musicbtn{display:none}@media (max-width:599px){.frame{padding-bottom:84px}}input[type=checkbox],input[type=radio]{width:22px;height:22px;flex:none}.killalert{max-height:calc(100vh - 32px);overflow-y:auto}.testsite{z-index:0}