:root{--bg:#f7f8fb;--bg-soft:#eef0f6;--surface:#fff;--surface-hover:#fbfbfe;--surface-2:#f4f5fa;--border:#e6e8f0;--border-soft:#edeef4;--border-strong:#d7dae5;--text-primary:#0b0d17;--text-secondary:#454a5c;--text-muted:#6b7086;--text-dim:#9aa0b3;--accent:#4f46e5;--accent-hover:#4338ca;--accent-soft:#eef0ff;--accent-border:#c7d2fe;--accent-text-on:#fff;--accent-2:#818cf8;--success:#0f9d63;--success-soft:#e7f9f1;--danger:#dc3b30;--danger-soft:#fdecea;--info:#2563eb;--info-soft:#eaf1ff;--shadow-sm:0 1px 2px #1014280a, 0 1px 3px #1014280a;--shadow:0 4px 16px #1014280f, 0 2px 6px #1014280a;--shadow-lg:0 16px 40px #1014281a, 0 4px 12px #1014280d;--shadow-accent:0 8px 20px #4f46e538;--radius-sm:8px;--radius:12px;--radius-lg:18px;--radius-pill:999px;--font:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--header-height:68px;--ease:cubic-bezier(.4, 0, .2, 1)}:root[data-theme=dark]{--bg:#0a0e1a;--bg-soft:#0e1220;--surface:#12172a;--surface-hover:#161b30;--surface-2:#191f36;--border:#242b45;--border-soft:#1c2238;--border-strong:#323a5c;--text-primary:#f3f4f8;--text-secondary:#c2c6da;--text-muted:#8b90ac;--text-dim:#666c8a;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-soft:#1c2049;--accent-border:#333a68;--accent-text-on:#0b0d17;--accent-2:#a5b4fc;--success:#34d399;--success-soft:#0f2b23;--danger:#f47268;--danger-soft:#341715;--info:#6d9dff;--info-soft:#142140;--shadow-sm:0 1px 2px #0000004d;--shadow:0 8px 24px #00000059;--shadow-lg:0 24px 56px #00000073;--shadow-accent:0 8px 24px #818cf82e}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font);color:var(--text-secondary);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:320px;transition:background-color .2s var(--ease), color .2s var(--ease);font-size:.9375rem;line-height:1.55}a{color:var(--accent-hover);text-decoration:none}img,svg{max-width:100%;height:auto;display:block}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none}button:disabled{opacity:.55;cursor:not-allowed}input,textarea,select{font:inherit;color:inherit;outline:none}ul{list-style:none}h1,h2,h3,h4{color:var(--text-primary);letter-spacing:-.02em;font-weight:700;line-height:1.2}.tabular-nums{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1, "cnum" 1}.container{width:min(1180px,100%);margin:0 auto;padding:0 20px}.site-header{z-index:40;background:color-mix(in srgb, var(--surface) 82%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.4);border-bottom:1px solid var(--border);position:sticky;top:0}.site-header-inner{height:var(--header-height);justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{letter-spacing:-.01em;color:var(--text-primary);transition:opacity .15s var(--ease);flex-shrink:0;align-items:center;gap:10px;font-size:1.05rem;font-weight:700;display:flex}.brand:hover{opacity:.8}.brand-mark{border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;width:34px;height:34px;box-shadow:var(--shadow-accent);place-items:center;font-size:.95rem;font-weight:800;display:grid}.header-actions{align-items:center;gap:8px;display:flex}.theme-toggle{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);width:38px;height:38px;color:var(--text-secondary);transition:border-color .15s var(--ease), color .15s var(--ease), background .15s var(--ease);place-items:center;display:grid}.theme-toggle:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-soft)}.header-home-link{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);transition:border-color .15s var(--ease), color .15s var(--ease), background .15s var(--ease);align-items:center;gap:6px;padding:8px 15px;font-size:.86rem;font-weight:600;display:inline-flex}.header-home-link:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-soft)}.home-hero{text-align:center;padding:88px 0 40px;position:relative;overflow:hidden}.home-hero:before{content:"";background:radial-gradient(ellipse at center, color-mix(in srgb, var(--accent) 20%, transparent) 0%, transparent 68%);pointer-events:none;z-index:0;width:900px;height:480px;position:absolute;top:-220px;left:50%;translate:-50%}.home-hero .container{z-index:1;position:relative}.home-hero .eyebrow{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-hover);border:1px solid var(--accent-border);letter-spacing:.01em;align-items:center;gap:6px;padding:7px 15px;font-size:.8rem;font-weight:600;display:inline-flex}.home-hero h1{letter-spacing:-.045em;max-width:760px;margin:22px auto 14px;font-size:clamp(2.25rem,4.6vw,3.4rem);font-weight:800}.home-hero h1 span{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#0000;-webkit-background-clip:text;background-clip:text}.home-hero p{max-width:540px;color:var(--text-muted);margin:0 auto;font-size:1.05rem;line-height:1.6}.hero-trust{flex-wrap:wrap;justify-content:center;gap:22px;margin-top:24px;display:flex}.hero-trust span{color:var(--text-muted);align-items:center;gap:6px;font-size:.84rem;font-weight:500;display:inline-flex}.hero-trust svg{color:var(--accent)}.search-bar{max-width:620px;margin:32px auto 0;position:relative}.search-bar-input-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);box-shadow:var(--shadow);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);align-items:center;gap:10px;padding:7px 10px 7px 22px;display:flex}.search-bar-input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft), var(--shadow)}.search-bar-input-wrap .icon{color:var(--text-dim);flex-shrink:0;display:flex}.search-bar input{color:var(--text-primary);background:0 0;border:none;flex:1;padding:11px 0;font-size:.98rem}.search-bar input::placeholder{color:var(--text-dim)}.search-bar-clear{width:30px;height:30px;color:var(--text-muted);transition:background .15s var(--ease);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.search-bar-clear:hover{background:var(--bg-soft)}.search-results{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:30;text-align:left;max-height:380px;animation:dropIn .16s var(--ease);padding:8px;position:absolute;top:calc(100% + 10px);left:0;right:0;overflow-y:auto}.search-result-item{border-radius:var(--radius-sm);text-align:left;width:100%;transition:background .12s var(--ease);align-items:center;gap:12px;padding:10px 12px;display:flex}.search-result-item:hover{background:var(--bg-soft)}.search-result-item .icon{color:var(--accent);flex-shrink:0;display:flex}.search-result-item .texts{flex-direction:column;flex:1;min-width:0;display:flex}.search-result-item strong{color:var(--text-primary);font-size:.93rem;font-weight:600}.search-result-item span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.search-result-item .tag{color:var(--accent-hover);background:var(--accent-soft);border-radius:var(--radius-pill);white-space:nowrap;padding:3px 9px;font-size:.72rem;font-weight:700}.search-empty{text-align:center;color:var(--text-muted);padding:16px;font-size:.9rem}.category-section{padding:30px 0}.category-section-head{align-items:center;gap:10px;margin-bottom:18px;display:flex}.category-section-head .cat-icon{border-radius:var(--radius-sm);background:var(--accent-soft);width:30px;height:30px;color:var(--accent);place-items:center;display:grid}.category-section-head h2{letter-spacing:-.02em;font-size:1.2rem}.category-section-head .count{color:var(--text-dim);font-size:.82rem;font-weight:500}.calculator-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;display:grid}.scroll-reveal{opacity:0;transition:opacity .38s var(--ease), translate .38s var(--ease);translate:0 18px}.scroll-reveal.is-visible{opacity:1;translate:0}.reveal-item{opacity:0;transition:opacity .34s var(--ease), translate .34s var(--ease);display:flex;translate:0 16px}.reveal-item.is-visible{opacity:1;translate:0}.calculator-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform .18s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease);flex-direction:column;gap:10px;padding:20px;display:flex}.calculator-card:hover{box-shadow:var(--shadow-lg);border-color:var(--accent-border);transform:translateY(-3px)}.calculator-card .card-icon{border-radius:var(--radius-sm);background:var(--accent-soft);width:40px;height:40px;color:var(--accent);transition:background .18s var(--ease), color .18s var(--ease);place-items:center;display:grid}.calculator-card:hover .card-icon{background:var(--accent);color:var(--accent-text-on)}.calculator-card h3{font-size:1rem;font-weight:650}.calculator-card p{color:var(--text-muted);flex:1;font-size:.87rem;line-height:1.5}.calculator-card .card-link{color:var(--accent-hover);align-items:center;gap:4px;font-size:.85rem;font-weight:600;display:inline-flex}.calculator-card .card-link svg{transition:transform .18s var(--ease)}.calculator-card:hover .card-link svg{transform:translate(2px)}.empty-state{text-align:center;color:var(--text-muted);padding:48px 20px}.calculator-page{padding:32px 0 64px}.breadcrumb{color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:20px;font-size:.85rem;display:flex}.breadcrumb a{color:var(--text-muted);transition:color .15s var(--ease);font-weight:500}.breadcrumb a:hover{color:var(--accent-hover)}.calculator-page-head{margin-bottom:26px}.calculator-page-head .cat-badge{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-hover);border:1px solid var(--accent-border);align-items:center;gap:6px;margin-bottom:12px;padding:5px 12px;font-size:.76rem;font-weight:600;display:inline-flex}.calculator-page-head h1{letter-spacing:-.03em;font-size:clamp(1.6rem,3vw,2.1rem)}.calculator-page-head p{color:var(--text-muted);max-width:640px;margin-top:9px;font-size:.97rem}.calculator-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.85fr);align-items:start;gap:20px;display:grid}.calc-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:26px}.calc-card h2{letter-spacing:-.01em;margin-bottom:18px;font-size:1rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.field{gap:7px;display:grid}.field.full{grid-column:1/-1}.field label{color:var(--text-secondary);font-size:.84rem;font-weight:600}.field .hint{color:var(--text-dim);font-size:.77rem;font-weight:450}.field input,.field select{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);width:100%;color:var(--text-primary);font-variant-numeric:tabular-nums;transition:border-color .15s var(--ease), box-shadow .15s var(--ease), background .15s var(--ease);padding:11px 13px;font-size:.95rem}.field input:hover,.field select:hover{border-color:var(--border-strong)}.field input:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--surface)}.field.has-error input,.field.has-error select{border-color:var(--danger)}.field-error{color:var(--danger);font-size:.8rem;font-weight:500}.segmented{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-pill);gap:2px;padding:3px;display:inline-flex}.segmented button{border-radius:var(--radius-pill);color:var(--text-muted);transition:background .15s var(--ease), color .15s var(--ease), box-shadow .15s var(--ease);padding:8px 16px;font-size:.85rem;font-weight:600}.segmented button:hover{color:var(--text-secondary)}.segmented button.active{background:var(--accent);color:var(--accent-text-on);box-shadow:var(--shadow-sm)}@keyframes resultFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes dropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.result-card{background:linear-gradient(155deg, var(--accent), var(--accent-2));border-radius:var(--radius-lg);color:#fff;box-shadow:var(--shadow-accent);animation:resultFadeIn .26s var(--ease);gap:12px;padding:26px;display:grid}.result-card .result-label{opacity:.82;text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:600}.result-card .result-value{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;font-size:clamp(1.9rem,4vw,2.6rem);font-weight:800;line-height:1.08}.result-card .result-note{opacity:.9;font-size:.87rem}.result-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.result-metric{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);animation:resultFadeIn .26s var(--ease);padding:14px}.result-metric span{color:var(--text-muted);font-size:.76rem;font-weight:600;display:block}.result-metric b{color:var(--text-primary);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;margin-top:4px;font-size:1.05rem;font-weight:700;display:block}.result-error{background:var(--danger-soft);color:var(--danger);border-radius:var(--radius);text-align:center;padding:16px;font-size:.92rem;font-weight:500}.rate-disclaimer{background:var(--accent-soft);color:var(--text-secondary);border:1px solid var(--accent-border);border-radius:var(--radius);padding:12px 14px;font-size:.82rem;line-height:1.5}.info-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px}.info-card h2,.info-card h3{margin-bottom:8px;font-size:1rem}.info-card p,.info-card li{color:var(--text-muted);font-size:.9rem}.info-card ul{gap:6px;padding-left:18px;list-style:outside;display:grid}.info-card+.info-card{margin-top:14px}.seo-content{border-top:1px solid var(--border);gap:24px;max-width:760px;margin-top:40px;padding-top:32px;display:grid}.seo-content-block h2{letter-spacing:-.02em;margin-bottom:10px;font-size:1.15rem}.seo-content-block p{color:var(--text-secondary);font-size:.95rem;line-height:1.7}.faq-list{gap:10px;margin-top:4px;display:grid}.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px}.faq-item summary{cursor:pointer;color:var(--text-primary);justify-content:space-between;align-items:center;gap:12px;font-size:.95rem;font-weight:650;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--accent);transition:transform .15s var(--ease);flex-shrink:0;font-size:1.1rem}.faq-item[open] summary:after{transform:rotate(45deg)}.faq-item p{color:var(--text-muted);margin-top:10px;font-size:.9rem;line-height:1.6}.ratio-bar{border-radius:var(--radius-pill);background:var(--surface-2);height:8px;overflow:hidden}.ratio-bar-fill{border-radius:var(--radius-pill);background:linear-gradient(90deg, var(--accent), var(--accent-2));height:100%;transition:width .32s var(--ease)}.schedule-wrap{border:1px solid var(--border);border-radius:var(--radius);max-height:320px;overflow-y:auto}.schedule-table{border-collapse:collapse;width:100%;font-size:.85rem}.schedule-table th{background:var(--surface-2);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;text-align:right;border-bottom:1px solid var(--border);padding:10px 12px;font-size:.76rem;font-weight:600;position:sticky;top:0}.schedule-table th:first-child,.schedule-table td:first-child{text-align:left}.schedule-table td{text-align:right;color:var(--text-secondary);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;border-bottom:1px solid var(--border-soft);padding:9px 12px}.schedule-table tbody tr:hover{background:var(--bg-soft)}.schedule-table tbody tr:last-child td{border-bottom:none}.site-footer{border-top:1px solid var(--border);margin-top:48px;padding:36px 0 44px}.site-footer-inner{flex-wrap:wrap;justify-content:space-between;gap:24px;display:flex}.site-footer .footer-brand{max-width:380px}.site-footer .footer-brand p{color:var(--text-muted);margin-top:8px;font-size:.88rem}.footer-links{flex-wrap:wrap;gap:32px;display:flex}.footer-links-col{gap:9px;display:grid}.footer-links-col strong{color:var(--text-primary);font-size:.82rem}.footer-links-col a{color:var(--text-muted);transition:color .15s var(--ease);font-size:.86rem}.footer-links-col a:hover{color:var(--accent-hover)}.footer-bottom{border-top:1px solid var(--border-soft);color:var(--text-dim);text-align:center;margin-top:30px;padding-top:20px;font-size:.81rem}.modal-backdrop{background:color-mix(in srgb, var(--text-primary) 45%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;animation:dropIn .16s var(--ease);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);width:min(440px,100%);box-shadow:var(--shadow-lg);gap:14px;padding:26px;display:grid;position:relative}.modal-card h2{font-size:1.1rem}.modal-close{color:var(--text-muted);width:30px;height:30px;transition:background .15s var(--ease);border-radius:50%;place-items:center;display:grid;position:absolute;top:16px;right:16px}.modal-close:hover{background:var(--bg-soft)}.modal-status{font-size:.87rem;font-weight:500}.modal-status.ok{color:var(--success)}.modal-status.error{color:var(--danger)}.btn-primary{border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-text-on);text-align:center;transition:background .15s var(--ease), box-shadow .15s var(--ease), transform .1s var(--ease);padding:12px 18px;font-weight:650}.btn-primary:hover{background:var(--accent-hover);box-shadow:var(--shadow-accent)}.btn-primary:active{transform:translateY(1px)}.not-found{text-align:center;padding:100px 20px}.not-found h1{color:var(--accent);letter-spacing:-.04em;font-size:4rem}.not-found p{color:var(--text-muted);margin:12px 0 22px}.not-found a{background:var(--accent);color:var(--accent-text-on);border-radius:var(--radius-pill);transition:background .15s var(--ease);padding:10px 20px;font-weight:650;display:inline-flex}.not-found a:hover{background:var(--accent-hover)}@media (width<=860px){.calculator-layout{grid-template-columns:1fr}}@media (width<=620px){.form-grid,.result-metrics{grid-template-columns:1fr}.home-hero{padding:56px 0 28px}.header-home-link span.label{display:none}.header-home-link{padding:9px 11px}.site-footer-inner{flex-direction:column}.footer-links{gap:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important}.scroll-reveal,.reveal-item{opacity:1!important;translate:0!important}}
