:root{--ink:#30223a;--body:#665f70;--muted:#867f8f;--bg:#fff7f3;--surface:#fff;--line:#30223a1f;--line-strong:#30223a38;--accent:#d65b59;--rose:#ffd8d2;--mint:#d8f4e8;--teal:#228478;--shadow:0 16px 36px #30223a29;--soft-shadow:0 10px 26px #30223a14;color:var(--body);background:linear-gradient(135deg, #ffd8d2b8, transparent 34%), linear-gradient(315deg, #d8f4e8b8, transparent 34%), var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;font-weight:500;line-height:1.45}*{box-sizing:border-box}html{background:var(--bg);min-width:320px}body{min-width:320px;min-height:100svh;margin:0}button,input{font:inherit}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #22847847}#root{min-height:100svh}.app-shell{width:min(100%,920px);min-height:100svh;margin:0 auto;padding:18px 14px 34px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.landing-shell{place-items:center;padding-block:22px;display:grid}.landing{text-align:center;width:min(100%,760px)}.home{gap:16px;display:grid}.home-hero,.featured-deck{border:1px solid var(--line);box-shadow:var(--soft-shadow);background:#fffc;border-radius:8px}.home-hero{padding:18px}.featured-deck{text-align:left;padding:14px}.featured-deck h2{color:var(--ink);margin:0;font-size:1.12rem;line-height:1.18}.featured-deck p{color:var(--body);margin:8px 0 10px;font-weight:680;line-height:1.4}.featured-deck span{color:var(--teal);font-size:.84rem;font-weight:820;display:inline-flex}.home-sheet-backdrop{z-index:30;background:#241c226b;align-items:end;padding:14px;display:grid;position:fixed;inset:0}.start-game-sheet,.deck-preview-sheet,.preferences-sheet,.how-to-play-sheet{border:1px solid var(--line);background:var(--surface);width:min(100%,560px);max-height:min(84svh,680px);box-shadow:var(--shadow);text-align:left;border-radius:8px;gap:14px;margin:0 auto;padding:16px;display:grid;overflow:auto}.start-game-sheet,.preferences-sheet{width:min(100%,430px)}.start-choice-list{gap:8px;display:grid}.start-choice-action{border:1px solid var(--line);width:100%;min-height:66px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#ffffffd1;border-radius:8px;gap:3px;padding:11px 12px;display:grid}.start-choice-action:hover,.start-choice-action:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #d65b5924}.start-choice-action span{font-weight:850}.start-choice-action small{color:var(--muted);font-size:.84rem;font-weight:660;line-height:1.35}.how-to-play-list article{border:1px solid var(--line);background:#ffffffd1;border-radius:8px;padding:12px}.how-to-play-list strong{color:var(--ink);font-weight:850;display:block}.how-to-play-list p{color:var(--body);margin:4px 0 0;font-size:.9rem;font-weight:670;line-height:1.38}.preferences-name-form{gap:12px;display:grid}.preferences-current-name,.preferences-status-message{color:var(--body);margin:0;font-size:.9rem;font-weight:720;line-height:1.38}.preferences-status-message{color:var(--teal)}.preferences-clear-actions{justify-content:center;display:flex}.preferences-clear-actions .text-action{margin-top:0}.how-to-play-list{gap:8px;display:grid}.deck-preview-note{color:var(--body);margin:0;font-size:.93rem;font-weight:700;line-height:1.42}.deck-preview-list{gap:8px;display:grid}.deck-preview-card{border:1px solid var(--line);background:linear-gradient(135deg,#ffd8d24d,#0000 60%),#ffffffd1;border-radius:8px;padding:12px}.deck-preview-card strong{color:var(--ink);font-weight:850;display:block}.deck-preview-card p{color:var(--body);margin:4px 0 0;font-size:.9rem;font-weight:670;line-height:1.38}.brand-mark{border:1px solid var(--line-strong);background:radial-gradient(circle at 30% 24%, #ffb86b7a, transparent 34%), linear-gradient(145deg, var(--rose), var(--mint));width:58px;height:58px;box-shadow:var(--shadow);color:var(--ink);border-radius:22px;place-items:center;margin:0 auto 16px;font-weight:900;display:grid}.brand-mark span{background:#ffffffc7;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.app-header{justify-content:space-between;align-items:flex-start;gap:16px;padding:4px 2px 14px;display:flex}.demo-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.app-header h1,.landing h1{color:var(--ink);margin:0;font-size:2rem;line-height:1}.landing h1{font-size:2.72rem}.tagline{max-width:21rem;color:var(--body);margin:14px auto 22px;font-size:1.05rem}.helper-copy{color:var(--muted);margin:6px 0 0;font-size:.88rem;font-weight:680;line-height:1.45}.landing-helper{max-width:26rem;margin:-6px auto 0}.answer-helper{margin-top:-2px}.eyebrow,.section-label{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.74rem;font-weight:800}.progress-pill,.partner-card-header span{border:1px solid var(--line);background:var(--surface);min-height:32px;color:var(--body);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;font-size:.78rem;font-weight:800;display:inline-flex}.progress-pill{min-width:48px;padding:0 12px}.partner-card-header span{text-align:center;white-space:normal;max-width:58%;padding:5px 11px;line-height:1.18}.scenario-section{gap:12px;display:grid}.scenario-card,.partner-card,.reveal-card,.waiting-card,.try-list-section{border:1px solid var(--line);box-shadow:var(--soft-shadow);background:#ffffffd1;border-radius:8px}.scenario-card{background:linear-gradient(135deg,#ff7f6629,#0000 58%),#ffffffe0;padding:18px}.scenario-card h2,.reveal-card h2,.try-list-section h2{color:var(--ink);margin:0;font-size:1.28rem;line-height:1.18}.partner-grid{gap:14px;display:grid}.partner-card{gap:16px;padding:16px;display:grid}.partner-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.partner-card h3{color:var(--ink);margin:0;font-size:1.02rem}.partner-card.locked{background:#fbfdfae6}.rating-options{gap:9px;display:grid}.rating-options button{border:1px solid var(--line);background:var(--surface);min-height:52px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:32px 1fr;align-items:center;gap:9px;padding:8px 12px;font-weight:760;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.rating-options button:hover,.rating-options button:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #d65b592e}.rating-options button:active{transform:translateY(1px)}.rating-options button:disabled{cursor:not-allowed;opacity:.58}.rating-options button.selected{border-color:var(--accent);background:#fff1ed}.rating-options span{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.78rem;display:grid}.interest-toggle{color:var(--ink);background:#e1f6efc7;border:1px solid #22847847;border-radius:8px;grid-template-columns:22px 1fr;align-items:flex-start;gap:10px;padding:13px;font-weight:800;display:grid}.interest-toggle input{width:18px;height:18px;accent-color:var(--teal);margin:2px 0 0}.interest-toggle small,.locked-answer small,.answer-badge span,.try-list small{color:var(--muted);margin-top:4px;font-size:.82rem;font-weight:650;line-height:1.35;display:block}.primary-action,.secondary-action{min-height:48px;font:inherit;cursor:pointer;border:0;border-radius:8px;font-weight:850}.primary-action{background:var(--ink);color:#fff;box-shadow:var(--shadow);padding:0 22px}.primary-action.compact{min-width:148px}.secondary-action{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);padding:0 18px}.full-width{width:100%}.primary-action:disabled,.secondary-action:disabled{cursor:not-allowed;opacity:.58;box-shadow:none}.locked-answer{border:1px dashed var(--line-strong);background:linear-gradient(135deg, #ffb86b29, transparent), var(--surface);min-height:178px;color:var(--ink);text-align:center;border-radius:8px;place-items:center;display:grid}.locked-answer strong{font-size:1.18rem}.waiting-card,.reveal-card,.try-list-section{margin-top:12px;padding:16px}.waiting-card{color:var(--body)}.reveal-card{background:linear-gradient(135deg, #e1f6efeb, #ffffffe0), var(--surface);border-color:#22847852;gap:13px;display:grid}.reveal-heading{gap:10px;display:grid}.answer-summary{grid-template-columns:1fr;gap:8px;display:grid}.answer-badge{border:1px solid var(--line);background:#ffffffad;border-radius:8px;padding:10px 12px}.answer-badge strong{color:var(--ink);margin-top:3px;display:block}.reveal-actions{gap:10px;display:grid}.try-list-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.try-list-header-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:8px;display:flex}.try-list-share-action{min-height:34px;padding-inline:12px}.room-try-list h2{font-size:1rem;line-height:1.3}.room-try-list .try-list-header{cursor:pointer;align-items:center;list-style:none}.room-try-list .try-list-header:after{content:"Show";min-width:42px;color:var(--accent);text-align:right;font-size:.82rem;font-weight:850}.room-try-list[open] .try-list-header:after{content:"Hide"}.room-try-list .try-list-header::-webkit-details-marker{display:none}.try-list{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.try-list li{border:1px solid var(--line);background:var(--surface);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;padding:11px 12px;display:flex}.try-list-item-content{min-width:0}.try-list span{color:var(--ink);font-weight:780;display:block}.try-list-remove{min-height:34px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;padding:0 10px;font-size:.84rem;font-weight:820}.try-list-remove:hover,.try-list-remove:focus-visible{border-color:var(--line-strong);color:var(--ink);background:#ffffffd1}.try-list-remove:disabled{cursor:not-allowed;opacity:.58}.try-list-status{color:var(--body);margin:10px 0 0;font-size:.9rem;font-weight:760}.empty-state{color:var(--body);margin:12px 0 0}.landing-actions{gap:10px;margin-top:18px;display:grid}.home-actions{margin-top:20px}.home-action{align-content:center;gap:3px;min-height:68px;line-height:1.15;display:grid}.home-action span{display:block}.home-action small{opacity:.82;font-size:.8rem;font-weight:720;display:block}.home-primary-action{width:100%}.home-nav-actions{gap:8px;margin-top:10px;display:grid}.home-nav-actions button{border:1px solid var(--line);min-height:46px;color:var(--ink);font:inherit;cursor:pointer;background:#ffffffb8;border-radius:8px;padding:10px 14px;font-weight:820}.home-nav-actions button:hover,.home-nav-actions button:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #d65b5924}.home-secondary-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 14px;margin-top:10px;display:flex}.home-secondary-actions .feedback-action,.home-demo-action{margin-top:0}.text-action{min-height:42px;color:var(--body);font:inherit;cursor:pointer;background:0 0;border:0;margin-top:12px;font-weight:800}.text-action.danger{color:var(--muted)}.demo-exit-action{min-height:32px;color:var(--muted);margin:0;padding:0 2px;font-size:.86rem}.demo-exit-action:hover,.demo-exit-action:focus-visible{color:var(--ink);text-decoration:underline}.memory-forget-action{width:fit-content;min-height:auto;color:var(--muted);text-align:left;margin-top:-6px;padding:0;font-size:.86rem;font-weight:760}.memory-forget-action:hover,.memory-forget-action:focus-visible{color:var(--ink);text-decoration:underline}.room-entry-note{color:var(--body);margin:-10px 0 16px;font-size:.92rem;font-weight:680;line-height:1.42}.room-entry{width:min(100%,520px)}.room-panel{width:min(100%,680px)}.room-entry,.room-panel{border:1px solid var(--line);box-shadow:var(--soft-shadow);background:#ffffffdb;border-radius:8px;margin:0 auto;padding:16px}.gameplay-panel{box-shadow:none;background:0 0;border:0;padding:0}.room-form{gap:14px;display:grid}.field{color:var(--ink);gap:8px;font-weight:800;display:grid}.field span,.detail-block span{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:800}.field input,.field select,.field textarea{border:1px solid var(--line-strong);background:var(--surface);min-height:48px;color:var(--ink);font:inherit;border-radius:8px;padding:0 14px}.field input::placeholder{color:var(--muted)}.field small{color:var(--muted);font-size:.84rem;font-weight:650;line-height:1.35}.field select{cursor:pointer}.field textarea{resize:vertical;min-height:116px;padding-block:12px}.form-actions,.room-actions{gap:10px;display:grid}.room-hero{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.room-hero h2{color:var(--ink);margin:0;font-size:1.62rem;line-height:1.08}.room-hero p:not(.section-label){color:var(--body);margin:6px 0 0;font-size:.94rem;font-weight:700;line-height:1.35}.room-status-chip{border:1px solid var(--line);color:#155d55;text-transform:capitalize;background:#e1f6efd1;border-radius:999px;justify-content:center;align-items:center;min-height:32px;padding:0 12px;font-size:.78rem;font-weight:800;display:inline-flex}.room-details{gap:10px;margin-bottom:14px;display:grid}.room-code-card{background:linear-gradient(135deg,#e1f6efc2,#0000 68%),#ffffffbd;border:1px solid #22847847;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:14px;margin-bottom:12px;padding:14px;display:grid}.room-code-card span{color:#155d55;letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:800}.room-code-card strong{color:var(--ink);letter-spacing:.08em;margin-top:4px;font-size:1.35rem;line-height:1;display:block}.room-code-card small{color:var(--body);margin-top:5px;font-weight:700;line-height:1.35;display:block}.room-code-card .secondary-action{white-space:nowrap;min-height:42px;padding:0 12px}.room-code-actions{align-content:center;justify-items:end;gap:8px;display:grid}.ready-start-action{width:100%;min-height:46px;margin-top:10px;padding-inline:18px}.detail-block{border:1px solid var(--line);background:#ffffffa3;border-radius:8px;padding:12px}.detail-block strong{color:var(--ink);margin-top:4px;line-height:1.35;display:block}.detail-block small{color:var(--body);margin-top:4px;display:block}.deck-setup{gap:8px;display:grid}.deck-summary{grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;align-items:flex-start;gap:12px;display:grid}.deck-summary .compact-action{min-width:fit-content}.deck-mix-warning{color:#7d2d2a;background:#fff1eed1;border:1px solid #d65b5947;border-radius:8px;align-self:start;padding:10px 12px;font-size:.88rem;font-weight:760;line-height:1.35}.deck-picker-backdrop{z-index:20;background:#241c226b;align-items:end;padding:14px;display:grid;position:fixed;inset:0}.feedback-action{min-height:38px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;margin:14px auto 0;padding:0 8px;font-size:.88rem;font-weight:820}.feedback-action:hover,.feedback-action:focus-visible{color:var(--ink);text-underline-offset:4px;text-decoration:underline}.feedback-backdrop{z-index:30;background:#241c226b;align-items:end;padding:14px;display:grid;position:fixed;inset:0}.feedback-sheet{border:1px solid var(--line);background:var(--surface);width:min(100%,520px);max-height:min(84svh,640px);box-shadow:var(--shadow);border-radius:8px;gap:13px;margin:0 auto;padding:16px;display:grid;overflow:auto}.feedback-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.feedback-header h2{color:var(--ink);margin:0;font-size:1.22rem;line-height:1.2}.feedback-helper{color:var(--body);margin:0;font-size:.94rem;font-weight:720;line-height:1.4}.feedback-context-toggle{color:var(--body);align-items:center;gap:10px;font-size:.9rem;font-weight:760;display:flex}.feedback-context-toggle input{width:18px;height:18px;accent-color:var(--teal);margin:0}.feedback-status,.feedback-error{border-radius:8px;margin:0;padding:10px 12px;font-weight:760;line-height:1.35}.feedback-status{color:#155d55;background:#e1f6efc7;border:1px solid #22847847}.feedback-error{color:#8d2f2d;background:#fff0eeeb;border:1px solid #d65b5952}.deck-picker-sheet{border:1px solid var(--line);background:var(--surface);width:min(100%,560px);max-height:min(86svh,640px);box-shadow:var(--shadow);border-radius:8px;gap:10px;margin:0 auto;padding:16px;display:grid;overflow:auto}.deck-picker-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.deck-picker-header h3{color:var(--ink);margin:0;font-size:1.18rem;line-height:1.2}.deck-picker-count{color:#155d55;white-space:nowrap;background:#e1f6efc2;border:1px solid #22847852;border-radius:999px;justify-content:center;align-items:center;min-height:32px;padding:0 10px;font-size:.78rem;font-weight:850;display:inline-flex}.deck-picker-close{border:1px solid var(--line);min-height:36px;color:var(--body);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:0 10px;font-size:.86rem;font-weight:820}.deck-picker-close:disabled{cursor:not-allowed;opacity:.58}.deck-picker-note{color:var(--body);margin:0;font-size:.92rem;font-weight:720;line-height:1.4}.deck-options{gap:7px;display:grid}.deck-option{border:1px solid var(--line);background:var(--surface);width:100%;min-height:76px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:8px;gap:5px;padding:10px 12px;display:grid}.deck-option:hover,.deck-option:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #d65b5929}.deck-option:disabled{cursor:not-allowed;opacity:.9}.deck-option.selected{background:linear-gradient(90deg,#22847829,#0000 42%),#e1f6efb8;border-color:#22847894;box-shadow:inset 4px 0 #228478b8}.deck-option-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.deck-option span{color:var(--ink);min-width:0;font-weight:850}.deck-option small{color:var(--body);margin-top:0;font-size:.86rem;font-weight:660;line-height:1.32}.deck-option strong{min-height:26px;color:var(--accent);white-space:nowrap;background:#fff1eed1;border:1px solid #d65b593d;border-radius:999px;align-items:center;padding:0 8px;font-size:.76rem;font-weight:850;display:inline-flex}.deck-option.selected strong{color:#155d55;background:#ffffffc2;border-color:#2284784d}.deck-picker-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:10px;display:flex}.deck-picker-footer span{color:var(--body);font-size:.86rem;font-weight:820}.error-banner{color:#8d2f2d;background:#fff0eeeb;border:1px solid #d65b5952;border-radius:8px;gap:10px;padding:12px 14px;font-weight:700;display:grid}.sync-fallback{color:#7a4e05;background:#fff6ddd1;border:1px solid #ffb86b8c;border-radius:8px;gap:10px;margin:0 0 12px;padding:12px 14px;font-weight:760;display:grid}.compact-action{width:fit-content;min-height:40px}.copy-status{max-width:16rem;color:var(--body);text-align:right;margin:0;font-size:.86rem;font-weight:760;line-height:1.25}.copy-status-fade{animation:3s forwards copy-status-fade-out}@keyframes copy-status-fade-out{0%,78%{opacity:1}to{opacity:0}}.room-exit-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:10px;display:flex}.loading-shell{place-items:center;padding-block:42px;display:grid}.room-game-card{gap:10px;margin:10px 0 14px;display:grid}.room-scenario-card{box-shadow:var(--soft-shadow);border-color:#d65b5938;padding:20px}.scenario-meta{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.room-scenario-card h2{margin-top:12px;font-size:1.55rem;line-height:1.12}.room-answer-area{gap:10px;display:grid}.room-answer-card{box-shadow:none;gap:13px;padding:14px}.room-reveal-card,.room-waiting-card{margin-top:0}.compact-lock{min-height:104px}.room-answer-card .rating-options{gap:7px}.room-answer-card .rating-options button{min-height:48px;padding:7px 10px}.room-reveal-card{box-shadow:var(--soft-shadow);gap:12px;padding:18px}.room-reveal-card h2{font-size:1.7rem;line-height:1.08}.room-reveal-card .section-label{margin-bottom:-4px}.room-reveal-card .answer-summary{margin-top:2px}.reveal-detail{color:var(--body);margin:0;font-weight:720;line-height:1.42}.saved-note,.end-note{color:var(--body);margin:0;font-weight:760}@media (width>=720px){.app-shell{padding:34px 28px 54px}.home{grid-template-columns:minmax(0,1fr) 230px;align-items:stretch}.home-hero{padding:24px}.featured-deck{align-content:center;display:grid}.landing h1{font-size:4rem}.app-header h1{font-size:3rem}.partner-grid,.answer-summary,.reveal-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.room-scenario-card h2{font-size:2.05rem}.room-reveal-card h2{font-size:2.25rem}.landing-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.home-actions{grid-template-columns:1fr}.home-nav-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.form-actions,.room-actions,.room-details{grid-template-columns:repeat(2,minmax(0,1fr))}.room-code-card strong{font-size:1.55rem}.reveal-heading{grid-template-columns:1fr auto;align-items:center}}@media (width<=460px){.room-code-card{grid-template-columns:1fr}.room-code-actions{justify-items:start}.room-code-card .secondary-action{width:100%}.deck-summary{grid-template-columns:1fr}.deck-picker-header,.deck-picker-footer{display:grid}.deck-picker-count,.deck-picker-footer .primary-action{width:100%}.deck-picker-count{justify-self:start}.deck-option-heading{align-items:flex-start}.copy-status{text-align:left}.try-list li,.try-list-header{display:grid}.try-list-header-actions{justify-content:start}.try-list-remove{width:fit-content;padding-inline:0}}
