:root{
  --bg:#f5f7fb;--surface:#fff;--surface-soft:#f8f9fd;--text:#172033;--muted:#667187;
  --line:#e1e6f0;--primary:#4f46e5;--primary-dark:#3730a3;--primary-soft:#eef2ff;
  --success:#207748;--danger:#a52e2e;--shadow:0 14px 42px rgba(30,46,82,.07);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--text);background:var(--bg)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);line-height:1.55}
body.menu-open{overflow:hidden}
a{color:#3556a8}
img{max-width:100%;height:auto}
[hidden]{display:none!important}
button,input,textarea,select{font:inherit}
button{touch-action:manipulation}
.wrap{max-width:1040px;margin:0 auto;padding:36px 18px 64px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:22px;margin-top:18px}
.content{line-height:1.72}
.content h2{margin:0 0 12px;line-height:1.2}
.content h3{line-height:1.3}
.content p{color:#4f5d75}
.content ul,.content ol,.comma-focus ul{line-height:1.75}
.muted{color:var(--muted);opacity:.88}
.badge{display:inline-block;padding:7px 12px;border:1px solid #d6deef;border-radius:999px;background:#fff;font-size:13px;color:#52617b}
.hero{display:block;text-align:center;margin:18px auto 28px;max-width:820px}
.hero.compact{max-width:820px}
.hero h1{font-size:clamp(34px,6vw,58px);line-height:1.04;margin:16px 0 12px;letter-spacing:-.035em}
.hero p{font-size:18px;color:#5c677d;margin:0}
.hero-home{display:grid;grid-template-columns:148px minmax(0,1fr);gap:28px;align-items:center;max-width:980px;text-align:left}
.hero-logo{width:148px;height:148px;display:block;filter:drop-shadow(0 16px 28px rgba(79,70,229,.18))}
.hero-logo.compact{display:flex;justify-content:center;margin:0 auto 12px;width:84px;height:84px}
.hero-logo img{display:block;width:100%;height:100%;object-fit:contain}
.sitebar{position:sticky;top:0;z-index:50;background:rgba(245,247,251,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid #e4e8f0}
.sitebar-inner{max-width:1100px;margin:auto;padding:10px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative}
.brand{display:flex;align-items:center;gap:10px;font-weight:900;color:var(--text);text-decoration:none;min-width:0}
.brandmark{width:48px;height:48px;display:block;flex:0 0 48px}
.brandmark img{display:block;width:48px;height:48px;border-radius:14px;box-shadow:0 10px 24px rgba(79,70,229,.16)}
.sitebar nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.main-nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.sitebar nav a,.main-nav a,.footer a{color:#42506a;text-decoration:none;font-weight:700}
.main-nav a{padding:9px 11px;border-radius:10px}
.main-nav a:hover{background:#eef2ff;color:#3730a3}
.nav-toggle{display:none;width:44px;height:44px;border:0;background:transparent;border-radius:12px;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;color:#25314a}
.nav-toggle span{display:block;width:23px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s,opacity .2s}
.nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.is-open span:nth-child(2){opacity:0}
.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.topline,.resultHead{display:flex;justify-content:space-between;gap:16px;align-items:center}
.topline label,.resultHead h2{font-weight:800}
.resultHead h2{margin:0 0 4px;font-size:22px}
.resultHead p{margin:0;color:var(--muted)}
.topline span{font-size:13px;color:#7a8498}
textarea{display:block;width:100%;min-height:260px;margin-top:12px;border:1px solid #d7deea;border-radius:14px;padding:16px 17px;font:17px/1.65 Georgia,"Times New Roman",serif;resize:vertical;outline:none;background:#fbfcff;color:#1b2435}
textarea:focus,input:focus,select:focus{border-color:#8297c9;box-shadow:0 0 0 4px rgba(80,111,180,.10);outline:none}
.editor textarea{min-height:280px}
#output{min-height:220px}
.actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.actions.compact{margin-top:0}
button,.primary,.ghost{border:0;border-radius:12px;padding:12px 17px;font-size:15px;font-weight:750;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.primary{background:var(--primary);color:#fff}
.primary:hover{background:var(--primary-dark)}
.primary:disabled{opacity:.6;cursor:wait}
.ghost{background:#eef2f8;color:#28364f}
.ghost:hover{background:#e3e9f3}
.error{margin-top:14px;padding:12px 14px;border-radius:12px;background:#fff0f0;color:var(--danger);border:1px solid #ffd5d5}
.notice{padding:12px 14px;border-radius:12px;background:#eef8ee;color:#2d6235;margin:12px 0;border:1px solid #cee8d2}
.benefits{display:flex;gap:10px;flex-wrap:wrap;margin-top:13px}
.benefits span{font-size:13px;font-weight:700;background:#f0f5ff;color:#35509a;padding:7px 10px;border-radius:999px}
.stats{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0}
.stats span{background:#f2f5fa;border-radius:10px;padding:8px 11px;font-size:13px;color:#516079}
.changes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.change{border:1px solid #e3e8f1;border-radius:14px;padding:13px}
.changeTop{display:flex;justify-content:space-between;align-items:center;gap:8px}
.tag{font-size:12px;font-weight:800;color:#2d4f9e;background:#edf2ff;border-radius:999px;padding:4px 8px}
.confidence{font-size:11px;color:#7b879c}
.changeText{margin:10px 0 5px;word-break:break-word}
.changeText del{color:#9b3b3b}.changeText ins{color:var(--success);text-decoration:none;font-weight:700}
.change p{margin:0;color:#677287;font-size:13px;line-height:1.45}
.trust-grid,.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.trust-grid>div,.feature-grid article{background:#fff;border:1px solid #e3e8f1;border-radius:16px;padding:16px}
.trust-grid b,.feature-grid h3{display:block;margin:0 0 6px}
.trust-grid span,.feature-grid p{color:var(--muted);line-height:1.5;margin:0}
.link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.link-grid a{display:block;padding:12px 14px;border-radius:12px;background:#f4f6fb;color:#294a93;text-decoration:none;font-weight:700}
.link-grid a:hover{background:#eaf0ff}
.steps{line-height:1.8;color:#56637a}
.faq details,.extended-faq details{border-top:1px solid #e8ebf2;padding:13px 0}
.faq summary,.extended-faq summary{font-weight:800;cursor:pointer}
.faq p,.extended-faq p{color:#657087;line-height:1.6}
.section-head{display:flex;justify-content:space-between;gap:20px;align-items:center}
.section-head h2{margin:0}.section-head p{margin:5px 0 0;color:#69758a}
.rating-summary{font-weight:900;background:#f5f2ff;padding:10px 13px;border-radius:12px}
.reviews-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}
.review{border:1px solid #e4e8f0;border-radius:14px;padding:14px;background:#fff}
.review>div{display:flex;justify-content:space-between;gap:12px}.review p{color:#56637a;line-height:1.5}.review time{font-size:12px;color:#9098a8}
.stars{color:#8a6d00;letter-spacing:1px}.review-form{border-top:1px solid #e8ebf2;padding-top:18px}.review-row{display:grid;grid-template-columns:2fr 1fr;gap:12px}
.review-form label,.admin label{display:block;font-weight:750;margin-bottom:10px}
.review-form input,.review-form select,.review-form textarea,.admin input,.admin select,.admin textarea,.admin-login input{width:100%;margin-top:7px;border:1px solid #d7deea;border-radius:11px;padding:11px;background:#fff;color:var(--text)}
.review-form textarea{min-height:110px;font:inherit}.admin textarea{min-height:120px;font:inherit}.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}.empty{color:#788398}
.captcha-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0}.captcha-row span{font-weight:700;min-width:100px}.captcha-row input{max-width:140px;margin:0}
.footer{max-width:1040px;margin:10px auto 40px;padding:22px 18px;color:#657087;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line)}.footer span{font-size:13px}
.examples{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:9px}.examples li{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;background:#f7f9fc;padding:12px;border-radius:12px}.examples code{white-space:normal;font:inherit;color:#794343}.examples b{color:#23714a}.examples span{color:#9aa3b2}
.example-list{display:grid;gap:10px;margin:18px 0}.example-item{padding:12px 14px;background:#f6f7fb;border-radius:12px;border:1px solid #e7e9f3}.example-item code{white-space:normal;font-family:inherit;font-size:1rem}
.advantage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.advantage-grid>div{padding:16px;border:1px solid #e5e7f2;border-radius:16px;background:#fafbff;display:grid;gap:6px}.advantage-grid span{color:var(--muted);font-size:.95rem}
.inline-cta{display:inline-flex;text-decoration:none}.ad-slot{margin:24px auto;min-height:70px;border:1px dashed #d7d8e5;border-radius:16px;padding:14px;text-align:center;background:#fafaff}
.sitemap-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.sitemap-group{display:grid;align-content:start;gap:9px;break-inside:avoid}.sitemap-group h2{font-size:1.05rem;margin:0 0 4px}.sitemap-group a{display:block}
.admin-login{max-width:460px;margin:70px auto;padding:28px}.admin .card{margin-bottom:22px}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin:18px 0}.admin-reviews{display:grid;gap:12px}.inline-actions{display:flex;gap:8px;flex-wrap:wrap}.mini-list{margin:10px 0 0 18px;padding:0;display:grid;gap:8px}
.seo-copy,.advantages-section,.extended-faq{content-visibility:auto;contain-intrinsic-size:700px}.seo-footer-blocks{content-visibility:auto;contain-intrinsic-size:900px}
@media(max-width:900px){
  .nav-toggle{display:flex}.main-nav{position:absolute;top:calc(100% + 8px);left:14px;right:14px;display:none;flex-direction:column;align-items:stretch;padding:12px;background:#fff;border:1px solid #e3e6f2;border-radius:18px;box-shadow:0 18px 45px rgba(30,35,70,.14);z-index:100}.main-nav.is-open{display:flex}.main-nav a{padding:12px 14px}.advantage-grid,.sitemap-columns{grid-template-columns:1fr 1fr}.trust-grid,.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .wrap{padding:22px 14px 48px}.card{padding:16px;border-radius:16px}.changes{grid-template-columns:1fr}.resultHead{align-items:flex-start;flex-direction:column}.hero p{font-size:16px}textarea{min-height:220px;font-size:16px}.hero-home{grid-template-columns:1fr;text-align:center;justify-items:center;gap:14px}.hero-logo{width:112px;height:112px}.reviews-list,.review-row{grid-template-columns:1fr}.footer{flex-direction:column}.link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head{align-items:flex-start;flex-direction:column}
}
@media(max-width:620px){
  .advantage-grid,.sitemap-columns,.trust-grid,.feature-grid,.link-grid{grid-template-columns:1fr}.sitebar .brand>span:last-child{font-size:.95rem}.brandmark{width:42px;height:42px;flex-basis:42px}.brandmark img{width:42px;height:42px}.hero{padding-top:8px}.card{border-radius:16px}.examples li{grid-template-columns:1fr}.examples li>span{display:none}.actions button,.primary,.ghost{width:100%}.captcha-row input{max-width:none;flex:1}.captcha-row .ghost{width:auto}.sitebar-inner{padding-inline:12px}
}
/* v15 SEO editor */
.seo-page-picker{display:grid;gap:10px;margin:14px 0 18px}.seo-page-picker select{width:100%;padding:12px 14px;border:1px solid #d8dcf0;border-radius:14px;background:#fff}.seo-editor-form{display:grid;gap:14px}.seo-editor-form label{display:grid;gap:7px}.seo-editor-form textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}.seo-status-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 12px;background:#f6f7ff;border-radius:12px}.seo-status-row a{font-weight:700}.seo-editor-form small{font-size:.82rem}

/* v15.1: universal reviews */
.global-reviews-wrap{margin-top:22px;margin-bottom:22px}.global-reviews-wrap .reviews{margin:0}.review-form #reviewStatus{display:inline-block;min-height:1.2em;margin-left:8px}.captcha-row input{max-width:140px}
