:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#24232e;background:#f3f2f7;font-synthesis:none}:root:has(.app-shell){--surface:#fff;--surface-raised:#fcfbff;--text:#24232e;--muted:#666474;--border:#d9d7e2;--accent:#e11d48;--accent-contrast:#fff;--focus:#2563eb;--notice:#ebe9f4;--notice-text:#403e4d;--error:#991b1b;--error-bg:#fee2e2;--shadow:0 8px 26px rgba(32,27,47,.09)}@media (prefers-color-scheme:dark){:root:has(.app-shell){--surface:#24232e;--surface-raised:#2d2b38;--text:#f6f4fa;--muted:#c5c1d0;--border:#4b485a;--accent:#fb7185;--accent-contrast:#28121a;--focus:#93c5fd;--notice:#383444;--notice-text:#f5f2fa;--error:#fecaca;--error-bg:#571f29;--shadow:0 8px 26px rgba(0,0,0,.22)}}*{box-sizing:border-box}html{background:#f3f2f7}body{min-width:320px;margin:0;background:radial-gradient(circle at 76% -20%,rgba(225,29,72,.12),transparent 36%),#f3f2f7;color:var(--text)}button,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}button:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{position:fixed;top:8px;left:8px;z-index:10;padding:9px 12px;border-radius:8px;background:var(--surface);color:var(--text);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.app-shell{width:min(100%,700px);min-height:100dvh;margin:0 auto;padding:calc(16px + env(safe-area-inset-top)) clamp(16px,5vw,32px) calc(32px + env(safe-area-inset-bottom))}.topbar{display:flex;min-height:48px;align-items:center;justify-content:space-between;margin-bottom:30px}.brand,.text-button,.back-button{min-height:44px;border:0;background:transparent;color:var(--text);font-weight:700}.brand{display:flex;align-items:center;gap:9px;padding:6px 0;font-family:Georgia,serif;font-size:20px}.brand-mark{display:grid;width:25px;height:25px;place-content:center;grid-template-columns:repeat(3,5px);gap:2px;border-radius:50%;border:1px solid var(--accent);transform:rotate(30deg)}.brand-mark i{height:10px;border-radius:5px;background:var(--accent)}.text-button{padding:8px;color:var(--accent)}.notice{margin:0 0 20px;padding:12px 14px;border-radius:12px;background:var(--notice);color:var(--notice-text);line-height:1.45}.notice.error{background:var(--error-bg);color:var(--error)}.home-flow{display:grid;gap:28px}.hero{max-width:610px}.eyebrow{margin:0 0 10px;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.12em}.hero h1,.history-page h1,.reading-page h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,9vw,48px);line-height:1.08;letter-spacing:-.035em}.hero>p:last-child{max-width:540px;margin:18px 0 0;color:var(--muted);font-size:16px;line-height:1.6}.spread-picker{margin:0;padding:0;border:0}.spread-picker legend,.question-field label{display:block;margin-bottom:12px;font-size:16px;font-weight:800}.spread-options{display:grid;gap:12px}.spread-option{min-height:84px;padding:16px;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--surface) 90%,transparent);color:var(--text);text-align:left;box-shadow:var(--shadow);transition:transform .18s ease,background .18s ease,border-color .18s ease}.spread-option:hover,.spread-option.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 11%,var(--surface))}.spread-option:active,.primary-action:active,.secondary-action:active,.history-card:active{transform:scale(.985)}.spread-option strong,.spread-option span{display:block}.spread-option strong{font-size:17px}.spread-option span{margin-top:6px;color:var(--muted);font-size:14px;line-height:1.4}.question-field textarea{display:block;width:100%;min-height:112px;resize:vertical;padding:13px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);line-height:1.5}.question-field p,.identity-note,.disclaimer{margin:9px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.question-field label span{color:var(--muted);font-weight:500}.primary-action,.secondary-action{display:flex;min-height:52px;align-items:center;justify-content:center;border-radius:14px;padding:12px 18px;font-weight:800;transition:transform .18s ease,opacity .18s ease}.primary-action{border:0;background:var(--accent);color:var(--accent-contrast);box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 28%,transparent)}.primary-action:disabled{cursor:not-allowed;opacity:.55}.secondary-action{width:100%;border:1px solid var(--border);background:var(--surface);color:var(--text)}.history-page,.reading-page{padding-top:8px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:28px}.section-heading h1{font-size:clamp(32px,8vw,42px)}.reading-list{display:grid;gap:12px}.history-card{width:100%;min-height:108px;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text);text-align:left;box-shadow:var(--shadow);transition:transform .18s ease,border-color .18s ease}.history-card:hover{border-color:var(--accent)}.history-card span,.history-card small{display:block;color:var(--muted);font-size:13px}.history-card strong{display:block;margin:8px 0;overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.empty-state{display:grid;justify-items:start;gap:10px;padding:28px 0}.empty-state h2,.empty-state p{margin:0}.empty-state p,.empty-copy{color:var(--muted);line-height:1.5}.back-button{padding:0;margin-bottom:24px;color:var(--accent)}.question-echo{margin:16px 0 24px;color:var(--muted);font-style:italic;line-height:1.5}.cards{display:grid;grid-template-columns:1fr;gap:14px;margin:26px 0}.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}.tarot-card{min-width:0;padding:10px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.tarot-card img,.card-placeholder{display:block;width:100%;aspect-ratio:2/3;border-radius:10px;-o-object-fit:cover;object-fit:cover;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 70%,#151321),#262238)}.tarot-card p{margin:10px 0 4px;color:var(--muted);font-size:12px}.tarot-card h2{margin:0;font-family:Georgia,serif;font-size:clamp(15px,4vw,20px);line-height:1.14;overflow-wrap:anywhere}.tarot-card span{display:block;margin-top:6px;color:var(--muted);font-size:12px;line-height:1.3}.interpretation{margin:28px 0 16px;padding:20px;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--surface) 88%,transparent);box-shadow:var(--shadow)}.interpretation h2{margin:0 0 10px;font-family:Georgia,serif;font-size:24px}.interpretation p{margin:0;white-space:pre-wrap;line-height:1.65}@media (min-width:560px){.spread-options{grid-template-columns:repeat(2,1fr)}.cards.three{gap:18px}.tarot-card{padding:12px}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
