/* ArumSoft Learning: Resources hub and template guides. Uses the site's color tokens from the main stylesheet. */
:root{
  --rs-in:#fff7ed;--rs-in-line:#f1d7b0;--rs-in-ink:#7a4a12;
  --rs-calc:#ecfdf5;--rs-calc-line:#b5e3c9;--rs-calc-ink:#166534;
  --rs-sheet:#177a5a;--rs-slides:#c0532b;--rs-docs:#2f62b5;--rs-more:#6b5bb5;
}
html[lang="ko"] .rs-wrap{word-break:keep-all}

/* ---------- shared bits ---------- */
.rs-wrap{padding-bottom:1rem}
.rs-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:.5rem;border:1px solid var(--color-line);background:#fff;color:var(--color-ink);font-weight:550;font-size:.92rem;line-height:1.2;padding:.6rem .95rem;text-decoration:none;transition:border-color .15s,background-color .15s,color .15s;white-space:nowrap}
.rs-btn:hover{border-color:var(--color-brand);color:var(--color-brand-ink)}
.rs-btn:focus-visible,.rs-chip:focus-visible,.rs-card h3 a:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}
.rs-btn-primary{background:var(--color-brand);border-color:var(--color-brand);color:#fff}
.rs-btn-primary:hover{background:var(--color-brand-ink);border-color:var(--color-brand-ink);color:#fff}
.rs-btn svg{flex-shrink:0}
.rs-sheet{display:inline-block;font-size:.86em;font-weight:600;line-height:1.35;padding:.05em .45em;border:1px solid var(--color-line);border-bottom:2px solid var(--rs-sheet);border-radius:4px 4px 2px 2px;background:#fff;color:var(--color-ink);white-space:nowrap}
.rs-path{white-space:normal}
.rs-path b{font-weight:650}
.rs-path i{font-style:normal;color:var(--color-muted);padding:0 .25em}
.rs-sw{display:inline-block;width:1.05em;height:1.05em;border-radius:3px;vertical-align:-.15em;border:1px solid}
.rs-sw-in{background:var(--rs-in);border-color:var(--rs-in-line)}
.rs-sw-calc{background:var(--rs-calc);border-color:var(--rs-calc-line)}
.rs-icon{display:inline-flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;border-radius:.65rem;color:#fff;flex-shrink:0}
.rs-icon-excel{background:var(--rs-sheet)}
.rs-icon-powerpoint{background:var(--rs-slides)}
.rs-icon-more{background:var(--rs-more)}

/* ---------- hub: hero ---------- */
.rs-hero{display:grid;gap:1.5rem;align-items:end;padding:1.25rem 0 .25rem}
@media (min-width:900px){.rs-hero{grid-template-columns:minmax(0,1fr) auto}}
.rs-hero h1{font-size:2.25rem;font-weight:750;letter-spacing:-.02em;line-height:1.15;color:var(--color-ink)}
@media (min-width:640px){.rs-hero h1{font-size:2.6rem}}
.rs-hero p{margin-top:.75rem;max-width:40rem;font-size:1.125rem;line-height:1.6;color:var(--color-muted)}
.rs-stats{display:flex;gap:.6rem;flex-wrap:wrap}
.rs-stat{min-width:7.5rem;border:1px solid var(--color-line);border-radius:.75rem;padding:.7rem .9rem;background:#fff}
.rs-stat b{display:block;font-size:1.5rem;line-height:1.1;font-weight:750;color:var(--color-ink);font-variant-numeric:tabular-nums}
.rs-stat span{font-size:.8rem;color:var(--color-muted)}

/* ---------- hub: filter chips ---------- */
.rs-filterbar{position:sticky;top:4rem;z-index:20;margin:1.75rem -1rem 0;padding:.7rem 1rem;background:rgba(255,255,255,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--color-line)}
@media (min-width:640px){.rs-filterbar{margin-left:-1.5rem;margin-right:-1.5rem;padding-left:1.5rem;padding-right:1.5rem}}
.rs-filter{display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.rs-filter::-webkit-scrollbar{display:none}
.rs-chip{display:inline-flex;align-items:center;gap:.45rem;flex-shrink:0;border:1px solid var(--color-line);background:#fff;border-radius:999px;padding:.42rem .85rem;font-size:.9rem;font-weight:550;color:var(--color-muted);cursor:pointer;text-decoration:none}
.rs-chip:hover{color:var(--color-ink);border-color:#c9d0d5}
.rs-chip[aria-pressed="true"]{background:var(--color-ink);border-color:var(--color-ink);color:#fff}
.rs-chip .rs-count{font-size:.75rem;font-weight:650;border-radius:999px;padding:.05rem .45rem;background:var(--color-subtle);color:var(--color-muted)}
.rs-chip[aria-pressed="true"] .rs-count{background:rgba(255,255,255,.18);color:#fff}
.rs-chip .rs-dot{width:.55rem;height:.55rem;border-radius:999px}

/* ---------- hub: how templates work ---------- */
.rs-howto{margin-top:2rem;border:1px solid var(--color-line);border-radius:.9rem;background:var(--color-subtle);padding:1.25rem}
.rs-howto h2{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted)}
.rs-howto ul{margin-top:.9rem;display:grid;gap:1rem}
@media (min-width:640px){.rs-howto ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.rs-howto ul{grid-template-columns:repeat(4,minmax(0,1fr))}}
.rs-howto li{display:flex;gap:.7rem;align-items:flex-start;font-size:.94rem;line-height:1.5;color:var(--color-muted)}
.rs-howto li b{display:block;color:var(--color-ink);font-weight:650;margin-bottom:.1rem}
.rs-howto .rs-hicon{flex-shrink:0;width:2rem;height:2rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-line);background:#fff;color:var(--color-brand-ink)}
.rs-howto .rs-hicon.in{background:var(--rs-in);border-color:var(--rs-in-line);color:var(--rs-in-ink)}
.rs-howto .rs-hicon.calc{background:var(--rs-calc);border-color:var(--rs-calc-line);color:var(--rs-calc-ink)}

/* ---------- hub: product sections ---------- */
.rs-product{margin-top:3rem;scroll-margin-top:8.5rem}
.rs-product[hidden]{display:none}
.rs-phead{display:flex;gap:1rem;align-items:flex-start;padding-bottom:1rem;border-bottom:1px solid var(--color-line)}
.rs-phead h2{font-size:1.6rem;font-weight:750;letter-spacing:-.015em;line-height:1.2;color:var(--color-ink)}
.rs-phead p{margin-top:.3rem;color:var(--color-muted);max-width:44rem;line-height:1.55}
.rs-phead .rs-plink{margin-left:auto;align-self:center;font-size:.92rem;font-weight:550;color:var(--color-brand-ink);white-space:nowrap;text-decoration:none}
.rs-phead .rs-plink:hover{text-decoration:underline}
@media (max-width:639px){.rs-phead{flex-wrap:wrap}.rs-phead .rs-plink{margin-left:3.6rem}}
.rs-sub{display:flex;align-items:baseline;gap:.6rem;margin-top:1.6rem}
.rs-sub h3{font-size:1.1rem;font-weight:700;color:var(--color-ink)}
.rs-sub span{font-size:.9rem;color:var(--color-muted)}

/* template cards */
.rs-grid{margin-top:1rem;display:grid;gap:1.1rem;grid-template-columns:minmax(0,1fr)}
@media (min-width:700px){.rs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.rs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rs-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--color-line);border-radius:.9rem;background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.rs-card:hover{border-color:#c9d0d5;box-shadow:0 1px 2px rgba(28,33,38,.05),0 8px 24px rgba(28,33,38,.07)}
.rs-card-top{background:var(--color-subtle);border-bottom:1px solid var(--color-line);padding:1rem 1rem 0}
.rs-card-body{padding:1rem 1.1rem 0;flex:1}
.rs-kicker{font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--color-brand-ink)}
.rs-card h3{margin-top:.3rem;font-size:1.12rem;font-weight:700;line-height:1.3;color:var(--color-ink)}
.rs-card h3 a{color:inherit;text-decoration:none}
.rs-card h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.rs-card h3 a:hover{text-decoration:underline;text-underline-offset:2px}
.rs-card-body p{margin-top:.45rem;font-size:.94rem;line-height:1.55;color:var(--color-muted)}
.rs-meta{margin-top:.75rem;display:flex;flex-wrap:wrap;gap:.35rem .9rem;font-size:.8rem;color:var(--color-muted)}
.rs-meta span{display:inline-flex;align-items:center;gap:.3rem}
.rs-card-foot{display:flex;gap:.5rem;padding:1rem 1.1rem 1.1rem;position:relative;z-index:2}
.rs-card-foot .rs-btn{flex:1}

/* mini spreadsheet preview */
.rs-mini{border:1px solid #d5dbe0;border-bottom:0;border-radius:.5rem .5rem 0 0;background:#fff;overflow:hidden;font-size:.74rem;line-height:1;box-shadow:0 1px 2px rgba(28,33,38,.04)}
.rs-mini-grid{display:grid;grid-template-columns:1.6rem repeat(4,minmax(0,1fr))}
.rs-mini-grid span{padding:.42rem .45rem;border-right:1px solid #e8ecef;border-bottom:1px solid #e8ecef;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-ink)}
.rs-mini-grid .c{background:#f3f5f6;color:#8a949c;text-align:center;font-size:.66rem;padding:.3rem 0}
.rs-mini-grid .h{background:#fff;font-weight:700;color:var(--color-ink)}
.rs-mini-grid .in{background:var(--rs-in)}
.rs-mini-grid .calc{background:var(--rs-calc);color:var(--rs-calc-ink);font-weight:600}
.rs-mini-tabs{display:flex;gap:2px;padding:0 .3rem;background:#f3f5f6;border-top:1px solid #e8ecef;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 80%,transparent);mask-image:linear-gradient(90deg,#000 80%,transparent)}
.rs-mini-tabs span{flex-shrink:0;padding:.35rem .5rem;color:#6b757d;font-size:.68rem;white-space:nowrap}
.rs-mini-tabs span.on{background:#fff;color:var(--rs-sheet);font-weight:700;box-shadow:inset 0 -2px 0 var(--rs-sheet)}

/* coming soon */
.rs-soon{margin-top:1rem;display:grid;gap:1rem;align-items:center;border:1px dashed #cfd6db;border-radius:.9rem;padding:1.4rem;background:#fff}
@media (min-width:700px){.rs-soon{grid-template-columns:minmax(0,1fr) auto}}
.rs-soon h3{font-size:1.05rem;font-weight:700;color:var(--color-ink)}
.rs-soon p{margin-top:.3rem;color:var(--color-muted);line-height:1.55;max-width:40rem}
.rs-soon-list{margin-top:.8rem;display:flex;flex-wrap:wrap;gap:.4rem}
.rs-soon-list span{font-size:.82rem;border-radius:999px;padding:.25rem .65rem;background:var(--color-subtle);border:1px solid var(--color-line);color:var(--color-muted)}

/* practice files */
.rs-practice{margin-top:1rem;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.rs-practice{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rs-level{border:1px solid var(--color-line);border-radius:.9rem;background:#fff;overflow:hidden}
.rs-level summary{display:flex;align-items:center;gap:.6rem;cursor:pointer;list-style:none;padding:.85rem 1rem;font-weight:650;color:var(--color-ink)}
.rs-level summary::-webkit-details-marker{display:none}
.rs-level summary .rs-n{font-size:.8rem;font-weight:500;color:var(--color-muted)}
.rs-level summary .rs-caret{margin-left:auto;color:var(--color-muted);transition:transform .15s}
.rs-level[open] summary .rs-caret{transform:rotate(180deg)}
.rs-level summary:hover{background:var(--color-subtle)}
.rs-lv{font-size:.72rem;font-weight:650;border-radius:999px;padding:.15rem .55rem}
.rs-lv-beginner{background:var(--color-brand-soft);color:var(--color-brand-ink)}
.rs-lv-intermediate{background:#eef4fb;color:#2f5f99}
.rs-lv-advanced{background:#fff4e0;color:#8a5a00}
.rs-lv-expert{background:#f3effb;color:#5b4a9e}
.rs-files{border-top:1px solid var(--color-line)}
.rs-files li{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;border-bottom:1px solid #eef1f3}
.rs-files li:last-child{border-bottom:0}
.rs-files a.t{flex:1;min-width:0;font-size:.93rem;color:var(--color-ink);text-decoration:none;line-height:1.35}
.rs-files a.t:hover{color:var(--color-brand-ink);text-decoration:underline}
.rs-files a.d{flex-shrink:0;display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;font-weight:600;color:var(--color-brand-ink);text-decoration:none;border:1px solid var(--color-line);border-radius:.4rem;padding:.3rem .55rem}
.rs-files a.d:hover{border-color:var(--color-brand)}
.rs-files a.d small{font-weight:500;color:var(--color-muted)}

/* ---------- template guide page ---------- */
.rs-detail{margin-top:1.5rem;display:grid;gap:2.5rem;grid-template-columns:minmax(0,1fr)}
@media (min-width:1024px){.rs-detail{grid-template-columns:minmax(0,760px) 280px;justify-content:space-between}}
.rs-dhead{border-bottom:1px solid var(--color-line);padding-bottom:1.5rem}
.rs-dhead .rs-badges{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}
.rs-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:650;border-radius:999px;padding:.2rem .65rem;background:var(--color-brand-soft);color:var(--color-brand-ink)}
.rs-badge.plain{background:var(--color-subtle);color:var(--color-muted)}
.rs-dhead h1{margin-top:.8rem;font-size:1.9rem;font-weight:750;line-height:1.2;letter-spacing:-.02em;color:var(--color-ink)}
@media (min-width:640px){.rs-dhead h1{font-size:2.35rem}}
.rs-dhead .rs-lead{margin-top:.8rem;font-size:1.125rem;line-height:1.6;color:var(--color-muted)}
.rs-dhead dl{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.4rem 1.25rem;font-size:.88rem;color:var(--color-muted)}
.rs-dhead dt{display:inline;font-weight:600;color:var(--color-ink)}
.rs-dhead dd{display:inline}

.rs-glance{margin-top:1.5rem;display:grid;gap:1.25rem;border:1px solid var(--color-line);border-radius:.9rem;background:var(--color-subtle);padding:1.25rem}
@media (min-width:700px){.rs-glance{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}}
.rs-glance h2{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted)}
.rs-glance ul{margin-top:.6rem}
.rs-glance li{display:flex;gap:.5rem;font-size:.97rem;line-height:1.45}
.rs-glance li+li{margin-top:.45rem}
.rs-glance li::before{content:"✓";color:var(--color-brand-ink);font-weight:700}
.rs-glance .rs-mini{border-bottom:1px solid #d5dbe0;border-radius:.5rem}

.rs-dlcard{border:1px solid var(--color-line);border-radius:.9rem;background:#fff;padding:1.1rem}
.rs-dlcard .rs-file{display:flex;gap:.75rem;align-items:center}
.rs-dlcard .rs-fileicon{width:2.4rem;height:2.9rem;flex-shrink:0;position:relative;border-radius:.35rem;background:var(--rs-sheet);color:#fff;display:flex;align-items:flex-end;justify-content:center;padding-bottom:.35rem;font-size:.62rem;font-weight:800;letter-spacing:.04em}
.rs-dlcard .rs-fileicon::before{content:"";position:absolute;top:0;right:0;border-style:solid;border-width:0 .7rem .7rem 0;border-color:#fff #fff #0f5a42 #0f5a42}
.rs-dlcard .rs-fname{font-size:.9rem;font-weight:650;line-height:1.3;color:var(--color-ink);word-break:break-word}
.rs-dlcard .rs-fmeta{margin-top:.15rem;font-size:.8rem;color:var(--color-muted)}
.rs-dlcard .rs-btn{margin-top:.9rem;width:100%}
.rs-dlcard .rs-fnote{margin-top:.6rem;font-size:.8rem;line-height:1.45;color:var(--color-muted)}
.rs-dl-mobile{margin-top:1.25rem}
@media (min-width:1024px){.rs-dl-mobile{display:none}}
.rs-side{display:none}
@media (min-width:1024px){.rs-side{display:block}}
.rs-side-in{position:sticky;top:6rem;display:flex;flex-direction:column;gap:1.5rem}
.rs-toc p{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted)}
.rs-toc ul{margin-top:.5rem;border-left:1px solid var(--color-line)}
.rs-toc a{display:block;margin-left:-1px;border-left:2px solid transparent;padding:.28rem 0 .28rem .8rem;font-size:.9rem;color:var(--color-muted);text-decoration:none}
.rs-toc a:hover{color:var(--color-ink);border-left-color:#c9d0d5}
.rs-toc a.on{color:var(--color-ink);font-weight:600;border-left-color:var(--color-brand)}

/* colour key */
.rs-key{display:grid;gap:.6rem;margin:1rem 0 0}
@media (min-width:640px){.rs-key{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rs-key div{border:1px solid var(--color-line);border-radius:.6rem;padding:.75rem .85rem;font-size:.92rem;line-height:1.45;color:var(--color-muted);background:#fff}
.rs-key div b{display:flex;align-items:center;gap:.45rem;color:var(--color-ink);font-weight:650;margin-bottom:.2rem}
.rs-key .k-in{background:var(--rs-in);border-color:var(--rs-in-line)}
.rs-key .k-calc{background:var(--rs-calc);border-color:var(--rs-calc-line)}

/* numbered steps */
.rs-steps{margin-top:1.25rem;counter-reset:rs}
.rs-step{position:relative;counter-increment:rs;padding:0 0 1.75rem 3.1rem}
.rs-step::before{content:counter(rs);position:absolute;left:0;top:-.1rem;width:2.1rem;height:2.1rem;border-radius:999px;background:var(--color-brand);color:#fff;font-weight:700;font-size:.95rem;display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}
.rs-step::after{content:"";position:absolute;left:1.03rem;top:2.3rem;bottom:.5rem;width:2px;background:var(--color-line)}
.rs-step:last-child::after{display:none}
.rs-step h3{font-size:1.15rem;font-weight:700;line-height:1.35;color:var(--color-ink);margin:0;scroll-margin-top:6rem}
.rs-step > div{margin-top:.5rem;font-size:1rem;line-height:1.65}
.rs-step p+p,.rs-step ul+p,.rs-step p+ul,.rs-step aside+p,.rs-step p+aside,.rs-step ul+aside{margin-top:.6rem}
.rs-step ul{padding-left:1.25rem;list-style:disc}
.rs-step li+li{margin-top:.3rem}
.rs-step code,.rs-formula code,.rs-tip code{font-family:var(--font-mono);font-size:.88em;background:var(--color-subtle);border:1px solid var(--color-line);border-radius:5px;padding:.05em .35em}
.rs-step strong{font-weight:650}
.rs-callout{border-left:4px solid;border-radius:0 .5rem .5rem 0;padding:.65rem .9rem;font-size:.95rem;line-height:1.55}
.rs-callout.tip{border-color:var(--color-tip-line);background:var(--color-tip)}
.rs-callout.warn{border-color:var(--color-warn-line);background:var(--color-warn)}
.rs-callout b.lbl{display:block;font-weight:700;margin-bottom:.1rem}
.rs-callout code{background:rgba(255,255,255,.7)}

/* formulas */
.rs-formulas{margin-top:1rem;display:grid;gap:.9rem}
.rs-formula{border:1px solid var(--color-line);border-radius:.75rem;overflow:hidden;background:#fff}
.rs-formula header{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .7rem;padding:.65rem .9rem;background:var(--color-subtle);border-bottom:1px solid var(--color-line)}
.rs-formula header b{font-weight:700;color:var(--color-ink)}
.rs-formula header span{font-family:var(--font-mono);font-size:.8rem;color:var(--color-muted)}
.rs-formula pre{margin:0;padding:.75rem .9rem;font-family:var(--font-mono);font-size:.82rem;line-height:1.6;overflow-x:auto;white-space:pre;color:#1d3b2f;background:#fbfdfc;border-bottom:1px solid #eef1f3}
.rs-formula .rs-fx{padding:.7rem .9rem;font-size:.95rem;line-height:1.6;color:var(--color-ink)}
.rs-formula .rs-fx a{display:inline-block;margin-top:.35rem;font-size:.88rem;font-weight:550;color:var(--color-brand-ink)}

.rs-tips li{line-height:1.6}

.rs-related{margin-top:2.5rem;display:grid;gap:.6rem}
@media (min-width:640px){.rs-related{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rs-related a{display:block;border:1px solid var(--color-line);border-radius:.6rem;padding:.7rem .9rem;font-size:.93rem;line-height:1.4;color:var(--color-ink);text-decoration:none}
.rs-related a:hover{border-color:var(--color-brand)}
.rs-related a small{display:block;font-size:.75rem;color:var(--color-muted);margin-bottom:.15rem}

.rs-more{margin-top:3rem}
.rs-prevnext{margin-top:2.5rem;display:grid;gap:.75rem;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.rs-prevnext{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rs-prevnext a{display:block;border:1px solid var(--color-line);border-radius:.6rem;padding:.8rem 1rem;text-decoration:none;color:var(--color-ink)}
.rs-prevnext a:hover{border-color:var(--color-brand)}
.rs-prevnext a span{display:block;font-size:.82rem;color:var(--color-muted)}
.rs-prevnext a b{font-weight:600}
.rs-prevnext a.next{text-align:right}

@media print{.rs-filterbar,.rs-side,.rs-dl-mobile,header.sticky,footer{display:none!important}}

/* override article (.prose) defaults inside custom blocks */
.prose ol.rs-steps{list-style:none;padding-left:0}
.prose ol.rs-steps>li+li{margin-top:0}
.prose .rs-step h3{margin-top:0}
.prose .rs-formula pre{margin:0;border:0;border-radius:0;border-bottom:1px solid #eef1f3;background:#fbfdfc;padding:.75rem .9rem}
.prose .rs-formula .rs-fx a{text-decoration:underline}
.rs-practice{align-items:start}

/* template screenshot */
.rs-shot{margin:1.5rem 0 0}
.rs-shot img{display:block;width:100%;height:auto;border:1px solid var(--color-line);border-radius:.75rem;box-shadow:0 1px 2px rgba(28,33,38,.05),0 6px 20px rgba(28,33,38,.06)}
.rs-shot figcaption{margin-top:.5rem;font-size:.85rem;color:var(--color-muted)}

/* ---------- hub: templates grouped by subcategory ---------- */
.rs-cats{margin-top:1rem;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr)}
@media (min-width:700px){.rs-cats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.rs-cats{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rs-cat{border:1px solid var(--color-line);border-radius:.9rem;background:#fff;overflow:hidden;scroll-margin-top:8.5rem}
.rs-cat header{display:flex;align-items:baseline;gap:.6rem;padding:.85rem 1rem;background:var(--color-subtle)}
.rs-cat h4{font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--color-brand-ink)}
.rs-cat .rs-n{margin-left:auto;font-size:.8rem;color:var(--color-muted)}
.rs-cat .rs-files a.t{font-weight:600}
.rs-tag{flex-shrink:0;font-size:.68rem;font-weight:650;line-height:1;border-radius:999px;padding:.22rem .5rem;background:var(--color-subtle);border:1px solid var(--color-line);color:var(--color-muted)}
.rs-tag-new{background:var(--color-brand-soft);border-color:transparent;color:var(--color-brand-ink)}
.rs-dlcard .rs-btn+.rs-fnote+.rs-btn{margin-top:1rem}
.rs-cat .rs-files .tt{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:.3rem}
.rs-cat .rs-files .tt a.t{flex:none}
.rs-tags{display:flex;flex-wrap:wrap;gap:.3rem}

/* ---------- guide: turn on macros ---------- */
.rs-macro{margin-top:1.25rem;display:flex;flex-direction:column;gap:1.25rem}
.rs-mstep{border:1px solid var(--color-line);border-radius:.9rem;padding:1.1rem 1.2rem;background:#fff}
.rs-mstep h3{margin:0;display:flex;gap:.65rem;align-items:center;font-size:1.08rem;font-weight:700;line-height:1.3;color:var(--color-ink)}
.rs-mstep h3 .n{flex-shrink:0;width:1.75rem;height:1.75rem;border-radius:999px;background:var(--color-brand);color:#fff;font-size:.9rem;display:inline-flex;align-items:center;justify-content:center}
.rs-mstep ol{margin-top:.75rem;padding-left:1.35rem;list-style:decimal;line-height:1.6;color:var(--color-ink)}
.rs-mstep li+li{margin-top:.3rem}
.rs-figs{margin-top:1rem;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr)}
.rs-fig-unblock{max-width:34rem}
.rs-fig a{display:block;cursor:zoom-in}
.rs-fig img{display:block;width:100%;height:auto;border-radius:.6rem;border:1px solid var(--color-line)}
.rs-fig figcaption{margin-top:.45rem;font-size:.85rem;line-height:1.45;color:var(--color-muted)}
.rs-callout .rs-figs{margin-top:.8rem}
.rs-fignote{font-size:.8rem;color:var(--color-muted)}
.rs-fwarn{margin-top:.55rem;font-size:.82rem;line-height:1.4}
.rs-fwarn a{color:#9a3412;font-weight:650;text-decoration:none}
.rs-fwarn a:hover{text-decoration:underline}
