:root{--blue: #0ea5e9;--blue-dark: #0284c7;--blue-soft: #e0f2fe;--coral: #fb7185;--coral-dark: #e11d48;--coral-soft: #ffe4e6;--bg: #ffffff;--surface: #f8fbff;--text: #172033;--muted: #5b6577;--border: #e6edf5;--radius: 20px;--max: 1180px;--shadow: 0 12px 34px rgba(14, 165, 233, .1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.6;font-size:16px;overflow-x:clip}a{color:var(--blue-dark);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}h1,h2,h3,h4{color:var(--text);overflow-wrap:anywhere}h1{font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.18;margin:0 0 14px;letter-spacing:-.02em}h2{font-size:clamp(1.3rem,2.6vw,1.75rem);line-height:1.25;margin:34px 0 12px;letter-spacing:-.01em}h3{font-size:1.1rem;line-height:1.3;margin:18px 0 8px}p{margin:0 0 14px}ul,ol{padding-left:1.25rem}li{margin:4px 0}strong{font-weight:650}.container{width:100%;max-width:var(--max);margin:0 auto;padding:0 20px}.skip-link{position:absolute;left:-999px;top:8px;z-index:100;background:var(--blue);color:#fff;padding:8px 14px;border-radius:999px}.skip-link:focus{left:20px}.site-header{border-bottom:1px solid var(--border);background:#fffffff0;backdrop-filter:blur(10px);position:sticky;top:0;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;flex-wrap:wrap}.logo{font-weight:800;font-size:19px;color:var(--text);letter-spacing:-.02em}.logo span{color:var(--blue);margin-left:.22em}.logo:hover{text-decoration:none}.main-nav{display:flex;align-items:center;flex-wrap:wrap;gap:6px 16px}.main-nav a{color:var(--text);font-weight:550;font-size:15px}.main-nav a:hover{color:var(--blue-dark);text-decoration:none}.main-nav .nav-cta{background:var(--blue-soft);color:var(--blue-dark);padding:7px 14px;border-radius:999px}main{min-height:55vh}.breadcrumbs{font-size:13.5px;color:var(--muted);margin:18px 0 10px}.breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}.breadcrumbs li{display:inline-flex;align-items:center;gap:4px;margin:0}.breadcrumbs li+li:before{content:"›";color:#b6c2d2;margin-right:2px}.breadcrumbs a{color:var(--muted)}.breadcrumbs [aria-current=page]{color:var(--text);font-weight:550}.hero{position:relative;margin:18px 0 8px;padding:clamp(26px,5vw,54px);border-radius:28px;background:radial-gradient(circle at 88% 18%,rgba(251,113,133,.18),transparent 34%),radial-gradient(circle at 12% 88%,rgba(14,165,233,.16),transparent 36%),linear-gradient(140deg,#f3faff,#fff 55%,#fff5f7);border:1px solid var(--border);overflow:hidden}.hero:after{content:"";position:absolute;right:-60px;bottom:-90px;width:240px;height:240px;border-radius:50%;border:26px solid rgba(14,165,233,.1);pointer-events:none}.hero h1{max-width:850px}.hero .intro{max-width:780px}.eyebrow{display:inline-block;margin-bottom:10px;font-size:13px;font-weight:650;color:var(--blue-dark);background:#fffc;border:1px solid var(--border);padding:4px 12px;border-radius:999px}.intro{font-size:1.04rem;color:#38445a;max-width:860px}.lead{font-size:1.08rem;color:#38445a}.muted{color:var(--muted)}.small{font-size:14px}.section{margin:38px 0}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.section-head h2{margin-bottom:10px}.section-head .more{font-size:14px;font-weight:600}.two-col{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:30px;align-items:start}.stack>*+*{margin-top:18px}.panel{border:1px solid var(--border);border-radius:var(--radius);padding:20px;background:#fff}.panel.soft{background:var(--surface)}.panel h2:first-child,.panel h3:first-child{margin-top:0}.grid{display:grid;gap:16px}.grid.cols{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:16px}.card-grid.wide{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.card{border:1px solid var(--border);border-radius:var(--radius);padding:18px;background:#fff;display:flex;flex-direction:column;gap:9px;min-width:0;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}.card:hover{box-shadow:var(--shadow);border-color:#cfe9fa;transform:translateY(-2px)}.card-top{display:flex;align-items:center;gap:12px;min-width:0}.card-title{margin:0;font-size:1.06rem;line-height:1.25}.card-title a{color:var(--text)}.card-title a:hover{color:var(--blue-dark);text-decoration:none}.card-short{margin:0;font-size:14px;color:var(--muted)}.logo-dot{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:19px;flex:0 0 44px;background:linear-gradient(135deg,var(--blue),#38bdf8);box-shadow:0 6px 16px #0ea5e938}.logo-dot.coral{background:linear-gradient(135deg,var(--coral),#fda4af);box-shadow:0 6px 16px #fb718538}.logo-dot.big{width:64px;height:64px;flex-basis:64px;font-size:27px}.tool-logo{width:44px;height:44px;border-radius:50%;object-fit:cover;background:#f1f5f9;flex:0 0 44px;box-shadow:0 6px 16px #0ea5e926}.tool-logo.big{width:64px;height:64px;flex-basis:64px}.tool-logo.sm{width:28px;height:28px;flex-basis:28px}.rating{display:inline-flex;align-items:center;gap:4px;color:#b45309;background:#fff7ed;border-radius:999px;padding:2px 9px;font-weight:700;font-size:13px;white-space:nowrap}.price-line{font-size:13.5px;color:var(--text);font-weight:600}.badges{display:flex;flex-wrap:wrap;gap:6px}.badge{font-size:11.5px;line-height:1.4;padding:3px 9px;border-radius:999px;background:#f1f5f9;color:#334155;white-space:nowrap}.badge.blue{background:var(--blue-soft);color:#0369a1}.badge.coral{background:var(--coral-soft);color:#be123c}.badge.green{background:#ecfdf5;color:#047857}.card-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.card-link{font-size:13.5px;font-weight:650}.cat-card{display:flex;flex-direction:column;overflow:hidden;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:#fff;transition:box-shadow .2s ease,transform .2s ease}.cat-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.cat-card-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}.cat-card h3{margin:0}.cat-card h3 a{color:var(--text)}.cat-card h3 a:hover{color:var(--blue-dark);text-decoration:none}.cat-art{position:relative;height:108px;overflow:hidden;background:linear-gradient(135deg,#e0f2fe,#f0f9ff)}.cat-art.c1{background:linear-gradient(135deg,#ffe4e6,#fff1f2)}.cat-art.c2{background:linear-gradient(135deg,#e0f2fe,#fce7f3)}.cat-art.c3{background:linear-gradient(135deg,#fff7ed,#ffe4e6)}.cat-art:before,.cat-art:after{content:"";position:absolute;border-radius:50%}.cat-art:before{width:110px;height:110px;right:-20px;top:-36px;background:#0ea5e938}.cat-art:after{width:70px;height:70px;left:18px;bottom:-28px;background:#fb718547}.cat-art .bar{position:absolute;left:30px;top:30px;width:74px;height:10px;border-radius:999px;background:#ffffffd9;transform:rotate(-8deg)}.cat-art .bar.b2{left:46px;top:52px;width:46px;opacity:.75;transform:rotate(6deg)}.cat-art .letter{position:absolute;right:26px;bottom:4px;font-size:66px;font-weight:800;line-height:1;color:#ffffffe6;text-shadow:0 4px 18px rgba(14,165,233,.18)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.chip{display:inline-flex;align-items:center;padding:6px 13px;border-radius:999px;border:1px solid var(--border);background:#fff;color:#334155;font-size:13.5px;font-weight:550}.chip:hover{border-color:#bae6fd;background:var(--blue-soft);color:#0369a1;text-decoration:none}.chip.active{background:var(--blue);border-color:var(--blue);color:#fff}.link-list{display:flex;flex-wrap:wrap;gap:8px 14px}.link-list a{font-size:14px}.text-link{font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 20px;border-radius:999px;background:var(--blue);color:#fff;font-weight:650;border:none;cursor:pointer;font-size:15px;font-family:inherit}.btn:hover{text-decoration:none;background:var(--blue-dark)}.btn.coral{background:var(--coral)}.btn.coral:hover{background:var(--coral-dark)}.btn.ghost{background:#fff;color:var(--blue-dark);border:1px solid #bae6fd}.btn.ghost:hover{background:var(--blue-soft)}.btn.sm{padding:6px 14px;font-size:13.5px}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.fact{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:12px 14px}.fact b{display:block;font-size:1.15rem;line-height:1.3}.fact span{font-size:12.5px;color:var(--muted)}.pros-cons{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.pros-cons ul{margin:0;padding-left:1.2rem}.pros-cons li{font-size:14.5px}.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:16px;background:#fff}table{width:100%;border-collapse:collapse;font-size:14px;min-width:650px}th,td{padding:10px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--border)}th{background:#f1f8ff;font-weight:650;white-space:nowrap}tr:last-child td{border-bottom:none}td.num{white-space:nowrap}.faq{margin:26px 0 8px}.faq details{border:1px solid var(--border);border-radius:14px;padding:12px 16px;margin-bottom:8px;background:#fff}.faq details[open]{border-color:#bae6fd;background:#fbfeff}.faq summary{font-weight:650;cursor:pointer}.faq summary::marker{color:var(--blue)}.faq p{margin:10px 0 2px;color:#3b465a;font-size:15px}.tool-head{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap;margin:10px 0 4px}.tool-head-text{min-width:0;flex:1 1 260px}.tool-head h1{margin-bottom:6px}.aside-card{position:sticky;top:86px}.aside-card .btn{width:100%}.prose p{margin-bottom:14px}.prose h2{margin-top:28px}.prose h3{margin-top:22px}.prose ul{margin:0 0 16px}.prose blockquote{margin:18px 0;padding:12px 18px;border-left:4px solid var(--coral);background:#fff7f8;border-radius:0 12px 12px 0;color:#3b465a}.prose table{min-width:0}.prose a{font-weight:550}.article-list{display:grid;gap:14px}.article-item{display:flex;flex-direction:column;gap:4px;border:1px solid var(--border);border-radius:var(--radius);padding:18px;background:#fff}.article-item h2,.article-item h3{margin:0;font-size:1.15rem}.article-meta{font-size:13px;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap}.article-item p{margin:4px 0 0;color:var(--muted);font-size:14.5px}.article-head{max-width:820px}.article-body{max-width:820px;font-size:1.02rem}.article-body h2{margin-top:32px}.article-body img{border-radius:14px}.empty-state{text-align:center;padding:26px 16px;border:1px dashed #cbd5e1;border-radius:16px;background:var(--surface)}.empty-state strong{display:block;margin-bottom:4px}.review-form{margin-top:14px;display:grid;gap:8px;opacity:.65}.review-form input,.review-form textarea,.review-form select{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:12px;font:inherit;background:#f8fafc;color:var(--muted)}.review-form textarea{min-height:84px;resize:vertical}.review-form button{justify-self:start;opacity:.7;cursor:not-allowed}footer{margin-top:64px;padding:42px 0 28px;border-top:1px solid var(--border);background:linear-gradient(180deg,#f8fbff,#fff)}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:28px}.footer-grid h4{margin:0 0 10px;font-size:13.5px;color:var(--text)}.footer-grid a{display:block;margin:5px 0;font-size:13.5px;color:var(--muted)}.footer-grid a:hover{color:var(--blue-dark)}.footer-brand p{font-size:13.5px;color:var(--muted);max-width:280px}.footer-bottom{margin-top:26px;padding-top:18px;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}.notice{border:1px solid #bae6fd;background:#f0f9ff;border-radius:16px;padding:14px 16px;font-size:14px;color:#0c4a6e}.notice.coral{border-color:#fecdd3;background:#fff1f2;color:#9f1239}.crumbs-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.center{text-align:center}.mt0{margin-top:0}.mb0{margin-bottom:0}@media(max-width:960px){.two-col{grid-template-columns:1fr}.aside-card{position:static}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){body{font-size:15.5px}.container{padding:0 16px}.header-inner{padding:10px 0}.main-nav{gap:4px 12px}.main-nav a{font-size:13.5px}.hero{border-radius:22px;margin-top:12px}.card-grid,.grid.cols{grid-template-columns:1fr}.card{padding:16px}h2{margin-top:28px}.footer-grid{grid-template-columns:1fr;gap:20px}.tool-head{gap:12px}}@media(max-width:380px){.main-nav a{font-size:12.5px}.logo{font-size:17px}.badge{font-size:11px}}
