@font-face{font-family:HannariMincho;src:url(/fonts/HannariMincho-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{color-scheme:dark;--font-display:"Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Georgia", serif;--font-body:Inter, "Noto Sans JP", "Hiragino Sans", "Yu Gothic UI", "Yu Gothic", system-ui, sans-serif;--bg:#0b0f26;--bg-deep:#070a1b;--bg-mid:#0e1330;--bg-panel:#0e1330e0;--line:#bac7e833;--text:#eef3ff;--muted:#aab6d6;--soft:#7f8cae;--accent:#97d8c4;--accent-strong:#ecc46f;--domain-daily:#3987e5;--domain-family:#d55181;--domain-work:#c98500;--domain-direction:#1baf7a;--domain-past:#9085e9;--domain-anchor:#ecc46f;--shadow:0 18px 60px #00000061;font-family:var(--font-body);background:var(--bg);color:var(--text)}:root:lang(ja){--font-display:"HannariMincho", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background-color:#0000;background-image:radial-gradient(at 50% 8%,#3987e524,#0000 34rem),radial-gradient(at 84% 62%,#9085e91a,#0000 32rem),radial-gradient(at 12% 78%,#1baf7a12,#0000 30rem),linear-gradient(#0e1330 0%,#0b0f26 52%,#070a1b 100%);background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box}a{color:inherit}button,input,textarea{font:inherit}button,.button{border:1px solid var(--line);min-height:2.75rem;color:var(--text);cursor:pointer;background:#97d8c41f;border-radius:8px;justify-content:center;align-items:center;gap:.45rem;padding:.72rem 1rem;text-decoration:none;transition:border-color .16s,background .16s;display:inline-flex}button:hover,.button:hover{background:#97d8c42e;border-color:#97d8c494}button:focus-visible,.button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.button-primary{background:#f3d47a29;border-color:#f3d47a6b}.app-shell{width:min(1040px,100% - 32px);min-height:100vh;margin:0 auto;padding:24px 0 40px}.topbar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:28px;display:flex}.brand{letter-spacing:.14em;align-items:center;gap:.7rem;font-weight:400;text-decoration:none;display:flex}.brand-mark{background:radial-gradient(circle,#fff7c7 0 18%,#f3d47a 19% 44%,#0000 46%);border-radius:50%;width:1rem;height:1rem;box-shadow:0 0 24px #f3d47a9e}.nav-links{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.nav-links a{color:var(--muted);border:1px solid #0000;border-radius:8px;padding:.55rem .75rem;text-decoration:none}.nav-links a[aria-current=page],.nav-links a:hover{border-color:var(--line);color:var(--text)}.page-header{max-width:760px;margin:0 0 24px}.page-title{letter-spacing:0;margin:0;font-size:clamp(1.6rem,2.4vw,2.4rem);line-height:1.18}.muted{color:var(--muted);line-height:1.7}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.method-card,.settings-panel,.work-panel{border:1px solid var(--line);background:var(--bg-panel);box-shadow:var(--shadow);border-radius:8px}.method-card{flex-direction:column;min-height:15rem;padding:20px;display:flex}.method-card h2,.settings-panel h2{letter-spacing:0;margin:0 0 .75rem;font-size:1.12rem}.method-card .method-name{color:var(--accent);margin:0 0 .5rem;font-size:.92rem}.method-card p{color:var(--muted);margin:0 0 1rem;line-height:1.72}.method-card .duration{color:var(--soft);margin-top:auto;font-size:.92rem}.method-card .button{width:100%;margin-top:1rem}.mode-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:36px;display:grid}.mode-card{text-align:left;border:1px solid var(--line);background:var(--bg-panel);min-height:15rem;box-shadow:var(--shadow);cursor:pointer;border-radius:8px;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:0;padding:24px;transition:border-color .2s,background .2s,transform .2s;display:flex}.mode-card:hover{background:var(--bg-panel);border-color:#97d8c480;transform:translateY(-2px)}.mode-card[aria-pressed=true]{background:#f3d47a12;border-color:#f3d47a99}.mode-card h2{letter-spacing:.08em;margin:0 0 .6rem;font-size:1.24rem}.mode-card p{color:var(--muted);margin:0 0 1rem;line-height:1.72}.mode-note{color:var(--soft);font-size:.86rem;line-height:1.6}.mode-note[data-warn=true]{color:var(--accent-strong)}.mode-choose{color:var(--accent);letter-spacing:.08em;margin-top:auto;padding-top:1.1rem;font-size:.92rem}.mode-card[aria-pressed=true] .mode-choose{color:var(--accent-strong)}.mode-glyph{width:2.6rem;height:2.6rem;margin-bottom:1.1rem;display:block;position:relative}.mode-glyph[data-glyph=journal]{background:linear-gradient(var(--soft), var(--soft)) 0 .6rem / 2.4rem 1px no-repeat, linear-gradient(var(--soft), var(--soft)) 0 1.3rem / 2.4rem 1px no-repeat, linear-gradient(var(--soft), var(--soft)) 0 2rem / 1.4rem 1px no-repeat}.mode-glyph[data-glyph=journal]:after{content:"";background:var(--accent-strong);border-radius:50%;width:.42rem;height:.42rem;position:absolute;top:1.72rem;right:.15rem;box-shadow:0 0 9px #ecc46f99}.mode-glyph[data-glyph=dialogue]:before,.mode-glyph[data-glyph=dialogue]:after{content:"";border-radius:50%;width:1.1rem;height:1.1rem;position:absolute;top:.75rem}.mode-glyph[data-glyph=dialogue]:before{border:1px solid var(--soft);left:0}.mode-glyph[data-glyph=dialogue]:after{background:var(--accent);left:1.15rem;box-shadow:0 0 10px #97d8c480}.section-title{letter-spacing:.1em;color:var(--muted);margin:0 0 16px;font-size:1.05rem;font-weight:400}.method-section[hidden]{display:none}.work-progress{flex-wrap:wrap;gap:.45rem;margin-bottom:18px;display:flex}.progress-dot{border:1px solid var(--line);min-width:2rem;min-height:2rem;color:var(--soft);border-radius:999px;place-items:center;font-size:.84rem;display:inline-grid}.progress-dot[data-active=true]{color:var(--text);background:#f3d47a1a;border-color:#f3d47aa3}.step-title{letter-spacing:0;margin:0 0 1rem;font-size:1.35rem}.step-content{color:var(--muted);white-space:pre-wrap;line-height:1.82}.form-field{gap:.5rem;margin-top:18px;display:grid}.form-field label{color:var(--text)}.form-field textarea,.form-field input[type=number],.form-field input[type=password],.form-field select{border:1px solid var(--line);width:100%;color:var(--text);background:#02050cb8;border-radius:8px;padding:.9rem}.form-field textarea{resize:vertical;min-height:10rem;line-height:1.7}.form-field input[type=number]{max-width:10rem}.form-help{color:var(--soft);margin:0;line-height:1.6}.actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin-top:22px;display:flex}.birth-screen{text-align:center;place-items:center;min-height:48vh;display:grid}.birth-star{background:radial-gradient(circle,#fffbe2 0 12%,#f3d47a 13% 32%,#f3d47a1a 58%,#0000 70%);border-radius:50%;width:7rem;height:7rem;margin:0 auto 28px;animation:1.6s forwards birth-pulse;box-shadow:0 0 60px #f3d47a73}@keyframes birth-pulse{0%{opacity:0;transform:scale(.22)}to{opacity:1;transform:scale(1)}}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.settings-panel{padding:20px}.settings-panel p{color:var(--muted);line-height:1.7}.status-line{min-height:1.5rem;color:var(--accent)}.settings-panel-wide{grid-column:1/-1}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem 1.25rem;display:flex}.panel-head h2{margin:0}.key-state{color:var(--soft);letter-spacing:.08em;align-items:center;gap:.55rem;margin:0;font-size:.86rem;display:inline-flex}.key-dot{background:#7f8cae73;border-radius:50%;width:.5rem;height:.5rem;transition:background .4s,box-shadow .4s}.key-dot[data-lit=true]{background:var(--accent-strong);box-shadow:0 0 12px #ecc46fbf}.field-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.field-row input{flex:18rem;width:auto;min-width:0}.tag-chips{flex-wrap:wrap;gap:.5rem;display:flex}.tag-chip{border-radius:999px;min-height:0;padding:.42rem .85rem;font-size:.88rem;line-height:1.4}.tag-chip[aria-pressed=true]{border-color:var(--accent-strong);color:var(--accent-strong);background:#ecc46f24}.form-field select{max-width:30rem}.form-field input[type=password]{letter-spacing:.12em}.form-help[data-key-saved]{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.form-help[hidden]{display:none}[data-key-masked]{color:var(--muted);letter-spacing:.06em}.form-field textarea.guide-input{min-height:7rem}.actions-start{justify-content:flex-start;margin-top:16px}.toggle-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.2rem 1.8rem;display:flex}.toggle-row>div{flex:22rem}.toggle-row h2{margin-top:0}.switch{cursor:pointer;flex-shrink:0;align-items:center;gap:.7rem;display:inline-flex}.switch input{opacity:0;width:0;height:0;position:absolute}.switch-track{border:1px solid var(--line);background:#02050cb8;border-radius:999px;width:3rem;height:1.6rem;transition:background .2s,border-color .2s;position:relative}.switch-track:after{content:"";background:var(--soft);border-radius:50%;width:1rem;height:1rem;transition:transform .2s,background .2s,box-shadow .2s;position:absolute;top:.22rem;left:.26rem}.switch input:checked+.switch-track{background:#f3d47a1f;border-color:#f3d47a99}.switch input:checked+.switch-track:after{background:var(--accent-strong);transform:translate(1.3rem);box-shadow:0 0 10px #ecc46f99}.switch input:focus-visible+.switch-track{outline:2px solid var(--accent);outline-offset:3px}.switch-label{color:var(--text);font-size:.92rem}.link-button{border:0;border-bottom:1px solid var(--line);min-height:0;color:var(--soft);background:0 0;border-radius:0;padding:0;font-size:.86rem}.link-button:hover{border-color:var(--accent);color:var(--accent);background:0 0}.home-shell{width:100%;min-height:100vh;padding:0}@media (width<=820px){.cards,.settings-grid,.mode-cards{grid-template-columns:1fr}.mode-card{min-height:0}.topbar{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important}}.brand span,.page-title,.step-title,.method-card h2,.settings-panel h2,.star-panel h1,.empty-copy,.revisit-focus,.birth-screen h1,.birth-screen p{font-family:var(--font-display);font-synthesis-weight:none;letter-spacing:.08em;font-weight:400}.page-title{letter-spacing:.12em;color:#f6f9ff;text-shadow:0 0 28px #8caaff2e;line-height:1.5}.step-title{letter-spacing:.16em;color:#f6f9ff;line-height:1.5}.method-card h2{letter-spacing:.1em;font-size:1.24rem;line-height:1.5}.settings-panel h2{letter-spacing:.1em;font-size:1.18rem;line-height:1.5}.star-panel h1{letter-spacing:.1em;line-height:1.5}main.app-shell>.universe .empty-copy{letter-spacing:.16em;color:#cdd8f5;text-shadow:0 0 32px #789bf038;font-size:clamp(1.02rem,1.5vw,1.24rem);line-height:2.1}main.app-shell>.universe .revisit-focus{letter-spacing:.06em;line-height:1.95}main.app-shell{flex-direction:column;min-height:100dvh;display:flex}main.app-shell>.universe{flex:auto;height:auto;min-height:0}.method-card h2{font-family:var(--font-display);font-synthesis-weight:none;letter-spacing:.12em;color:#f2f6ff;order:-1;margin:0 0 .85rem;font-size:clamp(1.24rem,1.9vw,1.5rem);font-weight:400;line-height:1.5}.method-card .method-name{font-family:var(--font-body);letter-spacing:.14em;color:var(--accent);order:0;margin:0 0 1.05rem;font-size:.88rem}.method-card p{order:1}.method-card .duration{letter-spacing:.06em;order:2}.method-card .button{order:3}.method-card{gap:0;padding:26px 24px}.work-progress{align-items:center;gap:.55rem;margin-bottom:26px}.progress-dot{border-color:#bac7e857;width:.5rem;min-width:.5rem;height:.5rem;min-height:.5rem;padding:0;font-size:0;transition:background .4s,border-color .4s,transform .4s}.progress-dot[data-active=true]{background:#ecc46fb8;border-color:#ecc46fe6;transform:scale(1.32)}.work-panel{padding:32px 28px}.step-content{letter-spacing:.04em;color:#c6d1ee;font-size:1.04rem;line-height:2.05}.form-field label{letter-spacing:.06em}.form-help{letter-spacing:.04em;line-height:1.85}.birth-screen{gap:0;min-height:60vh}.birth-star{background:radial-gradient(circle,#fffdf2 0 10%,#ecc46f 12% 28%,#ecc46f29 54%,#0000 72%);width:9rem;height:9rem;margin-bottom:40px;animation-duration:2.6s;box-shadow:0 0 90px #ecc46f66}.birth-screen h1,.birth-screen p{letter-spacing:.18em;color:#f2f6ff;font-size:clamp(1.12rem,1.8vw,1.4rem);line-height:2}@media (width<=820px){.method-card{min-height:0;padding:22px 20px}.work-panel{padding:24px 20px}}.chat-toggle{color:var(--soft);letter-spacing:.04em;background:0 0;border-color:#0000;min-height:auto;margin-top:18px;padding:.5rem 0;font-size:.92rem}.chat-toggle:hover{color:var(--accent);background:0 0;border-color:#0000}.chat-panel{border:1px solid var(--line);background:#02050e80;border-radius:8px;margin-top:16px;padding:18px}.chat-privacy{color:var(--soft);margin:0 0 14px;font-size:.84rem;line-height:1.7}.chat-panel-full{margin-top:20px}.chat-panel-full .chat-log{align-content:start;min-height:13rem;max-height:30rem}.chat-hint{color:var(--soft);text-align:center;margin:0;padding:3.2rem 1rem;line-height:1.8}.chat-log{gap:10px;max-height:22rem;margin-bottom:14px;display:grid;overflow-y:auto}.chat-turn{white-space:pre-wrap;border-radius:8px;margin:0;padding:.7rem .95rem;line-height:1.75}.chat-turn-user{max-width:85%;color:var(--text);background:#97d8c41f;justify-self:end}.chat-turn-assistant{color:#c6d1ee;background:#0e1330b3;justify-self:start;max-width:92%}.chat-form{align-items:flex-end;gap:.6rem;display:flex}.chat-form textarea{resize:vertical;border:1px solid var(--line);min-height:3.4rem;max-height:10rem;color:var(--text);background:#02050cb8;border-radius:8px;flex:1;padding:.7rem}.chat-status{min-height:1.2rem;color:var(--soft);margin:10px 0 0;font-size:.86rem}.birth-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:8px;display:flex}
