/* Home and reading pages only; shared tool layouts keep style.css. */
:root{--ink:#183b35;--muted:#62716d;--green:#157760;--line:#dce5df;--paper:#fbfcf8}
.home-page,.reading-page{background:var(--paper);color:var(--ink);font-size:15px;line-height:1.65}
.home-page .page-wrapper,.reading-page .page-wrapper{max-width:1200px;padding:0 28px 40px}
.home-page .site-header,.reading-page .site-header{background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line)}
.home-page .site-header-inner,.reading-page .site-header-inner{max-width:1200px;min-height:84px;padding:16px 28px}
.home-page .logo,.reading-page .logo{display:flex;align-items:center;gap:9px;font-size:26px;letter-spacing:-1px;color:var(--ink)}
.brand-mark{display:inline-grid;place-items:center;width:34px;height:34px;background:var(--green);color:white;border-radius:10px;font-size:26px;line-height:1}
.brand-dot{color:var(--green);margin-left:-9px}
.home-page .icon-btn{background:transparent;border-color:var(--line);color:var(--ink);width:38px;height:38px}
.home-page .nav-toggle,.reading-page .nav-toggle{background:var(--ink);width:38px;height:38px}
.skip-link{position:absolute;left:16px;top:-100px;z-index:100;background:var(--ink);color:white;padding:12px 18px;border-radius:8px}
.skip-link:focus{top:10px}
.home-page :focus-visible,.reading-page :focus-visible{outline:3px solid #18836a;outline-offset:4px}
.home-page [id],.reading-page [id]{scroll-margin-top:28px}
.home-hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:35px;min-height:480px;padding:62px 0 55px}
.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.5px;color:var(--green);margin-bottom:12px}
.hero-copy>.eyebrow{font-size:13px;letter-spacing:.2px;display:flex;gap:8px;align-items:center}
.status-dot{width:7px;height:7px;border-radius:50%;background:var(--green)}
.home-hero h1{font-size:clamp(32px,3.7vw,48px);font-weight:800;letter-spacing:-2.1px;line-height:1.3;margin:18px 0 20px;word-break:keep-all}
.home-hero h1 span{color:var(--green)}
.hero-description{font-size:15px;color:var(--muted);line-height:1.9;word-break:keep-all}
.hero-actions{display:flex;align-items:center;gap:24px;margin:29px 0}
.primary-link{display:inline-flex;gap:30px;align-items:center;background:var(--green);color:#fff;text-decoration:none;font-weight:700;font-size:14px;padding:13px 18px;border-radius:9px}
.primary-link:hover{background:#115f4c}
.text-link{color:var(--green);text-decoration:none;font-size:13px;font-weight:700}
.text-link:hover{text-decoration:underline}
.hero-facts{display:flex;flex-wrap:wrap;gap:0;font-size:12px;color:var(--muted)}
.hero-facts span+span{border-left:1px solid #cbd6cf;padding-left:14px;margin-left:14px}
.hero-facts strong{color:var(--ink);font-size:15px}
.hero-art{position:relative;height:345px;isolation:isolate}
.art-orbit{position:absolute;inset:0 0 15px 30px;border-radius:50%;background:radial-gradient(ellipse,#dcebd9 0%,#edf2e5 50%,transparent 71%);z-index:-1}
.example-card{background:#fff;border:1px solid #d9e5da;border-radius:15px;box-shadow:0 14px 30px #2446310c}
.money-example{position:absolute;top:18px;left:34px;right:10px;padding:22px 25px;transform:rotate(-3deg)}
.example-heading{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700}
.example-icon{display:inline-grid;place-items:center;background:#e4f1e6;border-radius:9px;width:34px;height:34px;color:var(--green);font-size:21px;font-weight:700}
.example-label{font-size:10px;border:1px solid var(--line);border-radius:5px;padding:1px 6px;color:var(--muted);margin-left:auto;white-space:nowrap;flex-shrink:0}
.example-input{font-size:36px;font-weight:750;letter-spacing:-1px;margin:14px 0 0;font-variant-numeric:tabular-nums}
.example-input small{font-size:15px;font-weight:400}
.example-divider{color:#9caea2;border-bottom:1px dashed #d6dfd7;padding-bottom:6px;margin-bottom:10px}
.example-output{font-size:25px;font-weight:750;letter-spacing:-1px;color:var(--green)}
.example-note{font-size:11px;color:var(--muted)}
.money-example>.example-note{display:none}
.time-example{position:absolute;bottom:12px;left:0;right:60px;display:flex;align-items:center;gap:12px;padding:16px 20px;transform:rotate(3deg)}
.time-example .example-icon{background:#fff1dc;color:#9c6827;width:43px;height:43px;font-size:29px}
.time-example p{font-size:22px;font-weight:750;line-height:1.3}.time-example p span{color:var(--green)}
.art-spark{position:absolute;bottom:35px;right:4px;font-size:58px;color:#dd9a54;transform:rotate(14deg)}
.art-caption{position:absolute;bottom:-22px;right:12px;font-size:9px;letter-spacing:2px;color:#728376}
.featured-section,.category-section,.guide-section{padding:36px 0 44px;border-top:1px solid var(--line)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
.section-heading .eyebrow{margin-bottom:6px}.section-heading h2{font-size:25px;letter-spacing:-.9px;margin:0;line-height:1.4;word-break:keep-all}.section-heading>p{font-size:13px;color:var(--muted)}
.featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.feature-card{position:relative;display:block;padding:23px;background:white;border:1px solid var(--line);border-radius:13px;color:var(--ink);text-decoration:none;transition:transform .15s,border-color .15s,box-shadow .15s}
.feature-card:hover,.guide-preview:hover{transform:translateY(-3px);border-color:#8fb6a3;box-shadow:0 10px 24px #2446310a}
.feature-icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;font-size:21px;font-weight:750;letter-spacing:-1px;margin-bottom:17px}
.mint{background:#e5f0df;color:#285d45}.violet{background:#eeeafa;color:#635489}.peach{background:#f9e8db;color:#925c39}.blue{background:#e6eef7;color:#416987}.yellow{background:#f5f0d9;color:#86713c}
.feature-category{position:absolute;top:31px;right:23px;font-size:10px;color:var(--muted)}
.feature-card h3{font-size:18px;letter-spacing:-.6px;margin-bottom:7px}.feature-card h3 span{float:right;color:#779387;font-size:17px;font-weight:400}
.feature-card p{font-size:13px;color:var(--muted);line-height:1.8}.feature-example{display:block;font-size:11px;color:#64786d;border-top:1px solid #edf0eb;margin-top:18px;padding-top:12px}
.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.category-grid>a{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);padding:19px 13px;border:1px solid var(--line);border-radius:10px;background:#f4f7ef}
.category-grid>a:hover{background:#eaf1e4;border-color:#abc5ad}.category-grid>a>span{font-size:23px;min-width:31px;text-align:center;color:var(--green)}
.category-grid h3{font-size:14px;margin-bottom:3px}.category-grid p{font-size:10px;color:var(--muted)}.category-grid small{margin-left:auto;font-size:11px;color:var(--green);white-space:nowrap}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.guide-preview{display:block;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;transition:transform .15s,border-color .15s}
.guide-art{height:137px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background-image:linear-gradient(135deg,#ffffff30,transparent)}
.guide-art>span{font-size:30px;font-weight:700;letter-spacing:-1px}.guide-art i{font-style:normal;font-size:23px;margin:0 12px;opacity:.5}.guide-art small{font-size:11px;letter-spacing:.5px}
.guide-preview-copy{padding:23px}.guide-preview-copy>.eyebrow{font-size:10px}.guide-preview h3{font-size:21px;letter-spacing:-.6px;line-height:1.5;margin:8px 0 10px}.guide-preview p{font-size:13px;color:var(--muted);margin-bottom:18px;line-height:1.8}
.home-page .home-hub{padding:35px 0 15px;background:transparent;box-shadow:none;border-radius:0;border-top:1px solid var(--line);margin:0}
.home-page .hub-title{font-size:25px;letter-spacing:-.8px}.home-page .mt-14{margin-top:0}.home-page .hub-sub{color:var(--muted)}
.total-count{font-size:17px;color:var(--green);padding:3px 9px;background:#e8f1e1;border-radius:8px;vertical-align:middle;margin-left:4px}
.home-page .search-bar{margin:22px 0 12px}.home-page .search-bar input{min-width:0;padding:16px;font-size:14px;border-color:#cbd9cc}
.home-page .segmented{padding:0;gap:7px;flex-wrap:wrap;border:0;background:transparent;overflow:visible}
.home-page .seg-btn{border:1px solid var(--line);padding:7px 13px;min-width:0;border-radius:7px;font-size:12px;font-weight:650;background:white;color:var(--muted)}
.home-page .seg-btn.active{background:var(--ink);border-color:var(--ink);color:white}.home-page .seg-btn:hover:not(.active){background:#eaf1e4}
.home-page .filter-hint{margin:14px 0 0;color:var(--muted)}
.home-page .tool-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.home-page .tool-item{padding:19px;border-radius:11px;border:1px solid var(--line);box-shadow:none;display:flex;flex-direction:column}
.home-page .tool-head{flex-wrap:wrap;align-items:start}.home-page .tool-item h3{font-size:15px;line-height:1.6}.home-page .pill{display:none}.home-page .favorite-button{width:27px;height:27px;color:#718475}
.home-page .tool-item p{font-size:12px;color:var(--muted);line-height:1.8;margin:8px 0 17px}.home-page .tool-button{align-self:start;background:transparent;color:var(--green);padding:0;border-radius:0;font-size:12px;margin-top:auto}.home-page .tool-button::after{content:' ↗';margin-left:7px}
.home-page .tool-item:hover{border-color:#8fb6a3;box-shadow:0 6px 15px #24463108}
.show-more{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:16px;padding:15px;border:1px dashed #b9cdbb;border-radius:11px;background:white;color:var(--green);font-size:13px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s}
.show-more:hover{background:#eaf1e4;border-color:#8fb6a3}
.show-more.hidden{display:none}
/* Match the initial 12-card view before main.js arrives; keep all tools readable without JS. */
@media(scripting:enabled){
    .home-page #tool-list:not(.is-ready)>.tool-item:nth-child(n+13){display:none}
    .home-page #show-more-tools:not(.is-ready){display:flex;visibility:hidden}
}
/* Reserve the exact space used by the favorite button inserted by main.js. */
.home-page .tool-head:not(:has(.favorite-button))::after{content:"";flex:0 0 27px;height:27px}
.show-more #show-more-count{font-weight:400;color:var(--muted);font-size:12px}
.search-empty{text-align:center;padding:45px 20px;border:1px dashed var(--line);border-radius:12px;background:white}.search-empty p{color:var(--muted);margin:12px 0}.search-empty button{width:auto;background:var(--green);padding:10px 20px}
.personal-drawer{margin-top:22px;border:1px solid var(--line);border-radius:10px;padding:16px 20px;background:#f3f6ef}.personal-drawer summary{cursor:pointer;font-weight:700;font-size:14px}.personal-drawer summary>span{font-weight:400;font-size:12px;color:var(--muted);margin-left:10px}.home-page .personal-panel{background:white}.home-page .personal-empty,.home-page .personal-heading span{color:var(--muted)}
.home-page .seo-footer{background:#edf3e8;box-shadow:none;border:1px solid #dce5d5;padding:28px 32px;margin-top:42px;border-radius:13px}.home-page .seo-footer h2{font-size:19px;margin-bottom:13px}.home-page .seo-footer p{font-size:13px;color:#526653;line-height:1.9}.home-page .seo-footer a{color:var(--green)}
.home-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:32px;margin-top:50px;text-align:left}
.home-footer .footer-brand{font-size:26px;font-weight:800;color:var(--ink);letter-spacing:-1px}.home-footer p{font-size:11px;color:var(--muted)}.home-footer>p a{color:var(--muted);line-height:2.4}.home-footer .footer-note{width:100%;font-size:10px}
/* Editorial pages share the same visual identity. */
.reading-page .reading-header{padding:50px 0 30px;border-bottom:1px solid var(--line)}
.reading-header h1{font-size:38px;letter-spacing:-1.5px;line-height:1.4;margin:16px 0;word-break:keep-all}.reading-header p{max-width:710px;color:var(--muted)}
.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb a{color:var(--green);text-decoration:none}
.reading-layout{display:grid;grid-template-columns:210px minmax(0,740px);gap:55px;margin-top:32px;align-items:start}
.reading-toc{position:sticky;top:24px;font-size:13px;border-left:2px solid var(--line);padding:10px 0 10px 18px}.reading-toc a{display:block;color:var(--muted);margin-top:13px;text-decoration:none}.reading-toc a:hover{color:var(--green)}
.reading-content{min-width:0}.reading-content h2{font-size:23px;margin:30px 0 14px;letter-spacing:-.6px}.reading-content h2:first-child{margin-top:0}.reading-content p{margin:14px 0;color:#445950;font-size:15px;line-height:1.95;word-break:keep-all;overflow-wrap:break-word}.reading-content a{color:var(--green)}.reading-content ul,.reading-content ol{padding-left:23px;color:#445950;font-size:15px;line-height:1.9}.reading-content li{margin:8px 0}
.example-box{background:#edf3e8;padding:20px 24px;border-radius:10px;margin:20px 0;border-left:3px solid #83ae82}.example-box p{margin:4px 0}.example-box strong{color:var(--ink)}
.reading-content table{width:100%;border-collapse:collapse;font-size:13px;margin:20px 0}.reading-content th,.reading-content td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line)}.reading-content th{background:#edf3e8}.reading-content .primary-link{color:white;margin-top:14px}.reading-content .article-meta{font-size:12px;color:var(--muted)}
.principle-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 8px}.principle-grid article{padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:#fff}.principle-grid h3{font-size:15px;letter-spacing:-.3px;margin-bottom:6px;color:var(--ink)}.principle-grid p{margin:0;font-size:13px;line-height:1.8}
.reading-page .guide-grid{margin:30px 0}.reading-page .home-footer{margin-top:55px}
@media(min-width:800px){.home-page .nav-toggle,.reading-page .nav-toggle{display:none}.home-page .nav-links,.reading-page .nav-links{position:static;display:flex;gap:10px;min-width:0;background:transparent;box-shadow:none;padding:0}.home-page .nav-links li+li,.reading-page .nav-links li+li{margin:0}.home-page .nav-links a,.reading-page .nav-links a{color:var(--muted);font-size:13px;padding:8px}.home-page .nav-links a:hover,.reading-page .nav-links a:hover{background:#edf3e8;color:var(--green)}.home-page .header-actions{flex-direction:row-reverse;gap:20px}}
@media(max-width:1050px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-actions{gap:15px}.hero-actions .text-link{font-size:12px}.primary-link{gap:15px}.example-input{font-size:30px}.example-output{font-size:22px}.hero-art{height:325px}.money-example{left:10px}.time-example{right:24px}.art-spark{right:-10px;bottom:65px;font-size:45px}}
@media(max-width:799px){.home-page .page-wrapper,.reading-page .page-wrapper{padding:0 20px 28px}.home-page .site-header-inner,.reading-page .site-header-inner{min-height:70px;padding:14px 20px}.home-hero{grid-template-columns:1fr;gap:28px;padding:36px 0 34px}.home-hero h1{font-size:40px}.hero-art{height:315px;width:100%;max-width:440px;margin:0 auto 20px}.money-example{left:35px;right:18px}.time-example{left:4px;right:55px}.art-spark{right:0;bottom:22px}.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-grid{gap:12px}.guide-preview-copy{padding:17px}.guide-preview h3{font-size:18px}.guide-art>span{font-size:22px}.guide-art i{margin:0 5px}.home-page .tool-list{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-layout{grid-template-columns:1fr;gap:28px}.reading-toc{position:static}.reading-header h1{font-size:31px}.home-page .nav-links,.reading-page .nav-links{background:var(--ink)}}
@media(max-width:540px){.home-hero h1{font-size:36px;letter-spacing:-1.6px}.hero-description{font-size:14px}.desktop-break{display:none}.hero-actions{gap:17px;flex-wrap:wrap}.hero-facts{font-size:10px}.hero-facts span+span{padding-left:10px;margin-left:10px}.hero-facts strong{font-size:13px}.section-heading{align-items:start;flex-direction:column;gap:10px}.section-heading h2{font-size:23px}.featured-section,.category-section,.guide-section{padding:28px 0 34px}.feature-card{padding:16px}.feature-category{display:none}.feature-icon{width:39px;height:39px;margin-bottom:13px}.feature-card h3{font-size:16px;line-height:1.6}.feature-card h3 span{display:none}.feature-card p{font-size:12px;word-break:keep-all}.feature-card p br{display:none}.feature-example{font-size:10px;margin-top:12px}.featured-grid{gap:10px}.category-grid{gap:8px}.category-grid>a{padding:14px 10px;gap:7px}.category-grid>a>span{font-size:19px;min-width:22px}.category-grid h3{font-size:13px}.category-grid p{font-size:10px}.category-grid small{font-size:10px}.guide-grid{grid-template-columns:1fr}.guide-preview{display:grid;grid-template-columns:105px 1fr}.guide-art{height:100%;min-height:200px;padding:12px;text-align:center}.guide-art>span{font-size:24px}.guide-art i{display:block}.guide-art small{font-size:10px}.guide-preview h3{font-size:18px}.guide-preview h3 br{display:none}.guide-preview p{font-size:12px;margin-bottom:12px}.guide-preview-copy{padding:20px 17px}.home-page .hub-sub{font-size:10px}.home-page .hub-title{font-size:23px}.home-page .search-bar input{font-size:12px;padding:14px 10px}.home-page .tool-list{grid-template-columns:1fr}.home-page .tool-item{padding:18px}.home-page .tool-item h3{font-size:16px}.home-page .tool-item p{font-size:13px}.home-page .seo-footer{padding:22px}.home-footer{gap:15px}.personal-drawer summary>span{display:block;margin-left:16px;font-size:11px}.reading-header h1{font-size:29px}.principle-grid{grid-template-columns:1fr}.reading-content table{font-size:12px}.reading-content th,.reading-content td{padding:10px 6px}}
@media(max-width:380px){.home-hero h1{font-size:28px;letter-spacing:-1px}.money-example{left:15px;right:4px;padding:18px}.example-heading{font-size:11px;gap:7px}.example-input{font-size:29px}.time-example{right:22px;padding:14px}.time-example p{font-size:19px}.time-example .example-note{font-size:10px}.art-spark{font-size:38px}.hero-art{height:285px}.category-grid>a{flex-wrap:wrap}.category-grid small{margin-left:0}.category-grid p{font-size:10px}}
@media(max-width:380px){.hero-art{height:325px}.time-example{bottom:-8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.home-page *{transition:none!important;scroll-behavior:auto!important}}
