:root{--velvet: #0e2419;--velvet-2: #173b2b;--velvet-3: #1f4a37;--gold: #d4b26a;--gold-deep: #9c7d3c;--gold-pale: #efdfb4;--cream: #f7efe2;--cream-2: #efe3cf;--cream-3: #e6d7bd;--ink: #2a2620;--ink-soft: #6b6257;--candle: #1a120d;--candle-2: #2a1d14;--candle-3: #3a2a1d;--amber: #f0c982;--ember: #c98a3a;--light: #fff3d9;--danger: #a8483c;--serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--script: "Snell Roundhand", "Pinyon Script", "Savoye LET", "Apple Chancery", "Brush Script MT", "Segoe Script", cursive;--sat: env(safe-area-inset-top, 0px);--sab: env(safe-area-inset-bottom, 0px);--sal: env(safe-area-inset-left, 0px);--sar: env(safe-area-inset-right, 0px);--ease: cubic-bezier(.4, 0, .2, 1);--swing: cubic-bezier(.55, .05, .3, 1)}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;height:100%;background:var(--velvet);color:var(--cream);font-family:var(--serif);font-size:17px;line-height:1.45;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}body{position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;overflow:hidden;overscroll-behavior:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input,textarea,.page,.log,.letter .excerpt{-webkit-user-select:text;user-select:text}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:disabled{cursor:default}button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:2px}input:focus,textarea:focus{outline:none;border-color:var(--gold-deep);box-shadow:0 0 0 3px #d4b26a4d}#stage{position:absolute;top:0;right:0;bottom:0;left:0}#entrance{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;background:radial-gradient(120% 90% at 50% 40%,var(--velvet-2),var(--velvet) 70%);outline:none;overflow:hidden}.sig-wrap{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;transition:opacity .38s var(--ease),transform .38s var(--ease)}#entrance.tapped .sig-wrap{opacity:0;transform:translateY(-14px) scale(.98)}.signature{width:min(86vw,520px);height:auto;overflow:visible;font-family:var(--script);font-size:112px}.signature .ink{fill:var(--gold);fill-opacity:0;stroke:var(--gold);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:460;stroke-dashoffset:460;animation:ink .62s ease-out forwards,fill .55s ease forwards;animation-delay:calc(var(--i) * .17s),calc(var(--i) * .17s + .38s)}@keyframes ink{to{stroke-dashoffset:0}}@keyframes fill{to{fill-opacity:1}}#entrance.still .signature .ink{animation:none;fill-opacity:1;stroke-dashoffset:0}#entrance.returning .signature .ink{stroke-dashoffset:0;animation:fill .5s ease forwards;animation-delay:calc(var(--i) * 30ms)}.tap-hint{margin:0;font-size:14px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-deep);opacity:0;transition:opacity .9s ease}#entrance.drawn .tap-hint{opacity:1;animation:breathe 2.6s ease-in-out infinite}@keyframes breathe{50%{opacity:.45}}.doorframe{position:absolute;inset:calc(14px + var(--sat)) calc(14px + var(--sar)) calc(14px + var(--sab)) calc(14px + var(--sal));border:7px solid var(--gold);box-shadow:inset 0 0 0 2px var(--velvet),inset 0 0 0 3px var(--gold-deep),0 0 0 1px var(--gold-deep),0 18px 60px #0000008c;opacity:0;transform:scale(.965);transition:opacity .5s var(--ease),transform .6s var(--ease);perspective:1300px;overflow:visible}#entrance.framed .doorframe{opacity:1;transform:none}.doorframe:after{content:"";position:absolute;top:-70px;right:-70px;bottom:-70px;left:-70px;background:radial-gradient(55% 55% at 50% 50%,#ffecbe6b,#ffecbe00 72%);opacity:0;transition:opacity 1.1s ease .25s;pointer-events:none;z-index:-1}#entrance.swung .doorframe:after{opacity:1}.light{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(70% 60% at 50% 42%,#fffaf0 0%,var(--light) 30%,var(--amber) 70%,var(--ember) 100%);opacity:0;transition:opacity .9s ease}#entrance.swung .light{opacity:1}.light:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#28140080,#28140000 48%);opacity:1;transition:opacity 1.1s ease .35s}#entrance.swung .light:after{opacity:0}.door{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:left center;transform:rotateY(0);backface-visibility:hidden;background:repeating-linear-gradient(178deg,#ffffff06 0,#ffffff06 2px,#0000 2px,#0000 5px),linear-gradient(100deg,var(--velvet-3),var(--velvet-2) 45%,var(--velvet) 100%);box-shadow:inset -30px 0 60px #00000059;transition:box-shadow 1.2s ease}#entrance.swung .door{animation:swing 1.35s var(--swing) forwards;box-shadow:-40px 0 80px #00000080}@keyframes swing{0%{transform:rotateY(0)}78%{transform:rotateY(-92deg)}to{transform:rotateY(-86deg)}}#entrance.still .door{animation:none;transition:none}.door .panel{position:absolute;top:9%;right:13%;bottom:9%;left:13%;border:1px solid rgba(212,178,106,.5);box-shadow:inset 0 0 0 6px #0000001f,inset 0 0 0 7px #d4b26a40}.door .panel:before{content:"";position:absolute;top:40%;right:12%;bottom:8%;left:12%;border:1px solid rgba(212,178,106,.35)}.door .panel:after{content:"";position:absolute;top:8%;right:12%;bottom:64%;left:12%;border:1px solid rgba(212,178,106,.35)}.knob{position:absolute;right:7%;top:50%;width:28px;height:28px;margin-top:-14px;border-radius:50%;background:radial-gradient(circle at 35% 32%,#fff2c8,var(--gold) 38%,var(--gold-deep) 78%,#5a4520);box-shadow:0 2px 6px #0009,0 0 0 4px #d4b26a40;opacity:0;transform:scale(.4);transition:opacity .35s ease,transform .5s cubic-bezier(.34,1.56,.64,1)}#entrance.knobbed .knob{opacity:1;transform:none}#entrance.turned .knob{transform:rotate(42deg) scale(.94);transition:transform .38s var(--ease)}.flood{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(80% 70% at 50% 45%,#fffaf0,var(--light) 45%,var(--amber));opacity:0;transition:opacity .75s ease;pointer-events:none}#entrance.flooded .flood{opacity:1}#entrance.done{transition:opacity .6s ease;opacity:0}#house{position:absolute;top:0;right:0;bottom:0;left:0;perspective:1500px;perspective-origin:50% 50%;background:var(--candle);--door: 0}#dash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;background:radial-gradient(90% 60% at 50% 30%,#fffaf1 0%,var(--cream) 55%,var(--cream-2) 100%);color:var(--ink);transform-origin:left center;transform:rotateY(0);transition:transform .7s var(--swing);transform-style:preserve-3d;backface-visibility:hidden;will-change:transform;box-shadow:0 0 0 1px #0000000f}#dash.open{pointer-events:none}.dash-edge{position:absolute;top:0;bottom:0;right:0;width:14px;transform-origin:right center;transform:translateZ(-14px) rotateY(90deg);background:linear-gradient(90deg,var(--cream-3),var(--gold-pale));box-shadow:inset 1px 0 #9c7d3c73,inset -1px 0 #9c7d3c73;backface-visibility:hidden;pointer-events:none}#room:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#000000b3,#0000 42%);opacity:var(--door);pointer-events:none;z-index:1;transition:opacity .7s var(--swing)}#dash .dash-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#0000008c,#00000040);opacity:0;pointer-events:none;transition:opacity .7s var(--swing)}#dash .dash-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(80% 70% at 50% 45%,#fffaf0,var(--light) 45%,var(--amber));pointer-events:none;transition:opacity 1.3s ease}#dash .dash-glow.fade{opacity:0}.dash-top{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;padding:calc(8px + var(--sat)) calc(10px + var(--sar)) 6px calc(10px + var(--sal))}.dash-top .icon{width:48px;height:48px;display:grid;place-items:center;color:var(--velvet-2);border-radius:50%;transition:background .15s}.dash-top .icon:active{background:#0e241914}.dash-top .icon svg{width:26px;height:26px}.wordmark{text-align:center;font-family:var(--script);font-size:30px;color:var(--velvet-2);line-height:1;padding-top:6px}.dash-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:0 28px;text-align:center;touch-action:pan-y}.portrait{width:156px;height:156px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:var(--velvet-2);color:var(--gold-pale);box-shadow:0 0 0 4px var(--cream),0 0 0 6px var(--gold),0 14px 34px #3c280a38;font-family:var(--script);font-size:84px;line-height:1}.portrait img{width:100%;height:100%;object-fit:cover;display:block}.portrait .initial{transform:translateY(6px)}.portrait.big{width:128px;height:128px;font-size:68px}.who{margin:14px 0 0;font-weight:400;font-size:30px;letter-spacing:.01em;color:var(--velvet)}.dash-center .line{margin:0;color:var(--ink-soft);font-style:italic}.swipe-hint{margin:26px 0 0;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep);display:flex;align-items:center;gap:8px;white-space:nowrap}.swipe-hint .chev{display:inline-block;font-size:20px;line-height:0;animation:nudge 2.4s ease-in-out infinite}@keyframes nudge{50%{transform:translate(-5px)}}.timeline{padding:8px 0 calc(10px + var(--sab));border-top:1px solid rgba(156,125,60,.35);background:linear-gradient(#fff0,#e6d7bd80)}.timeline .next{display:flex;flex-direction:column;align-items:center;gap:1px;width:100%;padding:4px 20px 8px;text-align:center}.timeline .next .when{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep)}.timeline .next .title{font-size:19px;color:var(--velvet)}.timeline .days{display:flex;gap:4px;overflow-x:auto;padding:2px calc(14px + var(--sar)) 6px calc(14px + var(--sal));-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none}.timeline .days::-webkit-scrollbar{display:none}.day{flex:0 0 52px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 6px;border-radius:12px;color:var(--ink-soft)}.day .wd{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase}.day .num{font-size:20px;line-height:1.1;color:var(--ink)}.day .dot{width:6px;height:6px;border-radius:50%;background:transparent;margin-top:2px}.day.has .dot{background:var(--gold-deep)}.day.has{color:var(--gold-deep)}.day.has .num{color:var(--velvet)}.day.today{background:var(--velvet-2);color:var(--gold-pale)}.day.today .num,.day.today.has .num{color:#fff}.day.today .dot,.day.today.has .dot{background:var(--gold)}.day:disabled{opacity:.55}.day.today:disabled{opacity:1}.timeline .next.soon .when{color:var(--ember)}.timeline .next.live .when{color:var(--velvet-2);animation:breathe 2.6s ease-in-out infinite}.timeline:has(.next.live) .day.today .dot{animation:breathe 2.6s ease-in-out infinite;box-shadow:0 0 8px var(--gold)}#room{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;flex-direction:column;background:radial-gradient(80% 50% at 50% 0%,rgba(240,201,130,.16),transparent 70%),linear-gradient(var(--candle-2),var(--candle) 60%);color:var(--cream);opacity:.45;transition:opacity .7s var(--swing),transform .7s var(--swing)}.room-top{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:calc(8px + var(--sat)) calc(8px + var(--sar)) 8px calc(8px + var(--sal));border-bottom:1px solid rgba(212,178,106,.18)}.door-edge{width:44px;height:48px;display:grid;place-items:center;color:var(--gold);font-size:34px;line-height:0;border-left:3px solid var(--gold);border-radius:2px 10px 10px 2px}.room-title{text-align:center}.room-title h2{margin:0;font-weight:400;font-size:21px;color:var(--gold-pale)}.room-title .sub{margin:1px 0 0;font-size:12.5px;color:var(--amber);opacity:.8}.room-body{flex:1;min-height:0;display:flex;flex-direction:column}.tables{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px calc(14px + var(--sar)) calc(20px + var(--sab)) calc(14px + var(--sal));align-content:start}.tables .empty{grid-column:1 / -1;color:var(--amber);text-align:center;padding:40px 20px}.table{background:linear-gradient(160deg,var(--candle-3),var(--candle-2));border:1px solid rgba(212,178,106,.25);border-radius:16px;padding:12px 12px 10px;box-shadow:0 8px 24px #00000059;transition:transform .46s var(--ease),opacity .3s ease,box-shadow .46s ease}.table.chosen{transform:translate(var(--dx, 0px),var(--dy, 0px)) scale(1.12);box-shadow:0 30px 60px #0009,0 0 0 1px var(--gold);z-index:2;position:relative}.tables.dimmed .table:not(.chosen){opacity:.25;transform:scale(.96)}.table-top{display:flex;justify-content:space-between;align-items:baseline}.table-top .tnum{color:var(--gold-pale)}.table-top .tmeta{font-size:12px;color:var(--amber);letter-spacing:.08em;text-transform:uppercase}.chairs{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 8px;justify-content:center}.chair{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--velvet-2);color:var(--gold-pale);font-family:var(--script);font-size:24px;line-height:1;border:1.5px solid rgba(212,178,106,.45)}.chair.you{background:var(--gold);color:var(--velvet)}.chair.open{background:transparent;color:var(--gold);border:1.5px dashed var(--gold);font-family:var(--serif);font-size:22px}.chair.open:active{background:#d4b26a40}.table .with{margin:0;font-size:12.5px;color:var(--amber);opacity:.85;text-align:center;font-style:italic}.table-view{flex:1;min-height:0;display:flex;flex-direction:column;opacity:0;transform:translateY(10px);transition:opacity .32s ease,transform .32s var(--ease)}.table-view.in{opacity:1;transform:none}.table-head{padding:10px calc(14px + var(--sar)) 8px calc(14px + var(--sal));display:flex;flex-direction:column;gap:8px;border-bottom:1px solid rgba(212,178,106,.15)}.table-head h3{margin:0;font-weight:400;color:var(--gold-pale)}.tools{display:flex;gap:8px;flex-wrap:wrap}.pill{padding:8px 15px;border-radius:999px;background:var(--gold);color:var(--velvet);font-size:14.5px;letter-spacing:.02em;transition:transform .12s,opacity .15s}.pill:active{transform:scale(.97)}.pill.ghost{background:transparent;color:var(--gold);box-shadow:inset 0 0 0 1px #d4b26a8c}.pill.big{width:100%;padding:14px 18px;font-size:17px;margin:8px 0 4px}.pill.danger{background:transparent;color:var(--danger);box-shadow:inset 0 0 0 1px #a8483c80;margin-top:28px}.card-area{padding:10px calc(14px + var(--sar)) 0 calc(14px + var(--sal));perspective:900px}.deck{position:relative;display:block;width:64px;height:44px;margin:0 0 10px 4px}.deck-card{position:absolute;left:0;top:0;width:44px;height:30px;border-radius:4px;background:linear-gradient(135deg,var(--velvet-3),var(--velvet));box-shadow:inset 0 0 0 1px #d4b26a8c,0 3px 8px #00000080}.deck-card:nth-child(2){transform:translate(4px,-3px)}.deck-card:nth-child(3){transform:translate(8px,-6px)}.deck-label{position:absolute;left:60px;top:4px;white-space:nowrap;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--amber)}.deck:active .deck-card:nth-child(3){transform:translate(10px,-10px)}.card{position:relative;transform-style:preserve-3d;font-size:18px;line-height:1.35;margin:0 0 6px}.card .face,.card .back{border-radius:6px 6px 6px 18px;padding:14px 16px;backface-visibility:hidden}.card .face{background:var(--cream);color:var(--velvet);box-shadow:0 10px 26px #00000059}.card .face:before{content:"the table asks";display:block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:4px}.card .back{position:absolute;top:0;right:0;bottom:0;left:0;transform:rotateY(180deg);background:linear-gradient(135deg,var(--velvet-3),var(--velvet));box-shadow:inset 0 0 0 1px #d4b26a8c,inset 0 0 0 5px var(--velvet),inset 0 0 0 6px #d4b26a59;display:grid;place-items:center;font-family:var(--script);font-size:34px;color:var(--gold)}.card.dealing{animation:deal .68s var(--ease) both}@keyframes deal{0%{transform:translate(-40%,-70px) scale(.35) rotateY(180deg)}55%{transform:translateY(-12px) scale(1.02) rotateY(180deg)}to{transform:none}}.course{margin:0 0 4px 4px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--amber);opacity:.8}.game-area{padding:10px calc(14px + var(--sar)) 0 calc(14px + var(--sal))}.log{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:12px calc(14px + var(--sar)) 8px calc(14px + var(--sal));display:flex;flex-direction:column;gap:8px}.msg{max-width:84%;display:flex;flex-direction:column;gap:1px;align-self:flex-start;flex-shrink:0}.msg.mine{align-self:flex-end;align-items:flex-end}.msg .from{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);padding-left:6px;text-align:left}button.from{text-decoration:underline dotted rgba(240,201,130,.6);text-underline-offset:3px}.tt{display:flex;flex-direction:column;gap:8px}.tt .eyebrow{color:var(--gold);margin:0}.tt .tt-lead{margin:0;color:var(--cream);font-size:17px}.tt .field{background:#ffffff0f;color:var(--cream);border-color:#d4b26a66}.tt .field::placeholder{color:#f0c98280}.tt .which{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tt .which .muted{flex-basis:100%}.dot-pick{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--gold);color:var(--gold);display:grid;place-items:center}.dot-pick.on{background:var(--gold);color:var(--velvet)}.tt .err{margin:0;min-height:1.2em;font-size:14px;color:var(--amber)}.tt .three{margin:0;padding-left:22px;color:var(--cream)}.tt .three li{margin:4px 0}.tt .picks{display:flex;gap:8px}.tt .score{list-style:none;margin:0;padding:0}.tt .score li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid rgba(212,178,106,.15)}.tt .score b{color:var(--gold);font-weight:400}.person .portrait-row{margin-bottom:8px}.person .pname{margin:4px 0 0;font-weight:400;font-size:26px;color:var(--gold-pale)}.person .answer{margin:14px 0}.person .answer .q{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:2px}.person .answer .a{margin:0;font-size:18px;line-height:1.4}.person .chip{border-color:#d4b26a80}.sheet.velvet .field{background:#ffffff0f;color:var(--cream);border-color:#d4b26a66}.msg .text{padding:8px 13px;border-radius:16px 16px 16px 4px;background:#ffffff14;color:var(--cream);line-height:1.35}.msg.mine .text{background:var(--gold);color:var(--velvet);border-radius:16px 16px 4px}.msg.deck{align-self:center;width:92%;max-width:92%}.msg.deck .text{display:block;background:transparent;color:var(--amber);font-style:italic;text-align:center;font-size:15px}.msg .at{font-size:11px;color:var(--ink-soft);padding:0 6px}.sheet.cream .msg .text{background:var(--cream-3);color:var(--ink)}.sheet.cream .msg.mine .text{background:var(--velvet-2);color:var(--cream)}.composer{display:flex;gap:8px;align-items:center;padding:8px calc(12px + var(--sar)) calc(10px + var(--sab)) calc(12px + var(--sal));border-top:1px solid rgba(212,178,106,.15)}.say{flex:1;font:inherit;font-size:16px;padding:10px 14px;border-radius:999px;border:1px solid rgba(212,178,106,.4);background:#ffffff0f;color:inherit;min-width:0}.say::placeholder{color:#f0c98280}.sheet.cream .say{background:#fff;border-color:#9c7d3c80;color:var(--ink)}.sheet.cream .say::placeholder{color:var(--ink-soft);opacity:.7}.send{width:40px;height:40px;border-radius:50%;background:var(--gold);color:var(--velvet);font-size:20px;display:grid;place-items:center}#sheets{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;pointer-events:none}.sheet{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;pointer-events:auto;transform:translateY(100%);transition:transform .42s var(--ease),opacity .3s;opacity:0}.sheet.in{transform:none;opacity:1}.sheet.cream{background:var(--cream);color:var(--ink)}.sheet.velvet{background:var(--candle);color:var(--cream)}.sheet-head{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;padding:calc(6px + var(--sat)) calc(8px + var(--sar)) 6px calc(8px + var(--sal));touch-action:pan-y}.sheet-head h2{margin:0;text-align:center;font-weight:400;font-size:19px;letter-spacing:.01em}.sheet.cream .sheet-head{border-bottom:1px solid rgba(156,125,60,.3)}.sheet.velvet .sheet-head{border-bottom:1px solid rgba(212,178,106,.18)}.sheet-head .back{width:48px;height:48px;font-size:34px;line-height:0;color:var(--gold-deep)}.sheet.velvet .sheet-head .back{color:var(--gold)}.sheet-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px calc(18px + var(--sar)) calc(24px + var(--sab)) calc(18px + var(--sal))}.sheet-body:has(.thread-view){padding:0;display:flex;flex-direction:column}.thread-view{flex:1;min-height:0;display:flex;flex-direction:column}.muted{color:var(--ink-soft)}.sheet.velvet .muted{color:var(--amber);opacity:.8}.muted.small{font-size:13.5px}.section{margin:26px 0 8px;font-weight:400;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep)}.eyebrow{margin:0 0 4px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep)}.event .when{margin:0 0 10px;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep)}.event .blurb{font-size:18px;line-height:1.5;margin:0 0 12px}.event .dress{margin:0 0 8px;font-style:italic;color:var(--ink-soft)}.event .dress b{font-style:normal;font-weight:400;color:var(--gold-deep)}.event .meta{margin:0 0 12px;font-size:14px;color:var(--ink-soft)}.game{margin:0 0 20px}.game h3{margin:0;font-weight:400;font-size:19px}.game .tagline{margin:2px 0 6px;font-style:italic;opacity:.75}.game ol{margin:0;padding-left:20px}.game li{margin:3px 0}.sheet.velvet .game h3{color:var(--gold-pale)}.portrait-row{display:flex;flex-direction:column;align-items:center;gap:8px;margin:4px 0 18px;text-align:center}.prompt{display:block;margin:0 0 14px}.prompt>span{display:block;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:4px}.field{display:block;width:100%;font:inherit;font-size:16px;padding:10px 12px;border-radius:8px;border:1px solid rgba(156,125,60,.45);background:#fff;color:var(--ink);resize:none}.truth{margin:4px 0 20px}.truth-ends{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep)}.truth input[type=range]{width:100%;accent-color:var(--velvet-2);margin:6px 0 4px}.truth-line{margin:0;font-style:italic;color:var(--ink-soft);text-align:center}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:6px 12px;border-radius:999px;border:1px solid rgba(156,125,60,.5);font-size:14.5px;color:var(--ink)}.chip.on{background:var(--velvet-2);color:var(--cream);border-color:var(--velvet-2)}.thread{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:12px 4px;border-bottom:1px solid rgba(156,125,60,.25)}.thread .with{font-size:17px}.thread .preview{font-size:14px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.letter{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:14px 4px;border-bottom:1px solid rgba(156,125,60,.25)}.letter .kind,.page .kind{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep)}.letter .ltitle{font-size:20px}.letter .excerpt{font-size:14.5px;color:var(--ink-soft)}.letter .has-audio{font-size:12.5px;color:var(--velvet-2);margin-top:2px}.page{max-width:560px;margin:0 auto}.page .ptitle{margin:2px 0;font-weight:400;font-size:30px;line-height:1.15}.page .by{margin:0 0 18px;font-style:italic;color:var(--ink-soft)}.page .reading{width:100%;margin:0 0 18px}.page .para{font-size:18.5px;line-height:1.6;margin:0 0 1em}.page .sign{font-family:var(--script);font-size:36px;color:var(--velvet-2);margin:18px 0 0}.invite-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:25;display:flex;align-items:center;justify-content:center;padding:calc(20px + var(--sat)) 22px calc(20px + var(--sab));opacity:0;transition:opacity .6s ease;overflow-y:auto}.invite-wrap.in{opacity:1}.invite{width:min(100%,380px);display:flex;flex-direction:column;gap:10px;padding:24px 22px 20px;background:#fffaf0e6;color:var(--ink);border-radius:8px;box-shadow:0 0 0 1px var(--gold),0 0 0 5px #fffaf0e6,0 0 0 6px var(--gold-deep),0 24px 60px #5a3c0a40;text-align:center}.invite .muted{margin:0 0 8px;font-size:15px}.sig-small{margin:0;font-family:var(--script);font-weight:400;font-size:54px;line-height:1;color:var(--velvet-2)}.invite .field{text-align:center}.invite .err{margin:0;min-height:1.3em;font-size:14px;color:var(--danger)}.hint-panel{position:absolute;left:12px;right:12px;bottom:calc(12px + var(--sab));z-index:35;padding:18px 20px 16px;background:var(--velvet);color:var(--cream);border-radius:16px;box-shadow:0 0 0 1px var(--gold-deep),0 20px 50px #00000073;transform:translateY(calc(100% + 40px));transition:transform .5s var(--ease)}.hint-panel.in{transform:none}.hint-panel h2{margin:0 0 6px;font-weight:400;font-size:20px;color:var(--gold-pale)}.hint-panel p{margin:0 0 14px;font-size:15px;line-height:1.45}.hint-panel .eyebrow{color:var(--gold)}.inline-icon{width:18px;height:18px;vertical-align:-3px;color:var(--gold)}#toast{position:absolute;left:50%;bottom:calc(24px + var(--sab));z-index:40;transform:translate(-50%,20px);max-width:min(86vw,420px);padding:10px 16px;border-radius:999px;background:#0e2419f0;color:var(--cream);font-size:14.5px;text-align:center;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s var(--ease)}#toast.in{opacity:1;transform:translate(-50%)}.paper-cream{--sheet-ink: #2a2620;--sheet-soft: #6b6257;--sheet-rule: rgba(156, 125, 60, .22);background-color:#f7efe2;background-image:repeating-linear-gradient(90deg,#96783e0d 0,#96783e0d 1px,#0000 1px,#0000 7px)}.paper-linen{--sheet-ink: #26262a;--sheet-soft: #676771;--sheet-rule: rgba(120, 120, 140, .22);background-color:#f5f2ea;background-image:repeating-linear-gradient(90deg,#5a5a6e0b 0,#5a5a6e0b 1px,#0000 1px,#0000 5px),repeating-linear-gradient(0deg,#5a5a6e0b 0,#5a5a6e0b 1px,#0000 1px,#0000 5px)}.paper-moss{--sheet-ink: #1f2c22;--sheet-soft: #5b6b5e;--sheet-rule: rgba(60, 95, 70, .22);background-color:#e3e9dd;background-image:repeating-linear-gradient(90deg,#3c5f460d 0,#3c5f460d 1px,#0000 1px,#0000 7px)}.env{position:relative;aspect-ratio:5 / 3;border-radius:3px;overflow:hidden;color:var(--sheet-ink);box-shadow:0 1px #ffffff80 inset,0 10px 24px #0000004d,0 0 0 1px #0000001f}.env-flap{position:absolute;left:0;right:0;top:0;height:62%;background:#0000000b;clip-path:polygon(0 0,100% 0,50% 100%);filter:drop-shadow(0 1px 0 rgba(0,0,0,.12))}.env .seal{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.seal-mark{font-family:var(--script);font-size:30px;fill:#f2cdbd;fill-opacity:.8}.env-foot{position:absolute;left:0;right:0;bottom:0;margin:0;padding:5px 9px;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--sheet-soft);background:linear-gradient(#0000,#0000000d);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stack{position:relative;perspective:1200px;transform-style:preserve-3d;margin:2px 0 22px;padding-bottom:calc((var(--n, 1) - 1) * 18px)}.stack-card{display:block;width:100%;position:relative;transform-origin:top center;transform:translateY(calc(var(--i, 0) * 18px)) scale(calc(1 - var(--i, 0) * .02));transition:transform .45s var(--ease);filter:brightness(calc(1 - var(--i, 0) * .1))}.stack-card+.stack-card{position:absolute;left:0;right:0;top:0}.stack-card:first-child:active{transform:translateY(2px) scale(.995)}.stack-card.turning{animation:turn-page .6s var(--ease) forwards}@keyframes turn-page{0%{transform:none}to{transform:rotateX(-112deg) translateY(-4px);opacity:.1}}.empty-desk{text-align:center;padding:34px 0 26px;font-style:italic}.letter-row,.who-row{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:11px 13px;margin-bottom:8px;border-radius:5px;color:var(--sheet-ink);box-shadow:0 0 0 1px #0000001a,0 4px 12px #0000001f}.letter-row .top{display:flex;align-items:baseline;gap:10px}.letter-row .who{font-size:17px;white-space:nowrap}.letter-row .word{flex:1;text-align:right;font-style:italic;color:var(--sheet-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.letter-row .on{font-size:12.5px;color:var(--sheet-soft)}.who-row{background:var(--cream-2);box-shadow:0 0 0 1px #9c7d3c4d;flex-direction:column;gap:2px}.who-row .who-name{font-size:18px;color:var(--ink)}.who-row .who-note{font-size:13.5px;color:var(--ink-soft);font-style:italic}.desk,.letter-page{color:var(--sheet-ink);padding:22px 20px 26px;border-radius:2px;box-shadow:0 0 0 1px #00000014,0 14px 34px #3c280a2e}.desk{min-height:56vh}.desk-date{margin:0 0 20px;text-align:right;font-style:italic;color:var(--sheet-soft)}.desk-salutation{margin:0 0 6px;font-size:19px}.desk-body{display:block;width:100%;border:0;outline:none;resize:none;background:transparent;color:inherit;font-family:var(--serif);font-size:19px;line-height:32px;padding:0;margin:0 0 6px;overflow:hidden;background-image:repeating-linear-gradient(180deg,rgba(0,0,0,0) 0 31px,var(--sheet-rule) 31px 32px)}.desk-body::placeholder{color:var(--sheet-soft);opacity:.5;font-style:italic}.desk-foot{margin-top:22px}.desk-signoff{display:block;font-family:var(--script);font-size:27px;line-height:1.1;color:var(--sheet-ink);margin:0}button.desk-signoff{text-decoration:underline dotted rgba(156,125,60,.8);text-underline-offset:6px}.desk-sign{margin:4px 0 0;font-family:var(--script);font-size:40px;line-height:1.1;color:var(--sheet-ink)}.desk .pill.big{margin-top:26px}.desk .pill.big:disabled{opacity:.4}.seal-preview{max-width:320px;margin:0 auto 22px}.sealing .section:first-of-type{margin-top:0}.sealing .picks{display:flex;gap:10px}.swatch{flex:1;border-radius:6px;padding:0;display:flex;flex-direction:column;align-items:center;gap:5px}.papers .swatch{aspect-ratio:1 / 1;justify-content:flex-end;padding-bottom:7px;box-shadow:0 0 0 1px #0000001f,0 4px 10px #00000024}.swatch.on{box-shadow:0 0 0 2px var(--gold),0 6px 16px #0003}.papers .swatch-name{color:var(--sheet-ink)}.seals .swatch .env{width:100%}.seals .swatch.on{box-shadow:none}.seals .swatch.on .env{box-shadow:0 0 0 2px var(--gold),0 8px 20px #0000004d}.swatch-name{font-size:11px;letter-spacing:.06em;color:var(--ink-soft)}.note-row{display:flex;align-items:center;gap:10px}.note-row .note{flex:1}.count{font-size:12px;color:var(--gold-deep);white-space:nowrap;min-width:3.5em}.sealing .pill.big{margin-top:26px}.sealing.sending>*:not(.seal-preview){opacity:0;transition:opacity .3s ease;pointer-events:none}.sealing.sending .seal-preview{animation:post-away 1.45s var(--ease) forwards}@keyframes post-away{0%{transform:none;opacity:1}18%{transform:scale(1.05);opacity:1}27%{transform:scale(.975);opacity:1}42%{transform:scale(1);opacity:1}60%{opacity:1}to{transform:translateY(-75vh) rotate(-4deg) scale(.72);opacity:0}}.letter-page .para{font-size:18.5px;line-height:1.65;margin:0 0 1em}.letter-page .desk-date{margin-bottom:14px}.reading-letter .pill.big{margin-top:20px}.dash-top .icon.mail{position:relative}.waiting-dot{position:absolute;top:9px;right:7px;width:8px;height:8px;border-radius:50%;background:transparent}.mail.waiting .waiting-dot{background:var(--gold);box-shadow:0 0 7px var(--gold);animation:breathe 2.6s ease-in-out infinite}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.composer{padding-bottom:calc(10px + var(--sab) + var(--kb, 0px))}.sheet-body{padding-bottom:calc(24px + var(--sab) + var(--kb, 0px))}.desk-left{margin:2px 0 0;text-align:right;font-size:12.5px;color:var(--sheet-soft);font-style:italic;min-height:1.2em}.keepsake{display:flex;gap:10px;flex-wrap:wrap}.keepsake .pill{flex:1;text-align:center}.letter-actions{display:flex;gap:18px;justify-content:center;margin-top:14px}.quiet{font-size:14px;color:var(--ink-soft);text-decoration:underline dotted rgba(156,125,60,.8);text-underline-offset:5px;padding:6px 4px}#stuck{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:30px 26px calc(30px + var(--sab));background:var(--velvet);color:var(--cream);text-align:center}#stuck .sig-small{color:var(--gold);margin:0 0 6px}#stuck .stuck-line{margin:0;font-size:21px}#stuck .muted{color:var(--amber);opacity:.85;max-width:26rem}#stuck .pill{margin-top:10px}@media print{@page{margin:18mm}html,body{position:static;height:auto;overflow:visible;background:#fff;color:#000}#house,#toast,#boot,#entrance,#stuck,.invite-wrap,.hint-panel{display:none!important}#stage{position:static;width:auto;height:auto;transform:none;box-shadow:none;border-radius:0}#sheets{position:static}#sheets .sheet{display:none!important}#sheets .sheet.printing{display:block!important;position:static!important;opacity:1!important;transform:none!important;background:#fff!important}.printing .sheet-head,.printing .letter-actions,.printing .pill{display:none!important}.printing .sheet-body{padding:0!important;overflow:visible!important}.printing .letter-page{background:#fff!important;background-image:none!important;box-shadow:none!important;color:#000!important;padding:0!important;max-width:none}.printing .desk-date,.printing .para,.printing .desk-salutation,.printing .desk-signoff,.printing .desk-sign{color:#000!important}.printing .letter-page:after{content:"Secret Life";display:block;margin-top:28px;font-size:10pt;letter-spacing:.18em;text-transform:uppercase;color:#444}.para{orphans:2;widows:2}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.2s!important}#dash{transition:opacity .3s!important}#dash.open{opacity:0}.swipe-hint .chev{animation:none}.stack-card.turning,.sealing.sending .seal-preview{animation:none;opacity:0}.card.dealing{animation:none}.sheet{transform:none!important}.stack-card{transition:none}.table{transition:opacity .2s ease}}@media(min-width:700px)and (min-aspect-ratio:3/4){#stage{width:min(100vw,480px);height:min(100dvh,960px);inset:auto;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:28px;overflow:hidden;box-shadow:0 0 0 1px var(--gold-deep),0 30px 90px #0009}}
