: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}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.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}}
