:root{color:#24231f;font-synthesis:none;text-rendering:optimizelegibility;background:#e9e3d8;font-family:ui-serif,Songti SC,STSong,Noto Serif CJK SC,serif}*{box-sizing:border-box}html{background:#e9e3d8}body{min-width:320px;min-height:100vh;min-height:100dvh;margin:0;overflow-x:hidden}button,a{color:inherit;font:inherit}button{cursor:pointer}button:focus-visible{outline-offset:3px;outline:2px solid #a23a2d}a:focus-visible{outline-offset:3px;outline:2px solid #a23a2d}.app-shell{width:min(100%,430px);min-height:100vh;min-height:100dvh;padding:calc(env(safe-area-inset-top) + 28px) 20px calc(env(safe-area-inset-bottom) + 96px);background:#f5f0e6;margin:0 auto;overflow:hidden}.topbar{padding:10px 2px 22px}.topbar.spacious{padding-top:44px}.topbar p,.topbar h1{margin:0}.eyebrow{color:#5f5b52;letter-spacing:.04em;font-size:.95rem}.topbar h1{letter-spacing:.08em;margin-top:8px;font-size:2rem;font-weight:600}.muted{color:#686158;font-size:.875rem;margin-top:7px!important}.mode-row{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.mode-row h2{color:#625d54;margin:0;font-size:.9rem;font-weight:500}.segmented{border:1px solid #d8d0c3;border-radius:9px;padding:3px;display:flex}.segmented button{color:#655f56;background:0 0;border:0;border-radius:6px;min-width:64px;padding:7px 13px}.segmented .active{color:#fffaf2;background:#35332d}.fortune-card{background:#fbf7ef;border:1px solid #ded5c8;border-radius:14px;grid-template-columns:96px 1fr;gap:20px;padding:24px 22px;display:grid}.fortune-card>*,.verdict{min-width:0}.card-label,.section-kicker{color:#8b3329;letter-spacing:.12em;margin:0;font-size:.8rem}.score{font-variant-numeric:tabular-nums;margin-top:4px;font-size:3.8rem;font-weight:500;line-height:1;display:block}.verdict{border-left:1px solid #ded5c8;padding-left:20px}.verdict span{color:#8b3329;font-size:.75rem}.verdict h2{margin:5px 0 8px;font-size:1.25rem;font-weight:600}.verdict p{color:#655f56;margin:0;font-size:.9rem;line-height:1.7}.metrics{grid-template-columns:repeat(4,1fr);margin:22px 0 30px;display:grid}.metrics div{text-align:center;border-right:1px solid #ddd5c9}.metrics div:last-child{border-right:0}.metrics span{color:#686158;font-size:.8rem;display:block}.metrics strong{margin-top:6px;font:600 1.1rem ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;display:block}.plain-section{border-block-start:1px solid #ddd5c9;border-block-end:1px solid #ddd5c9;padding:22px 2px}.plain-section h2{max-width:18em;margin:12px 0 0;font-size:1.15rem;font-weight:500;line-height:1.9}.tabbar{z-index:10;width:min(100%,430px);padding:10px 24px calc(env(safe-area-inset-bottom) + 10px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f5f0e6f5;border-top:1px solid #d8d0c3;grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tabbar a{color:#686158;text-align:center;padding:10px 4px;font-size:.875rem;text-decoration:none}.tabbar a.active{color:#8b3329;font-weight:600}.intro{min-height:100vh;text-align:center;color:#2b2924;background:#f5f0e6;place-content:center;min-height:100dvh;animation:1.2s both intro-fade;display:grid}.intro h1{letter-spacing:.22em;text-indent:.22em;margin:0;font-size:2rem;font-weight:500}.intro p{color:#686158;letter-spacing:.05em;margin:16px 0 0}@keyframes intro-fade{0%{opacity:0}25%,75%{opacity:1}to{opacity:0}}.update-banner{color:#755a50;text-align:center;border-bottom:1px solid #d8d0c3;margin:-12px 0 18px;padding:10px 4px 14px;font-size:.85rem}.mode-prompt{border-block-start:1px solid #d8d0c3;border-block-end:1px solid #d8d0c3;margin-top:18px;padding:28px 2px 30px}.mode-prompt h2{margin:12px 0 24px;font-size:1.3rem;font-weight:500}.mode-actions{grid-template-columns:1fr 1fr;gap:12px;display:grid}.mode-actions button,.detail-link,.empty-state a,.backup-actions button,.backup-actions label,.error-state button{text-align:center;background:0 0;border:1px solid #37342f;border-radius:8px;padding:12px 16px;text-decoration:none}.mode-actions button:first-child,.detail-link{color:#fffaf2;background:#35332d}.loading-state,.error-state,.empty-state{color:#686158;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:48vh;display:flex}.loading-state span{background:#8b3329;width:24px;height:1px;animation:1s ease-in-out infinite alternate loading}@keyframes loading{to{opacity:.4;width:68px}}.error-state h1,.empty-state h1,.empty-state h2{color:#2f2c27;margin:0;font-size:1.25rem;font-weight:600}.error-state p,.empty-state p{max-width:20em;margin:0;line-height:1.7}.today-line{margin-top:4px}.care-note{border-left:2px solid #a23a2d;margin:22px 0 0;padding:4px 0 4px 16px}.care-note p{color:#8b3329;letter-spacing:.08em;margin:0 0 7px;font-size:.78rem}.care-note span{color:#625d54;font-size:.92rem;line-height:1.75}.dual-list{border-bottom:1px solid #ddd5c9;grid-template-columns:.9fr 1.1fr;gap:24px;padding:28px 2px;display:grid}.dual-list h2{color:#8b3329;letter-spacing:.1em;margin:0 0 12px;font-size:.9rem;font-weight:600}.dual-list p{color:#554f47;margin:7px 0;font-size:.9rem;line-height:1.6}.hexagram-panel{border-bottom:1px solid #ddd5c9;grid-template-columns:1fr auto;gap:10px 18px;padding:28px 2px;text-decoration:none;display:grid}.hexagram-panel h2{margin:10px 0 5px;font-size:1.3rem;font-weight:600}.hexagram-panel span{color:#686158;font-size:.82rem}.hexagram-panel>strong{color:#34312c;align-self:center;font-size:2.5rem;font-weight:400;line-height:.72}.hexagram-panel>p{color:#5f594f;grid-column:1/-1;margin:8px 0 0;line-height:1.75}.element-section,.rhythm-section{border-bottom:1px solid #ddd5c9;padding:28px 2px}.section-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-heading h2{margin:0;font-size:1.2rem}.section-heading>span{color:#686158;font-size:.82rem}.element-grid{gap:9px;margin:20px 0 16px;display:grid}.element-grid>div{grid-template-columns:28px 1fr;align-items:center;gap:12px;font-size:.86rem;display:grid}.element-grid i{gap:7px;font-style:normal;display:flex}.element-grid b{border:1px solid #b9b0a3;border-radius:50%;width:8px;height:8px}.element-grid b.filled{background:#49443d;border-color:#49443d}.element-section>p{color:#625c53;margin:0;font-size:.92rem;line-height:1.75}.rhythm-section>div{border-bottom:1px dashed #ddd5c9;grid-template-columns:44px 82px 1fr;align-items:baseline;gap:12px;padding:14px 0;display:grid}.rhythm-section>div:last-child{border-bottom:0}.rhythm-section strong{font-size:.9rem}.rhythm-section span{color:#9b4a3e;letter-spacing:.08em;font:.72rem ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.rhythm-section p{color:#625c53;margin:0;font-size:.86rem;line-height:1.65}.detail-link{margin:24px 0 10px;display:block}.offline-note{color:#686158;text-align:center;margin:22px 0 0;font-size:.78rem}.install-tip{background:#f8eee3;border:1px solid #d6c6b8;border-radius:10px;margin:22px 0 0;padding:18px;position:relative}.install-tip button{color:#655f56;background:0 0;border:0;padding:4px;font-size:.78rem;position:absolute;top:12px;right:12px}.install-tip h2{margin:0 42px 8px 0;font-size:1rem}.install-tip p{color:#695f55;margin:0;font-size:.86rem;line-height:1.65}.page-header{border-bottom:1px solid #d8d0c3;padding:26px 2px 30px}.page-header h1{letter-spacing:.08em;margin:8px 0 7px;font-size:2rem;font-weight:600}.page-header>p:last-child{color:#686158;margin:0;font-size:.9rem;line-height:1.6}.history-list{margin:0;padding:0;list-style:none}.history-list li{border-bottom:1px solid #ddd5c9}.history-list a{grid-template-rows:auto auto;grid-template-columns:1fr auto;gap:6px 18px;padding:19px 2px;text-decoration:none;display:grid}.history-list div{align-items:center;gap:9px;display:flex}.history-list time{font-size:1.05rem;font-weight:600}.history-list div span{color:#686158;border:1px solid #cec5b9;border-radius:4px;padding:2px 6px;font-size:.7rem}.history-list p{color:#746d63;grid-column:1;margin:0;font-size:.88rem}.history-list strong{grid-area:1/2/3;align-self:center;font:500 1.8rem ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.settings-section{border-bottom:1px solid #ddd5c9;padding:24px 2px}.settings-section>h2,.setting-row h2{margin:0;font-size:1rem;font-weight:600}.settings-section>p,.setting-row p{color:#746d63;margin:8px 0 0;font-size:.86rem;line-height:1.65}.profile-section dl{margin:18px 0 0}.profile-section dl div{grid-template-columns:92px 1fr;gap:14px;padding:8px 0;display:grid}.profile-section dt{color:#686158;font-size:.82rem}.profile-section dd{text-align:right;margin:0;font-size:.9rem}.setting-row{justify-content:space-between;align-items:center;gap:18px;display:flex}.setting-row>div{min-width:0}.switch{flex:none;width:46px;height:28px;position:relative}.switch input{opacity:0;width:1px;height:1px;position:absolute}.switch span{background:#d8d0c4;border:1px solid #aaa196;border-radius:14px;width:46px;height:28px;transition:background .16s;display:block}.switch span:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;margin:2px;transition:transform .16s;display:block;box-shadow:0 1px 3px #0000002e}.switch input:checked+span{background:#8b3329;border-color:#8b3329}.switch input:checked+span:after{transform:translate(18px)}.switch input:focus-visible+span{outline-offset:3px;outline:2px solid #a23a2d}.radio-list{margin-top:12px;display:grid}.radio-list label{align-items:center;gap:11px;min-height:42px;display:flex}.radio-list input{accent-color:#8b3329}.backup-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.backup-actions button,.backup-actions label{cursor:pointer;padding-inline-start:8px;padding-inline-end:8px;font-size:.86rem;position:relative}.backup-actions input{opacity:0;cursor:pointer;width:100%;position:absolute;top:0;bottom:0;left:0;right:0}.status-list>p{justify-content:space-between;gap:12px;padding:7px 0;display:flex}.status-list strong{color:#393630;font-weight:500}.version-button{color:#686158;background:0 0;border:0;padding:14px 0 0;font-size:.78rem}.privacy-note{color:#686158;margin:24px 2px 0;font-size:.78rem;line-height:1.6}.sr-status{color:#8b3329;text-align:center;min-height:1.4em;margin:16px 2px 0;font-size:.82rem}.back-header{border-bottom:1px solid #d8d0c3;grid-template-columns:52px 1fr 52px;align-items:center;min-height:52px;display:grid}.back-header a{color:#8b3329;font-size:.86rem;text-decoration:none}.back-header h1{text-align:center;margin:0;font-size:1rem;font-weight:600}.detail-page>header{border-bottom:1px solid #ddd5c9;padding:30px 2px}.detail-page>header p{color:#686158;margin:0;font-size:.82rem}.detail-page>header strong{margin-top:14px;font:500 3rem ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;display:block}.detail-page>header h1{margin:5px 0 10px;font-size:1.4rem}.detail-page>header span,.detail-page section p{color:#5f594f;line-height:1.8}.detail-page section{border-bottom:1px solid #ddd5c9;padding:22px 2px}.detail-page section h2{color:#8b3329;letter-spacing:.08em;margin:0 0 10px;font-size:.95rem}.detail-page section p{margin:0}.detail-page section aside{color:#665e54;border-left:2px solid #a23a2d;margin-top:14px;padding-left:13px;line-height:1.7}.detail-page ul{color:#5f594f;margin:0;padding-left:1.25em;line-height:1.9}.detail-page section a{color:#8b3329;margin-top:12px;display:inline-block}.detail-page small{color:#686158;line-height:1.65}.hexagram-detail>header{text-align:center;padding:32px 2px 16px}.hexagram-detail>header p{color:#8b3329;letter-spacing:.1em;margin:0;font-size:.78rem}.hexagram-detail>header h1{margin:10px 0 4px;font-size:1.7rem;font-weight:600}.hexagram-detail>header span{color:#686158;font-size:.86rem}.hexagram-lines{width:168px;margin:24px auto 32px}.hexagram-lines>div{justify-content:space-between;gap:22px;height:12px;margin:10px 0;display:flex;position:relative}.hexagram-lines i{background:#34312c;flex:1;height:8px}.hexagram-lines span{color:#a23a2d;font-size:.74rem;position:absolute;top:-5px;left:calc(100% + 12px)}.hexagram-lines .moving i{background:#a23a2d}.hexagram-detail dl{border-block-start:1px solid #ddd5c9;border-block-end:1px solid #ddd5c9;margin:0}.hexagram-detail dl div{border-bottom:1px dashed #ddd5c9;justify-content:space-between;gap:14px;padding:12px 2px;display:flex}.hexagram-detail dl div:last-child{border-bottom:0}.hexagram-detail dt{color:#837b71}.hexagram-detail dd{text-align:right;margin:0}.hexagram-detail section{padding:26px 2px}.hexagram-detail section h2{margin:0 0 10px;font-size:1rem}.hexagram-detail section p,.culture-note{color:#5f594f;line-height:1.8}.culture-note{border-top:1px solid #ddd5c9;padding:20px 2px 0;font-size:.78rem}.debug-page{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.debug-warning{color:#793f2d;background:#f7e9da;border:1px solid #c89475;padding:12px}.debug-page dl{margin:0}.debug-page dl div{border-bottom:1px solid #ddd5c9;grid-template-columns:116px 1fr;gap:12px;padding:10px 2px;font-size:.8rem;display:grid}.debug-page dt{color:#686158}.debug-page dd{overflow-wrap:anywhere;margin:0}.debug-page section{padding:22px 2px}.debug-page section h2{font-size:1rem}.debug-score{border-bottom:1px dashed #ddd5c9;padding:12px 0}.debug-score ul{color:#686158;margin:8px 0 0;padding-left:1.3em;font-size:.78rem;line-height:1.7}.setup-shell{min-height:100vh;min-height:100dvh;padding:calc(env(safe-area-inset-top) + 28px) 20px calc(env(safe-area-inset-bottom) + 28px);background:#f5f0e6;place-items:center;display:grid}.setup-panel{border-block-start:1px solid #d8d0c3;border-block-end:1px solid #d8d0c3;width:min(100%,390px);padding:30px 2px}.setup-panel h1{letter-spacing:.04em;margin:10px 0 18px;font-size:1.65rem;font-weight:600}.setup-panel>p{color:#5f594f;line-height:1.75}.setup-steps{border-left:2px solid #a23a2d;gap:7px;margin:22px 0;padding:4px 0 4px 14px;display:grid}.setup-steps span{color:#625c53;line-height:1.65}.setup-file-button{color:#fffaf2;text-align:center;cursor:pointer;background:#35332d;border:1px solid #37342f;border-radius:8px;margin:24px 0 18px;padding:13px 16px;display:block;position:relative}.setup-file-button:focus-within{outline-offset:3px;outline:2px solid #a23a2d}.setup-file-button input{clip-path:inset(50%);width:1px;height:1px;position:absolute}.setup-warning{border-top:1px solid #ddd5c9;padding-top:16px;font-size:.86rem;color:#68483e!important}.setup-cache{text-align:center;margin-bottom:0;font-size:.8rem;color:#686158!important}@media (prefers-color-scheme:dark){:root,html{color:#eee8dd;background:#151512}.app-shell,.setup-shell{background:#1b1b18}.fortune-card{background:#23221e;border-color:#3a3832}.muted,.eyebrow,.mode-row h2,.verdict p,.metrics span,.tabbar a{color:#aaa398}.segmented,.verdict,.metrics div,.plain-section,.tabbar{border-color:#403d36}.segmented .active{color:#22211d;background:#eee6d9}.tabbar{background:#1b1b18f5}.card-label,.section-kicker,.verdict span,.tabbar a.active{color:#d48678}.intro{color:#eee8dd;background:#1b1b18}.intro p,.care-note span,.dual-list p,.hexagram-panel>p,.element-section>p,.rhythm-section p,.page-header>p:last-child,.settings-section>p,.setting-row p,.detail-page>header span,.detail-page section p,.detail-page ul,.hexagram-detail section p,.culture-note{color:#aaa398}.mode-prompt,.dual-list,.hexagram-panel,.element-section,.rhythm-section,.page-header,.history-list li,.settings-section,.back-header,.detail-page>header,.detail-page section,.hexagram-detail dl,.culture-note{border-color:#403d36}.hexagram-panel>strong,.element-grid b.filled,.hexagram-lines i{color:#eee8dd;background:#d5cfc4;border-color:#d5cfc4}.mode-actions button:first-child,.detail-link{color:#22211d;background:#eee6d9}.mode-actions button,.detail-link,.empty-state a,.backup-actions button,.backup-actions label,.error-state button{border-color:#c8c0b5}.install-tip{background:#29221e;border-color:#4d4038}.status-list strong,.error-state h1,.empty-state h1,.empty-state h2{color:#eee8dd}.debug-warning{color:#e9ad91;background:#2d211b;border-color:#7e5845}.hexagram-panel span,.section-heading>span,.offline-note,.install-tip button,.history-list div span,.history-list p,.profile-section dt,.version-button,.privacy-note,.detail-page>header p,.detail-page small,.hexagram-detail>header span,.hexagram-detail dt,.debug-page dt,.debug-score ul,.setup-panel>p,.setup-steps span,.setup-cache{color:#aaa398!important}.setup-panel,.setup-warning{border-color:#403d36}.setup-file-button{color:#22211d;background:#eee6d9;border-color:#c8c0b5}.setup-warning{color:#e2a28c!important}}@media (max-width:360px){.app-shell{padding-inline-start:16px;padding-inline-end:16px}.fortune-card{grid-template-columns:82px 1fr;gap:14px;padding-inline-start:18px;padding-inline-end:18px}.score{font-size:3.3rem}.verdict{padding-left:14px}.rhythm-section>div{grid-template-columns:40px 72px 1fr;gap:8px}.profile-section dl div{grid-template-columns:78px 1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
