*{box-sizing:border-box} :root{color-scheme:light;--ink:#2f3437;--muted:#6e706b;--paper:#f7f6f3;--line:#eaeaea}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif}header,footer{max-width:1200px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:28px 40px}header{border-bottom:1px solid #deded7}.brand{font-size:12px;letter-spacing:.12em;color:var(--ink);text-decoration:none;font-weight:650}main{max-width:1120px;margin:auto;padding:64px 40px}.eyebrow,.number{font:11px/1.5 ui-monospace,monospace;letter-spacing:.12em;color:var(--muted)}h1{font:clamp(48px,7vw,84px)/1.04 Georgia,serif;letter-spacing:-.045em;margin:20px 0 24px}h1 em{font-weight:400;color:#7b8271}h2{font-size:24px;letter-spacing:-.025em;font-weight:500;margin:10px 0}p{margin:10px 0;color:var(--muted)}.intro{max-width:530px;font-size:18px}.badge{font-size:11px;letter-spacing:.04em;padding:5px 10px;background:#edf3ec;color:#346538;border-radius:99px}.mode{font-size:13px;margin:22px 0 32px}.status{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #d7d8d0;border-bottom:1px solid #d7d8d0;padding:25px 0;margin-bottom:24px}.status h2{font-size:28px}.status p{font-size:14px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card{background:#fff;border:1px solid #eaeaea;border-radius:8px;padding:32px}.card:nth-child(2){background:#f1f3ed}.card p{font-size:14px}.actions{display:flex;flex-direction:column;gap:10px;margin:26px 0 18px}button{font:inherit;font-size:14px;line-height:1.4;background:#222721;color:white;border:1px solid transparent;border-radius:5px;padding:12px 17px;cursor:pointer;transition:background .15s,transform .15s}button:hover{background:#3c443a}button:active{transform:scale(.98)}button:disabled{opacity:.42;cursor:not-allowed}.secondary{background:transparent;border-color:#cbcfc5;color:var(--ink)}.secondary:hover{background:#e8eae4}.danger{background:#fdebec;color:#9f2f2d}.danger:hover{background:#f5d9db}.text{background:none;color:var(--ink);padding:8px 0;text-decoration:underline;text-underline-offset:4px}.text:hover{background:none;color:#586947}a{color:#3f5849;font-size:14px;text-underline-offset:4px}.card .text{display:block;font-size:12px}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:24px 0 36px}.toolbar span{font-size:12px;color:var(--muted)}details{border-top:1px solid #d7d8d0;border-bottom:1px solid #d7d8d0;padding:20px 0}summary{cursor:pointer}.settings{max-width:740px;padding:24px 0}label{display:block;font-size:14px;margin-bottom:8px}input,textarea{font:inherit;width:100%;border:1px solid #ccd0c5;background:#fff;border-radius:5px;padding:12px;margin-bottom:12px;color:var(--ink)}textarea{resize:vertical}.settings p{font-size:13px;margin-bottom:24px}.journal{padding:34px 0}.row{display:flex;justify-content:space-between;align-items:center}.entry{border-bottom:1px solid #e1e3da;padding:18px 0}.entry strong{font:11px ui-monospace,monospace;text-transform:uppercase;letter-spacing:.1em}.entry p{color:var(--ink);white-space:pre-wrap}.empty{padding:30px 0;font-style:italic}.character{text-align:center;padding:30px 0 70px}.seal{display:grid;place-items:center;width:160px;height:160px;border:1px solid #c5cbbd;border-radius:50%;margin:0 auto 30px;font:72px Georgia,serif;background:#edf0e6}.character h2{font:36px Georgia,serif}.character button{margin:22px 0}.small{font-size:12px}blockquote{font:25px/1.5 Georgia,serif;margin:35px auto;max-width:650px}footer{border-top:1px solid #deded7;font-size:11px;color:var(--muted);gap:15px}#error{background:#fdebec;color:#9f2f2d;padding:16px;border-radius:6px;margin:20px 0}#login{max-width:480px;padding:24px 0}[hidden]{display:none!important}:focus-visible{outline:3px solid #7a936d;outline-offset:4px}@media(max-width:650px){header,footer{padding:22px}.brand{font-size:10px}main{padding:40px 22px}.grid{grid-template-columns:1fr}.card{padding:25px}.status{align-items:flex-start;gap:16px;flex-direction:column}.toolbar{align-items:stretch;flex-direction:column}.row{gap:15px}.character .seal{width:130px;height:130px}footer{align-items:flex-start;flex-direction:column}}

.choice{display:block;text-decoration:none;color:var(--ink)}.choice.dragon{background:#e8f1fa}.choice.rabbit{background:#fbeaf0}.choice:hover{border-color:#8e969e}.parent-choice{margin-top:28px}

.native-voice {display:block;margin:20px auto;max-width:100%}
