:root{font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;color:#303c35;background:#f7f5ee;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;font-weight:400;line-height:1.8;font-size:15px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}button,a,input,select{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #956349;outline-offset:5px}h1:focus{outline:none}h1,h2,p{margin:0}h1,h2{font-weight:500}h1{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(25px,5vw,36px);line-height:1.7;letter-spacing:.06em}h2{font-size:18px;line-height:1.7}button{border:0}fieldset{padding:0;border:0;margin:0}.app-shell{max-width:1040px;margin:0 auto;padding:0 40px;min-height:100svh;display:flex;flex-direction:column}.site-header{display:flex;align-items:center;justify-content:space-between;padding:28px 0;border-bottom:1px solid #deded2}.brand{display:flex;align-items:center;gap:12px;background:transparent;color:inherit;font-family:Yu Mincho,serif;font-size:21px;letter-spacing:.12em;min-height:44px;padding:0}.brand-mark{position:relative;width:30px;height:34px;display:block}.brand-mark i{position:absolute;display:block;width:18px;height:29px;background:#9fae96;border-radius:50%;transform:rotate(-23deg);top:0;left:0}.brand-mark i+i{background:#c99072;left:13px;top:6px;transform:rotate(23deg);opacity:.85}.text-button{color:#526053;background:transparent;min-height:44px;padding:8px 4px;font-size:13px;text-underline-offset:5px}.text-button:hover{text-decoration:underline}.settings-link{letter-spacing:.08em}.site-footer{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding:24px 0;color:#677064;font-size:11px;border-top:1px solid #deded2;letter-spacing:.06em}main{flex:1}.home{display:grid;grid-template-columns:1.1fr 1fr;column-gap:40px;max-width:850px;margin:62px auto 40px}.eyebrow{font-size:10px;letter-spacing:.18em;color:#6b775f;font-weight:600}.intro h1{margin:17px 0 19px}.lead{font-size:14px;line-height:2.1;color:#626b5e}.card-illustration{grid-column:2;grid-row:1/3;position:relative;min-height:380px;align-self:center}.paper{position:absolute;width:230px;height:290px;border:1px solid #dddacf;border-radius:7px;top:25px;left:calc(50% - 115px);box-shadow:0 12px 25px #5556330a}.paper-back{background:#c8d0bd;transform:rotate(-12deg);top:20px;left:calc(50% - 130px)}.paper-front{background:#fffdf7;transform:rotate(7deg);display:flex;flex-direction:column;padding:26px 23px;font-family:Yu Mincho,serif;font-size:18px;line-height:2}.tiny-star{color:#b47d61;font-family:serif;font-size:32px;margin-bottom:20px}.paper-bottom{margin-top:auto;padding-top:20px;display:flex;justify-content:space-between;font-size:9px;color:#7b816e;letter-spacing:.1em}.float-note{position:absolute;bottom:0;right:1px;font-size:11px;letter-spacing:.16em;transform:rotate(-7deg);color:#717b64}.start-panel{margin-top:30px}.button{width:100%;min-height:55px;padding:14px 20px;border-radius:7px;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:12px;line-height:1.6;transition:background .15s}.button span{margin-left:auto}.primary{background:#455c48;color:#fffdf7;border:1px solid #455c48}.primary:hover{background:#354b39}.secondary{background:transparent;color:#3f5243;border:1px solid #b9bfb0}.secondary:hover{background:#eeeee4}.start-panel>.button+.button,.card-actions>.button+.button{margin-top:11px}.detail-toggle{display:flex;align-items:center;position:relative;gap:14px;cursor:pointer;padding:24px 0;text-align:left;min-height:70px}.detail-toggle>span:first-child{flex:1}.detail-toggle strong{display:block;font-size:12px;font-weight:500}.detail-toggle small{display:block;font-size:10px;color:#68715f;line-height:1.8;margin-top:4px}.detail-toggle input{position:absolute;right:0;width:42px;height:26px;opacity:0;margin:0;cursor:pointer;z-index:1}.switch{position:relative;width:42px;height:25px;background:#c2c6b9;border-radius:30px;flex-shrink:0}.switch:after{content:"";position:absolute;width:19px;height:19px;top:3px;left:3px;background:#fffdf7;border-radius:50%;box-shadow:0 1px 2px #0002;transition:transform .15s}.detail-toggle input:checked+.switch{background:#455c48}.detail-toggle input:checked+.switch:after{transform:translate(17px)}.detail-toggle input:focus-visible+.switch{outline:3px solid #956349;outline-offset:5px}.gentle-note{grid-column:1/-1;text-align:center;font-size:12px;line-height:2.2;margin-top:28px;color:#626d5d}.gentle-note>span:first-child{font-size:20px;color:#9b765c}.gentle-note>span:last-child{font-size:11px}.content-page{max-width:560px;margin:30px auto 55px}.back-link{margin-bottom:22px}.content-page h1{font-size:28px;margin:8px 0 12px}.muted{font-size:13px;color:#626d5d}.theme-list{display:grid;gap:9px;margin:25px 0}.theme-option{position:relative;display:flex;align-items:center;gap:16px;padding:15px 18px;min-height:80px;border:1px solid #dadccf;border-radius:8px;cursor:pointer;background:#fdfbf5}.theme-option.selected{border-color:#65765b;background:#edf0e5}.theme-option input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0;cursor:pointer}.theme-option:has(input:focus-visible){outline:3px solid #956349;outline-offset:3px}.theme-number{font-family:Georgia,serif;font-size:17px;color:#778068;min-width:25px}.theme-option strong{display:block;font-size:14px;font-weight:500}.theme-option small{display:block;font-size:11px;color:#65705d}.radio-dot{margin-left:auto;width:17px;height:17px;border-radius:50%;border:1px solid #a7af9c;flex-shrink:0}.selected .radio-dot{border:5px solid #52664b;background:#fff}.subcategory{padding-top:4px}.subcategory label{display:block;font-size:13px;margin-bottom:8px}.subcategory label span{color:#65705d}.subcategory select{width:100%;max-width:100%;background:#fffdf7;border:1px solid #b9bfb0;border-radius:6px;padding:13px 10px;color:#303c35;font-size:13px}.conversation{max-width:610px;margin:32px auto 48px}.conversation-top{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:18px}.question-card{background:#fffdf8;border:1px solid #deded0;box-shadow:0 6px 25px #414b2b05;border-radius:10px;min-height:350px;padding:32px 38px;display:flex;flex-direction:column;animation:appear .2s ease-out}.card-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#6b775f;font-size:11px;line-height:1.8}.card-meta>span:last-child{font-size:24px;color:#b47d61;flex-shrink:0}.question-card h1{font-size:clamp(23px,4.5vw,31px);line-height:1.9;letter-spacing:.035em;padding:30px 0;overflow-wrap:anywhere;margin:auto 0}.card-caption{font-size:10px;letter-spacing:.1em;color:#76806b;padding-top:15px;border-top:1px solid #e7e7dc}.card-actions{max-width:420px;margin:25px auto 0;text-align:center}.action-help{font-size:11px;line-height:2;color:#64705e;margin:18px 0 7px}.panel{padding:30px;border:1px solid #deded0;border-radius:9px;background:#fffdf7}.panel p,.reset-section p{font-size:13px;color:#5e6a59;margin-top:15px;line-height:2}.settings-page>.panel{margin:26px 0}.reset-section{margin-bottom:25px}.reset-section .button{margin-top:18px}.empty-state{text-align:center;margin-top:20px}.empty-flower{font-size:45px;color:#a87f62}.empty-state h1{font-size:26px;margin-top:15px}.empty-state p{margin:18px auto 25px;max-width:400px}.empty-state .button{margin-top:12px}.empty-state>.text-button{margin-top:12px}.storage-notice{margin:20px auto 0;padding:12px 18px;font-size:12px;background:#f0e3ce;border-radius:6px;max-width:610px;color:#624a2e}.error-panel{margin:40px 0}.error-panel pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;color:#85462c;margin-top:20px}dialog{border:1px solid #d6d8c9;border-radius:12px;background:#fffdf7;color:#303c35;padding:30px;max-width:450px;width:calc(100% - 36px);box-shadow:0 20px 100px #1d2b2533}dialog::backdrop{background:#27362a66}dialog p{font-size:13px;margin:15px 0 25px}.dialog-actions{display:grid;gap:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes appear{0%{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1000px){.home{margin-top:80px;margin-bottom:60px}.intro h1{font-size:36px}}@media(max-width:640px){.app-shell{padding:0 22px}.site-header{padding:17px 0}.brand{font-size:19px;gap:10px}.home{display:flex;flex-direction:column;margin:34px auto 28px;max-width:420px;gap:0}.intro{text-align:center}.eyebrow{font-size:9px}.intro h1{font-size:29px;margin:15px 0}.lead{font-size:12px}.card-illustration{order:0;min-height:215px;width:100%;margin:14px 0 2px}.paper{width:155px;height:188px;padding:16px;font-size:13px;left:calc(50% - 65px);top:10px}.paper-back{left:calc(50% - 88px);top:10px}.tiny-star{font-size:22px;margin-bottom:9px}.paper-bottom{padding-top:9px;font-size:7px}.float-note{right:10px;bottom:10px;font-size:9px}.start-panel{margin-top:7px}.detail-toggle{padding:21px 0}.gentle-note{margin-top:6px;font-size:11px}.site-footer{font-size:9px;flex-wrap:wrap;justify-content:center;padding:20px 0;gap:2px 14px}.content-page{margin-top:24px}.content-page h1{font-size:25px}.content-page .muted{font-size:12px}.theme-option{padding:13px;gap:12px}.theme-option small{font-size:10px}.theme-list{gap:8px}.conversation{margin-top:20px}.question-card{padding:24px;min-height:320px}.question-card h1{font-size:25px;padding:28px 0}.card-actions{margin-top:20px}.card-meta{font-size:10px}.panel{padding:23px}.empty-state h1{font-size:23px}}@media(max-width:350px){.app-shell{padding:0 16px}.intro h1{font-size:25px}.float-note{right:-2px}.question-card{padding:20px}.question-card h1{font-size:23px}.detail-toggle small{font-size:9px}.theme-option strong{font-size:13px}}.header-actions{display:flex;align-items:center;gap:8px}.mobile-theme-select{display:none}.previous-card:disabled{opacity:.4}@media(max-width:640px){.app-shell{height:100dvh;min-height:100svh;padding:env(safe-area-inset-top) 18px env(safe-area-inset-bottom)}.site-header{padding:6px 0;flex-shrink:0}.brand{font-size:16px;gap:8px}.brand-mark{transform:scale(.8);width:26px}.header-actions .text-button{font-size:12px}main{display:flex;flex-direction:column;min-height:0}.site-footer{padding:6px 0;font-size:9px;flex-shrink:0}.site-footer>span:first-child{display:none}.home{flex:1;width:100%;margin:0 auto;justify-content:center;min-height:0}.intro h1{font-size:clamp(24px,4.5dvh,29px);line-height:1.5;margin:10px 0}.lead{font-size:11px;line-height:1.8}.card-illustration{min-height:0;height:clamp(80px,18dvh,155px);margin:8px 0}.paper{width:125px;height:135px;top:0;font-size:11px;padding:10px 14px;left:calc(50% - 52px)}.paper-back{left:calc(50% - 72px)}.tiny-star{font-size:18px;margin-bottom:2px}.paper-bottom{font-size:7px;padding-top:2px}.float-note{right:12px;bottom:8px}.start-panel{margin-top:4px}.button{min-height:44px;padding:10px 14px;font-size:13px}.start-panel>.button+.button,.card-actions>.button+.button{margin-top:8px}.detail-toggle{padding:12px 0;min-height:54px}.detail-toggle small{font-size:9px;margin-top:2px}.gentle-note{font-size:10px;line-height:1.7;margin-top:0}.gentle-note>span:first-child{font-size:14px}.gentle-note>span:last-child{font-size:9px}.content-page{width:100%;margin:0 auto;padding:12px 0;flex:1;display:flex;flex-direction:column;justify-content:center;min-height:0}.content-page h1{font-size:23px;margin:6px 0}.back-link{margin-bottom:8px;align-self:flex-start}.content-page .muted{font-size:11px}.theme-list{display:none}.mobile-theme-select{display:block;margin:18px 0 12px}.subcategory label{margin-bottom:4px;font-size:12px}.subcategory select{padding:10px;font-size:13px;min-height:44px}.content-page>.button{margin-top:8px}.conversation{width:100%;margin:0 auto;padding:8px 0;flex:1;display:flex;flex-direction:column;min-height:0}.conversation-top{margin-bottom:0;flex-shrink:0}.previous-card{align-self:flex-start;margin:0;flex-shrink:0}.question-card{flex:1;min-height:0;padding:16px 20px}.question-card h1{font-size:clamp(18px,3.1dvh,25px);line-height:1.65;padding:12px 0}.card-caption{padding-top:8px;font-size:9px}.card-meta{font-size:9px}.card-actions{width:100%;margin:12px auto 0;flex-shrink:0}.action-help{font-size:9px;line-height:1.6;margin:8px 0 0}.card-actions>.text-button{font-size:11px}.settings-page>.panel{margin:12px 0;padding:16px}.settings-page h2{font-size:15px}.panel p,.reset-section p{font-size:11px;line-height:1.8;margin-top:8px}.reset-section{margin-bottom:4px}.reset-section .button{margin-top:10px}.empty-state{margin-top:6px;padding:16px}.empty-flower{font-size:28px}.empty-state h1{font-size:21px;margin-top:6px}.empty-state p{margin:10px 0;font-size:11px}.storage-notice{font-size:10px;padding:6px 10px;margin-top:4px}}@media(max-width:640px)and (max-height:650px){.card-illustration,.gentle-note{display:none}.home{gap:6px}.settings-page>.panel{padding:12px}.settings-page .panel p{font-size:10px;margin-top:6px}.content-page{padding:6px 0}.question-card h1{font-size:18px}.card-caption{display:none}}.paper-front{justify-content:center;gap:16px}.paper-question{font-size:16px;line-height:1.9;letter-spacing:0}.paper-bottom{flex-shrink:0;margin-top:0;padding-top:12px;border-top:1px solid #e7e7dc}.card-meta>span:last-child{font-size:inherit;color:inherit}.card-navigation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:10px}.card-navigation .previous-card{align-self:stretch}.card-navigation+.button{margin-top:10px}.button:disabled{opacity:.4}.card-navigation .button{padding-left:12px;padding-right:12px}@media(max-width:640px){.paper-front{width:170px;height:135px;left:calc(50% - 85px);padding:14px 16px;gap:10px}.paper-back{width:170px;left:calc(50% - 100px)}.paper-question{font-size:12px;line-height:1.8}.paper-bottom{font-size:7px;padding-top:6px}.float-note{right:0;bottom:0;font-size:8px}.card-navigation{gap:8px}.card-navigation .button{font-size:12px}.card-navigation+.button{margin-top:8px}}:root{color:#30354b;background:#faf8f2;line-height:1.8}h1,h2,.brand,.paper-front{font-family:inherit}h1,h2{font-weight:700;letter-spacing:.015em}.brand{font-weight:700;letter-spacing:.04em}.brand-mark i{border-radius:5px;background:#bcb0ed;transform:rotate(-16deg)}.brand-mark i+i{border-radius:5px;background:#f4b69e;transform:rotate(16deg);opacity:1}.site-header,.site-footer{border-color:#e4e1dc}.eyebrow{color:#5f5981;letter-spacing:.12em}.intro h1{font-size:clamp(32px,5vw,46px);line-height:1.45}.lead,.muted,.text-button,.action-help,.gentle-note{color:#5d6171}.primary{background:#514a80;border-color:#514a80;box-shadow:0 3px #39335d}.primary:hover{background:#423b70}.secondary{background:#fffefa;border-color:#d5d0df;color:#45405f}.secondary:hover{background:#efebfa}.button{border-radius:14px;transition:background .15s,transform .15s}.button:active:not(:disabled){transform:translateY(2px)}.button:focus-visible,.text-button:focus-visible,input:focus-visible,select:focus-visible,.card-illustration:focus-visible{outline-color:#7362bd}.card-illustration{display:block;background:transparent;color:inherit;text-align:left;isolation:isolate;border-radius:24px;min-width:0}.paper{border-radius:18px;border:1px solid #514a8033;box-shadow:0 9px #514a8009;transition:transform .25s}.paper-back{background:#c5b9ee;transform:rotate(-12deg)}.paper-middle{background:#f6c2a9;transform:rotate(-3deg);left:calc(50% - 120px);top:24px}.paper-front{background:#fff4b8;transform:rotate(8deg);color:#413c60;align-items:center;text-align:center;gap:12px}.deck-symbol{font-size:52px;line-height:1;color:#685796}.paper-question{font-weight:700;font-size:18px;line-height:1.8}.paper-bottom{width:100%;border-color:#514a8026;color:#514a80;font-family:inherit;font-weight:700}.float-note{background:#fffefa;border:1px solid #ded9e8;border-radius:30px;padding:5px 12px;color:#514a80;letter-spacing:.04em;transform:rotate(-6deg)}@media(hover:hover){.card-illustration:hover .paper-front{transform:translateY(-8px) rotate(12deg)}.card-illustration:hover .paper-back{transform:rotate(-16deg)}}.card-illustration:active .paper-front{transform:translateY(-4px) rotate(3deg)}.detail-toggle strong{font-weight:600}.detail-toggle small{color:#656575}.detail-toggle input:checked+.switch{background:#655993}.switch{background:#cdc9d7}.gentle-note{margin-top:14px}.theme-list{grid-template-columns:1fr 1fr;gap:14px}.theme-option{border-radius:16px;background:#fffefa;min-height:100px;gap:10px;padding:16px 12px;border-color:#dcd7e6;box-shadow:0 4px #514a8007}.theme-option:nth-child(3n+2){background:#f4eefa}.theme-option:nth-child(3n+3){background:#fff1df}.theme-option:nth-child(3n+4){background:#eaf3ee}.theme-option.selected{border-color:#655993;box-shadow:0 0 0 1px #655993}.theme-number{color:#514a80;background:#ffffffb0;width:32px;height:36px;border-radius:7px;display:grid;place-items:center;font-family:inherit;font-weight:700;font-size:13px;transform:rotate(-8deg);flex-shrink:0}.theme-option strong{font-weight:700;font-size:13px}.theme-option small{color:#616471;font-size:10px}.selected .radio-dot{border-color:#655993}.subcategory select{background:#fffefa;border-color:#cdc7dc;color:#34344b;border-radius:12px}.question-card{border-radius:22px;border-color:#d9d3e7;background:#fffefa;box-shadow:0 6px #ece7f4;position:relative;animation:draw-card .3s ease-out}.card-meta{color:#55506f}.card-meta>span{background:#efebf8;border-radius:7px;padding:4px 10px}.question-card h1{font-weight:600;letter-spacing:.015em;line-height:1.75}.card-caption{display:flex;justify-content:space-between;align-items:center;color:#70618f;border-color:#e9e3f0;letter-spacing:.13em;font-weight:600}.card-caption>span:last-child{font-size:22px;line-height:1}.panel,dialog{border-radius:18px;background:#fffefa;border-color:#dcd7e6;color:#30354b}@keyframes draw-card{0%{opacity:.2;transform:translateY(12px) rotate(-1.5deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@media(max-width:640px){.intro h1{font-size:clamp(30px,5dvh,40px);line-height:1.35;margin:10px 0}.card-illustration{flex-shrink:0;height:clamp(140px,21dvh,180px);margin:12px 0}.paper-front,.paper-back,.paper-middle{width:166px;height:143px;left:calc(50% - 83px);top:5px}.paper-back{left:calc(50% - 96px)}.paper-middle{left:calc(50% - 89px)}.paper-front{padding:12px 16px;gap:6px}.deck-symbol{font-size:30px}.paper-question{font-size:12px;line-height:1.7}.paper-bottom{font-size:8px;padding-top:5px}.float-note{right:calc(50% - 144px);bottom:0;font-size:10px;padding:3px 10px}.gentle-note{margin-top:4px}.question-card{padding:18px 20px}.theme-list{display:none}.app-shell{height:auto;min-height:100dvh}.home{padding:12px 0}.conversation{min-height:440px}.question-card{min-height:170px}main{flex:1}.content-page{padding:16px 0}.site-footer{margin-top:auto}}@media(max-width:640px)and (max-height:650px){.home{padding:8px 0;gap:0}.intro h1{font-size:28px;margin:4px 0}.intro h1 br{display:none}.lead{font-size:10px}.card-illustration{display:block;height:112px;margin:8px 0}.paper-front,.paper-back,.paper-middle{height:100px;width:148px;left:calc(50% - 74px);top:0}.paper-back{left:calc(50% - 85px)}.paper-middle{left:calc(50% - 80px)}.paper-front{gap:3px;padding:8px 12px}.deck-symbol{font-size:22px}.paper-question{font-size:11px;line-height:1.5}.paper-bottom{padding-top:3px;font-size:7px}.float-note{right:calc(50% - 136px);font-size:9px}.detail-toggle{padding:8px 0}.gentle-note{display:none}.conversation{min-height:410px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
