/* A calm reading surface. Phones receive a complete scene, not a banner crop. */
.mobile-art{display:none}
.sidebar nav button{min-height:44px;color:#52665a;font-size:13px}
.profile-button{min-width:44px;min-height:44px;justify-content:center}
.new-chat{min-height:44px;font-size:12px}
.welcome>p{font-size:15px;color:#e0e8dc}
.question-box textarea{font-size:16px;color:#243f34}
.question-box textarea::placeholder{color:#6c7b70}
.composer-bottom>span{font-size:12px;color:#66745f}
.primary{min-height:48px;font-size:14px}
.privacy-note{font-size:11px;color:#66745f;line-height:1.6;max-width:440px;margin:12px auto 0}
.context-strip{min-height:44px;margin-top:10px}.context-strip strong{font-size:13px;color:#52694c}
.prompt{min-height:44px}.prompt strong{font-size:12px;color:#52694c}
.app footer,.app footer>span:last-child,.app footer button{font-size:11px;color:#64725e;line-height:1.6}
.app footer button{min-height:44px}
.thread-toolbar{font-size:12px;flex-wrap:wrap;gap:12px}.thread-toolbar button{min-height:44px}.thread-toolbar span{max-width:none}
.guide-label{font-size:11px;color:#657657}.guide-body{font-size:17px;line-height:1.85}
.reply-suggestions>small,.thread-note{font-size:12px;color:#66765e}
.reply-suggestions button{font-size:14px;min-height:44px;line-height:1.5;border-radius:16px}
.thread-composer textarea{font-size:16px;min-width:0;resize:none}.thread-composer button{width:44px;height:44px;flex-shrink:0}
.thread-verse summary{font-size:13px;min-height:48px}.verse-body{font-size:15px;line-height:1.8}.verse-body small{font-size:12px}
.thread-step>span{font-size:11px}.thread-step p{font-size:16px;line-height:1.7}.thread-step .text-button,.message-tools button{font-size:12px;min-height:44px}
.thread-user{overflow-wrap:anywhere}.guide-body,.verse-body,.saved-thread strong{overflow-wrap:anywhere}
.thread-toolbar button,.reply-suggestions button,.text-button{touch-action:manipulation}
.thread-note button{min-height:44px}.thread-thinking{font-size:14px}.thread-thinking button{min-height:44px;font-size:12px}
#otherView .page-intro{font-size:15px}.library-controls input,.library-controls select{font-size:16px}.library-controls button,.library-pagination button{font-size:13px;min-height:44px}
.library-credit,.library-source-note,.source-attribution,.edition-note{font-size:12px}.library-card p{font-size:15px}
dialog{max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto}dialog p,dialog label,dialog input,dialog select{font-size:16px;line-height:1.65}dialog input,dialog select{min-height:48px}dialog .close{width:44px;height:44px;flex-shrink:0}dialog .text-button{font-size:12px}
@media(min-width:761px) and (max-width:1000px){.welcome h1{font-size:43px}.welcome h1 em{font-size:45px}.welcome{padding-left:32px}.sidebar{gap:8px}.sidebar nav button{padding-inline:10px}.new-chat{padding-inline:10px}}
@media(max-width:760px){
 .sidebar{height:64px;padding:0 18px;gap:12px;background:#fafbf8f5}
 .brand>span{font-size:23px}.brand svg{width:30px;height:30px}.profile-button{margin-left:auto}.profile-button .avatar{width:36px;height:36px;font-size:14px}
 .sidebar nav{position:fixed;left:0;right:0;bottom:0;z-index:25;margin:0;padding:8px 12px calc(8px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;background:#fafbf8f5;backdrop-filter:blur(18px);border-top:1px solid #dce5d9;box-shadow:0 -4px 24px #173e3808}
 .sidebar nav button,.sidebar nav button[data-view='ask']{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:6px 3px;min-height:48px;font-size:11px;border-radius:12px;color:#52665a}
 .sidebar nav i{display:block;font-size:18px;line-height:20px;width:auto}.sidebar nav button.active{background:#e7eee3;color:#214f41}.sidebar #savedCount{display:none}
 main{padding:12px 16px calc(96px + env(safe-area-inset-bottom));width:100%;min-width:0}
 .welcome{height:auto;min-height:0;border-radius:20px;padding:0 0 26px;display:block;background:#103d37;overflow:hidden}
 .mobile-art{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;margin:0 0 23px}
 .welcome:before,.welcome:after,.scene-art,.scene-glow,.scene-motes,.motion-toggle{display:none}
 .welcome .eyebrow{margin:0 24px;font-size:9px;letter-spacing:1.5px;line-height:1.6;max-width:none;color:#ced8be}
 .welcome h1{margin:12px 24px 10px;font-size:34px;line-height:1.15;letter-spacing:-1.3px}
 .welcome h1 em{font-size:34px;letter-spacing:-1px;line-height:1.18}
 .welcome>p{font-size:13px;max-width:none;margin:0 24px;color:#d5e1d3;line-height:1.65}
 .main-grid{margin:16px auto 0;padding:0;width:100%;max-width:560px}
 .question-box{padding:20px;border-radius:18px;box-shadow:0 8px 30px #173e3808}
 .question-heading{font-size:17px}.question-box textarea{font-size:16px;height:94px;min-height:94px;padding-top:14px;line-height:1.6}
 .composer-bottom{gap:12px;align-items:center}.composer-bottom>span{font-size:11px;max-width:130px}.primary{font-size:14px;padding:12px 18px;min-height:48px;gap:12px}
 .privacy-note{font-size:11px;padding:0 4px;max-width:340px}.context-strip strong{font-size:13px}.context-strip{margin-top:6px;padding:8px}
 .prompt-grid{display:grid;grid-template-columns:1fr 1fr;max-width:none;gap:8px;margin-top:8px}.prompt{justify-content:center;padding:10px 8px;white-space:normal;border-radius:14px;min-height:48px}.prompt strong{font-size:12px}.prompt-icon{font-size:17px}
 .app footer{margin:24px 0 0;padding:16px 0 0;gap:3px}.app footer,.app footer>span:last-child,.app footer button{font-size:11px}
 .live-thread{padding-bottom:0}.thread-toolbar{gap:8px;padding-bottom:12px;margin-bottom:18px;font-size:11px;flex-wrap:nowrap}.thread-toolbar span{margin-left:auto;max-width:90px;font-size:10px}.thread-toolbar button{font-size:12px}
 .thread-user{max-width:94%;font-size:15px;margin-top:16px;padding:12px 16px}
 .guide-body{font-size:16px;line-height:1.8}.thread-guide{margin:24px 0}.thread-verse summary{font-size:12px;padding:12px}.verse-body{padding-inline:14px}.verse-body .sanskrit{font-size:18px}
 .thread-step{padding:12px 16px}.thread-step p{font-size:15px}.reply-suggestions button{font-size:13px;padding:10px 12px;min-height:44px}.reply-suggestions>div{gap:8px}
 .thread-composer{position:sticky;bottom:calc(84px + env(safe-area-inset-bottom));padding:12px;gap:10px;border-radius:18px}.thread-composer textarea{font-size:16px;min-height:52px;max-height:132px}
 .thread-note{font-size:11px}.practice-card{padding:20px}.practice-card p{font-size:16px}.practice-card .text-button,.practice-card>button:first-child{font-size:12px;min-height:44px}
 #otherView{margin:16px 0 0}.saved-thread strong{font-size:15px;line-height:1.6}.saved-thread small{font-size:12px}.saved-thread>button:last-child{padding:12px}
 dialog{width:calc(100% - 24px);max-width:520px;padding:22px;border-radius:20px;max-height:calc(100dvh - 24px)}dialog h2{font-size:26px}dialog .sanskrit{font-size:21px}
}
@media(max-width:360px){.welcome h1,.welcome h1 em{font-size:30px}.welcome h1,.welcome>p,.welcome .eyebrow{margin-left:20px;margin-right:20px}.thread-toolbar span{display:none}.question-box{padding:16px}.prompt strong{font-size:11px}}
/* Keep the mobile dock relative to the viewport, not the filtered header. */
@media(max-width:760px){.sidebar{backdrop-filter:none}}
