:root{color-scheme:light;--paper:#f8f4ef;--surface:#fffdfa;--ink:#332a29;--muted:#796d69;--accent:#a95f53;--accent-dark:#874a41;--soft:#f1e4dc;--line:#e8dcd4;--shadow:0 22px 60px #5b372315;--serif:'Iowan Old Style', 'Palatino Linotype', 'Book Antiqua', Georgia, serif;--sans:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{min-width:320px;background:var(--paper)}body{margin:0;min-height:100vh;min-height:100dvh;color:var(--ink);font-family:var(--sans);background:radial-gradient(ellipse at 15% 0%,#f2e7df 0,transparent 38%),var(--paper)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #a95f53;outline-offset:3px}button:disabled{opacity:.5;cursor:default}.app-shell{width:min(100%,850px);min-height:100vh;min-height:100dvh;margin:auto;padding:env(safe-area-inset-top) clamp(18px,5vw,42px) calc(18px + env(safe-area-inset-bottom));display:flex;flex-direction:column}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8dcd480}.wordmark{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;font:500 22px var(--serif);letter-spacing:-.5px}.wordmark-icon{display:grid;place-items:center;width:36px;height:36px;border:1px solid #c89587;border-radius:50%;color:var(--accent);font:21px var(--serif)}.wordmark-period{color:var(--accent)}.top-actions{display:flex;gap:9px}.icon-button{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--ink);background:#fffdfaab;font-size:21px;transition:background .2s,transform .2s}.icon-button:hover{background:var(--soft);transform:translateY(-1px)}main{flex:1;display:flex;flex-direction:column;padding-top:28px}.footer-note{padding-top:22px;text-align:center;color:#948781;font-size:11px;letter-spacing:.15px}.screen{display:flex;flex:1;flex-direction:column;animation:appear .28s ease both}.screen-narrow{width:min(100%,650px);margin:0 auto}.eyebrow{text-transform:uppercase;letter-spacing:2.1px;color:var(--accent);font-size:10px;font-weight:700}.muted{color:var(--muted);line-height:1.65}.hero{position:relative;overflow:hidden;min-height:min(600px,70dvh);display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,8vw,78px);border:1px solid #e7d9d0;border-radius:34px;background:radial-gradient(ellipse at 95% 8%,#e9cfc34d,transparent 38%),linear-gradient(150deg,#fffdfa 8%,#f5e9e1 100%);box-shadow:var(--shadow)}.hero:after{content:'♡';position:absolute;right:-21px;bottom:-105px;font:clamp(210px,45vw,360px)/1 var(--serif);color:#a95f5310;pointer-events:none}.hero>*{position:relative;z-index:1}.hero h1{max-width:620px;margin:17px 0 16px;font:400 clamp(42px,9vw,72px)/1.04 var(--serif);letter-spacing:-2.1px}.hero-copy{max-width:470px;margin:0;color:#746865;font-size:15px;line-height:1.75}.hero .button{margin-top:27px;width:min(100%,285px)}.hero-bottom{display:flex;gap:20px;flex-wrap:wrap;margin-top:35px;color:var(--muted);font-size:12px}.hero-bottom strong{color:var(--ink);font-weight:600}.button{min-height:50px;padding:13px 20px;border-radius:999px;border:1px solid transparent;font-size:14px;font-weight:600;transition:transform .16s,background .16s,box-shadow .16s}.button:active{transform:scale(.985)}.button-primary{background:var(--accent);color:#fffaf7;box-shadow:0 8px 18px #a95f532b}.button-primary:hover{background:var(--accent-dark)}.button-secondary{background:var(--soft);color:var(--ink);border-color:#e8d7cd}.button-secondary:hover{background:#ecd9cf}.button-quiet{background:transparent;color:var(--muted)}.button-wide{width:100%;margin-top:12px}.back-button{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;min-height:44px;padding:8px 0;border:0;background:transparent;color:var(--muted);font-size:13px}.section-heading{margin:14px 0 21px}.section-heading h2,.page-title{margin:7px 0;font:500 clamp(28px,7vw,39px)/1.15 var(--serif);letter-spacing:-.7px}.section-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.category-card{min-height:149px;padding:17px 16px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:10px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:21px;box-shadow:0 8px 24px #47332908;transition:transform .18s,border-color .18s,box-shadow .18s}.category-card:hover{transform:translateY(-2px);border-color:#d8b9aa;box-shadow:0 13px 30px #47332910}.category-symbol{width:35px;height:35px;display:grid;place-items:center;border-radius:13px;font:19px var(--serif)}.category-card strong{font:500 19px/1.17 var(--serif)}.category-card small{color:var(--muted);font-size:11px}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}.section-top .section-heading{margin-bottom:13px}.category-grid+.button{margin-top:13px}.continue-button{margin-top:10px}.play-screen{min-height:calc(100dvh - 150px)}.play-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 0 12px}.play-head h2{margin:6px 0 0;font:500 26px/1.1 var(--serif)}.card-count{color:var(--muted);font-size:12px;white-space:nowrap}.progress-track{height:3px;background:var(--line);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--accent);transition:width .25s}.card-stage{display:flex;flex:1;align-items:center;justify-content:center;padding:18px 0}.question-card{position:relative;overflow:hidden;width:min(100%,600px);min-height:min(410px,52dvh);padding:22px 21px 24px;display:flex;flex-direction:column;justify-content:space-between;text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:27px;box-shadow:var(--shadow)}.question-card:before{position:absolute;top:0;left:0;right:0;height:4px;background:var(--card-color,var(--accent));content:''}.card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.card-category{max-width:calc(100% - 60px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:8px 11px;background:var(--soft);border-radius:50px;color:var(--ink);font-size:10px;font-weight:700;letter-spacing:.4px}.favorite-button{flex:0 0 44px;border-color:var(--line);font-size:20px}.question-copy{max-width:510px;align-self:center;margin:27px 0;font:400 clamp(25px,6.6vw,39px)/1.3 var(--serif);letter-spacing:-.55px}.card-prompt{margin:0;padding:12px 10px;border-radius:13px;background:#f9f5f0;color:var(--muted);font-size:12px;line-height:1.6}.play-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.play-actions .button{padding:12px 10px;font-size:13px}.play-actions .button-primary{grid-column:1/-1}.play-secondary{display:flex;justify-content:space-between;gap:8px;margin-top:3px}.play-secondary .button{padding:9px 8px;font-size:12px}.list{display:flex;flex-direction:column;gap:9px}.list-item{width:100%;display:flex;align-items:flex-start;gap:12px;text-align:left;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink)}.list-item:hover{border-color:#d8b9aa}.list-number{flex:0 0 30px;height:30px;display:grid;place-items:center;border-radius:11px;background:var(--soft);color:var(--accent);font-size:11px;font-weight:700}.list-question{flex:1;line-height:1.5;font-size:13px}.list-question small{display:block;margin-bottom:4px;color:var(--accent);font-weight:700}.list-heart{color:var(--accent);font-size:18px}.empty-state{padding:35px 15px;text-align:center;color:var(--muted);font-size:14px;line-height:1.7}.settings-card{padding:18px;border:1px solid var(--line);border-radius:19px;background:var(--surface);color:var(--muted);font-size:13px;line-height:1.7}.settings-card strong{color:var(--ink)}.notice{margin:18px 0 8px;padding:14px 15px;border-left:2px solid #bf8e7e;background:#f4ebe4;color:var(--muted);font-size:12px;line-height:1.6}.dialog{width:min(calc(100% - 32px),420px);padding:0;border:1px solid var(--line);border-radius:23px;background:var(--paper);color:var(--ink);box-shadow:0 20px 80px #332a2938}.dialog::backdrop{background:#2e252277;backdrop-filter:blur(3px)}.dialog-card{padding:25px}.dialog-card h2{margin:9px 0;font:500 28px var(--serif)}.dialog-card p{font-size:13px}.dialog-actions{display:flex;flex-direction:column;gap:7px;margin-top:19px}.toast{position:fixed;z-index:5;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));transform:translate(-50%,15px);max-width:calc(100% - 32px);padding:12px 17px;border-radius:99px;background:var(--ink);color:var(--paper);font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;white-space:nowrap}.toast.show{opacity:1;transform:translate(-50%,0)}
@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:620px){.app-shell{padding-left:34px;padding-right:34px}.topbar{height:86px}.hero{min-height:520px}.category-grid{gap:15px}.category-card{min-height:165px;padding:21px}.question-card{min-height:420px;padding:25px 28px}.card-stage{padding:24px 0}.play-screen{min-height:unset}.dialog-actions{flex-direction:row;justify-content:flex-end}.dialog-actions .button{font-size:12px}}
@media(max-width:390px){.hero{padding:26px 23px;border-radius:25px}.hero h1{font-size:42px}.category-card{min-height:140px;padding:15px 13px}.category-card strong{font-size:17px}.question-card{min-height:380px;padding:19px 16px}.question-copy{font-size:25px}.play-actions{gap:7px}.play-actions .button{font-size:12px;padding-inline:7px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
