:root{--ce-background:#f8fafc;--ce-surface:#fff;--ce-surface-subtle:#f1f5f9;--ce-text:#0f172a;--ce-text-muted:#475569;--ce-primary:#2563eb;--ce-primary-hover:#1d4ed8;--ce-primary-soft:#dbeafe;--ce-accent:#f97316;--ce-success:#15803d;--ce-warning:#b45309;--ce-danger:#b91c1c;--ce-border:#e2e8f0;--ce-focus:#ea580c}
.ce-calculator,.ce-search,.ce-home{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ce-text)}
.ce-breadcrumb{overflow-wrap:anywhere}.ce-breadcrumb ol{display:flex;flex-wrap:wrap;gap:.35rem .65rem;padding:0;list-style:none;font-size:.9rem}.ce-breadcrumb li:not(:last-child)::after{content:"/";margin-left:.65rem;color:var(--ce-text-muted)}.ce-category-nav__child{padding-left:1rem}
.ce-site-main{width:min(1200px,calc(100% - 2rem));margin:0 auto;padding:clamp(1.25rem,4vw,3rem) 0}.ce-archive-header{max-width:800px;margin-bottom:1.5rem}.ce-category-nav ul{display:flex;flex-wrap:wrap;gap:.65rem;padding:0;list-style:none}.ce-category-nav a{display:inline-block;padding:.5rem .75rem;border:1px solid var(--ce-border);border-radius:999px;background:var(--ce-surface);text-decoration:none}.ce-archive-grid{margin-top:1.5rem}
.ce-site-main>h1,.ce-site-main>.ce-breadcrumb{max-width:800px;margin-inline:auto}.ce-site-main>h1{font-size:clamp(2.25rem,5vw,3.75rem);line-height:1.08;overflow-wrap:anywhere}
.ce-calculator{max-width:800px;margin:2rem auto;padding:clamp(1rem,3vw,2rem);background:var(--ce-surface);border:1px solid var(--ce-border);border-radius:16px;box-shadow:0 8px 24px rgba(15,23,42,.06)}
.ce-result-nature{display:inline-block;margin:0 0 1rem;padding:.35rem .65rem;border-radius:999px;background:var(--ce-primary-soft);color:#1e40af;font-weight:700;font-size:.875rem}
.ce-field{min-width:0;margin:0 0 1.1rem}.ce-field>label,.ce-field legend{display:block;margin-bottom:.4rem;font-weight:700}.ce-required{color:var(--ce-text-muted);font-size:.82em;font-weight:500}.ce-control{display:flex;min-width:0;align-items:stretch}.ce-control input,.ce-control select,.ce-search input{min-width:0;width:100%;min-height:48px;padding:.7rem .8rem;border:1px solid #94a3b8;border-radius:8px;background:#fff;color:var(--ce-text);font:inherit}.ce-unit{display:flex;align-items:center;margin-left:-1px;padding:0 .7rem;border:1px solid #94a3b8;border-radius:0 8px 8px 0;background:var(--ce-surface-subtle);white-space:nowrap}.ce-control:has(.ce-unit) input{border-radius:8px 0 0 8px}.ce-control [aria-invalid="true"]{border-color:var(--ce-danger);box-shadow:0 0 0 1px var(--ce-danger)}
.ce-calculator input:focus-visible,.ce-calculator select:focus-visible,.ce-button:focus-visible,.ce-copy:focus-visible,.ce-search input:focus-visible{outline:3px solid var(--ce-focus);outline-offset:2px}.ce-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.3rem}.ce-button,.ce-copy{min-height:44px;padding:.7rem 1rem;border:2px solid var(--ce-primary);border-radius:8px;background:var(--ce-primary);color:#fff;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}.ce-button:hover,.ce-copy:hover{background:var(--ce-primary-hover)}.ce-button--secondary{background:#fff;color:var(--ce-primary)}
.ce-errors,.ce-alert{margin:0 0 1rem;padding:.8rem 1rem;border-left:4px solid var(--ce-danger);background:#fef2f2;color:#7f1d1d}.ce-alert--warning{border-color:var(--ce-warning);background:#fffbeb;color:#78350f}.ce-result{margin-top:1.5rem;padding:1rem;border:2px solid #86efac;border-radius:12px;background:#f0fdf4}.ce-result h2{margin-top:0}.ce-result-line{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:baseline;padding:.5rem 0;border-bottom:1px solid #bbf7d0}.ce-result-line output{font-size:clamp(1.15rem,3vw,1.6rem);font-weight:800;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;white-space:pre-line}.ce-privacy{margin-top:1rem;color:var(--ce-text-muted);font-size:.9rem}
.ce-repeater{min-width:0;padding:1rem;border:1px solid var(--ce-border);border-radius:10px}.ce-repeater-row{min-width:0;padding:1rem;margin-bottom:1rem;background:var(--ce-surface-subtle);border-radius:8px}.ce-remove-row{min-height:44px;padding:.55rem .25rem;border:0;background:transparent;color:var(--ce-danger);text-decoration:underline;cursor:pointer}.ce-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem}.ce-card{display:block;min-width:0;padding:1rem;border:1px solid var(--ce-border);border-radius:12px;background:var(--ce-surface);color:inherit;text-decoration:none;box-shadow:0 4px 14px rgba(15,23,42,.04)}.ce-card h3{margin-top:0}.ce-card h3 a{color:var(--ce-text);text-decoration-thickness:.08em;text-underline-offset:.16em}.ce-card:focus-within{outline:3px solid var(--ce-focus);outline-offset:3px}.ce-search{max-width:900px;margin-inline:auto}.ce-search .ce-card span{display:block;margin-top:.4rem;color:var(--ce-text-muted)}.ce-lead{max-width:760px;font-size:clamp(1.1rem,2.4vw,1.35rem);color:var(--ce-text-muted)}.ce-home>h2,.ce-editorial>h2{margin-top:clamp(2.25rem,5vw,3.5rem)}.ce-editorial{max-width:800px;margin-inline:auto}.ce-related ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:.75rem;padding:0;list-style:none}.ce-related a{display:block;height:100%;padding:.75rem 1rem;border:1px solid var(--ce-border);border-radius:10px;background:var(--ce-surface-subtle)}.ce-sitemap{columns:2;column-gap:2rem}.ce-sitemap li{break-inside:avoid;margin-bottom:.55rem}
.ce-category-children{max-width:800px;margin:1.5rem auto}.ce-category-children h2{font-size:1.35rem}.ce-category-children ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:.75rem;padding:0;list-style:none}.ce-category-children a{display:flex;height:100%;flex-direction:column;gap:.35rem;padding:.85rem 1rem;border:1px solid var(--ce-border);border-radius:10px;background:var(--ce-surface-subtle);color:inherit;text-decoration:none}.ce-category-children a span{color:var(--ce-text-muted);font-size:.9rem}.ce-category-children a:focus-visible{outline:3px solid var(--ce-focus);outline-offset:2px}
@media(max-width:600px){.ce-result-line{grid-template-columns:1fr}.ce-result-line output{text-align:left}.ce-actions>*{width:100%}.ce-calculator{margin:1.25rem auto;padding:1rem;border-radius:12px}.ce-repeater,.ce-repeater-row{padding:.75rem}.ce-sitemap{columns:1}}
@media(prefers-reduced-motion:no-preference){.ce-button,.ce-copy,.ce-card{transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.ce-card:hover{transform:translateY(-2px)}}
