/* Gyeol concept 01: hanji, ink landscape, red seal. Tarot art stays unchanged. */
:root{--ink:#252b30;--muted:#77756e;--blue:#294357;--line:#ddd4c5;--paper:#f6f2e9;--gold:#8c704b;--seal:#ad4437}
body,body.entry-cover{background-color:var(--paper);background-image:url('assets/theme/hanji-landscape.webp');background-size:100% auto;background-repeat:no-repeat;background-attachment:fixed;color:var(--ink)}
.entry-landing .entry-heading br::after{content:' '}
body:not(.entry-cover){background-image:linear-gradient(#f6f2e9b8,#f6f2e9b8),url('assets/theme/hanji-landscape.webp')}.question-quote,.choice.selected,.chips span{background:#eee6d9;color:#554d40}.choice.selected{border-color:#9b8665}.example{background:#f1ece1}.result-grid>article{background:#fffdf8;border-color:var(--line)}
button:focus-visible,a:focus-visible{outline-color:var(--blue)}input:focus,textarea:focus,select:focus{outline-color:var(--blue)}
h1,h2,.page-heading h1,.report-section-head h2,.plain-category,.narrative-section-title{font-family:var(--serif)}
header{background:#f6f2e9e8;border-color:var(--line)}.header-right{color:#68645d}.entry-header-login{border-color:#c5b8a4;background:#fffaf0;border-radius:3px;color:var(--ink)}
.ink-header-nav{display:none;gap:28px;align-items:center}.ink-header-nav button{font-size:14px;padding:8px 0}.ink-header-nav button:hover{color:var(--seal)}
.entry-guest header{background:transparent}
body.entry-guest{background-image:none;isolation:isolate}
body.entry-guest::before{content:'';position:fixed;inset:300px 0 0;z-index:-1;pointer-events:none;background:url('assets/theme/hanji-landscape.webp') top center/100% auto no-repeat;mask-image:linear-gradient(to bottom,transparent,#000 90px);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 90px)}
body.entry-guest:not(.entry-cover)::before{opacity:.28}
@media(max-width:600px){body.entry-guest::before{position:absolute;inset:300px 0 auto;height:880px;background-size:auto 880px;background-position:70% top;mask-image:linear-gradient(to bottom,transparent,#000 100px,#000 75%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 100px,#000 75%,transparent)}}
.entry-guest header{max-width:1220px;height:92px;border-bottom:1px solid var(--line);padding:0 38px}.entry-guest .ink-header-nav{display:flex}.entry-guest .header-right{gap:26px}.entry-guest #breadcrumb{font-size:32px;letter-spacing:-1px;color:var(--ink)}
.entry-guest #breadcrumb::after,.brand::after{content:'結';display:inline-grid;place-items:center;background:var(--seal);color:#fff8e9;font-family:var(--serif);font-size:13px;width:19px;height:23px;margin-left:10px;border-radius:2px;transform:rotate(-3deg)}
.entry-guest main{max-width:1220px;padding:42px 38px 56px}.entry-landing{max-width:1120px}.entry-landing>.entry-heading{text-align:center;padding:0 12px}.entry-heading .eyebrow{color:#8c704b;letter-spacing:3px;font-size:11px}.entry-heading h1{font-size:40px;line-height:1.55;letter-spacing:-1.8px;margin:14px 0 16px}.entry-landing .entry-heading h1 br{display:none}.entry-heading>p:not(.eyebrow){color:#615f58;font-size:17px}.entry-landing .entry-heading>p:not(.eyebrow) br{display:none}
.entry-carousel{margin:28px 0 4px}.entry-preview-track{gap:24px}.entry-preview-slide{flex-basis:370px;opacity:.75;transform:scale(.88)}.entry-preview-slide.is-center{transform:scale(1);opacity:1}.entry-preview-slide>.entry-preview-main,.entry-preview-slide>.entry-preview-side{min-height:426px;border:1px solid #bfae91;border-radius:12px;background:#fffaf0e8;box-shadow:0 12px 30px #50402513;position:relative;overflow:hidden;padding:26px 25px}.entry-preview-slide>.entry-preview-main{border-color:#9f8867;background:linear-gradient(90deg,#a88e6326 0 4px,transparent 4px 12px,#bba07d77 12px 14px,transparent 14px),#fffaf0eb;padding-left:30px}.entry-preview-slide>.entry-preview-main:after{content:'結';position:absolute;right:14px;bottom:14px;color:var(--seal);border:1px solid var(--seal);padding:1px 4px;font-family:var(--serif);font-size:15px;border-radius:2px}.entry-mini-brand{font-size:27px}.entry-mini-caption,.entry-mini-reading p,.entry-preview-side>p{color:#777063}.entry-mini-reading{border-color:#d6c8b2}.entry-mini-evidence{background:#eee7db;color:#605548;border-radius:3px}.entry-preview table th{background:#eee7db;color:#605548}.entry-preview table td{border-color:#d6c8b2}.entry-preview table strong{color:#3b5757}.entry-preview table small{color:#777063}.entry-mini-bar>div{background:#e6dfd3;height:10px}.entry-mini-bar i{background:#788f88}.entry-mini-bar:nth-of-type(2) i{background:#c27c69}.entry-mini-bar:nth-of-type(3) i{background:#b69c73}.entry-mini-bar:nth-of-type(4) i{background:#aaa7a0}.entry-mini-bar:nth-of-type(5) i{background:#66829c}.entry-mini-daily{background:#eee7db;color:var(--ink);border:1px solid #d2c2a8;border-radius:7px;padding:19px 16px!important}.entry-mini-daily>img{width:116px;border-color:#b8a17d}.entry-mini-daily p{color:#72695c}.entry-carousel-dot span{background:#c5b59e}.entry-carousel-pause{color:#766951}.entry-start{max-width:440px;margin-top:15px}.entry-start>.primary{background:#26394a;color:#fffaf0;border-radius:36px;box-shadow:0 5px 18px #26394a14}.entry-start>p{font-size:13px;color:#777063}.entry-start .text-link{color:#625b4e}
.sidebar{background:#f7f3ebe8;border-color:#d9cfbf}.brand{font-size:29px;gap:9px}.brand .mark{background:transparent;color:var(--ink);border:1px solid #b9a486;border-radius:3px}.brand::after{margin-left:0;flex-shrink:0}.brand-en{color:#8d806b}.sidebar-note{color:#797365}.nav-item{color:#70695e;border-radius:5px}.nav-item.active{background:#e8dfd0;color:#294357}.nav-item:hover{background:#eee7db}.side-bottom{border-color:#d9cfbf}.side-bottom .preview-label{color:var(--seal)}
.panel,.daily,.service,.topic,.profile-summary,.report-card,.plain-card,.free-elements,.narrative-card,.tarot-library,.offer-card,.closing-card{background:#fffdf8;border-color:var(--line);box-shadow:0 3px 16px #50402505}.intro-panel{background:#293947}.intro-panel .eyebrow{color:#dcc6a4}.intro-panel .primary{background:#e9dbc1;color:#26394a}.intro-panel p.desc,.intro-meta{color:#dedbd2}.service:hover,.topic:hover{border-color:#af9876}.service-icon,.service.tarot .service-icon{background:#eee5d7;color:#725d42}.topic .topic-icon,.eyebrow,.preview-label{color:#8c704b}.badge{background:#eee9df;color:#746a5b}.date-pill{background:#fffaf0;border-color:var(--line)}
.primary{background:#293e50;color:#fffaf0}.primary:hover{background:#1f3242}.secondary{border-color:#cabcaa;background:#fffaf0;color:#574f43;border-radius:5px}.text-link{color:#294357}.field input,.field select,.field textarea,input[type=text],input[type=date],input[type=time],textarea,select{background:#fffdf8;border-color:#d5c9b7;color:var(--ink);border-radius:5px}.entry-gender span{background:#fffdf8;border-color:#d5c9b7}.entry-gender input:checked+span{background:#eee5d7;border-color:#88775f;box-shadow:inset 0 0 0 1px #88775f;color:#483d2f}.entry-login-status,.profile-avatar{background:#eee5d7}.additional{background:#eee6d9;border-color:#d4c3a7}.additional p:not(.eyebrow),.aside-guide ol{color:#726b5f}
.report-cover,.plain-cover,.plain-summary,.report-glance,.report-end,.report-closing,.tarot-closing{background:#eee6d9;border-color:#d4c3a7}.report-toc,.glance-links{background:#f8f3e9;border-color:var(--line)}.report-toc a,.glance-links a{color:#594f40}.report-toc a:hover,.glance-links a:hover{background:#e9dfcf}.report-section-head span,.plain-number{color:#9a7950}.report-tip,.narrative-tip,.narrative-support,.plain-action,.closing-methods,.closing-action,.element-meaning-advice{background:#f0ebe1;border-color:#cdbb9d;color:#605748}.narrative-watch,.plain-watch,.closing-signal{background:#f8eeea;border-color:#d9b8aa}.narrative-combo,.closing-balance{background:#f5ecdc;border-color:#c8aa7c}.element-track{background:#e9e3d8}.element-distribution-note,.plain-footnote,.report-caption{color:#777063}.free-birth-table th,.report-chart-table th{background:#eee7db}.free-birth-table td,.report-chart-table td{border-color:#d6cbb9}
.tarot-symbol-story{background:#f1ece1}.tarot-story-advice{background:#f5eddd;border-left-color:#a7895d}.tarot-story-advice strong,.tarot-library-grid strong{color:#8a6b43}.tarot-reading-path>span{background:#fffaf0}.draw-order{background:#273849a6}.card-back.selected{border-color:#a6885b}.tarot-card-art,.tarot-library-grid img,.daily-card-art{border-color:#b8a17d}
dialog{background:#fffaf2;color:var(--ink);border:1px solid #c8b89e;box-shadow:0 20px 70px #28201729}dialog::backdrop{background:#29272270}.notice{background:#fffaf080;border-color:var(--line);color:#766e61}footer{border-color:var(--line);color:#847b6c}.entry-guest footer{max-width:1220px}.geo-results{background:#fffaf2!important;border-color:#d5c9b7!important}.geo-results button:hover{background:#eee5d7!important}
.report-cover,.report-glance,.plain-cover{color:var(--ink)}.report-cover p:not(.eyebrow),.report-glance>div>p{color:#736959}.report-cover-note{border-color:#bca887}.report-cover-note>span,.report-cover-note strong,.report-glance .eyebrow,.glance-links a span{color:#8c704b}.glance-links a b{color:#7d6a4e}.report-lead,.narrative-core{background:#eee6d9}.report-card>p,.report-lead>p,.report-three p,.report-evidence p,.report-tip p,.narrative-core p,.narrative-card>p,.narrative-tip p,.narrative-tip strong,.tarot-library-grid p,.tarot-additional{color:#595950}.narrative-kicker,.narrative-subtitle{color:#8a7b65}.report-three>div{border-color:#d6c8b2}.report-chart-table thead th,.report-chart-table tbody th{background:#eee7db}.glance-links a:hover,.glance-links a:focus-visible{background:#e9dfcf;outline-color:#9f8867}
@media(min-width:901px){.entry-cover .workspace>header{position:relative}.entry-cover .entry-heading h1{font-size:43px}}
@media(max-width:900px){.entry-guest .ink-header-nav{gap:16px}.entry-guest .header-right{gap:16px}.entry-heading h1{font-size:33px}.entry-preview-slide{flex-basis:330px}.entry-guest main{padding:28px 24px 45px}}
@media(max-width:600px){body{background-size:auto 880px;background-position:70% 0;background-attachment:scroll}.entry-guest header{height:72px;padding:0 20px}.entry-guest #breadcrumb{font-size:26px}.entry-guest .ink-header-nav{display:none}.entry-guest main{padding:27px 18px 38px}.entry-heading h1{font-size:29px;letter-spacing:-1.2px}.entry-landing .entry-heading h1 br,.entry-landing .entry-heading>p:not(.eyebrow) br{display:block}.entry-heading>p:not(.eyebrow){font-size:15px}.entry-preview-track{gap:12px}.entry-preview-slide{flex-basis:270px}.entry-preview-slide>.entry-preview-main,.entry-preview-slide>.entry-preview-side{padding:22px 19px;min-height:405px}.entry-mini-daily>img{width:105px}.entry-start{margin-top:14px}.entry-start>p{font-size:12px}.entry-guest footer{padding:20px}.brand::after{display:none}.panel{padding:22px 18px}.header-right{gap:12px}}

.daily-entry-link{display:block;margin:0 auto 18px;text-decoration:none;font-size:16px;color:#705c42;padding:12px;border-bottom:1px solid #d6c8b2;max-width:270px}.daily-nav-link{font-size:14px;color:#72695c;text-decoration:none;white-space:nowrap}.daily-card-art img{object-fit:cover}.daily-entry-link:focus-visible,.daily-nav-link:focus-visible{outline:2px solid #8c704b;outline-offset:4px}
.entry-mini-daily>img[src="assets/daily/morning.png"],.daily-card-art img[src="assets/daily/morning.png"]{opacity:.55}

/* Give the daily invitation the same clear affordance on both home screens. */
.daily-entry-link,.daily-open-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:13px 24px;background:#354d43;color:#fff8ec;border:1px solid #354d43;border-radius:6px;font-weight:600;font-size:16px;text-decoration:none;cursor:pointer;box-shadow:0 3px 9px #354d4317;max-width:none}
.daily-entry-link:hover,.daily-open-button:hover{background:#263d33;color:#fff8ec;border-color:#263d33}
.daily-entry-link:focus-visible,.daily-open-button:focus-visible,#breadcrumb:focus-visible{outline:3px solid #b18d52;outline-offset:4px}
#breadcrumb{background:transparent;border:0;padding:4px 0;font-family:var(--serif);color:var(--ink);cursor:pointer;white-space:nowrap;text-align:left}

.daily-inner{display:grid;grid-template-columns:108px minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:24px;row-gap:24px;align-items:start;flex:1;min-height:240px;padding-top:8px}
.daily-inner .daily-card-art{grid-column:1;grid-row:1 / 3;width:108px;height:auto;aspect-ratio:3/5;margin-top:4px}
.daily-copy{grid-column:2;grid-row:1;padding-top:0}
.daily-copy .eyebrow{margin-bottom:14px}
.daily-copy h3{margin-bottom:12px}
.daily-copy>p:last-child{margin-bottom:0}
.daily-inner .daily-open-button{grid-column:2;grid-row:2;justify-self:start;align-self:end;margin-bottom:8px}
.tarot-art-open{display:block;width:100%;max-width:280px;margin:18px auto 20px;padding:0;border-radius:10px}
.tarot-art-open .tarot-card-art{width:100%;max-width:none;margin:0}
.tarot-zoom-hint{display:block;font-size:12px;color:#80715b;margin-top:9px;letter-spacing:.3px}
.tarot-art-open:hover .tarot-zoom-hint{color:#354d43}
.card-viewer-open{overflow:hidden}
.tarot-image-viewer{padding:20px 24px 24px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 28px);width:auto;background:#f8f3e9;border:1px solid #bda987;border-radius:12px;overflow:auto}
.tarot-image-viewer::backdrop{background:#151e20d9}
.tarot-image-viewer h2{font-family:var(--serif);font-size:22px;text-align:center;margin:0 38px 14px}
.tarot-image-close{position:absolute;right:12px;top:8px;font-size:28px;width:40px;height:40px;line-height:1}
.tarot-image-large{display:block;width:auto;height:auto;max-width:min(620px,calc(100vw - 76px));max-height:calc(100dvh - 122px);border-radius:7px;object-fit:contain}
@media(max-width:900px){.daily-inner{grid-template-columns:88px minmax(0,1fr);column-gap:18px}.daily-inner .daily-card-art{width:88px}.daily-inner .daily-open-button{padding:12px 16px;font-size:14px}}
@media(max-width:750px){.daily-inner{min-height:240px}.result-grid:has(.tarot-art-open){grid-template-columns:1fr;gap:20px}.result-card:has(.tarot-art-open){padding:24px 20px}.tarot-art-open{max-width:300px}.result-card:has(.tarot-art-open) h3{font-size:23px}}
@media(max-width:380px){.daily-inner{grid-template-columns:72px minmax(0,1fr);column-gap:14px}.daily-inner .daily-card-art{width:72px}.daily-copy .eyebrow{font-size:10px;letter-spacing:1px}.daily-inner .daily-open-button{padding:12px;font-size:13px}}
.tarot-image-viewer{width:fit-content;height:fit-content;overflow:hidden}
.tarot-image-large{width:min(520px,calc(100vw - 76px),calc((100dvh - 122px)*.6));height:auto;margin:0 auto}
.ink-header-nav{display:flex}
.entry-cover .ink-header-nav{display:none}
@media(max-width:600px){.ink-header-nav{display:none}}
/* Keep every service reachable on small screens, including before profile input. */
@media(max-width:750px){
  .sidebar{display:none!important}.workspace{margin-left:0;padding-bottom:0}
  .workspace>header,.entry-guest .workspace>header{height:auto;min-height:72px;padding:14px 18px 62px;position:relative;gap:12px}
  .workspace>header .header-right{gap:0}.workspace>header .header-tagline{display:none}
  .workspace>header .ink-header-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:absolute;left:12px;right:12px;bottom:8px}
  .ink-header-nav button,.ink-header-nav a{display:flex;justify-content:center;align-items:center;min-height:44px;padding:6px 2px;font-size:13px;white-space:nowrap}
  .entry-cover .workspace>header{padding-bottom:14px}.entry-cover .workspace>header .ink-header-nav{display:none}
  .workspace main{padding:24px 18px 40px}
  .workspace>header #breadcrumb{font-family:var(--serif);font-size:26px;letter-spacing:-1px}
  .daily-copy h3,.daily-copy p,.page-heading h1,.block-title h2{word-break:keep-all;overflow-wrap:anywhere}
  .field input,.field select,.field textarea{font-size:16px}
  .check{align-items:flex-start}.check input{flex-shrink:0}
  #flow-dialog{max-height:calc(100dvh - 28px);padding:32px 20px 24px;overscroll-behavior:contain}
  #flow-dialog .field-row{grid-template-columns:1fr}
  .record{align-items:flex-start;flex-direction:column}.record-actions{width:100%;justify-content:flex-end}
  .record-content h3{overflow-wrap:anywhere}.text-link{min-height:44px}
}
.entry-cover .entry-start{position:fixed;z-index:40;left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);width:calc(100% - 32px);max-width:440px;margin:0;padding:12px 14px;background:#f6f2e9f5;border:1px solid var(--line);border-radius:24px;box-shadow:0 8px 32px #26394a24;backdrop-filter:blur(12px);box-sizing:border-box}
.entry-cover .entry-start>.primary{min-height:56px;padding:15px 20px;font-size:18px}
.entry-cover .entry-start .text-link{display:block;margin:8px auto 0;font-size:14px;line-height:1.5}
.entry-cover main{padding-bottom:calc(156px + env(safe-area-inset-bottom,0px))}
@media(max-width:600px){.entry-cover .entry-start{bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:10px 12px;border-radius:22px}.entry-cover .entry-start>.primary{font-size:17px;min-height:52px}.entry-cover main{padding-bottom:calc(148px + env(safe-area-inset-bottom,0px))}}
.account-provider{margin-top:12px}.account-record-switch{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px;align-items:center}.account-import{padding:24px;margin-top:24px;border:1px solid var(--line);border-radius:16px;background:var(--paper)}.account-import-item{margin:14px 0;align-items:flex-start;overflow-wrap:anywhere}.account-delete{margin-top:24px}.account-delete p{font-size:14px}

.tarot-deck-loading{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:32px 16px;color:var(--ink,#283b48)}.tarot-deck-loading p{margin:0;font-weight:600}.tarot-deck-loading small{color:#81786b}.tarot-loading-mark{font-family:serif;font-size:32px;color:#ad4635}.tarot-loading-retry{margin-top:12px}

@keyframes gyeol-page-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}#app.page-enter{animation:gyeol-page-enter 240ms cubic-bezier(.22,.61,.36,1) both}@media(prefers-reduced-motion:reduce){#app.page-enter{animation:none}}

.tarot-result-content.page-enter{animation:gyeol-page-enter 240ms cubic-bezier(.22,.61,.36,1) both}@media(prefers-reduced-motion:reduce){.tarot-result-content.page-enter{animation:none}}

/* Keep the quiet landscape visible throughout the home viewport. */
body.entry-guest:not(.entry-cover)::before{position:fixed;inset:80px 0 0;height:auto;background-size:cover;background-position:center bottom;opacity:.4;mask-image:linear-gradient(to bottom,transparent,#000 100px);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 100px)}@media(max-width:600px){body.entry-guest:not(.entry-cover)::before{inset:70px 0 0;background-position:65% bottom}}
