/* Free spreadsheet hub and workbook pages. Inherits /styles.css and /tools/tools.css. */
[hidden]{display:none!important}
.sheets-main{padding-top:52px}
.sheets-page .eyebrow{color:var(--muted)}
.sheets-page h1,.sheets-page h2{font-weight:600;letter-spacing:-.045em}
.sheets-hero>*,.sheet-detail-hero>*,.sheet-detail-body>*{min-width:0}
.sheets-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);gap:56px;align-items:start;padding-bottom:72px}
.sheets-hero-copy h1{font-size:clamp(40px,4.8vw,64px);line-height:1.06;margin:18px 0 20px}
.sheets-hero .lede{font-size:16px;line-height:1.8;max-width:620px}
.sheets-hero .hero-reassurance{margin-top:18px;font-size:10px}
.sheets-hero-gate{position:sticky;top:24px}
.hero-gate-note{font-size:11px;color:var(--muted);line-height:1.7;border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-top:12px;background:var(--surface-2)}
.hero-gate-note strong{color:var(--ink)}
/* Workbook preview */
.sheet-window{min-width:0;margin-top:36px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 50px #00000010;overflow:hidden;max-width:590px}
.sheet-window-bar{display:flex;align-items:center;gap:6px;padding:11px 14px;background:var(--surface-2);border-bottom:1px solid var(--line)}
.sheet-window-bar span{width:8px;height:8px;border-radius:50%;background:#d4d4d4;display:block}
.sheet-window-bar b{min-width:0;margin-left:10px;font-size:10px;font-weight:500;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sheet-tabs{display:flex;gap:2px;padding:0 14px;border-bottom:1px solid var(--line);background:#fff}
.sheet-tabs span{font-size:10px;padding:9px 12px;color:var(--muted);border-bottom:2px solid transparent}
.sheet-tabs .active{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}
.sheet-grid{display:grid;grid-template-columns:1.35fr 1fr 1.15fr 1fr;font-size:11px}
.sheet-grid>div{min-width:0;padding:10px 12px;border-bottom:1px solid #f0f0f0}
.sheet-grid .sg-label{color:var(--muted);border-right:1px solid #f0f0f0}
.sheet-grid .sg-value{font-variant-numeric:tabular-nums;font-weight:600}
.sheet-grid .positive{color:#187450}
.sheet-foot{font-size:9px;color:var(--muted);padding:10px 14px;background:var(--surface-2)}
/* Gate card */
.gate-card{min-width:0;border:1px solid var(--line);border-radius:20px;background:var(--surface-2);padding:26px 24px;box-shadow:none;scroll-margin-top:24px}
.gate-badge{display:inline-flex;font-size:8px;letter-spacing:1.1px;font-weight:700;color:var(--muted);border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 9px}
.gate-card h2{font-size:26px;line-height:1.2;margin:14px 0 8px}
.gate-copy{font-size:12px;line-height:1.75;margin-bottom:16px}
.gate-form{display:grid;gap:8px}
.gate-form label:not(.gate-consent):not(.honeypot){font-size:10px;font-weight:600;color:var(--ink)}
.gate-form input[type=email]{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px 13px;font-size:14px;color:var(--ink);min-height:46px}
.gate-form input[type=email]:focus{outline:2px solid var(--ink);outline-offset:2px;border-color:#b4b4b4}
.gate-form input[type=email][aria-invalid=true]{border-color:#a8382c;box-shadow:0 0 0 3px #a8382c12}
.gate-consent{display:flex;align-items:flex-start;gap:8px;font-size:10px;line-height:1.6;color:var(--muted)}
.gate-consent input{margin-top:2px;accent-color:var(--ink);flex-shrink:0}
.gate-form .button{width:100%;justify-content:space-between;font-size:12px;padding:12px 16px;margin-top:2px}
.gate-form .button:disabled{opacity:.6;cursor:wait}
.gate-status{font-size:11px;line-height:1.6;color:#a8382c;min-height:0}
.gate-status:empty{display:none}
.gate-status.ok{color:#187450}
.gate-privacy{font-size:9px;color:var(--muted);line-height:1.6}
.gate-privacy a{text-decoration:underline;text-underline-offset:2px}
.gate-success{text-align:center;padding:6px 0 2px}
.gate-success .success-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e8f3ec;color:#187450;font-size:21px;margin:0 auto 10px}
.gate-success h3{font-size:22px;margin-bottom:6px}
.gate-success p{font-size:11px;line-height:1.7;margin-bottom:12px}
.gate-success .button{width:100%;justify-content:space-between;font-size:11px;padding:11px 14px}
.success-files{display:grid;gap:6px;margin:4px 0 2px}
.success-files a{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;line-height:1.4;border:1px solid var(--line);border-radius:9px;padding:8px 10px;background:#fff;color:var(--ink)}
.success-files a:hover{border-color:#b4b4b4}
.success-files a span{font-size:12px;color:var(--muted)}
.gate-all{font-size:10px;margin-top:12px}
.gate-all a{text-decoration:underline;text-underline-offset:3px}
.gate-notes{list-style:none;margin:16px 0 0;padding:14px 0 0;border-top:1px solid var(--line);display:grid;gap:6px}
.gate-notes li{font-size:9.5px;color:var(--muted);display:flex;gap:6px}
.gate-notes li:before{content:'✓';color:#187450;font-weight:700}
/* Cards */
.sheets-intro{padding-block:20px 84px}
.sheet-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px}
a.sheet-card{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px 22px;transition:border-color .15s,background .15s;min-height:100%}
a.sheet-card:hover{border-color:#b4b4b4;background:#fcfcfc}
.sheet-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);font-size:10px;letter-spacing:.5px;font-weight:700;color:var(--ink);line-height:1}
.sheet-tag{font-size:8px;letter-spacing:1px;font-weight:700;color:var(--muted);margin-top:2px}
.sheet-card h3{font-size:17px;line-height:1.3;letter-spacing:-.03em}
.sheet-card p{font-size:11.5px;line-height:1.75;flex:1}
.sheet-meta{font-size:9px;color:var(--muted);line-height:1.6}
.sheet-card .text-link{font-size:10.5px;margin-top:2px}
.sheet-card .text-link span{margin-left:10px}
/* Context band */
.sheet-band{background:var(--surface-2);border-block:1px solid var(--line);padding-block:76px}
.context-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:38px}
.context-grid article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px 22px}
.context-grid article>span{font-size:11px;font-weight:700;letter-spacing:.4px;color:#187450}
.context-grid h3{font-size:16px;margin:10px 0 8px}
.context-grid p{font-size:11.5px;line-height:1.75}
/* Steps */
.sheet-how{padding-block:82px}
.sheet-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}
.sheet-steps article{border-top:1px solid var(--line);padding-top:18px}
.sheet-steps article>span{font-size:11px;color:var(--muted);font-weight:600}
.sheet-steps h3{font-size:16px;margin:14px 0 8px}
.sheet-steps p{font-size:11.5px;line-height:1.75}
.sheet-steps.compact{grid-template-columns:1fr 1fr;gap:18px 26px;margin-top:26px}
.sheet-steps.compact article{border-top:0;border-left:1px solid var(--line);padding:0 0 0 18px}
.sheet-steps.compact article>span{display:block;margin-bottom:6px}
.sheet-steps.compact h3{font-size:14px;margin:4px 0 6px}
/* Detail */
.sheet-detail-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.7fr);gap:56px;align-items:start;padding-bottom:56px}
.sheet-detail-copy h1{font-size:clamp(38px,4.6vw,58px);line-height:1.07;margin:16px 0 18px}
.sheet-detail-copy .lede{font-size:15px;line-height:1.8;max-width:640px}
.sheet-facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.sheet-facts span{font-size:10px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:6px 11px;background:#fff}
.sheet-facts b{color:var(--ink);font-weight:650}
.sheet-best{font-size:11.5px;line-height:1.7;margin-top:18px;color:var(--muted);border-left:2px solid var(--line);padding-left:14px}
.sheet-best strong{color:var(--ink)}
.sheet-detail-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;padding-block:48px 76px;border-top:1px solid var(--line)}
.sheet-content{display:grid;gap:60px;min-width:0}
.sheet-content h2{font-size:34px;line-height:1.15;margin:14px 0 24px}
.inside-list{display:grid;gap:0;border-top:1px solid var(--line)}
.inside-list article{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}
.inside-list article>span{font-size:10px;color:var(--muted);font-weight:600;padding-top:3px}
.inside-list h3{font-size:14px;margin-bottom:5px}
.inside-list p{font-size:11.5px;line-height:1.75}
.sheet-note{background:var(--surface-2);border:1px solid var(--line);border-radius:16px;padding:22px 24px}
.sheet-note h3{font-size:14px;margin-bottom:8px}
.sheet-note p{font-size:11.5px;line-height:1.8}
.sheet-side{display:grid;gap:16px;align-content:start;position:sticky;top:24px}
.side-card{border:1px solid var(--line);border-radius:16px;padding:20px 20px 18px;background:#fff}
.side-card h3{font-size:17px;margin:8px 0 12px}
.side-card ul{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:7px}
.side-card li{font-size:10.5px;color:var(--muted);display:flex;gap:7px}
.side-card li:before{content:'✓';color:#187450;font-weight:700}
.side-card .text-link{font-size:10.5px}
.side-card.quiet{background:var(--surface-2)}
.side-card.quiet p{font-size:11px;line-height:1.7;margin-bottom:12px}
.sheets-related{padding-bottom:60px}
/* Footer spacing and downloads */
.sheet-download-row{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:1100px){
 .sheets-hero,.sheet-detail-hero{gap:32px}
 .sheet-cards{grid-template-columns:1fr 1fr}
 .sheet-detail-body{gap:32px;grid-template-columns:minmax(0,1fr) 270px}
 .context-grid{gap:12px}
}
@media(max-width:900px){
 .sheets-hero,.sheet-detail-hero{grid-template-columns:1fr}
 .sheets-hero-gate,.sheet-side{position:static}
 .gate-card{max-width:520px}
 .sheet-window{max-width:none}
 .sheet-detail-body{grid-template-columns:1fr}
 .sheet-side{grid-template-columns:1fr 1fr;display:grid}
}
@media(max-width:820px){
 .sheet-band{padding-block:56px}
 .context-grid,.sheet-steps{grid-template-columns:1fr}
 .sheet-cards{grid-template-columns:1fr 1fr}
 .sheet-how{padding-block:60px}
 .sheet-steps.compact{grid-template-columns:1fr}
 .sheet-steps.compact article{border-left:0;border-top:1px solid var(--line);padding:14px 0 0}
}
@media(max-width:600px){
 .sheets-main{padding-top:32px}
 .sheets-hero{padding-bottom:48px;gap:38px}
 .sheets-hero-copy h1{font-size:clamp(38px,10.5vw,52px)}
 .sheet-cards{grid-template-columns:1fr;gap:12px;margin-top:28px}
 .sheet-grid{grid-template-columns:1fr 1fr}
 .sheet-facts{gap:6px}
 .sheet-facts span{font-size:9px;padding:5px 8px}
 .gate-card{padding:22px 18px;border-radius:16px}
 .sheet-detail-copy h1{font-size:clamp(34px,9.6vw,46px)}
 .sheet-content h2{font-size:28px}
 .sheet-detail-body{padding-top:32px;gap:42px}
 .sheet-side{grid-template-columns:1fr}
 .inside-list article{grid-template-columns:32px minmax(0,1fr)}
 .sheets-intro{padding-bottom:54px}
 .sheet-how{padding-block:48px}
 .sheet-band{padding-block:44px}
 .context-grid{margin-top:26px}
}
