/* The approved mobile sketch is the layout authority, including on a desktop. */
.place-results{border:1px solid #b48a50;border-radius:12px;background:#fcf2e2;max-height:290px;overflow:auto;margin:12px 0 4px;box-shadow:0 8px 20px #5d3c1620;scrollbar-width:thin}.place-results[hidden]{display:none}.place-results [role=option]{display:block;width:100%;padding:12px 14px;text-align:left;background:none;border:0;border-bottom:1px solid #be9b6740;color:#4f351f;min-height:58px}.place-results [role=option]:last-child{border-bottom:0}.place-results [role=option]:hover,.place-results [aria-selected=true]{background:#e8cfaa70}.place-results strong{display:block;font:16px/1.4 Georgia,serif}.place-results span{display:block;font:10px/1.6 'Segoe UI',sans-serif;margin-top:3px;overflow-wrap:anywhere}.place-selected{font-size:11px;line-height:1.6;color:#735426;padding:10px 12px;border:1px solid #bda16d55;background:#e6d5ae25;border-radius:10px;overflow-wrap:anywhere}.place-attribution{font-size:9px!important;line-height:1.6;color:#967a59;display:block!important;margin-top:15px}.place-attribution a{text-decoration:underline;text-underline-offset:2px}#place-search-status{min-height:16px;line-height:1.6;overflow-wrap:anywhere}
.birth-form>p.location-hint{display:block;font-size:10px}.birth-form button[type=submit]{scroll-margin-block:100px}
.location-details{margin:18px 0 12px;padding:12px;border:1px solid #bd945b44;border-radius:12px}.location-details summary,.calculation-details summary{font:14px/1.5 Georgia,serif;cursor:pointer}.location-details label{font-size:11px;margin:12px 0 5px}.location-details input{min-height:40px;font-size:13px}.planet-list{text-align:left;margin:20px 0}.planet-list article{padding:12px 0;border-top:1px solid #bd945b33}.planet-list strong{display:block;font:18px Georgia,serif}.planet-list span{display:block;font-size:12px;margin-top:4px}.planet-list small{display:block;font-size:10px;color:#96734c;margin-top:3px}.calculation-details{text-align:left;padding:12px;border:1px solid #bd945b33;border-radius:10px}.calculation-details p{font:11px/1.8 'Segoe UI',sans-serif!important;overflow-wrap:anywhere}.calculation-status{font:16px Georgia,serif;text-align:center;padding:25px}.real-chart{color:#9e733b}.birth-form button:disabled{opacity:.6;cursor:wait}
.reference-project-link{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;margin-top:10px;border-top:1px solid #b48c4b55;border-bottom:1px solid #b48c4b55;color:#e2c796;font:15px/1.5 Georgia,serif}.reference-project-link .icon{width:14px;height:18px}
.plan-shortcuts{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}.plan-shortcuts button{padding:8px 13px;border:1px solid #b8925b77;border-radius:20px;background:#e5cd9f33;color:#775127;font-size:11px;min-height:38px}.project-plan section[id]{scroll-margin-top:20px}
body[data-page=chart] .page-heading>.eyebrow{display:block;font-size:9px;letter-spacing:1.6px;margin:5px 0 15px}
body[data-page=chart] .page-heading h1{font-size:28px;line-height:1.17}
.chart-demo-caption{font-size:10px;line-height:1.6;text-align:center;color:#8b6b47;margin:15px 6px 23px}
#chart-design-result{margin-top:24px;scroll-margin-top:20px}
.project-steps{padding:0;list-style:none;margin:20px 0}
.project-steps li{padding:15px 0;border-top:1px solid #ba915c30}
.project-steps h3{font:19px/1.35 Georgia,serif;margin:0 0 8px}
.project-steps p,.project-plan .panel>p{font-size:12px;line-height:1.7;margin-bottom:10px}
.project-plan>.next-section>h2{font-size:26px}
.project-plan blockquote{margin:20px 0;padding:15px 18px;border-left:2px solid #bb9256;background:#d7b57d18;font:18px/1.5 Georgia,serif}
#revenue-form label{font-size:11px;margin:15px 0 6px}
#revenue-form input{font-size:15px;min-height:43px}
.revenue-results{display:grid;grid-template-columns:1fr;gap:15px;border-top:1px solid #ba915c40;margin-top:25px;padding-top:20px}
.revenue-results span{font-size:11px;color:#8b6b47;display:block}
.revenue-results output{font:32px/1.4 Georgia,serif;color:#775127;overflow-wrap:anywhere}
html{background:radial-gradient(ellipse at 50% 35%,#5b412a,#261b13 80%);min-height:100%}
body{width:100%;max-width:440px;margin:0 auto;min-height:100svh;padding:0 0 72px;background:#f7eddd;box-shadow:0 0 100px #140b0980;font-family:'Segoe UI',Arial,sans-serif;color:#332419}
body[data-page=home]{padding:0;background:#23150c}
.topbar{height:56px;padding:12px 20px;gap:8px;position:relative;background:#f7eddd;border:0;display:flex;align-items:center;justify-content:space-between}
.back-link{width:24px;height:30px;display:flex;align-items:center;flex-shrink:0}.back-link .icon{transform:rotate(180deg);width:20px}
.screen-title{font:18px/1.3 Georgia,'Times New Roman',serif;text-align:center;flex:1}
.profile-link{border:0;width:24px;height:30px;max-width:24px;display:flex;justify-content:center}.profile-link .icon{width:20px}
.desktop-nav,.brand{display:none}
.inner-page{padding:15px 18px 28px;max-width:none;min-height:calc(100svh - 170px);position:relative;isolation:isolate}
.inner-page:before{content:'';position:absolute;top:-90px;left:calc(50% - 110px);width:220px;height:220px;background:url('./assets/mandala.svg') center/contain no-repeat;opacity:.18;z-index:-1;pointer-events:none}
.inner-page:after{content:'';position:absolute;bottom:-25px;left:calc(50% - 125px);width:250px;height:250px;background:url('./assets/mandala.svg') center/contain no-repeat;opacity:.17;z-index:-1;pointer-events:none}
.bottom-nav{display:flex;position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:100%;max-width:440px;min-height:67px;z-index:20;padding:8px 4px max(9px,env(safe-area-inset-bottom));background:#fbf1e2f5;border-top:1px solid #ccab743d;backdrop-filter:blur(10px);justify-content:space-around;align-items:center;color:#785231}
.bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:4px;padding:4px;min-width:48px;flex:1}.bottom-nav .icon{width:21px;height:21px}.bottom-nav span{font-size:9px}.bottom-nav a[aria-current]{color:#2a1b0e}.bottom-nav a[aria-current] .icon{stroke-width:1.8}
.footer{padding:14px 20px;gap:15px;display:flex;flex-wrap:wrap;justify-content:center;border-top:1px solid #c8a76b26;background:#f8efdf;font-size:9px;color:#9f815f}.footer .text-button{font-size:9px;padding:0}
.page-heading{margin:5px 0 24px;text-align:center}.page-heading>.eyebrow{display:none}.page-heading h1{font-size:26px;line-height:1.15;letter-spacing:0;margin-bottom:13px}.page-heading p{font:14px/1.4 Georgia,'Times New Roman',serif;max-width:310px;margin:0 auto;color:#684a31}
.two-column,.practice-grid,.chat-layout{display:grid;grid-template-columns:1fr;gap:22px}.panel{padding:19px;border:1px solid #ccaa743b;border-radius:16px;background:linear-gradient(135deg,#fff9ed80,#f8edda66);box-shadow:0 3px 9px #77512209}.panel h2{font-size:24px;letter-spacing:0}.notice{font-size:10px;padding:10px 12px;border-color:#c5a36b30;background:#dec29610;line-height:1.6;margin-top:20px}.notice .icon{width:14px;height:17px}.fine-print{font-size:10px}.eyebrow{font-size:8px;letter-spacing:1.5px}.next-section{margin-top:24px}
.button{font-size:14px;min-height:45px;padding:11px 22px}.inner-page .primary{background:linear-gradient(#795632 0%,#422914 50%,#241609 100%);border:1px solid #ae8349;color:#fff2da;box-shadow:0 4px 13px #82501d26}.inner-page .primary .icon{width:16px}.outline{font-size:12px}.text-link{font-size:11px}.field input{font-size:14px}
/* Opening screen: original five-line message over a single uninterrupted scene. */
body[data-page=home] .topbar,body[data-page=home] .bottom-nav,body[data-page=home] .footer{display:none}
.home-page{max-width:none;overflow:visible}
.welcome-screen{height:100svh;min-height:640px;position:relative;background:url('./assets/sanctuary-background.png') center center/100% 100% no-repeat;text-align:center;color:#fff1d8;overflow:hidden}
.welcome-brand{position:absolute;top:7.6%;left:0;right:0;display:flex;flex-direction:column;align-items:center;color:#e7c381;text-shadow:0 1px 8px #211208}
.lotus-emblem{height:64px;width:88px;margin-bottom:6px}
.welcome-brand>div{font:32px/1.3 Georgia,'Times New Roman',serif;letter-spacing:7px;padding-left:7px;font-weight:400}
.welcome-brand>small{font-size:9px;letter-spacing:2.7px;margin-top:6px}
.welcome-screen h1{position:absolute;top:26.5%;left:15px;right:15px;margin:0;font:clamp(26px,3.35svh,34px)/1.2 Georgia,'Times New Roman',serif;letter-spacing:0;text-shadow:0 2px 7px #2411079c;font-weight:400}
.welcome-description{position:absolute;top:49.5%;left:20px;right:20px;margin:0;font:clamp(14px,1.9svh,17px)/1.35 Georgia,'Times New Roman',serif;color:#fff0d5;text-shadow:0 1px 5px #3b200c}
.welcome-button{position:absolute;bottom:11.2%;left:12%;right:12%;height:7.6%;min-height:51px;max-height:69px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f3d9a4 0%,#e4bd7b 45%,#b7833d 100%);border:1px solid #fff2ce;border-radius:100px;color:#2f1b0a;font:clamp(18px,2.45svh,23px) Georgia,'Times New Roman',serif;box-shadow:0 0 9px #ffdb9345,0 0 27px #d5983345,inset 0 1px 10px #fff0cc55;text-shadow:0 1px #f2d49b}
.welcome-button:hover{filter:brightness(1.06)}.welcome-down{position:absolute;bottom:6.2%;left:calc(50% - 16px);width:32px;height:24px;color:#efd59a}.welcome-down svg{width:32px;height:24px}
/* The second original screen is the actual home after entering. */
body[data-page=explore]{background:#24160d;color:#f8e8ce}
body[data-page=explore] .topbar{display:none}
body[data-page=explore] .bottom-nav{background:linear-gradient(#322113f5,#211309f5);border-top-color:#a880433d;color:#c9ab77}
body[data-page=explore] .bottom-nav a[aria-current]{color:#ffe6a9;text-shadow:0 0 10px #efa639}
body[data-page=explore] .footer{background:#25170d;color:#ad8c5e}
.explore-page{min-height:calc(100svh - 115px);background:radial-gradient(ellipse at 30% 45%,#67401f26,transparent 75%),linear-gradient(#1d120a,#25170d);padding:45px 23px 25px}
.reference-questions h1{font:29px/1.06 Georgia,'Times New Roman',serif;letter-spacing:0;color:#f6e6ca;margin:0 0 26px}
.question-list{gap:10px;display:grid}.question-list button{min-height:111px;padding:18px 16px;gap:20px;border:1px solid #b88d4e;border-radius:15px;background:linear-gradient(125deg,#52351e55,#28190d55);box-shadow:inset 0 0 14px #12090420;text-align:left;color:#f9ecd6;display:flex;align-items:center}
.question-list button>.icon:first-child{width:37px;height:37px;color:#dfbc77}.question-list button>span{font:17px/1.35 Georgia,'Times New Roman',serif;flex:1}.question-list button>.icon:last-child{width:12px;height:18px;color:#ebc780}
.reference-divider{text-align:center;color:#b99151;font-size:19px;margin:13px 0 1px;letter-spacing:0}.reference-invitation{font:16px/1.25 Georgia,'Times New Roman',serif;text-align:center;color:#d7bd97;margin:0 0 20px}.reference-actions{border-top:1px solid #b48c4b35;margin-top:22px;padding-top:7px}.reference-actions a{display:flex;align-items:center;justify-content:space-between;font:14px/1.4 Georgia,'Times New Roman',serif;color:#e2c796;padding:11px 0;border-bottom:1px solid #b48c4b26}.reference-actions .icon{width:12px;height:15px}.reference-about{display:block;text-align:center;font-size:10px;color:#ba9560;text-decoration:underline;text-underline-offset:3px;margin-top:18px}
/* Cream form and subtle fine-line ornament, as in the reference. */
.birth-form{padding:17px 13px;background:#f5e7cf61;border:1px solid #e1c89d3d}.birth-form>h2,.birth-form>p:first-of-type{display:none}.form-grid{margin:0;display:flex;flex-direction:column;gap:15px}.field label{font-size:11px;margin-bottom:4px}.field input{background:#fff7e73d;min-height:42px;padding:9px 12px;border-color:#dfc29866;border-radius:10px}.form-hint{font-size:10px!important;margin:14px 0}.consent{font-size:10px;margin:15px 0}.birth-form .button{margin-top:8px;font:16px Georgia,'Times New Roman',serif}.birth-form .button>.icon{width:15px}.chart-panel{padding:21px 14px}.north-chart{max-width:295px;margin:20px 0}.chart-panel p{font:14px/1.45 Georgia,'Times New Roman',serif}.chart-panel .pill{font-size:9px}.chart-panel .button{font-size:11px;max-width:100%;gap:8px}.feature-row{grid-template-columns:1fr;gap:20px;margin-top:22px}.feature-row h3{font-size:21px}.feature-row p{font-size:12px}
/* Original chat: a light conversational screen, not a desktop workspace. */
body[data-page=chat] .screen-title{font-size:17px}body[data-page=chat] .page-heading{margin:0 5px 19px}body[data-page=chat] .page-heading h1{display:none}body[data-page=chat] .page-heading p{font:12px/1.5 'Segoe UI',Arial,sans-serif;max-width:285px}.chat-aside{display:none}.chat-panel{padding:0;border:0;border-radius:0;background:none;box-shadow:none;min-height:calc(100svh - 240px);display:flex;flex-direction:column}.chat-panel>.notice{font-size:9px;padding:8px 10px;margin:0 0 18px}.chat-panel .messages{height:auto;min-height:125px;max-height:50svh;flex:1;gap:15px;padding:0 0 8px}.message{max-width:100%;gap:12px}.message>div{border-radius:16px;padding:13px 15px;background:#fff8eb77}.message p{font:14px/1.4 Georgia,'Times New Roman',serif;margin-top:6px}.message strong{font-size:8px;letter-spacing:.8px}.avatar{width:36px;height:36px;box-shadow:0 2px 6px #a46b2340}.avatar .icon{width:28px;height:28px}.message.user{max-width:90%}.quick-questions{display:flex;flex-direction:column;align-items:center;gap:8px;margin:10px 0 16px}.quick-questions button{padding:5px 12px;min-height:29px;border:1px solid #c6a167;border-radius:20px;background:linear-gradient(#fbebcf88,#eed6ad88);color:#634323;font:12px/1.2 Georgia,'Times New Roman',serif;max-width:100%}.chat-tools{margin:6px 0 14px}.chat-tools .text-button{font-size:9px}.chat-input{padding:6px 7px 6px 13px;border-color:#d2ae7566;background:#fcf2df88;gap:10px}.chat-input textarea{min-height:34px;max-height:85px;font-size:11px}.send-button{width:35px;height:35px;background:linear-gradient(#f3dcac,#d3ad70);border-color:#dfbf8c}.send-button .icon{width:19px}.chat-panel>.fine-print{font-size:9px}.chat-panel .notice .icon{width:12px}
/* Library photos and two-column reading cards from the approved collage. */
body[data-page=library] .page-heading{display:none}.library-toolbar{display:block;margin:0 0 17px}.search-field{width:100%}.search-field input{min-height:37px;font-size:10px;padding:9px 13px;background:#f7ead56b;border-color:#ddbe8b66}.filter-tabs{gap:6px;flex-wrap:nowrap;justify-content:space-between;margin-top:12px}.filter-tabs button{padding:6px 13px;min-height:30px;font-size:10px;border:0;background:#ead8ba55;border-radius:20px}.filter-tabs button.active{background:linear-gradient(#b9956b,#8e6841);color:#fff5e3}.article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.article-card{padding:0;border-radius:13px;border-color:#d5b17a40;box-shadow:0 3px 7px #99643114}.article-art{height:auto;aspect-ratio:1.34;position:relative;overflow:hidden}.article-art>.icon{width:40px;height:40px}.article-art .mandala{width:180px;height:180px}.article-art>img{position:absolute;max-width:none;width:1146.27%;height:auto;top:-746%;left:-680.6%}.article-art.reference-lotus>img{left:-788.05%}.article-copy{padding:11px 10px}.article-copy .eyebrow{font-size:8px;letter-spacing:.5px;margin-bottom:5px}.article-copy h2{font:15px/1.3 Georgia,'Times New Roman',serif;min-height:0;margin:0 0 13px}.article-copy .text-link{font-size:9px;gap:5px}.article-copy .text-link .icon{width:13px}.article-grid>.article-card:last-child:nth-child(odd){grid-column:1/-1}.article-grid>.article-card:last-child:nth-child(odd) .article-art{display:none}
.profile-summary{border:0;background:none;box-shadow:none;text-align:left;padding:12px 0 0;display:grid;grid-template-columns:80px 1fr;column-gap:16px}.profile-avatar{margin:0;width:78px;height:78px;border:0;background:url('./assets/sanctuary-background.png') 22% 69%/240% auto;grid-row:1/3}.profile-avatar .icon{display:none}.profile-summary h2{font:24px Georgia,'Times New Roman',serif;margin:15px 0 0;align-self:end}.profile-summary>p{font-size:12px;margin:4px 0 0;color:#a17541}.profile-summary .birth-summary,.profile-summary .profile-menu{grid-column:1/-1}.profile-summary .profile-menu{margin-top:25px;padding:4px 14px;border:1px solid #ddbf8b50;border-radius:15px;background:#fff9ed55;box-shadow:0 3px 8px #98602c0c}.profile-menu a{font:14px Georgia,'Times New Roman',serif;min-height:49px;padding:12px 0}.profile-menu a:first-child{border-top:0}.profile-menu a>.icon{width:20px;color:#b07d40}.birth-summary{font-size:11px;margin:20px 0 0;padding:16px 0}.profile-summary>p.muted{grid-column:2;font-size:11px;line-height:1.5}.button-row{gap:14px}.button-row .button{font-size:11px;width:100%}.button-row .text-button{font-size:11px}.profile-summary+.birth-form{margin-top:5px}
.week-tabs{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.week-tabs button{padding:9px 1px;min-height:60px;border-radius:10px}.week-tabs button small{font-size:7px}.week-tabs button span{font-size:17px}.sanskrit{font-size:27px;margin:22px 0 12px}.mantra-panel h2{font-size:22px}.audio-placeholder{padding:12px;gap:9px}.audio-placeholder strong{font-size:11px}.audio-placeholder small{font-size:9px}.day-panel .large-symbol{width:45px;height:45px}.mood-options{gap:4px}.mood-options small{font-size:8px}.mood-options span{padding:7px 1px;font-size:22px}.journal-panel textarea{font-size:12px}.journal-entry{padding:17px}.section-heading h2{font-size:24px}.section-heading>span{font-size:10px}.plans-grid{grid-template-columns:1fr;gap:18px}.plans-grid .panel{padding:24px}.plans-grid .panel h2{font-size:27px}
#toast{width:max-content;max-width:calc(min(100vw,440px) - 28px);bottom:85px;font-size:11px;padding:12px 17px}dialog{max-width:400px;padding:42px 25px 25px}dialog h2{font-size:27px}dialog p{font-size:13px}
.article-card:has(.reference-temple) .article-copy>.eyebrow,.article-card:has(.reference-lotus) .article-copy>.eyebrow{display:none}
.birth-form .form-grid{gap:12px}.birth-form .form-hint{font-size:9px!important;line-height:1.5;margin:12px 0}.birth-form .consent{font-size:9px;line-height:1.5;margin:11px 0}
@media(max-width:350px){.welcome-brand>div{font-size:28px}.lotus-emblem{height:57px;width:78px}.welcome-screen h1{font-size:27px}.welcome-description{font-size:14px}.welcome-button{left:10%;right:10%;font-size:19px}.explore-page{padding:35px 18px 22px}.reference-questions h1{font-size:27px}.question-list button{padding:16px 13px;gap:15px;min-height:93px}.question-list button>span{font-size:16px}.reference-invitation{font-size:15px}.inner-page{padding-inline:15px}.filter-tabs button{padding-inline:10px}.screen-title{font-size:17px}}
@media print{body{max-width:none;box-shadow:none}.bottom-nav,.topbar,.footer{display:none!important}.inner-page{padding:0}}
.birth-form>p.location-hint{display:block}
/* Readable controls retain the approved cream, chocolate and muted gold palette. */
body{font-size:16px;line-height:1.6}
.inner-page p,.page-heading p,.chart-panel p,.feature-row p,.message p{font-size:16px;line-height:1.65}
.field label,.location-details label{font-size:15px;line-height:1.5}
.field input,.location-details input,.search-field input,.journal-panel textarea,.chat-input textarea{font-size:16px;min-height:48px}
.fine-print,.notice,.consent,.form-hint,.ai-consent,.place-attribution,.place-selected,.place-results span,.planet-list small,.calculation-details p{font-size:13px!important;line-height:1.65}
.birth-form .consent,.birth-form .form-hint,.birth-form>p.location-hint{font-size:13px!important}
.button,.outline,.text-link,.text-button,.quick-questions button,.chat-topic-list .suggestion{font-size:15px;line-height:1.5;min-height:44px;white-space:normal}
.planet-list span{font-size:15px}.chart-panel .pill{font-size:12px}.chart-panel .button{font-size:15px}
.chat-current-chart{margin:0 0 24px;min-width:0}.chat-current-chart .chart-panel{margin:0}.chart-current-chart .north-chart{display:block;margin:16px auto;max-width:280px;width:100%}
.chat-current-chart .planet-list,.chat-current-chart .calculation-details{display:none}.chart-context-label{overflow-wrap:anywhere;font-size:14px!important;color:#725332}
.chat-current-chart .chart-panel>h2{font-size:24px}.chat-current-chart .chart-panel>.fine-print:last-child{display:none}
.bottom-nav{gap:1px}.bottom-nav a{min-width:0;min-height:66px;font-size:12px;line-height:1.3;padding:8px 2px;border-radius:12px;text-align:center}
.bottom-nav a .icon{width:25px;height:25px;stroke-width:1.5}
.bottom-nav a[href='#home'] .icon{color:#8b621f}.bottom-nav a[href='#chart'] .icon{color:#8b593c}.bottom-nav a[href='#chat'] .icon{color:#626f51}.bottom-nav a[href='#library'] .icon{color:#7a5a72}.bottom-nav a[href='#profile'] .icon{color:#586b78}
.bottom-nav a[aria-current=page],.bottom-nav a.active{background:#f4e2be;color:#422914;font-weight:600;box-shadow:inset 0 0 0 1px #bc965e66}
.inner-page{padding-bottom:105px}.chat-panel .messages{max-height:none;overflow:visible}.filter-tabs{flex-wrap:wrap}.filter-tabs button{font-size:13px;min-height:40px}.week-tabs button small{font-size:10px}.mood-options small{font-size:11px}.article-copy .text-link{font-size:13px}.article-copy h2{font-size:18px}.screen-title{font-size:20px}
@media(max-width:350px){.bottom-nav a{font-size:11px}.inner-page{padding-inline:12px}.panel{padding-inline:12px}.article-grid{grid-template-columns:1fr}.button-row{flex-wrap:wrap}}
