@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@400;500;600;700&family=Outfit:wght@500;600;700;800&display=swap";:root{--bg: #f4ede3;--bg-soft: #fff9f2;--surface: rgba(255, 251, 246, .9);--surface-strong: #fffdfa;--surface-dark: #102333;--text: #102333;--muted: #526475;--line: #e4d4c4;--accent: #ff5a36;--accent-strong: #dd3f0d;--accent-soft: #ffd7c8;--secondary: #0e7c86;--secondary-soft: #d9f5f2;--warning-soft: #fff0e5;--shadow: 0 24px 64px rgba(16, 35, 51, .12);--radius-xl: 32px;--radius-lg: 24px;--radius-md: 18px;--shell: 1120px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:IBM Plex Sans,Segoe UI,sans-serif;line-height:1.65;background:radial-gradient(circle at top left,rgba(255,90,54,.14),transparent 28rem),radial-gradient(circle at bottom right,rgba(14,124,134,.16),transparent 26rem),linear-gradient(180deg,#fffaf4,#f4ede3)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.42) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.42) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(180deg,rgba(0,0,0,.35),transparent 75%)}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}img,svg,video{max-width:100%;display:block}code,pre{font-family:IBM Plex Mono,Consolas,monospace}h1,h2,h3,h4{margin:0 0 .75rem;line-height:1.04;font-family:Outfit,Segoe UI,sans-serif;letter-spacing:-.03em}h1{font-size:clamp(2.8rem,6vw,5rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.2rem,2.2vw,1.5rem)}p{margin:0 0 1rem}ul,ol{margin:0;padding:0}.site-frame{position:relative;overflow:clip}.shell{width:min(var(--shell),calc(100% - 2rem));margin:0 auto}.site-header{position:sticky;top:0;z-index:40;background:#fff9f2b8;backdrop-filter:blur(18px);border-bottom:1px solid rgba(228,212,196,.8)}.header-shell{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0}.brand{display:inline-flex;align-items:center;gap:.9rem;min-width:0}.brand-mark{display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:1rem;font-family:Outfit,sans-serif;font-weight:800;color:#fff8f2;background:linear-gradient(135deg,var(--accent),var(--secondary));box-shadow:var(--shadow)}.brand-copy{display:grid;gap:.1rem}.brand-copy strong{font-family:Outfit,sans-serif;font-size:1rem;letter-spacing:-.02em}.brand-copy small{color:var(--muted);font-size:.88rem}.site-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.nav-link{padding:.7rem 1rem;border-radius:999px;color:var(--muted);transition:background-color .16s ease,color .16s ease,transform .16s ease}.nav-link:hover,.nav-link.is-active{color:var(--text);background:#fffc;transform:translateY(-1px)}.page-main{padding-bottom:4rem}.hero,.page-hero{padding:4.5rem 0 2rem}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:1.6rem;align-items:stretch}.hero-copy,.hero-card,.article-card,.note-card,.quote-panel,.micro-card,.topic-card,.tool-card,.callout,.faq-item,.code-block{border:1px solid rgba(228,212,196,.92);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.hero-copy{padding:2rem 2rem 1rem}.hero-card{padding:2rem;color:#eef5ff;background:radial-gradient(circle at top right,rgba(255,255,255,.08),transparent 14rem),linear-gradient(145deg,#102333,#19384f)}.hero-lead,.section-intro{max-width:70ch;font-size:1.08rem;color:var(--muted)}.hero-card .section-intro,.hero-card p{color:#eef5ffd1}.eyebrow,.card-kicker{margin-bottom:.85rem;font-size:.82rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.eyebrow{color:var(--accent)}.card-kicker{color:inherit;opacity:.78}.hero-actions,.tool-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.5rem 0}.button,.mini-button,summary{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background-color .16s ease}.button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.95rem 1.2rem;border-radius:999px;border:1px solid transparent;font-family:Outfit,sans-serif;font-weight:700}.button:hover,.mini-button:hover,summary:hover{transform:translateY(-1px)}.button-primary{color:#fff8f2;background:linear-gradient(135deg,var(--accent),var(--accent-strong))}.button-secondary{color:var(--text);background:#ffffffbd;border-color:#e4d4c4f2}.hero-points{display:grid;gap:.8rem;list-style:none;margin-top:1.4rem}.hero-points li,.checklist li{position:relative;padding-left:1.7rem}.hero-points li:before,.checklist li:before{content:"";position:absolute;left:0;top:.55rem;width:.75rem;height:.75rem;border-radius:999px;background:linear-gradient(135deg,var(--accent),var(--secondary));box-shadow:0 0 0 .25rem #ff5a361f}.hero-metric-grid,.micro-grid,.topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.metric-card{padding:1rem;border-radius:1.25rem;background:#ffffff14}.metric-card strong{display:block;margin-bottom:.25rem;font-family:Outfit,sans-serif;font-size:1.2rem}.term-list{display:flex;flex-wrap:wrap;gap:.6rem}.term-chip{display:inline-flex;align-items:center;padding:.45rem .8rem;border-radius:999px;font-size:.88rem;color:var(--text);background:#ffffffb3;border:1px solid rgba(228,212,196,.9)}.hero-card .term-chip{color:#eef5ff;background:#ffffff14;border-color:#ffffff14}.section{padding:1rem 0 1.8rem}.section-alt{position:relative}.section-alt:before{content:"";position:absolute;inset:1.2rem auto 1.2rem 50%;width:min(var(--shell),calc(100% - 2rem));transform:translate(-50%);border-radius:calc(var(--radius-xl) + .5rem);background:#fff6;border:1px solid rgba(228,212,196,.72);z-index:-1}.section-heading{display:grid;gap:.3rem;margin-bottom:1.5rem}.anchor-strip{display:flex;flex-wrap:wrap;gap:.75rem}.anchor-link{padding:.8rem 1rem;border-radius:999px;border:1px solid rgba(228,212,196,.94);background:#ffffffc2;color:var(--muted)}.anchor-link:hover{color:var(--text);background:var(--surface-strong)}.split-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:1.4rem;align-items:start}.article-card,.note-card,.quote-panel,.micro-card,.topic-card,.callout{padding:1.6rem;background:var(--surface)}.quote-panel{display:grid;place-items:center;min-height:100%;color:var(--surface-dark);font-family:Outfit,sans-serif;font-size:1.3rem;background:radial-gradient(circle at top left,rgba(255,90,54,.14),transparent 10rem),linear-gradient(180deg,#fffaf4,#fff2e8)}.checklist,.steps{display:grid;gap:.75rem;list-style:none}.checklist-warning li:before{background:linear-gradient(135deg,#ff9b62,#ff5a36);box-shadow:0 0 0 .25rem #ff9b6229}.steps{counter-reset:step}.steps li{position:relative;padding-left:3rem;min-height:2.2rem}.steps li:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:-.05rem;display:grid;place-items:center;width:2rem;height:2rem;border-radius:999px;color:#fff8f2;font-family:Outfit,sans-serif;font-weight:700;background:linear-gradient(135deg,var(--secondary),#11606b)}.table-wrap{overflow-x:auto;border:1px solid rgba(228,212,196,.94);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.comparison-table{width:100%;border-collapse:collapse;background:var(--surface-strong)}.comparison-table th,.comparison-table td{padding:1rem 1.1rem;text-align:left;border-bottom:1px solid rgba(228,212,196,.86)}.comparison-table th{font-family:Outfit,sans-serif;font-size:.96rem;background:#ffefe5a6}.comparison-table tbody tr:last-child td{border-bottom:0}.tool-shell{width:min(var(--shell),calc(100% - 2rem));margin:0 auto 2rem;padding:1.4rem;border-radius:calc(var(--radius-xl) + .5rem);border:1px solid rgba(228,212,196,.95);background:radial-gradient(circle at top right,rgba(255,90,54,.14),transparent 20rem),linear-gradient(180deg,#ffffffc7,#ffffffeb);box-shadow:var(--shadow)}.tool-banner{display:flex;justify-content:space-between;gap:1rem;align-items:start;margin-bottom:1.3rem}.stat-stack{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end}.stat-pill{padding:.6rem .9rem;border-radius:999px;font-size:.9rem;background:#ffffffdb;border:1px solid rgba(228,212,196,.92)}.tool-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:1rem}.tool-card{padding:1.5rem;background:#ffffffeb}.tool-card--accent{color:#fff9f2;background:radial-gradient(circle at top right,rgba(255,255,255,.08),transparent 14rem),linear-gradient(145deg,#15324b,#0e273c)}.tool-card--accent p,.tool-card--accent span,.tool-card--accent strong,.tool-card--accent label{color:inherit}.tool-card-head{margin-bottom:1rem}.tool-form{display:grid;gap:1rem}.field{display:grid;gap:.45rem}.field span{font-weight:600}.field input[type=number],.field input[type=text]{width:100%;padding:.95rem 1rem;border-radius:1rem;border:1px solid rgba(204,186,168,.95);color:var(--text);background:#fffffff0;font:inherit}.checkbox-field{display:inline-flex;align-items:center;gap:.7rem}.microcopy{margin:0;color:var(--muted);font-size:.94rem}.tool-card--accent .microcopy{color:#fff9f2c7}.tool-results{margin-top:1.15rem}.result-headline{display:grid;gap:.2rem;margin-bottom:.9rem}.result-headline span{color:inherit;opacity:.78}.cpf-list{display:grid;gap:.75rem;list-style:none}.cpf-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.9rem 1rem;border-radius:1.1rem;background:#ffffff1a}.tool-card:not(.tool-card--accent) .cpf-item{background:#fff5edcc}.cpf-item code{font-size:1rem;word-break:break-all}.mini-button{padding:.55rem .9rem;border-radius:999px;border:1px solid rgba(228,212,196,.9);background:#ffffffe6;font:inherit;font-weight:600;color:var(--text);cursor:pointer}.validation-panel{margin-top:1rem;min-height:11.5rem;padding:1rem;border-radius:1.4rem;background:#fff5edd1;border:1px solid rgba(228,212,196,.92)}.validation-placeholder{display:grid;place-items:center;min-height:100%;text-align:center;color:var(--muted)}.validation-state{display:grid;gap:1rem}.validation-badge{display:inline-flex;width:fit-content;padding:.5rem .85rem;border-radius:999px;font-family:Outfit,sans-serif;font-weight:700}.validation-state.is-valid .validation-badge{color:#08323b;background:var(--secondary-soft)}.validation-state.is-invalid .validation-badge{color:#742713;background:var(--warning-soft)}.validation-copy strong{display:block;margin-bottom:.35rem;font-family:Outfit,sans-serif;font-size:1.2rem}.validation-meta{display:flex;flex-direction:column;gap:.45rem;color:var(--muted);font-size:.94rem}.faq-list{display:grid;gap:.9rem}.faq-item{padding:0;overflow:clip;background:var(--surface)}.faq-item summary{list-style:none;cursor:pointer;padding:1.25rem 1.35rem;font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:600}.faq-item summary::-webkit-details-marker{display:none}.faq-item p{padding:0 1.35rem 1.35rem;margin:0;color:var(--muted)}.topic-card h3 a{color:var(--text)}.topic-card p{color:var(--muted)}.callout{background:radial-gradient(circle at top left,rgba(14,124,134,.12),transparent 10rem),linear-gradient(180deg,#ffffffd9,#fff6eff2)}.callout p:last-child{margin-bottom:0}.code-block{padding:1.1rem;background:#102333;color:#eef5ff}.code-block pre{margin:0;overflow-x:auto}.breadcrumb{margin-bottom:1rem}.breadcrumb ol{display:flex;flex-wrap:wrap;gap:.55rem;list-style:none;color:var(--muted);font-size:.92rem}.breadcrumb li{display:inline-flex;align-items:center;gap:.55rem}.breadcrumb li:not(:last-child):after{content:"/";color:#52647594}.narrow-flow{max-width:52rem}.article-prose{max-width:52rem;display:grid;gap:.8rem}.site-footer{padding:2rem 0 2.6rem}.footer-shell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;padding:1.6rem;border:1px solid rgba(228,212,196,.92);border-radius:var(--radius-xl);background:#ffffffc2;box-shadow:var(--shadow)}.footer-title{margin-bottom:.4rem;font-family:Outfit,sans-serif;font-size:1.2rem;font-weight:700}.footer-copy p:last-child{margin-bottom:0;color:var(--muted)}.footer-links{display:flex;flex-direction:column;gap:.55rem;min-width:12rem}.footer-links a{color:var(--muted)}.footer-links a:hover{color:var(--text)}.legal-strip{margin-top:1rem;color:var(--muted);font-size:.94rem;text-align:center}@media(max-width:900px){.hero-grid,.split-grid,.tool-grid,.footer-shell{grid-template-columns:1fr}.tool-banner,.header-shell{align-items:flex-start}.stat-stack{justify-content:flex-start}}@media(max-width:720px){h1{font-size:clamp(2.35rem,12vw,3.5rem)}.hero,.page-hero{padding-top:3.2rem}.hero-copy,.hero-card,.tool-card,.article-card,.note-card,.quote-panel,.micro-card,.topic-card,.callout{padding:1.25rem}.tool-shell{padding:1rem}.hero-metric-grid,.micro-grid,.topic-grid{grid-template-columns:1fr}.comparison-table th,.comparison-table td{padding:.9rem}}
