*{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,h3,p,ol,fieldset{margin:0}button,input{font:inherit}body{min-width:320px;color:#e9e5dc;background:radial-gradient(circle at 72% 5%,rgba(183,68,54,.1),transparent 28rem),#101113;font-family:"Microsoft YaHei UI","PingFang SC",sans-serif;line-height:1.65}body:before{position:fixed;inset:0;pointer-events:none;opacity:.025;background-image:repeating-radial-gradient(circle at 20% 30%,#fff 0 .4px,transparent .4px 3px);content:""}a{color:inherit;text-decoration:none}.grain{position:fixed;inset:0;pointer-events:none}.mh-header,main,body>footer{width:min(1240px,calc(100% - 48px));margin:auto}.mh-header{display:flex;align-items:center;justify-content:space-between;height:76px;border-bottom:1px solid #292c31}.mh-brand{display:flex;align-items:center;gap:11px}.mh-brand i{display:grid;place-items:center;width:38px;height:38px;border:1px solid #8f312a;border-radius:50%;color:#f0d2cd;background:rgba(196,71,61,.12);font:normal 20px "Songti SC",serif}.mh-brand b,.mh-brand small{display:block}.mh-brand b{font:600 15px "Songti SC",serif;letter-spacing:.1em}.mh-brand small{margin-top:-2px;color:#73767a;font-size:9px;letter-spacing:.16em}.back-link{color:#9a9b97;font-size:11px;transition:color .2s}.back-link:hover{color:#e7ddd6}.mh-hero{display:grid;grid-template-columns:1fr auto;align-items:center;min-height:360px;padding:70px 7% 74px;border-bottom:1px solid #292c31}.mh-hero p,.casting-form header p,.result-heading p{color:#ca5147;font:600 10px Consolas,monospace;letter-spacing:.18em}.mh-hero h1{margin-top:8px;font:500 clamp(58px,8vw,102px)/1 "Songti SC",serif;letter-spacing:-.07em}.mh-hero>div>span{display:block;max-width:620px;margin-top:25px;color:#a4a5a1;font-size:16px}.hero-symbol{display:flex;align-items:center;gap:22px;color:#76615f;font:74px "Songti SC",serif}.hero-symbol i{width:1px;height:118px;background:linear-gradient(transparent,#8d3933,transparent);transform:rotate(20deg)}.casting-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:72px;padding:88px 7% 110px}.casting-form{min-width:0}.casting-form header h2{margin-top:6px;font:500 clamp(30px,4vw,46px)/1.25 "Songti SC",serif}.casting-form>label,.casting-form>div>label{display:block;margin-top:25px}.casting-form label>span,.casting-form legend{display:block;margin-bottom:8px;color:#989a96;font-size:11px}.casting-form input{width:100%;height:52px;padding:0 14px;border:1px solid #34383e;border-radius:8px;color:#e7e3db;background:#15171a;outline:0}.casting-form input:focus{border-color:#a7433a;box-shadow:0 0 0 3px rgba(196,71,61,.1)}.casting-form fieldset{margin-top:25px;padding:0;border:0}.mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mode-switch label{cursor:pointer}.mode-switch input{position:absolute;opacity:0;pointer-events:none}.mode-switch span{display:block;margin:0!important;padding:13px 15px;border:1px solid #34383e;border-radius:8px;color:#c7c5bf;background:#15171a}.mode-switch small{display:block;margin-top:2px;color:#6f7276;font-size:9px}.mode-switch input:checked+span{border-color:#82413c;color:#f0d6d1;background:rgba(196,71,61,.11)}.casting-form label small{display:block;margin-top:6px;color:#6d7074;font-size:9px}.number-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.casting-form button{display:flex;align-items:center;justify-content:space-between;width:100%;height:56px;margin-top:30px;padding:0 18px;border:0;border-radius:8px;color:#fff1ee;background:#9f382f;cursor:pointer;transition:background .2s,transform .2s}.casting-form button:hover{background:#bc473d}.casting-form button:active{transform:translateY(1px)}.casting-form button b{font-size:20px}.casting-error{margin-top:18px;padding:11px 13px;border-left:2px solid #c4473d;color:#dfa49e;background:rgba(196,71,61,.08);font-size:11px}.method-aside{padding-top:64px}.method-aside>span{color:#c05a51;font:9px Consolas,monospace;letter-spacing:.16em}.method-aside ol{margin-top:18px;padding:0;list-style:none;counter-reset:step}.method-aside li{position:relative;padding:17px 0 17px 44px;border-bottom:1px solid #292c31;counter-increment:step}.method-aside li:before{position:absolute;left:0;top:18px;color:#80403b;font:10px Consolas,monospace;content:"0" counter(step)}.method-aside b{font:500 14px "Songti SC",serif}.method-aside p{margin-top:3px;color:#777a7e;font-size:10px}.result-section{padding:80px 7% 100px;border-top:1px solid #292c31;scroll-margin-top:20px}.result-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.result-heading h2{margin-top:5px;font:500 clamp(30px,4vw,48px)/1.25 "Songti SC",serif}.result-heading>span{color:#aaa8a2;font:10px Consolas,monospace;text-align:right}.result-heading small{display:block;margin-top:4px;color:#666a6e}.hexagrams{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:38px}.hex-card{padding:22px;border:1px solid #34383e;border-radius:11px;background:#17191c}.hex-card.primary{border-color:#75423e;background:radial-gradient(circle at 85% 0,rgba(196,71,61,.12),transparent 45%),#191719}.hex-card header{display:flex;justify-content:space-between;color:#8a8c89;font:9px Consolas,monospace}.hex-card.primary header span{color:#d16359}.hex-figure{display:grid;gap:9px;width:116px;margin:28px auto}.hex-line{position:relative;display:flex;justify-content:space-between;height:7px}.hex-line i{display:block;width:100%;background:#beb7aa}.hex-line.yin i{width:43%}.hex-line.moving i{background:#cf554a}.hex-line b{position:absolute;left:calc(100% + 10px);top:-5px;color:#d26056;font:9px Consolas,monospace}.hex-card h3{text-align:center;font:500 25px "Songti SC",serif}.hex-card>p{margin-top:5px;color:#7d807d;font-size:10px;text-align:center}.body-use{display:grid;grid-template-columns:1fr minmax(250px,.7fr) 1fr;align-items:stretch;gap:1px;margin-top:14px;overflow:hidden;border:1px solid #34383e;border-radius:11px;background:#34383e}.body-use article,.relation{padding:22px;background:#17191c}.body-use article span,.relation span{color:#8a8c89;font:9px Consolas,monospace;letter-spacing:.08em}.body-use article b{display:block;margin-top:8px;font:500 21px "Songti SC",serif}.body-use article p,.relation p{margin-top:5px;color:#777a7e;font-size:10px}.relation{text-align:center}.relation span{color:#cf665d}.relation i{display:block;width:60px;height:1px;margin:13px auto;background:#75413d}body>footer{display:flex;align-items:center;gap:18px;min-height:58px;border-top:1px solid #292c31;color:#62666a;font:8px Consolas,monospace}body>footer strong{color:#aaa7a0;font:500 11px "Songti SC",serif}body>footer span:last-child{margin-left:auto}[hidden]{display:none!important}*{scrollbar-width:thin;scrollbar-color:#5b4140 transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:99px;background:#5b4140;background-clip:padding-box}
@media(max-width:760px){.mh-header,main,body>footer{width:min(100% - 30px,1240px)}.mh-header{height:64px}.mh-hero{grid-template-columns:1fr;min-height:auto;padding:54px 0 62px}.hero-symbol{display:none}.casting-layout{grid-template-columns:1fr;gap:28px;padding:58px 0 74px}.method-aside{padding-top:0}.result-section{padding:58px 0 72px}.result-heading{align-items:flex-start;flex-direction:column}.result-heading>span{text-align:left}.hexagrams{grid-template-columns:1fr}.body-use{grid-template-columns:1fr}.relation{text-align:left}.relation i{margin:13px 0}.hex-card{padding:20px}.hex-figure{margin-block:22px}}
@media(max-width:440px){.mh-brand small{display:none}.back-link{font-size:10px}.mh-hero h1{font-size:60px}.mode-switch,.number-fields{grid-template-columns:1fr}.casting-form header h2{font-size:30px}body>footer{gap:9px}body>footer span:first-of-type{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.result-meta{display:flex;align-items:flex-end;gap:18px;color:#aaa8a2;font:10px Consolas,monospace;text-align:right}.result-meta small{display:block}.result-meta button,.ai-reading button{padding:10px 16px;border:1px solid #7d3e38;border-radius:7px;color:#edcbc6;background:rgba(159,56,47,.12);cursor:pointer}.result-meta button:hover,.ai-reading button:hover{background:rgba(159,56,47,.25)}
.ai-reading{margin-top:28px;padding:30px;border:1px solid #34383e;border-radius:11px;background:#15171a}.ai-reading>header{display:flex;align-items:center;justify-content:space-between;gap:24px}.ai-reading>header p{color:#c95a50;font:600 9px Consolas,monospace;letter-spacing:.15em}.ai-reading>header h2{margin-top:4px;font:500 25px "Songti SC",serif}.ai-reading button{min-width:145px}.ai-reading button:disabled{opacity:.55;cursor:wait}.ai-unavailable{color:#777a7e;font-size:11px}.ai-status{margin-top:22px;padding:12px 14px;border-left:2px solid #b3453b;color:#d2a29d;background:rgba(179,69,59,.08);font-size:11px}.ai-content{margin-top:26px;padding-top:6px;border-top:1px solid #292c31;color:#c8c5be;font-size:14px;line-height:1.9}.ai-content h2{margin:27px 0 10px;color:#eee8df;font:500 25px "Songti SC",serif}.ai-content h3{margin:24px 0 8px;color:#e4d8cf;font:500 20px "Songti SC",serif}.ai-content h4{margin:20px 0 6px;color:#ddd3ca}.ai-content p{margin:10px 0}.ai-content strong{color:#eee4db}.reading-item{padding-left:12px;border-left:1px solid #703d39}
.share-dialog{width:min(620px,calc(100% - 30px));padding:0;border:1px solid #3b3e43;border-radius:13px;color:#e9e5dc;background:#17191c;box-shadow:0 26px 100px #000}.share-dialog::backdrop{background:rgba(4,5,6,.78);backdrop-filter:blur(8px)}.share-dialog>section{padding:28px}.share-dialog header{display:flex;justify-content:space-between;gap:20px}.share-dialog header p{color:#cb554b;font:9px Consolas,monospace;letter-spacing:.16em}.share-dialog h2{font:500 28px "Songti SC",serif}.share-dialog header button{width:34px;height:34px;border:1px solid #3b3e43;border-radius:7px;color:#aaa;background:transparent;cursor:pointer}.share-dialog>section>p{margin-top:17px;color:#86bc92;font-size:11px}.share-dialog section>div:not(:first-child){display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:13px}.share-dialog input{min-width:0;height:46px;padding:0 12px;border:1px solid #383c41;border-radius:7px;color:#aaa;background:#121416}.share-dialog div>button{padding:0 18px;border:1px solid #8d3a34;border-radius:7px;color:#f0d7d3;background:#702c27;cursor:pointer}.revoke-share{margin-top:18px;padding:7px 11px;border:1px solid #543936;border-radius:6px;color:#b9908c;background:transparent;cursor:pointer}.share-dialog section>span{margin-left:10px;color:#8f938f;font-size:10px}
@media(max-width:760px){.result-meta{width:100%;align-items:center;justify-content:space-between;text-align:left}.ai-reading{padding:22px 18px}.ai-reading>header{align-items:flex-start;flex-direction:column}.ai-reading button{width:100%}.share-dialog>section{padding:22px}.share-dialog section>div:not(:first-child){grid-template-columns:1fr}.share-dialog div>button{height:44px}}

/* Controls use the same restrained cinnabar system as the rest of the page. */
.casting-form input{height:54px;padding-inline:16px;color:#e7e3db;background:linear-gradient(180deg,rgba(255,255,255,.015),transparent),#15171a;caret-color:#ca5147;transition:border-color .2s,background-color .2s,box-shadow .2s}.casting-form input::placeholder{color:#62666a}.casting-form input:hover{border-color:#4b4f55;background-color:#181a1d}.casting-form input[type=number]{appearance:textfield;-moz-appearance:textfield;font-variant-numeric:tabular-nums}.casting-form input[type=number]::-webkit-inner-spin-button,.casting-form input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}
.casting-form .mode-switch input{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
html,body{max-width:100%;overflow-x:clip}
.result-meta{gap:20px}.result-meta button,.ai-reading button{min-height:42px;padding:0 18px;border-color:#874039;color:#f2d8d3;background:linear-gradient(180deg,rgba(196,71,61,.22),rgba(112,44,39,.22));box-shadow:inset 0 1px rgba(255,255,255,.04);font-size:12px;font-weight:600;letter-spacing:.04em;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}.result-meta button:hover,.ai-reading button:hover{border-color:#b44b42;background:linear-gradient(180deg,rgba(196,71,61,.34),rgba(112,44,39,.32));box-shadow:0 8px 24px rgba(85,25,21,.18),inset 0 1px rgba(255,255,255,.06)}.result-meta button:active,.ai-reading button:active{transform:translateY(1px)}.result-meta button:focus-visible,.ai-reading button:focus-visible,.casting-form input:focus-visible{outline:2px solid #d4675d;outline-offset:3px}

/* Match the Bazi application's shared dialog component. */
.share-dialog{width:min(530px,calc(100% - 32px));border-color:#3b3f45;border-radius:14px;color:#ece8df;background:#17191c;box-shadow:0 28px 90px rgba(0,0,0,.62)}.share-dialog::backdrop{background:rgba(5,6,8,.78);backdrop-filter:blur(7px)}.share-dialog>section{padding:28px 30px 22px}.share-dialog header{align-items:flex-start}.share-dialog header p{color:#c4473d;font:9px Consolas,monospace;letter-spacing:.14em}.share-dialog h2{margin-top:5px;font:500 25px/1.3 "Songti SC",serif}.share-header-actions{display:flex;align-items:center;gap:7px}.share-dialog header button{width:34px;height:34px;border:1px solid #34383e;border-radius:8px;color:#8f9296;background:transparent;font-size:20px;transition:color .2s,border-color .2s,background .2s}.share-dialog header button:hover{color:#ece8df;border-color:#555a61;background:#202328}.share-dialog header button.share-revoke{width:auto;padding:0 10px;color:#a88682;border-color:#493234;background:rgba(181,62,47,.045);font-size:10px}.share-dialog header button.share-revoke:hover{color:#efb1aa;border-color:#7b413e;background:rgba(181,62,47,.11)}.share-viewers{margin-top:18px!important;color:#9bc7a7!important;font-size:11px!important}.share-link-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;margin-top:12px!important}.share-link-row input{min-width:0;height:auto;padding:11px 12px;border:1px solid #34383e;border-radius:8px;color:#929591;background:#111316;font:10px Consolas,monospace}.share-link-row button{min-height:40px;padding:10px 15px;border:1px solid #8b3934;border-radius:8px;color:#efcbc7;background:rgba(196,71,61,.14);font-size:12px;font-weight:500;cursor:pointer;transition:border-color .2s,background .2s}.share-link-row button:hover{border-color:#c4473d;background:rgba(196,71,61,.22)}.share-dialog-status{margin:14px 0 0!important;color:#9bc7a7!important;font-size:10px!important}.share-dialog-status[hidden]{display:none!important}
@media(max-width:560px){.share-dialog>section{padding:24px 20px 20px}.share-link-row{grid-template-columns:1fr!important}.share-link-row button{width:100%}.share-dialog h2{font-size:23px}}

.mh-history{margin:0 7% 88px;padding:28px 30px 30px;border:1px solid #30343a;border-radius:12px;background:rgba(22,24,27,.72)}.mh-history>header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:1px solid #2c3035}.mh-history>header p{color:#c4473d;font:9px Consolas,monospace;letter-spacing:.14em}.mh-history>header h2{margin-top:4px;font:500 29px/1.2 "Songti SC",serif}.mh-history>header>span{color:#777b7f;font-size:10px}.history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.history-card{display:block;min-width:0;padding:18px;border:1px solid #30343a;border-radius:9px;background:#17191c;transition:border-color .2s,background .2s,transform .2s}.history-card:hover{border-color:#62413e;background:#1a191b;transform:translateY(-1px)}.history-card.active{border-color:#a33e36;background:radial-gradient(circle at 100% 0,rgba(196,71,61,.12),transparent 50%),#191719;box-shadow:inset 3px 0 #c4473d}.history-card>header,.history-card>footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.history-card>header{color:#777b80;font:9px Consolas,monospace}.history-card>header span{color:#9b807d}.history-card>strong{display:block;overflow:hidden;margin-top:12px;color:#eee5dc;font:500 18px "Songti SC",serif;text-overflow:ellipsis;white-space:nowrap}.history-card>p{display:flex;align-items:center;gap:9px;margin-top:9px;color:#a5a49f;font-size:11px}.history-card>p b{font-weight:500}.history-card>p i{color:#71423e;font-style:normal}.history-card>footer{margin-top:15px;padding-top:11px;border-top:1px solid #292d32}.history-card>footer span{font-size:9px}.status-success,.shared{color:#8cbd98}.status-pending{color:#d0a36e}.status-error{color:#dc8179}.status-none{color:#74787c}.history-empty{margin-top:20px;padding:25px;border:1px dashed #34383e;border-radius:9px;color:#71757a;text-align:center}.history-empty b,.history-empty span{display:block}.history-empty b{color:#a8aaa7;font-size:13px}.history-empty span{margin-top:4px;font-size:10px}
@media(max-width:760px){.mh-history{margin:0 0 64px;padding:22px 18px}.mh-history>header{align-items:flex-start;flex-direction:column;gap:7px}.history-grid{grid-template-columns:1fr}.history-card{padding:16px}}

.ai-content p:empty{display:none}.ai-content .reading-item{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;margin:5px 0!important;padding:7px 0 7px 12px;border-left:1px solid #703d39}.ai-content .reading-item>span:first-child{color:#b75a51;font:10px Consolas,monospace}.ai-content .reading-item>span:last-child{min-width:0}
