/* The lower-page sections follow SoloTrainer.net's quiet FAQ and footer. */
.quiet-action{display:inline-flex;align-items:center;justify-content:center;min-height:var(--touch);padding:var(--space-near) var(--space-group);border:0;border-radius:var(--radius-pill);background:var(--quiet);color:var(--ink);font-size:var(--label);font-weight:500;text-decoration:none}
.quiet-action:hover{background:var(--fill-hover);text-decoration:none}
.guide-author,.reading-body>.guide-sources,.reading-body>.faq-section,.landing-body>.faq-section{grid-column:1/-1}
.guide-author,.guide-sources{display:grid;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));gap:var(--grid-gap);padding-block:var(--space-block);margin:0;border-top:var(--line) solid var(--rule)}
.guide-author>h2,.guide-sources>h2{grid-column:1/5;font-family:Sentient,Georgia,serif;font-size:var(--title);font-weight:400;line-height:1.1;margin:0}
.guide-author-copy,.source-copy{grid-column:5/-1;min-width:0;--source-columns:8}
.guide-author-copy p,.source-copy>p{max-width:65ch;color:var(--muted);font-size:var(--body);line-height:1.6;margin:0 0 var(--space-part)}
.source-facts{display:grid;grid-template-columns:repeat(var(--source-columns),minmax(0,1fr));gap:var(--grid-gap);margin:0 0 var(--space-part)}
.source-facts>div{grid-column:span 2;min-width:0}.source-facts>div:last-child{grid-column:5/-1}
.source-facts dt{font-size:var(--small);font-weight:400;color:var(--muted);margin-bottom:var(--space-near)}
.source-facts dd{margin:0;min-height:var(--space-section);display:flex;align-items:center;font-size:var(--label);font-variant-numeric:tabular-nums;color:var(--ink)}
.source-facts .source-count{font-family:Sentient,Georgia,serif;font-size:var(--figure);line-height:1.15;font-weight:400}
.source-links{display:flex;gap:var(--space-near);flex-wrap:wrap}
.faq-section{display:grid;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));gap:var(--space-section) var(--grid-gap);padding-block:var(--space-page);margin:0;border-top:var(--line) solid var(--rule)}
.prose.faq-section>h2{grid-column:3/11;text-align:center;font-size:var(--title);line-height:1.1;margin:0 0 var(--space-group)}
.faq-list{grid-column:3/11;min-width:0}
.faq-item{border-top:var(--line) solid var(--rule)}.faq-item:last-child{border-bottom:var(--line) solid var(--rule)}
.faq-item>summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-part);min-height:var(--space-page);padding-block:var(--space-group);list-style:none;cursor:pointer;color:var(--ink)}
.faq-item>summary::-webkit-details-marker{display:none}
.prose .faq-item h3{font-size:var(--label);font-weight:500;line-height:1.5;margin:0;text-wrap:pretty}
.faq-indicator{flex:none;display:flex;align-items:center;justify-content:center;width:var(--space-part);height:var(--space-part)}
.faq-minus{display:none}.faq-item[open] .faq-plus{display:none}.faq-item[open] .faq-minus{display:block}
.prose .faq-answer p{font-size:var(--body);color:var(--muted);line-height:1.6;margin:0;padding:0 var(--space-block) var(--space-part) 0;max-width:75ch}
.site-footer{display:grid;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));gap:var(--space-section) var(--grid-gap);padding-block:var(--space-block);margin-top:var(--space-block);align-items:start}
.site-footer .footer-brand{grid-column:1/5;font-size:var(--heading);font-weight:500;max-width:16ch;line-height:1.2;margin:0;color:var(--ink)}
.footer-apps{grid-column:5/9}.footer-contact{grid-column:9/-1}
.site-footer h3{font-size:var(--label);font-weight:500;line-height:1.5;color:var(--ink);margin:0 0 var(--space-near)}
.site-footer nav a{display:flex;align-items:center;min-height:var(--touch);width:fit-content;font-size:var(--label);text-decoration:none;color:var(--muted)}
.site-footer nav a:hover{color:var(--ink);text-decoration:underline}
.site-footer .footer-meta{grid-column:1/11;font-size:var(--small);line-height:1.6;margin:0;align-self:center}
.site-footer>.footer-top{grid-column:11/-1;justify-self:end;align-self:center;font-size:var(--small);min-height:var(--touch)}
@media(min-width:768px) and (max-width:1023px){.guide-author>h2,.guide-sources>h2{grid-column:1/3}.guide-author-copy,.source-copy{grid-column:3/-1;--source-columns:6}.prose.faq-section>h2,.faq-list{grid-column:2/8}.site-footer .footer-brand{grid-column:1/4}.footer-apps{grid-column:4/6}.footer-contact{grid-column:6/-1}.site-footer .footer-meta{grid-column:1/7}.site-footer>.footer-top{grid-column:7/-1}}
@media(max-width:767px){.guide-author,.guide-sources{padding-block:var(--space-section);row-gap:var(--space-part)}.guide-author>h2,.guide-sources>h2,.guide-author-copy,.source-copy{grid-column:1/-1;--source-columns:4}.source-facts>div:last-child{grid-column:1/-1}.source-links{gap:var(--space-related)}.faq-section{padding-block:var(--space-block);row-gap:var(--space-part)}.prose.faq-section>h2,.faq-list{grid-column:1/-1}.prose.faq-section>h2{text-align:left;margin-bottom:var(--space-near)}.faq-item>summary{gap:var(--space-group)}.prose .faq-answer p{padding-right:var(--space-section)}.site-footer{row-gap:var(--space-part);margin-top:var(--space-section);padding-block:var(--space-section)}.site-footer .footer-brand{grid-column:1/-1;max-width:none}.footer-apps{grid-column:1/3}.footer-contact{grid-column:3/-1}.site-footer .footer-meta{grid-column:1/-1}.site-footer>.footer-top{grid-column:1/-1;justify-self:start}}
@media print{.faq-item>.faq-answer{display:block!important}.faq-indicator,.footer-top{display:none!important}.guide-author,.guide-sources,.faq-section,.site-footer{display:block}.guide-author>h2,.guide-sources>h2{margin-bottom:var(--space-group)}}
/* One grid and one set of type sizes across app pages, guides and comparisons. */
.landing .hero-copy{grid-column:1/-1}.landing .hero{padding-block:var(--space-block)}
.landing .breadcrumbs{padding-left:0}.landing-body>.prose{grid-column:1/-1}
.landing-body>.prose>p{max-width:75ch}.prose .platform-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.app-card{min-width:0}.app-card-link{display:flex;gap:var(--space-related);align-items:center;min-height:var(--touch);text-decoration:none;margin-bottom:var(--space-group)}
.app-card-link:hover{text-decoration:underline}.prose .app-card-link h3{font-size:var(--heading);font-weight:500;margin:0}
.app-card-logo{width:40px;height:40px;border-radius:var(--radius-control);object-fit:contain;flex:none;background:var(--logo-canvas)}
.prose .app-card .app-card-price{font-size:var(--label);font-weight:500;color:var(--ink);margin-bottom:var(--space-near)}
.plan-note>summary,.research-note>summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-group);cursor:pointer;min-height:var(--touch);font-size:var(--label);font-weight:500;list-style:none}
.plan-note>summary::-webkit-details-marker,.research-note>summary::-webkit-details-marker{display:none}
.plan-note>summary::after,.research-note>summary::after{content:"";display:block;flex:none;width:var(--space-related);height:var(--space-related);background:currentColor;mask:url('/icons/solo/actions/chevron-right.svg') center/contain no-repeat}
.plan-note[open]>summary::after,.research-note[open]>summary::after{transform:rotate(90deg)}
.prose .plan-note p,.prose .research-note-body p{font-size:var(--body);color:var(--muted);line-height:1.6;margin:var(--space-related) 0 var(--space-group);max-width:75ch}
.research-note{border-block:var(--line) solid var(--rule);padding-block:var(--space-near)}.research-note-body{padding-bottom:var(--space-group)}
.guide-topics{font-size:var(--small);line-height:2;margin-top:var(--space-part)}
.comparison-matrix{table-layout:fixed}.comparison-matrix th:first-child{width:24%}.comparison-matrix thead th:not(:first-child){text-align:center}
.comparison-matrix td{vertical-align:middle}.comparison-matrix th{font-weight:500}
.feature-status>summary{background:transparent;color:var(--ink);justify-content:center;border-radius:var(--radius-control);min-height:var(--touch)}
.feature-status>summary::before{display:none}.feature-status>summary:hover{background:var(--quiet)}
.feature-status .disclosure-icon{margin-left:var(--space-near);opacity:.6}
.capability-mark{display:block;flex:none;width:var(--space-part);height:var(--space-part);background:var(--muted);mask:var(--capability-icon) center/contain no-repeat}
.feature-status[data-status=documented] .capability-mark,.feature-status[data-status=conditional] .capability-mark{background:var(--success)}
.feature-status[data-status=unavailable] .capability-mark{background:var(--danger)}
.feature-status[data-status=conditional] .capability-mark{outline:var(--line) dashed var(--success);outline-offset:3px;border-radius:var(--radius-pill)}
.feature-status[open] p{color:var(--muted)}
@media(min-width:768px) and (max-width:1023px){.prose .platform-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.landing .hero-copy{grid-column:1/-1}}
@media(max-width:767px){.prose .platform-cards{grid-template-columns:1fr}.landing .hero{padding-block:var(--space-section)}.comparison-matrix{min-width:540px}.comparison-matrix th:first-child{width:120px}.comparison-matrix th,.comparison-matrix td{padding:var(--space-related)}.app-card-link{margin-bottom:var(--space-related)}}
@media(forced-colors:active){.capability-mark{background:CanvasText!important}}
.price-section>.guide-topics{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-near) var(--space-group);min-width:0;margin-block:var(--space-part)}
.guide-topics a{display:inline-flex;align-items:center;min-height:var(--touch);max-width:100%;font-size:var(--label)}
.feature-table thead th:not(:first-child){text-align:center}.feature-table thead th a{justify-content:center}
.feature-status>summary{position:relative}.feature-status .disclosure-icon{position:absolute;right:var(--space-near);top:50%;transform:translateY(-50%);margin:0}
.feature-status[open] .disclosure-icon{transform:translateY(-50%) rotate(90deg)}
:root{--faq-duration:250ms;--ease-spring:cubic-bezier(.34,1.36,.64,1)}
.prose .faq-item>h3{margin:0;font:inherit}
.faq-item>h3>button{display:flex;align-items:center;justify-content:space-between;gap:var(--space-group);width:100%;min-height:var(--space-page);padding:var(--space-group) 0;border:0;background:transparent;color:var(--ink);text-align:left;font-size:var(--label);font-weight:500;line-height:1.5}
.faq-toggle-icon{width:var(--space-group);height:var(--space-group);transition:transform var(--faq-duration) var(--ease-spring)}
.faq-item[data-open=true] .faq-toggle-icon{transform:rotate(45deg)}
.faq-item[data-faq-ready] .faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--faq-duration) var(--ease-spring)}
.faq-item[data-faq-ready] .faq-answer>div{overflow:hidden;min-height:0}
.faq-item[data-open=true] .faq-answer{grid-template-rows:1fr}
@media print{.faq-item[data-faq-ready] .faq-answer{display:block!important;grid-template-rows:1fr}.faq-toggle-icon{display:none}}
.feature-table thead th .column-app-name{justify-content:center;font-size:var(--label);font-weight:500;text-decoration:none}
.feature-table thead th .column-app-name:hover{text-decoration:underline}
.comparison-matrix thead th:not(:first-child){text-align:left}
.comparison-matrix .feature-status>summary{justify-content:flex-start;padding-inline:0}
.comparison-matrix .plan-note>summary{padding-inline:0}
#choose-software .seo-table{min-width:0}
@media(max-width:767px){
  #choose-software thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  #choose-software tbody,#choose-software tr,#choose-software th,#choose-software td{display:block}
  #choose-software tr{padding:var(--space-group);border-top:var(--line) solid var(--rule)}
  #choose-software tbody tr:first-child{border-top:0}
  #choose-software th,#choose-software td{padding:0;border:0}
  #choose-software th{margin-bottom:var(--space-related)}
  #choose-software td+td{margin-top:var(--space-related);color:var(--muted)}
}
.guide-layout .directory-section .app-directory{margin-top:0}
