@font-face{font-family:Rubik;src:url(/fonts/Rubik.ttf)format("truetype");font-weight:300 900;font-display:swap}:root{--paper:#f9f7ee;--ink:#20463b;--quiet:#55685b;--board:#eeefdf;--red:#20463b;--blush:#fffaf0;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Rubik,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}:focus-visible{outline:3px solid var(--ink);outline-offset:4px}::selection{color:#fff;background:var(--red)}input,textarea{caret-color:var(--red)}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}.site-header,main,footer{max-width:1220px;margin:auto}.site-header{justify-content:space-between;align-items:center;gap:20px;padding:24px 40px;display:flex}.brand{letter-spacing:-.7px;align-items:center;gap:10px;font-size:22px;font-weight:700;display:inline-flex}.brand-mark{width:28px;height:30px;color:var(--red)}.nav-create{text-underline-offset:5px;font-size:14px;text-decoration:underline}.nav-create:hover{color:var(--red)}.builder-section{padding:20px 40px 60px}.section-heading{margin-bottom:30px}h1{letter-spacing:-1.4px;margin-bottom:14px;font-family:Georgia,serif;font-size:clamp(32px,4vw,48px);font-weight:400;line-height:1.12}.section-heading>p{color:var(--quiet);margin-bottom:0;font-size:16px}.builder-layout{grid-template-columns:minmax(0,420px) minmax(0,1fr);align-items:start;gap:70px;display:grid}.form-section{border-top:1px solid #dedfcf;padding:28px 0 12px}.people-section{border:0;padding-top:0}.form-section h2{letter-spacing:-.4px;margin-bottom:16px;font-size:20px;font-weight:500}label{margin-bottom:17px;font-size:14px;font-weight:500;display:block}input,textarea,select{width:100%;color:var(--ink);background:#fffdf7;border:1px solid #c1cbb9;border-radius:6px;min-height:46px;margin-top:7px;padding:12px;font-size:15px;font-weight:400}input::placeholder,textarea::placeholder{color:#60715f;opacity:1}input:hover,textarea:hover,select:hover{border-color:var(--quiet)}input:focus,textarea:focus,select:focus{border-color:var(--ink)}textarea{resize:vertical;line-height:1.6}.field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.field-help{color:var(--quiet);margin-bottom:17px;font-size:13px;line-height:1.6}.memory-inputs{gap:9px;margin-bottom:14px;display:grid}.memory-input{align-items:center;gap:12px;margin:0;display:flex}.memory-input span{color:var(--quiet);font-variant-numeric:tabular-nums;flex:0 0 12px;font-size:12px;font-weight:400}.memory-input input{margin:0}.primary{color:#fff;background:var(--red);border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:24px;min-height:48px;padding:14px 20px;font-size:14px;font-weight:500;transition:background .15s;display:inline-flex}.primary:hover:not(:disabled){background:#315d4b}.save-button{justify-content:space-between;width:100%}.payment-help{margin:14px 0 0}.secondary{color:inherit;background:0 0;border:1px solid #c1cbb9;border-radius:6px;min-height:46px;padding:12px 17px;font-size:14px}.secondary:hover:not(:disabled){background:var(--board)}.preview-pane{background:var(--board);border:1px solid #d8dfca;border-radius:18px;scroll-margin-top:24px;position:sticky;top:24px;overflow:hidden}.preview-bar{color:var(--quiet);justify-content:space-between;align-items:center;gap:12px;padding:12px 26px 0;font-size:13px;display:flex}.preview-bar button{color:var(--ink);text-underline-offset:4px;background:0 0;border:0;padding:8px 0;font-size:13px;text-decoration:underline}.preview-bar button:hover{color:var(--red)}.game{--deck:#d7dfc2;--card-ink:#365747;--face:#fae6a4;--match:#fffaf0;color:var(--ink);background:var(--board);text-align:center;padding:18px 34px 22px}.game-intro h2{overflow-wrap:anywhere;letter-spacing:-.9px;margin-bottom:7px;font-family:Georgia,serif;font-size:36px;font-weight:400;line-height:1.1}.game-from{color:var(--quiet);margin-bottom:5px;font-size:13px}.game-intro>p:last-child{color:var(--quiet);max-width:32ch;margin:0 auto 20px;font-size:13px}.card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;max-width:400px;margin:auto;display:grid}.memory-card{aspect-ratio:1/1.1;background:var(--deck);color:var(--card-ink);border:1px solid #b8c8ac;border-radius:8px;place-items:center;padding:12px;transition:transform .15s,background .15s;display:grid;position:relative;box-shadow:0 2px 3px #202c3414}.memory-card:hover:not(:disabled){transform:translateY(-3px)}.memory-card svg{pointer-events:none;width:100%;max-width:62px;height:auto;display:block}.memory-card.flipped{color:var(--card-ink);background:var(--face)}.memory-card.matched{opacity:1;background:var(--match);color:var(--card-ink);box-shadow:none;border-color:#0000}.game-status{color:var(--quiet);font-variant-numeric:tabular-nums;margin:18px 0 8px;font-size:12px}.memory-reveal{overflow-wrap:anywhere;max-width:34ch;min-height:40px;margin:0 auto;font-size:17px;font-weight:500;line-height:1.45}.theme-rose{--deck:#e4bcae;--card-ink:#683f38;--face:#fff4e8;--match:#f4e4df}.theme-midnight{--deck:#384465;--card-ink:#f5ebd0;--face:#e4cd83;--match:#e8e4d5}.letter{text-align:left;background:#fffdf7;border-radius:10px;margin:12px 0 28px;padding:26px}.letter h3{letter-spacing:-.5px;margin-bottom:18px;font-size:23px;font-weight:500}.letter p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.7}.signature{font-weight:500}.error{color:#a31e36;white-space:pre-wrap;margin:14px 0;font-size:14px}.error:empty{display:none}.manage-page{max-width:680px;margin:36px auto 70px;padding:0 25px}.manage-page h1{font-size:40px}#manage-status{color:var(--quiet)}#manage-actions{flex-wrap:wrap;gap:12px;display:flex}#manage-actions p{width:100%;color:var(--quiet);margin:0;font-size:14px}#manage-actions input{margin:0}#manage-game{border-radius:16px;margin-top:32px;padding-bottom:24px;overflow:hidden}.recipient-page{max-width:630px;margin:35px auto 70px;padding:0 20px}.recipient-page .game{border-radius:16px;padding:36px 35px 24px}.recipient-footnote{color:var(--quiet);text-align:center;margin:22px 0;font-size:12px}.error-page{padding:45px 40px 100px}footer{color:var(--quiet);justify-content:space-between;gap:20px;padding:26px 40px;font-size:12px;display:flex}@media (width<=1000px){.builder-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:32px}.game{padding:20px 22px 22px}.card-grid{gap:8px}.memory-card{padding:9px}.game-intro h2{font-size:30px}}@media (width<=720px){.site-header{gap:12px;padding:23px 22px}.brand{gap:7px;font-size:19px}.brand-mark{width:24px;height:26px}.nav-create{font-size:12px}.builder-section{padding:20px 22px 24px}.section-heading{margin-bottom:30px}h1{letter-spacing:-.9px;max-width:12ch;font-size:36px}.section-heading>p{max-width:34ch;font-size:15px}.builder-layout{grid-template-columns:1fr;gap:30px}.preview-pane{position:static}.game{padding:20px 22px 22px}.game-intro h2{font-size:32px}.card-grid{gap:9px}.preview-bar{padding:14px 22px 0}.memory-card{padding:9px}footer{flex-wrap:wrap;padding:24px 22px;font-size:11px}.manage-page{margin-top:25px}.manage-page h1{font-size:36px}.recipient-page .game{padding:28px 20px 24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.theme-midnight .flipped{color:#252e4d}.game-intro h2,.memory-reveal,.letter h3{font-family:Georgia,serif}.memory-reveal{font-size:20px;font-weight:400}.form-section h2{font-family:Georgia,serif;font-size:23px;font-weight:400}.brand-mark{color:#a46a43}.preview-bar{border-bottom:1px solid #d8dfca;padding-bottom:9px}.letter{background:#fffaf0}.recipient-invite{text-underline-offset:4px;margin:20px 0 0;font-size:14px;text-decoration:underline;display:block}.brief-pane .section-heading{margin-bottom:28px}.brief-pane h1{letter-spacing:-1.5px;max-width:14ch;font-size:clamp(38px,4.2vw,56px);line-height:1.1}.brief-pane .section-heading>p{max-width:37ch;margin-top:22px;line-height:1.8}.brief-button{width:100%;margin-top:14px}.gift-modes{border:0;margin:0 0 24px;padding:0}.gift-modes legend{color:var(--quiet);margin-bottom:12px;font-size:14px}.gift-modes>div{flex-wrap:wrap;gap:8px;display:flex}.gift-modes label{cursor:pointer;border:1px solid #c7d1bd;border-radius:24px;margin:0;padding:9px 14px;font-size:14px}.gift-modes label:has(input:checked){border-color:var(--ink);background:#e4ead5}.gift-modes input[type=radio]{accent-color:var(--ink);vertical-align:-2px;width:14px;height:14px;min-height:0;margin:0 5px 0 0;padding:0}.muse-intro{color:var(--quiet);margin:0 0 20px;font-size:14px;line-height:1.75}#muse-context>input,.friend-details{margin-bottom:20px}.friend-details summary{color:var(--quiet);cursor:pointer;margin-bottom:14px;font-size:13px}.friend-details input{margin-bottom:18px}.optional{color:var(--quiet);font-weight:400}.muse-handoff{color:var(--quiet);margin-top:14px;font-size:13px;line-height:1.7}.muse-handoff a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.agent-explanation{color:var(--quiet);margin:22px 0 10px;font-size:14px;line-height:1.75}.agent-link{text-underline-offset:4px;font-size:14px;text-decoration:underline}#brief-status{margin:14px 0 0}#brief-status:empty{display:none}.example-tabs{border-bottom:1px solid #d8dfca;flex-wrap:wrap;gap:6px;padding:15px;display:flex}.example-tabs button{color:var(--quiet);background:0 0;border:1px solid #0000;border-radius:20px;padding:9px 12px;font-size:12px}.example-tabs button[aria-pressed=true]{color:var(--ink);background:#fffaf0;border-color:#c7d1bd}.example-tabs button:hover{color:var(--ink);background:#e3e7d3}.custom-game{background:var(--board)}.game-frame{background:var(--board);border:0;width:100%;height:750px;display:block}.custom-note{margin:0 20px 20px}.example-caption{border-top:1px solid #d8dfca;padding:17px 22px 20px}.example-caption p{margin-bottom:7px;font-size:14px}.example-caption span{color:var(--quiet);font-size:11px}.upload-details{border-top:1px solid #dedfcf;margin-top:30px;padding-top:20px}.upload-details summary{cursor:pointer;text-underline-offset:4px;font-size:14px;text-decoration:underline}.upload-details form{margin-top:20px}.prompt-output{min-height:240px}@media (width<=1000px){.builder-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:35px}.example-tabs{gap:0;padding:12px 8px}.example-tabs button{padding:8px 9px;font-size:11px}.game-frame{height:730px}}@media (width<=720px){.builder-layout{grid-template-columns:1fr;gap:35px}.brief-pane h1{max-width:15ch;font-size:43px}.game-frame{height:690px}.example-tabs{padding:12px 10px}.example-caption{padding:17px}.site-header{padding-bottom:12px}.brief-pane .section-heading>p{font-size:15px}}.site-nav{align-items:center;gap:18px;display:flex}.nav-mine{text-underline-offset:4px;font-size:14px;text-decoration:underline}.mine-list{gap:10px;margin:18px 0;padding:0;list-style:none;display:grid}.mine-list li{background:var(--board);border:1px solid #dedfcf;border-radius:8px;gap:2px;padding:12px 14px;display:grid}.mine-list a{text-underline-offset:3px;font-weight:600;text-decoration:underline}.mine-meta,.mine-note{color:var(--quiet);font-size:13px}
