:root{color-scheme:light;--paper: #f7f7f2;--surface: #fffefa;--surface-soft: #eef3ef;--ink: #182a28;--muted: #5b6e69;--line: #d7e1db;--brand: #0d6657;--brand-ink: #fffefa;--brand-soft: #dff1e9;--highlight: #c6e781;--warn: #87551c;--warn-soft: #fff3dd;--danger: #9b3030;--danger-soft: #fff0ee;--success: #206548;--scrollbar-track:#e7eee8;--scrollbar-thumb:#317463;--scrollbar-hover:#0d6657;--radius-sm: 7px;--radius: 12px;--radius-lg: 17px;--shadow: 0 1px 2px #132e2410, 0 8px 26px #132e2408;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--content-width: 1160px;--header-height: 68px;font-family:Segoe UI,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--paper);color:var(--ink)}*{box-sizing:border-box}@supports not selector(::-webkit-scrollbar){*{scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);scrollbar-width:auto}}*::-webkit-scrollbar{width:12px;height:12px}*::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}*::-webkit-scrollbar-thumb{min-height:44px;min-width:44px;background:var(--scrollbar-thumb);border:3px solid var(--scrollbar-track);border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover)}*::-webkit-scrollbar-thumb:active{background:#08483f}*::-webkit-scrollbar-corner{background:var(--scrollbar-track)}@media (forced-colors: active){*{scrollbar-color:auto}*::-webkit-scrollbar-track,*::-webkit-scrollbar-corner{background:Canvas}*::-webkit-scrollbar-thumb{background:CanvasText;border-color:Canvas}*::-webkit-scrollbar-thumb:hover,*::-webkit-scrollbar-thumb:active{background:Highlight}}html{min-height:100%;scroll-behavior:smooth;scroll-padding:1rem 0}body{min-height:100vh;min-height:100dvh;margin:0;min-width:320px;display:flex;flex-direction:column;line-height:1.55}button,input,select,textarea{font:inherit}a{color:var(--brand);text-decoration-thickness:1px;text-underline-offset:.18em}a:hover{color:#08483f}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #146a5a;outline-offset:3px}.skip-link{position:absolute;left:1rem;top:-5rem;z-index:100;padding:.7rem 1rem;color:#fff;background:var(--ink);border-radius:6px}.skip-link:focus{top:.75rem}.site-header{position:sticky;top:0;z-index:20;flex:0 0 var(--header-height);height:var(--header-height);background:#fffefaf2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header-inner,.footer-inner{max-width:var(--content-width);height:100%;margin:auto;padding:0 var(--space-6);display:flex;align-items:center;justify-content:space-between;gap:var(--space-6)}.brand{display:inline-flex;align-items:center;gap:.65rem;color:var(--ink);text-decoration:none;font-weight:760;letter-spacing:-.035em;font-size:1.18rem}.brand:hover{color:var(--ink)}.brand img{width:33px;height:33px}.primary-nav{display:flex;align-items:center;gap:.35rem}.primary-nav a,.nav-extra{padding:.47rem .7rem;color:#465954;font-size:.9rem;font-weight:600;text-decoration:none;border-radius:var(--radius-sm)}.primary-nav a:hover,.primary-nav a[aria-current=page]{background:var(--surface-soft);color:var(--brand)}.nav-cta{margin-left:.3rem;padding:.55rem .85rem!important;color:var(--brand-ink)!important;background:var(--brand)!important}.mobile-nav{display:none;position:static}.mobile-nav summary{list-style:none;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer}.mobile-nav summary::-webkit-details-marker{display:none}.menu-icon,.menu-icon:before,.menu-icon:after{display:block;width:18px;height:2px;background:currentColor;position:relative}.menu-icon:before,.menu-icon:after{content:"";position:absolute;left:0}.menu-icon:before{top:-6px}.menu-icon:after{top:6px}.mobile-links{position:absolute;inset-inline:12px;top:calc(100% + 8px);max-height:calc(100dvh - var(--header-height) - 24px);overflow-y:auto;padding:.45rem;display:grid;gap:3px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.mobile-links a{display:block;width:100%;padding:.72rem;text-decoration:none;border-radius:var(--radius-sm)}.page{flex:1 0 auto;min-width:0;width:100%;min-height:0;max-width:var(--content-width);margin:0 auto;padding:clamp(1.35rem,3vw,2.5rem) var(--space-6) 4rem}.page-narrow{max-width:790px}.eyebrow{color:var(--brand);font-size:.76rem;font-weight:760;letter-spacing:.105em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{max-width:880px;margin-bottom:.55rem;font-size:clamp(2rem,4vw,3.25rem);line-height:1.11;letter-spacing:-.055em}h2{margin-bottom:.6rem;font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.25;letter-spacing:-.035em}h3{margin-bottom:.4rem;font-size:1.02rem;line-height:1.35}.lede{max-width:680px;color:var(--muted);font-size:1.08rem}.page-head{margin-bottom:1.7rem}.crumbs{margin:0 0 .8rem;color:var(--muted);font-size:.82rem}.crumbs a{text-decoration:none}.hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(250px,.68fr);align-items:end;gap:2.25rem;padding:1.35rem 0 1.7rem;border-bottom:1px solid var(--line)}.hero h1{margin:.4rem 0 .65rem}.hero .lede{margin-bottom:1.1rem}.hero-mark{padding:1.15rem;display:flex;align-items:flex-start;gap:.85rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.hero-mark img{flex:0 0 auto;width:34px;height:34px}.hero-mark strong{display:block;margin-bottom:.15rem;font-size:.91rem}.hero-mark p{margin:0;color:var(--muted);font-size:.82rem}.section{margin-top:2rem}.section-head{margin-bottom:.9rem;display:flex;align-items:end;justify-content:space-between;gap:1rem}.section-head p{margin:0;color:var(--muted);font-size:.9rem}.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.tool-card{min-height:153px;padding:1rem;position:relative;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;box-shadow:0 1px 2px #132e2408;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.tool-card:hover{color:var(--ink);border-color:#7aafa2;transform:translateY(-2px);box-shadow:var(--shadow)}.tool-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.7rem}.tool-icon{width:35px;height:35px;display:grid;place-items:center;color:var(--brand);background:var(--brand-soft);border-radius:9px}.tool-tag{color:var(--muted);font-size:.72rem;font-weight:650}.tool-card h3{margin-bottom:.28rem}.tool-card p{max-width:35ch;margin:0;color:var(--muted);font-size:.87rem}.workflow{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);overflow:hidden}.workflow-step{min-height:102px;padding:1rem 1.1rem;display:flex;align-items:flex-start;gap:.8rem}.workflow-step+.workflow-step{border-left:1px solid var(--line)}.step-no{width:27px;height:27px;flex:none;display:grid;place-items:center;color:var(--brand);background:var(--brand-soft);border-radius:50%;font-size:.78rem;font-weight:750}.workflow-step strong{display:block;margin:.1rem 0 .2rem;font-size:.89rem}.workflow-step p{margin:0;color:var(--muted);font-size:.82rem}.notice{padding:.8rem .95rem;display:flex;align-items:flex-start;gap:.7rem;background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius-sm);color:#344944;font-size:.88rem}.notice strong{color:var(--ink)}.notice-warn{color:#553b1a;background:var(--warn-soft);border-color:#ecd8b3}.tool-intro{min-width:0;max-width:800px}.tool-intro .lede{max-width:75ch;font-size:.99rem}.workspace{min-width:0;margin-top:1.25rem;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.95fr);gap:1rem;align-items:start}.tool-main,.tool-sidebar{min-width:0;display:grid;align-content:start;gap:1rem}.panel{min-width:0;padding:1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 1px 2px #132e2408}.panel h2{margin-bottom:.35rem;font-size:1.12rem}.panel-intro{color:var(--muted);font-size:.83rem;margin-bottom:.85rem}.field{min-width:0;display:grid;gap:.35rem;margin-top:.75rem}.field label,fieldset legend{font-size:.82rem;font-weight:680}.field-hint{color:var(--muted);font-size:.75rem}input[type=text],input[type=number],select,textarea,.file-button{width:100%;min-height:42px;padding:.6rem .7rem;color:var(--ink);background:#fff;border:1px solid #c8d5ce;border-radius:var(--radius-sm)}select{cursor:pointer}textarea{min-height:195px;resize:vertical;font:.83rem/1.5 ui-monospace,Cascadia Code,Consolas,monospace;-moz-tab-size:2;-o-tab-size:2;tab-size:2}textarea:focus,input:focus,select:focus{border-color:#337b6c}input[type=file]{width:100%;min-height:42px;max-width:100%;padding:.28rem;color:var(--muted);background:#fff;border:1px solid #c8d5ce;border-radius:var(--radius-sm);font-size:.8rem}input[type=file]::file-selector-button{min-height:32px;margin-right:.6rem;padding:.35rem .65rem;color:var(--brand);background:var(--surface);border:1px solid #99b7aa;border-radius:6px;font:inherit;font-weight:680;cursor:pointer;transition:background .15s ease,border-color .15s ease}input[type=file]::file-selector-button:hover{background:var(--surface-soft);border-color:#7aafa2}.file-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.file-row .field{flex:1 1 170px}.file-picker__control{position:relative;min-width:0}.file-picker[data-enhanced=true] .file-picker__source{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.file-picker__enhanced{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:.55rem}.file-picker__enhanced[hidden]{display:none}.file-picker__name{min-width:0;flex:1 1 8rem;color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}.enhanced-select{position:relative;min-width:0;width:100%}.enhanced-select__source{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.enhanced-select__trigger{width:100%;min-height:42px;padding:.6rem 2.25rem .6rem .7rem;display:flex;align-items:center;justify-content:space-between;gap:.65rem;color:var(--ink);background:#fff;border:1px solid #c8d5ce;border-radius:var(--radius-sm);text-align:left;cursor:pointer}.enhanced-select__trigger:hover{border-color:#8eafa3}.enhanced-select__trigger:disabled{color:var(--muted);background:#f1f3ef;cursor:not-allowed}.enhanced-select__trigger:after{width:.48rem;height:.48rem;flex:none;margin:-.22rem .15rem 0 auto;border-right:2px solid #52675f;border-bottom:2px solid #52675f;content:"";transform:rotate(45deg);transition:transform .15s ease}.enhanced-select[data-open=true] .enhanced-select__trigger{border-color:var(--brand);box-shadow:0 0 0 2px #0d6a5930}.enhanced-select[data-open=true] .enhanced-select__trigger:after{margin:.22rem .15rem 0 auto;transform:rotate(225deg)}.enhanced-select__listbox{position:absolute;z-index:40;top:calc(100% + .3rem);left:0;width:100%;max-height:min(18rem,45vh);padding:.25rem;overflow-y:auto;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:0 10px 24px #132e241c}.enhanced-select[data-side=top] .enhanced-select__listbox{top:auto;bottom:calc(100% + .3rem)}.enhanced-select__listbox[hidden]{display:none}.enhanced-select__option{min-height:38px;padding:.5rem .6rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;color:var(--ink);border-radius:5px;font-size:.83rem;line-height:1.35;overflow-wrap:anywhere;cursor:pointer}.enhanced-select__option[data-active=true]{color:var(--brand);background:var(--brand-soft)}.enhanced-select__option[aria-selected=true]:after{color:var(--brand);content:"✓";font-size:.76rem;font-weight:750}.enhanced-select__option[aria-disabled=true]{color:var(--muted);cursor:not-allowed;opacity:.6}.source-label{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.source-label small{color:var(--muted);font-size:.72rem}.rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.1rem .75rem}fieldset{min-width:0;margin:.8rem 0 0;padding:.7rem .8rem;border:1px solid var(--line);border-radius:var(--radius-sm)}fieldset legend{padding:0 .25rem}.check-option{margin:.35rem 0;display:flex;align-items:flex-start;gap:.5rem;font-size:.81rem}.check-option input{width:17px;height:17px;flex:none;margin:.08rem 0 0;accent-color:var(--brand)}.column-order-list{margin:.35rem 0 0;padding:0;display:grid;gap:.4rem;list-style:none;counter-reset:column-order}.column-order-item{min-width:0;padding:.35rem .45rem;display:flex;align-items:center;gap:.65rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);counter-increment:column-order}.column-order-item:before{flex:0 0 1.4rem;color:var(--muted);font-size:.75rem;font-variant-numeric:tabular-nums;text-align:right;content:counter(column-order)}.column-order-name{min-width:0;flex:1;overflow-wrap:anywhere;font-size:.83rem}.column-order-actions{display:flex;flex:none;gap:.35rem}.column-move{width:40px;min-height:40px;padding:.2rem;font-size:1rem;font-weight:750}.button-row{margin-top:.8rem;display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.button{min-height:40px;padding:.55rem .85rem;display:inline-flex;justify-content:center;align-items:center;gap:.45rem;color:var(--brand-ink);background:var(--brand);border:1px solid var(--brand);border-radius:var(--radius-sm);font-size:.84rem;font-weight:680;cursor:pointer;text-decoration:none}.button:hover{color:#fff;background:#084e43}.button-secondary{color:var(--brand);background:var(--surface);border-color:#99b7aa}.button-secondary:hover{color:var(--brand);background:var(--surface-soft)}.button-quiet{min-height:34px;padding:.35rem .52rem;color:var(--brand);background:transparent;border:0;font-size:.8rem;font-weight:650;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.button:disabled{cursor:not-allowed;color:#66756f;background:#e5ebe7;border-color:#d3ddd7}.text-status{min-height:1.5rem;margin:.55rem 0 0;color:var(--muted);font-size:.79rem}.text-status[data-kind=error]{color:var(--danger)}.text-status[data-kind=success]{color:var(--success)}.sample-badge{width:-moz-fit-content;width:fit-content;max-width:100%;margin:.65rem 0 .4rem;padding:.25rem .5rem;color:#38584b;background:#ebf3e9;border:1px solid #d1e1d2;border-radius:999px;font-size:.69rem;font-weight:650;overflow-wrap:anywhere}.dataset-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.7rem}.dataset-chip{padding:.3rem .48rem;color:#375c4f;background:#eff5ef;border:1px solid #d8e6d9;border-radius:999px;font-size:.73rem}.result-panel{position:static}.result-panel[hidden]{display:none}.result-empty{min-height:182px;display:grid;place-content:center;text-align:center}.result-empty h3{margin:.6rem 0 .2rem}.result-empty p{max-width:33ch;margin:0 auto;color:var(--muted);font-size:.84rem}.empty-mark{width:43px;height:43px;margin:auto;display:grid;place-items:center;background:#edf2ed;border:1px solid var(--line);border-radius:12px;color:#49645a}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:.85rem 0}.metric{padding:.55rem .65rem;background:var(--surface-soft);border-radius:var(--radius-sm)}.metric dt{color:var(--muted);font-size:.7rem}.metric dd{margin:0;font-size:1rem;font-weight:750;font-variant-numeric:tabular-nums}.summary{margin:.7rem 0;font-size:.9rem;font-weight:680}.result-note{margin:.6rem 0;padding:.6rem .7rem;color:#435851;background:#f1f5f1;border-radius:var(--radius-sm);font-size:.76rem}.format-preview{max-height:18rem;margin:.7rem 0;padding:.75rem;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f7f8f4;color:var(--ink);font:.75rem/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre}.table-wrap{max-width:100%;margin:.7rem 0;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-sm)}table{width:100%;min-width:360px;border-collapse:collapse;font-size:.76rem}caption{padding:.45rem .6rem;text-align:left;color:var(--muted);background:#f7f8f4;font-size:.72rem}th,td{max-width:260px;padding:.5rem .55rem;border-bottom:1px solid #e6ebe7;text-align:left;vertical-align:top;overflow-wrap:anywhere;white-space:pre-wrap}th{color:#334a43;background:#eef3ef;font-size:.7rem;font-weight:710}tr:last-child td{border-bottom:0}.table-count{color:var(--muted);font-size:.73rem}.download-row{padding-top:.7rem;display:flex;flex-wrap:wrap;gap:.45rem;border-top:1px solid var(--line)}.export-options{display:flex;align-items:flex-start;gap:.5rem;margin:.65rem 0;color:var(--muted);font-size:.76rem}.export-options input{flex:none;width:16px;height:16px;margin:.1rem 0 0;accent-color:var(--brand)}.tool-explanation{min-width:0}.text-panel{padding:1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.text-panel p:last-child,.text-panel ul:last-child,.text-panel ol:last-child{margin-bottom:0}.text-panel ul,.text-panel ol{padding-left:1.2rem;color:#40534e}.text-panel li{margin:.38rem 0}.step-list{padding:0;list-style:none;counter-reset:step}.step-list li{counter-increment:step;display:grid;grid-template-columns:24px 1fr;gap:.55rem}.step-list li:before{content:counter(step);width:22px;height:22px;display:grid;place-items:center;color:var(--brand);background:var(--brand-soft);border-radius:50%;font-size:.7rem;font-weight:730}.example-box{padding:.8rem;background:#f2f4ed;border-left:1px solid #85a96c;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:.84rem}.example-box p{white-space:pre-wrap;overflow-wrap:anywhere}.faq-list{display:grid;gap:.55rem}.faq-list details{padding:.7rem .8rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.faq-list summary{font-size:.86rem;font-weight:680;cursor:pointer}.faq-list details p{margin:.55rem 0 0;color:var(--muted);font-size:.83rem}.guide-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.guide-card{padding:.95rem;color:var(--ink);text-decoration:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.guide-card:hover{color:var(--ink);border-color:#7aafa2}.guide-card span{display:block;margin-bottom:.38rem;color:var(--brand);font-size:.71rem;font-weight:720}.guide-card p{margin:0;color:var(--muted);font-size:.82rem}.article-body{max-width:72ch}.article-body h2{margin:1.7rem 0 .55rem;font-size:1.24rem}.article-body p{color:#40534e;font-size:.99rem;line-height:1.78}.blog-index-head{max-width:740px;margin-bottom:2rem}.blog-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.blog-entry{min-width:0;display:flex}.blog-card{width:100%;min-height:285px;padding:1.5rem;display:flex;flex-direction:column;gap:.85rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);text-decoration:none}.blog-card:hover{color:var(--ink);border-color:#7aafa2}.blog-card:hover h2,.blog-card:hover h3{color:var(--brand)}.blog-category{color:var(--brand);font-size:.75rem;font-weight:700}.blog-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem 1rem;color:var(--muted);font-size:.75rem}.blog-meta>span:first-child{color:var(--brand);font-weight:650}.blog-entry h2,.blog-entry h3{margin:0;font-size:1.3rem;line-height:1.35;letter-spacing:-.025em;text-wrap:balance}.blog-entry p{margin:0;max-width:55ch;color:var(--muted);font-size:.92rem}.blog-card-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-top:auto;padding-top:1rem;border-top:1px solid var(--line);color:var(--muted);font-size:.72rem}.blog-card-footer>span{color:var(--brand);font-weight:650}.reading-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:clamp(2rem,4vw,4rem);max-width:1060px;margin-inline:auto}.blog-article{min-width:0;width:100%}.article-rail{min-width:0}.article-header{margin-bottom:1.2rem}.article-header h1{margin-top:.6rem;text-wrap:balance}.article-body .article-introduction{font-size:1.08rem;color:var(--ink)}.article-toc{position:sticky;top:calc(var(--header-height) + 1.5rem);max-height:calc(100dvh - var(--header-height) - 3rem);overflow-y:auto;padding:1.15rem 1rem;background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius)}.article-toc h2{margin:0 0 .8rem;font-size:.88rem}.article-toc ol,.article-toc-mobile ol{margin:0;padding-left:1.2rem;display:grid;gap:.45rem;font-size:.83rem}.article-toc a,.article-toc-mobile a{display:block;padding:.2rem 0;text-decoration:none}.article-toc a:hover,.article-toc-mobile a:hover{text-decoration:underline}.article-toc-mobile{display:none}.blog-article section[id]{scroll-margin-top:calc(var(--header-height) + 1rem)}.article-related{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--line)}.article-related ul{padding:0;list-style:none}.article-related li{margin:.8rem 0}.article-related li span{display:block;color:var(--muted);font-size:.83rem}.legal-block{margin-top:1.4rem}.legal-block p,.legal-block li{color:#40534e;line-height:1.72}.legal-block h2{margin-bottom:.45rem;font-size:1.08rem}.legal-block ul{padding-left:1.2rem}.legal-page{min-width:0;width:100%;max-width:72ch}.legal-updated{margin:-.7rem 0 1.2rem;color:var(--muted);font-size:.82rem}.legal-block[id]{scroll-margin-top:calc(var(--header-height) + 1rem)}.contact-address{margin:.45rem 0 .8rem;font-size:1.05rem;font-weight:700}.legal-block .contact-address{color:var(--brand)}.site-footer{flex:0 0 auto;padding:1.1rem 0 .8rem;background:#eef1eb;border-top:1px solid var(--line)}.footer-inner{display:block;height:auto}.footer-main{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1.5rem;padding-bottom:.9rem}.footer-brand{max-width:390px}.footer-brand p{margin:.4rem 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}.footer-links{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.3rem .65rem}.footer-links a{min-height:40px;padding:.45rem .25rem;display:inline-flex;align-items:center;color:#3d5750;font-size:.8rem}.footer-links a:hover{color:var(--brand)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.45rem 1rem;padding-top:.65rem;border-top:1px solid #d7e0d9}.footer-meta,.footer-note{margin:0;color:var(--muted);font-size:.72rem}.footer-note{display:inline-flex;align-items:center;gap:.45rem}.status-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--success)}.mobile-spreadsheet{color:var(--muted);font-size:.77rem}@media (max-width: 900px){.blog-list{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-layout{display:block;max-width:72ch}.article-rail{display:none}.article-toc-mobile{display:block;margin:1.25rem 0 1.75rem;padding:1rem;border:1px solid var(--line);background:var(--surface-soft);border-radius:var(--radius)}.article-toc-mobile summary{cursor:pointer;font-weight:650;font-size:.94rem}.article-toc-mobile nav{padding-top:.8rem}}@media (max-width: 800px){:root{--header-height:64px}.primary-nav{display:none}.mobile-nav{display:block}.hero{grid-template-columns:1fr;gap:1rem}.hero-mark{max-width:540px}.workspace{grid-template-columns:minmax(0,1fr)}.tool-sidebar{grid-template-columns:1fr}.result-panel{position:static}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 540px){:root{--header-height:60px}.header-inner,.footer-inner{padding-inline:1rem}.page{padding:1.25rem 1rem 3rem}.file-row{display:grid;grid-template-columns:minmax(0,1fr);gap:.15rem}.file-row .field{flex:none}h1{font-size:2.05rem}.lede{font-size:1rem}.tool-grid,.guide-list{grid-template-columns:1fr}.blog-list{grid-template-columns:minmax(0,1fr);gap:1rem}.blog-card{min-height:260px;padding:1.25rem}.tool-card{min-height:130px}.workflow{grid-template-columns:1fr}.workflow-step{min-height:unset;padding:.8rem .9rem}.workflow-step+.workflow-step{border-left:0;border-top:1px solid var(--line)}.rule-grid{grid-template-columns:1fr}.column-move{width:44px;min-height:44px}.panel,.text-panel{padding:.85rem}.section-head{align-items:flex-start;flex-direction:column;gap:.2rem}.footer-main{grid-template-columns:1fr;gap:.45rem;padding-bottom:.55rem}.footer-links{justify-content:flex-start;gap:.15rem .45rem}.footer-links a{min-height:38px}.footer-brand{max-width:none}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
