/* A shared mobile web layout. Desktop geometry and model calculations remain independent. */
.mobile-brand,.mobile-toolbar{display:none}
@media(max-width:900px){
 html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:150px}
 body{min-width:0;overflow-wrap:break-word}
 .sidebar{display:none}.shell{margin-left:0;min-width:0}
 .topbar{position:sticky;top:0;z-index:12;min-height:calc(64px + env(safe-area-inset-top));height:auto;flex-wrap:nowrap;padding:calc(8px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left));gap:8px;background:var(--surface);border-bottom:1px solid var(--line)}
 .breadcrumb{display:none}.mobile-brand{display:flex;align-items:center;gap:8px;text-decoration:none;min-height:44px;color:var(--text);font:700 14px 'Manrope',Arial;letter-spacing:.2px;flex-shrink:0}.mobile-brand>span{display:grid;place-items:center;width:30px;height:30px;border-radius:6px;background:var(--green);color:var(--navy);font-size:18px;letter-spacing:-2px;padding-right:2px}
 .workspace-actions{margin-left:auto;gap:8px}.theme-toggle{min-height:44px;min-width:44px;font-size:11px;padding:8px 10px}.access-pill{font-size:10px;padding:7px 8px}.access-pill>span{width:5px;height:5px}
 main{padding:14px max(16px,env(safe-area-inset-right)) max(25px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));max-width:900px;min-width:0}
 .mobile-toolbar{position:sticky;top:calc(64px + env(safe-area-inset-top));z-index:11;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;background:var(--bg);padding:0 0 15px;margin:0 0 9px}.mobile-toolbar label{font-size:11px;color:var(--text-muted)}.mobile-toolbar select{display:block;width:100%;margin-top:6px;min-height:46px;background:var(--surface);border-color:var(--line);color:var(--text);font-size:16px}.mobile-toolbar button{min-height:46px;background:var(--accent-soft);border:1px solid var(--line);color:var(--accent);border-radius:5px;padding:9px 13px;font-size:12px}
 .page-heading,.workspace-tabs{display:none}.company-search:not(.mobile-search-open){display:none}.company-search{display:grid;grid-template-columns:1fr;gap:13px;padding:16px;margin-bottom:22px;z-index:10}.search-main>label,.search-target{font-size:11px;letter-spacing:.6px}.search-input-row{gap:8px}.search-input-row input{font-size:16px;line-height:1.5;min-height:46px}.search-input-row input::placeholder{font-size:13px}.search-input-row .button{min-height:46px;min-width:60px;font-size:12px;padding:10px}.search-input-row .button>span{display:none}.search-target{border:0;padding:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center}.search-target select{width:100%;margin:0;padding:10px;font-size:16px;min-height:44px}.search-under{display:block;padding-top:12px}.search-under p{font-size:12px;line-height:1.8}.search-under .text-button{font-size:12px;display:block;min-height:44px;margin-top:5px;text-align:left}.search-results{left:0;right:0;max-height:50vh;max-height:50dvh}.search-results button{min-height:58px;padding:12px;gap:12px}.result-symbol{font-size:12px;min-width:44px}.result-name{font-size:12px;overflow-wrap:anywhere}.result-name small{font-size:11px}
 input:not([type="checkbox"]),select,textarea,.calc-form label input,.compare-company select,.model-company select,.ranking-controls select,.ranking-controls input,.earnings-controls input[type="search"],.editor-grid input{font-size:16px;line-height:1.45;min-height:46px;max-width:100%;border-color:var(--line)}
 button,summary{min-height:44px;min-width:44px}button{touch-action:manipulation}summary{display:flex;align-items:center;gap:7px;cursor:pointer;line-height:1.6}summary::before{content:'▸';font-size:13px;flex-shrink:0}details[open]>summary::before{content:'▾'}
 .button,.tool-title .button,.tool-actions .button{font-size:12px;min-height:44px;padding:10px 13px;gap:10px;white-space:normal}.text-button{font-size:12px;line-height:1.6;min-height:44px;text-align:left}.icon-btn{min-width:44px;min-height:44px;width:44px;height:44px;flex-shrink:0}
 .tool-title{display:flex;align-items:start;gap:15px;flex-wrap:wrap;margin-bottom:17px}.tool-title>div:first-child{flex:1;min-width:0}.tool-title h2{font-size:23px;line-height:1.3;margin-bottom:9px}.tool-title p{font-size:13px;line-height:1.8}.tool-title .eyebrow{font-size:10px;line-height:1.8;letter-spacing:1px;margin-bottom:10px}.eyebrow{font-size:10px;line-height:1.7;letter-spacing:1px}.tool-actions{max-width:none;flex-wrap:wrap;justify-content:flex-start;gap:9px;width:100%}.tool-actions .button{width:auto}.card{padding:20px;min-width:0}.note-box{font-size:12px;line-height:1.9;padding:16px}.small-copy,.input-help,.calc-note,.projection-foot,.data-note,.history-note,.table-note,.ranking-notes p,.market-status,.earnings-status,.earnings-method,.source-foot,.source-foot small{font-size:12px;line-height:1.85}.data-note{display:block;margin:13px 0 20px}.data-note>span{display:block;max-width:none;overflow-wrap:anywhere}.data-actions{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:9px}.error{font-size:12px;line-height:1.8}.main-footer{font-size:11px;line-height:1.8;display:block;padding-top:25px}.main-footer>span{display:block;margin:0 0 8px}
 .company-card{display:block;padding:19px}.company-card h2{font-size:21px;line-height:1.5;overflow-wrap:anywhere}.company-card h2>span{font-size:12px;display:inline-block;margin-left:8px}.subline{font-size:12px;line-height:1.7}.company-identity{gap:12px}.company-mark{width:44px;height:44px;font-size:23px}.company-right{display:flex;flex-direction:column;align-items:stretch;gap:16px;margin-top:18px;padding-top:16px}.company-right .company-select{order:0}.company-select{font-size:11px;gap:7px}.company-select select{max-width:none;width:100%}.price{text-align:left;font-size:29px;letter-spacing:-.7px}.price small{font-size:11px;line-height:1.7;max-width:none;letter-spacing:0}.metrics-row{grid-template-columns:1fr 1fr;margin-bottom:22px}.metric{padding:16px;min-width:0}.metric-label,.metric small{font-size:11px;line-height:1.65}.metric .num{font-size:23px;overflow-wrap:anywhere}.metric:nth-child(3),.metric:nth-child(4){border-top:1px solid var(--line)}.metric:nth-child(3):before{display:none}
 .overall-card{grid-template-columns:1fr}.overall-value{padding:22px;border-right:0;border-bottom:1px solid var(--line);text-align:left}.overall-caption,.coverage-label,.overall-equation{font-size:11px;line-height:1.9}.overall-breakdown{padding:22px 20px}.overall-heading{align-items:start;gap:12px;flex-wrap:wrap}.overall-heading h2{font-size:19px}.overall-subtitle{font-size:12px;line-height:1.8}.factor-minis{grid-template-columns:1fr 1fr;gap:16px}.factor-mini-label,.factor-mini-value small{font-size:11px}.factor-mini-value{font-size:17px}.factor-grid{grid-template-columns:1fr;gap:16px}.factor-card{padding:21px}.factor-title h3{font-size:18px}.factor-title>span,.factor-value>span,.factor-contribution{font-size:11px}.factor-value strong{font-size:34px}.factor-description,.factor-card dl>div,.factor-method,.factor-method p{font-size:13px;line-height:1.8}.factor-method summary{font-size:12px}.company-context{padding:17px}.company-context p{font-size:13px;line-height:1.9}.company-context small{font-size:12px;line-height:1.8}.section-heading{align-items:start;flex-wrap:wrap;gap:10px}.section-heading h2{font-size:19px}.section-heading p,.section-heading>span{font-size:12px;line-height:1.8}.performance-metrics{grid-template-columns:1fr 1fr;gap:12px}.performance-metrics>div{padding:18px}.performance-metrics span,.performance-metrics small{font-size:11px;line-height:1.7}.performance-heading>span{font-size:11px;max-width:none;text-align:left}.history-card{padding:20px 12px}.history-card h3{font-size:15px}.next-row{grid-template-columns:1fr}.next-card strong{font-size:14px}.next-card small{font-size:12px;line-height:1.8}.next-card{min-height:86px;padding:18px}
 .comparison-selectors{grid-template-columns:1fr;gap:10px}.compare-company{display:flex;gap:13px;padding:18px}.compare-company .company-mark{width:40px;height:40px;font-size:21px}.compare-company label{font-size:11px;min-width:0}.compare-company select{max-width:none;width:100%;font-size:16px;line-height:1.6;padding:5px 0}.swap{justify-self:center;min-width:44px;min-height:44px;width:44px;height:44px;font-size:22px}.compare-grid{grid-template-columns:1fr}.table-card{padding:8px}.table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}th,td{font-size:12px;line-height:1.6;padding:14px 12px}td:first-child{font-size:12px}th{font-size:11px}.table-wrap table{min-width:400px}.compare-signals{padding:20px}.compare-signals h3{font-size:17px}.signal-row{grid-template-columns:44px minmax(0,1fr) 32px;font-size:11px;gap:8px}.signal-name{font-size:12px;line-height:1.7}.legend{font-size:11px;line-height:1.8;gap:10px 16px;flex-wrap:wrap}
 .modeller-grid,.calculator-grid{grid-template-columns:1fr;gap:18px}.model-inputs{display:block;padding:21px 18px}.model-inputs>div{margin-bottom:20px}.model-inputs>div:first-child{margin-bottom:22px}.model-inputs .model-company{margin-bottom:19px}.model-company label{font-size:11px;min-width:0;width:100%}.model-company select{width:100%}.model-base{font-size:12px;padding:13px;gap:18px}.model-base strong{font-size:17px}.assumption-header{grid-template-columns:.8fr 1fr 1fr;gap:10px;font-size:10px;line-height:1.8}.assumption-row{grid-template-columns:.8fr minmax(0,1fr) minmax(0,1fr);gap:10px}.assumption-row label{font-size:12px}.assumption-row input{padding:10px 8px}.chart-card,.benchmark-chart-card{padding:20px 12px}.chart-header{display:flex;align-items:start;gap:12px;flex-wrap:wrap}.chart-header h3{font-size:16px;line-height:1.6}.chart-header p{font-size:12px;line-height:1.8}.chart{height:auto;min-height:0;overflow:visible;width:100%}.chart text{font-size:12px}.market-chart{max-height:none;min-height:0}.segmented button{font-size:12px;min-height:44px;min-width:44px;padding:10px 12px}.chart-details{font-size:12px}.scenario-cards{grid-template-columns:1fr;gap:12px}.scenario-card{padding:19px}.scenario-card .label,.scenario-card small{font-size:12px;line-height:1.8}.scenario-card .num{font-size:27px}.calc-form{display:block;padding:21px}.calc-form>label{margin:20px 0}.calc-form label{font-size:12px;line-height:1.8}.calc-form .two-fields{grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.calc-form input{padding:12px}.unit-select select{width:100%}.calc-metrics{grid-template-columns:1fr}.calc-metrics>div{padding:18px 20px;border-right:0;border-bottom:1px solid var(--line)}.calc-metrics>div:last-child{border-bottom:0}.calc-metrics .metric-label{font-size:12px}.calc-metrics .num{font-size:25px;overflow-wrap:anywhere}
 .market-main-grid,.benchmark-grid{grid-template-columns:1fr;gap:16px}.fear-card{padding:23px}.fear-top{display:block}.fear-top h3{font-size:23px;line-height:1.5}.source-chip{font-size:11px;margin-top:10px;padding:5px 7px}.fear-reading>span,.fear-reading>b,.fear-priors span,.fear-scale{font-size:12px}.fear-explanation{font-size:13px;line-height:1.9}.fear-priors strong{font-size:22px}.breadth-box{padding:18px}.breadth-box>span,.breadth-box small{font-size:12px;line-height:1.8}.breadth-box>strong{font-size:14px}.breadth-box .text-button{font-size:12px}.benchmark-card{padding:22px}.benchmark-card h3{font-size:16px}.benchmark-card>div:first-child>span,.benchmark-card>strong small,.benchmark-change small,.benchmark-card>p,.benchmark-time,.sentiment-components td:last-child{font-size:12px;line-height:1.8}.benchmark-card>strong{font-size:30px}.benchmark-change{font-size:15px}.benchmark-card>p{margin:14px 0}.benchmark-time a{padding:8px;display:inline-block}.sentiment-components{font-size:13px;padding:20px}.sentiment-components>summary{font-size:13px}.sentiment-components>p{font-size:13px;line-height:1.9}
 .ranking-controls{grid-template-columns:1fr;gap:16px;padding:20px}.ranking-controls label{font-size:12px}.ranking-summary{grid-column:auto;min-width:0;padding-top:14px}.ranking-summary strong,.ranking-summary span{display:block;font-size:12px;line-height:1.8}.ranking-table-card{padding:8px}.ranking-table-card table{min-width:800px}.ranking-table-card th,.ranking-table-card td{font-size:12px;padding:15px 12px}.ranking-table-card td:nth-child(2)>strong{font-size:14px}.ranking-table-card td:nth-child(2)>span,.ranking-table-card td:nth-child(2)>small,.ranking-table-card .text-button,.unrated{font-size:12px;line-height:1.8}.ranking-table-card td:nth-child(2){min-width:200px}.ranking-table-footer{display:block;padding:18px 6px 0}.ranking-table-footer>span{font-size:12px;display:block;line-height:1.9}.ranking-table-footer .button{font-size:12px;margin-top:12px}.ranking-progress strong,.ranking-progress .text-button{font-size:12px}.ranking-progress>div{align-items:start}.ranking-notes{font-size:12px}.ranking-notes p{font-size:12px}
 .picks-grid{grid-template-columns:1fr;gap:17px}.pick-card{padding:23px}.pick-top,.pick-top>b,.pick-price>small,.pick-bottom>small,.pick-source{font-size:12px;line-height:1.7}.pick-card h3{font-size:23px;line-height:1.5}.pick-price{font-size:33px}.pick-metrics span{font-size:12px;line-height:1.8}.pick-metrics strong{font-size:19px}.picks-intro,.pick-note-context,.pick-incomplete,.personal-thesis>p{font-size:13px;line-height:1.9}.personal-thesis>span{font-size:11px}.personal-thesis .text-button{font-size:12px}.personal-thesis{padding:17px}.pick-source{display:inline-flex;align-items:center;min-height:44px}
 .learning-intro{grid-template-columns:1fr;gap:20px;padding:22px}.learning-intro h3{font-size:23px}.learning-intro p{font-size:13px;line-height:1.95}.learning-rule{display:block;border:0;border-top:1px solid var(--line);padding:18px 0 0}.learning-rule strong{font-size:13px}.learning-rule span{font-size:12px;line-height:1.9;margin:8px 0 15px}.lesson-grid,.learning-bottom{grid-template-columns:1fr;gap:16px}.lesson{padding:22px}.lesson-top{gap:10px;flex-wrap:wrap}.lesson-top h3{font-size:18px}.lesson-top>small{font-size:11px}.lesson h4,.lesson>p,.lesson-detail p,.learning-bottom p,.worked-model>p{font-size:13px;line-height:1.95}.lesson-detail summary{font-size:12px}.formula-box{font-size:12px;line-height:1.9;overflow-wrap:anywhere}.learning-bottom h3{font-size:18px}.worked-model{padding:22px 12px}.worked-model td{font-size:12px}.worked-model th{font-size:11px}.worked-model .section-heading>span{font-size:12px;max-width:none;text-align:left}.guide-glossary dl{grid-template-columns:1fr;gap:20px}.guide-glossary dt{font-size:13px}.guide-glossary dd{font-size:13px;line-height:1.9}
 .earnings-intro span{font-size:11px;line-height:1.7}.earnings-controls{display:block;padding:20px}.earnings-controls>label:first-child{font-size:12px}.earnings-pick-filter{font-size:13px;min-height:44px;margin-top:15px}.earnings-pick-filter input{flex-shrink:0}.earnings-list{padding:21px 0 17px}.earnings-list-heading{padding:0 18px 20px}.earnings-list-heading .eyebrow{font-size:10px}.earnings-list-heading h3{font-size:21px}.earnings-list-heading>span{font-size:12px}.earnings-row{padding:20px 17px;gap:12px}.earnings-company>strong{font-size:14px}.earnings-company>strong>small{display:block;margin-left:0;font-size:12px;line-height:1.8}.earnings-company>span,.earnings-company>small{font-size:12px;line-height:1.8}.earnings-date{width:43px}.earnings-date strong{font-size:24px}.earnings-date small{font-size:11px}.earnings-more{font-size:12px}.earnings-method summary,.earnings-method details p{font-size:13px;line-height:1.9}.earnings-result-grid{grid-template-columns:1fr;gap:17px}.earnings-result-grid>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 16px;align-items:center}.earnings-result-grid strong{font-size:24px;margin:0}.earnings-result-grid small{grid-column:1/-1}.earnings-result-grid>div>span,.earnings-result-grid small,.earnings-basis,.earnings-report-facts span,.earnings-brief-sources small{font-size:12px!important;line-height:1.8!important}.earnings-report-facts{grid-template-columns:1fr;gap:16px;padding:17px}.earnings-report-facts>div{display:flex;align-items:center;justify-content:space-between;gap:14px}.earnings-report-facts strong{font-size:20px;margin:0}.earnings-takeaways li,.earnings-takeaways p{font-size:13px!important;line-height:1.9!important}.earnings-takeaways h3{font-size:21px!important}.earnings-timing strong,.earnings-timing>span,.earnings-brief-meta{font-size:12px}.earnings-brief-meta>b{font-size:11px}.earnings-brief-sources a{font-size:12px;min-height:44px;display:flex;align-items:center}
 dialog,#earnings-dialog{max-width:calc(100vw - 24px);width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));margin:auto;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:10px;overflow-wrap:anywhere}.dialog-header{position:sticky;top:0;z-index:2;align-items:start;padding:17px 18px;background:var(--surface);gap:12px}.dialog-header h2{font-size:21px;line-height:1.45;overflow-wrap:anywhere}.dialog-body{padding:20px 18px}.dialog-body p{font-size:13px;line-height:1.9}.dialog-body h3{font-size:18px;line-height:1.6}.editor-grid{grid-template-columns:1fr;gap:17px}.editor-grid label{font-size:12px}.editor-grid input{padding:12px}.editor-actions{display:flex;flex-wrap:wrap;gap:10px}.editor-actions .button{flex:1;min-width:100px}#pick-note-form label{font-size:13px;line-height:1.8}#pick-note-form textarea{font-size:16px;line-height:1.7;min-height:180px}.toast{left:16px;right:16px;bottom:max(16px,env(safe-area-inset-bottom));width:auto;max-width:none;transform:none;font-size:12px;line-height:1.8;padding:14px 17px}
}
@media(min-width:601px) and (max-width:900px){.benchmark-grid,.picks-grid{grid-template-columns:1fr 1fr}.fear-top{display:flex}.source-chip{margin:0}.tool-actions{width:auto}.factor-grid,.lesson-grid{grid-template-columns:1fr 1fr}.calc-metrics{grid-template-columns:1fr 1fr 1fr}.calc-metrics>div{border-bottom:0;border-right:1px solid var(--line)}.calc-metrics>div:last-child{border-right:0}.scenario-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.scenario-card .num{font-size:21px}.company-right{flex-direction:row;align-items:center}.company-select{min-width:0;flex:1}.price{flex:1}.comparison-selectors{grid-template-columns:1fr 44px 1fr}}
@media(max-width:360px){.mobile-brand{font-size:12px;gap:6px}.mobile-brand>span{width:27px;height:29px;font-size:17px}.topbar{padding-inline:12px;gap:6px}.workspace-actions{gap:6px}.theme-toggle{font-size:10px;padding:7px 8px;gap:5px}.access-pill{font-size:9px;padding:6px}.access-pill>span{display:none}.tool-title h2{font-size:22px}.fear-reading>strong{font-size:59px}.fear-priors{gap:7px}.factor-minis{gap:13px}.model-base strong{font-size:15px}.model-base{gap:12px}.assumption-header{font-size:9px}.earnings-list-heading{gap:9px}.earnings-list-heading h3{font-size:19px}}
@media(max-width:900px){.overall-value>.eyebrow{font-size:11px}.overall-value p{font-size:12px;line-height:1.8}.overall-top{flex-wrap:wrap;align-items:start}.overall-top h2{font-size:20px;line-height:1.6}.overall-top .text-button{font-size:12px}.overall-breakdown>p{font-size:13px;line-height:1.9}.overall-factor-list{grid-template-columns:1fr 1fr;gap:15px}.overall-factor-list>div{font-size:12px;gap:8px}.overall-factor-list>div>span,.overall-factor-list small,.overall-factor-list strong small{font-size:11px}.overall-factor-list strong{font-size:17px}.model-coverage{font-size:11px;line-height:1.9}.factor-heading{gap:10px;flex-wrap:wrap}.factor-heading h3{font-size:18px}.factor-heading>span{font-size:11px}.factor-number>span,.factor-number>small{font-size:11px;line-height:1.8}.factor-number>small{max-width:125px}}
.ranking-ticker{display:block;background:transparent;padding:0;color:var(--accent);font-size:11px;font-weight:600;text-align:left}
@media(max-width:900px){.calc-form .unit-select select{font-size:16px;min-height:46px}.ranking-ticker{font-size:14px;min-height:44px}.table-wrap::before{content:'Swipe sideways for all columns →';display:block;position:sticky;left:0;width:max-content;max-width:100%;font-size:11px;line-height:1.8;color:var(--text-muted);padding:8px 0 12px}}
@media(min-width:601px){.table-wrap::before{display:none}}
