:root{--surface-2:#f7faff;--surface-3:#f0f6ff;--line-strong:#c4d4ef;--radius-xl:22px;--radius-md:14px;--input-line:#d6e2f0;--pill:#eef4ff;--pill-text:#095a60;--yellow:#fff4cc;--yellow-line:#ebd791;--sidebar-top:90px}
html[data-theme="dark"],html[data-theme="dark"],html[data-theme="dark"],html[data-theme="dark"],html[data-theme="dark"],html[data-theme="dark"],html[data-theme="dark"],html[data-theme="dark"],.tool-app html.tool-dark,.tool-app body.tool-dark{color-scheme:dark;--bg:#08111f;--bg2:#0d1728;--surface:#102a2c;--surface-2:#111d31;--surface-3:#142238;--text:#e5edf8;--muted:#8aa19f;--muted-2:#c6d4d2;--line:#22324c;--line-strong:#31486e;--shadow:0 20px 50px rgba(2,6,23,.30);--shadow-soft:0 10px 24px rgba(2,6,23,.18);--input-bg:#0b1527;--input-line:#2a3c58;--input-focus:rgba(96,165,250,.18);--pill:#162640;--pill-text:#b7dcd9;--yellow:#3b3416;--yellow-line:#645a1d}
.tool-app *{box-sizing:border-box}
.tool-app button,.tool-app input,.tool-app textarea,.tool-app select{font:inherit}
.tool-app button{-webkit-tap-highlight-color:transparent}
.tool-app input,.tool-app textarea,.tool-app select{outline:none}
.page{max-width:1380px;margin:0 auto;padding:14px 14px 22px;display:grid;gap:12px}
.hero{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:12px}
.hero-main{border:1px solid var(--line);border-radius:var(--radius-xl);background:linear-gradient(180deg,#d9e7f5,#d2e2f0);box-shadow:var(--shadow-soft);padding:16px;display:grid;gap:12px}
.tool-app html.tool-dark .hero-main,html[data-theme="dark"] .hero-main,html[data-theme="dark"] .hero-main,html[data-theme="dark"] .hero-main,html[data-theme="dark"] .hero-main,html[data-theme="dark"] .hero-main,html[data-theme="dark"] .hero-main,html[data-theme="dark"] .hero-main,html[data-theme="dark"] .hero-main{background:linear-gradient(180deg,#16263a,#142236)}
.hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.hero-title{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1;letter-spacing:-.05em;font-weight:800;color:#2f4a4c}
.tool-app html.tool-dark .hero-title,html[data-theme="dark"] .hero-title,html[data-theme="dark"] .hero-title,html[data-theme="dark"] .hero-title,html[data-theme="dark"] .hero-title,html[data-theme="dark"] .hero-title,html[data-theme="dark"] .hero-title,html[data-theme="dark"] .hero-title,html[data-theme="dark"] .hero-title{color:var(--text)}
.hero-title span{display:inline-block;margin-right:8px}
.top-actions{display:flex;gap:8px;flex-wrap:wrap}
.mini-btn{min-height:34px;padding:0 11px;border-radius:10px;border:1px solid var(--line-strong);background:rgba(255,255,255,.72);color:var(--text);font-weight:800;font-size:.72rem;cursor:pointer}
.tool-app html.tool-dark .mini-btn,html[data-theme="dark"] .mini-btn,html[data-theme="dark"] .mini-btn,html[data-theme="dark"] .mini-btn,html[data-theme="dark"] .mini-btn,html[data-theme="dark"] .mini-btn,html[data-theme="dark"] .mini-btn,html[data-theme="dark"] .mini-btn,html[data-theme="dark"] .mini-btn{background:rgba(255,255,255,.05)}
.issue-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--yellow-line);background:var(--yellow);border-radius:14px;padding:10px 12px}
.issue-strip span{color:var(--muted-2);font-size:.95rem}
.check-btn{min-height:38px;padding:0 18px;border:none;border-radius:999px;background:#008272;color:#fff;font-weight:800;cursor:pointer;box-shadow:0 10px 20px rgba(0,130,114,.18)}
.hero-side{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-soft);overflow:hidden}
.hero-side-head{padding:10px 14px;background:#4b89c8;color:#fff;font-weight:800;text-align:center;font-size:.95rem}
.hero-side-body{padding:16px;display:grid;gap:14px;text-align:center;background:repeating-linear-gradient(
          0deg,
          rgba(100,116,139,.06) 0px,
          rgba(100,116,139,.06) 1px,
          transparent 1px,
          transparent 16px
        )}
.hero-side-body h3{margin:0;font-size:1.1rem;line-height:1.2}
.demo-bars{border:1px solid var(--line);border-radius:16px;background:var(--surface-2);padding:14px;display:grid;gap:10px}
.demo-bar{height:8px;border-radius:999px;background:rgba(148,163,184,.18);overflow:hidden;position:relative}
.demo-bar i{position:absolute;inset:0 auto 0 0;width:60%;background:#ef4444;border-radius:999px}
.demo-bar:nth-child(2) i{width:40%;background:#f97316}
.demo-bar:nth-child(3) i{width:70%;background:#38bdf8}
.demo-bar:nth-child(4) i{width:52%;background:#f59e0b}
.demo-bar:nth-child(5) i{width:78%;background:#e11d48}
.hero-side-body .big-check{min-height:48px;border:none;border-radius:999px;background:#008272;color:#fff;font-weight:800;cursor:pointer;font-size:1rem}
.hero-side-body a,.hero-side-body .text-link-btn{appearance:none;border:0;background:transparent;padding:0;color:var(--accent);font-size:.92rem;font:inherit;text-decoration:none;cursor:pointer}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:12px;align-items:start}
.left{min-width:0;display:grid;gap:10px}
.toolbar{border:1px solid var(--line);background:var(--surface-3);border-radius:14px 14px 0 0;overflow:hidden;box-shadow:var(--shadow-soft);display:flex;flex-wrap:wrap;gap:0}
.tool-btn{min-height:46px;padding:0 12px;border:none;border-right:1px solid var(--line);background:transparent;color:var(--text);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em;cursor:pointer;position:relative}
.tool-btn:hover{background:rgba(37,99,235,.06)}
.tool-btn:last-child{border-right:none}
.tool-btn.off::after{content:"OFF";margin-left:6px;display:inline-block;padding:2px 5px;border-radius:5px;font-size:.6rem;background:#ef4444;color:#fff;vertical-align:middle}
.anchor{position:relative}
.dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:240px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow);padding:8px;display:none;z-index:80}
.dropdown.show{display:grid;gap:6px}
.dropdown button{min-height:40px;border:none;border-radius:10px;background:var(--surface-2);color:var(--text);font-weight:700;cursor:pointer;text-align:left;padding:0 12px}
.dropdown button:hover{background:rgba(37,99,235,.08)}
.editor-shell{border:1px solid var(--line);border-top:none;border-radius:0 0 14px 14px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}
.editor-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap}
.search-box{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.search-box input{min-width:220px;min-height:40px;border-radius:10px;border:1px solid var(--input-line);background:var(--input-bg);color:var(--text);padding:0 12px}
.search-box input:focus,.editor-text:focus{border-color:rgba(37,99,235,.35);box-shadow:0 0 0 4px var(--input-focus)}
.pill{min-height:32px;padding:0 10px;border-radius:999px;background:var(--pill);color:var(--pill-text);border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:800;white-space:nowrap}
.editor-wrap{position:relative;min-height:var(--editor-min-height,430px);height:auto;padding:14px;background:var(--surface);display:block;overflow:hidden}
.highlight-layer{position:absolute;top:14px;left:14px;right:14px;min-height:calc(var(--editor-min-height,430px) - 28px);height:calc(var(--editor-height,430px) - 28px);overflow:hidden;margin:0;white-space:pre-wrap;word-wrap:break-word;line-height:1.72;font-size:1rem;font-family:inherit;pointer-events:none;color:transparent}
.highlight-layer mark{border-radius:4px;color:transparent;padding:0 .05em}
.highlight-layer mark.keyword{background:#f7e07c}
.highlight-layer mark.repeat{background:#bde2c2}
.highlight-layer mark.search{background:#b8d6ff}
.highlight-layer mark.flow-sentence{display:inline;border-radius:4px;padding:0 .08em;color:transparent}
.highlight-layer mark.flow-1{background:rgba(239,68,68,.26)}
.highlight-layer mark.flow-2{background:rgba(245,158,11,.24)}
.highlight-layer mark.flow-3{background:rgba(34,197,94,.22)}
.highlight-layer mark.flow-4{background:rgba(59,130,246,.22)}
.highlight-layer mark.flow-5{background:rgba(168,85,247,.22)}
.highlight-layer mark.flow-6{background:rgba(236,72,153,.22)}
.flow-pills span.active{font-weight:900;border-color:transparent;color:#fff}
.flow-pills span.flow-1.active{background:#ef4444}
.flow-pills span.flow-2.active{background:#f59e0b}
.flow-pills span.flow-3.active{background:#22c55e}
.flow-pills span.flow-4.active{background:#138a92}
.flow-pills span.flow-5.active{background:#a855f7}
.flow-pills span.flow-6.active{background:#ec4899}
.editor-text{position:relative;z-index:2;width:100%;min-height:calc(var(--editor-min-height,430px) - 28px);height:calc(var(--editor-height,430px) - 28px);border:none;background:transparent;color:var(--text);resize:none;overflow:hidden;line-height:1.72;font-size:1rem;padding:0;margin:0;display:block}
.editor-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-top:1px solid var(--line);background:var(--surface-3);flex-wrap:wrap}
.count-big{font-size:1.12rem;font-weight:800;color:#2f4a4c}
.tool-app html.tool-dark .count-big,html[data-theme="dark"] .count-big,html[data-theme="dark"] .count-big,html[data-theme="dark"] .count-big,html[data-theme="dark"] .count-big,html[data-theme="dark"] .count-big,html[data-theme="dark"] .count-big,html[data-theme="dark"] .count-big,html[data-theme="dark"] .count-big{color:var(--text)}
.toggle-wrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted-2);font-size:.92rem}
.switch{width:46px;height:26px;border:none;border-radius:999px;background:#d1d5db;position:relative;cursor:pointer}
.switch::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:.2s ease;box-shadow:0 1px 3px rgba(0,0,0,.16)}
.switch.active{background:#138a92}
.switch.active::after{left:23px}
.right{position:relative;top:auto;align-self:start;display:grid;gap:12px}
.side-card{border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-soft);overflow:hidden}
.side-head{padding:12px 14px;border-bottom:1px solid var(--line);background:var(--surface-3);display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:800}
.side-body{padding:12px 14px;display:grid;gap:10px}
.row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--line);color:#2f4a4c}
.row:last-child{border-bottom:none;padding-bottom:0}
.tool-app html.tool-dark .row,html[data-theme="dark"] .row,html[data-theme="dark"] .row,html[data-theme="dark"] .row,html[data-theme="dark"] .row,html[data-theme="dark"] .row,html[data-theme="dark"] .row,html[data-theme="dark"] .row,html[data-theme="dark"] .row{color:var(--text)}
.chip{min-height:24px;padding:0 8px;border-radius:999px;color:#fff;font-weight:800;font-size:.76rem;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;background:#4b6365}
.chip.blue{background:#0b6e75}
.chip.green{background:#16a34a}
.chip.orange{background:#d97706}
.chip.red{background:#dc2626}
.chip.purple{background:#0e7c86}
.flow-pills{display:flex;flex-wrap:wrap;gap:8px}
.flow-pills span{min-height:28px;padding:0 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);color:var(--muted-2);display:inline-flex;align-items:center;font-size:.78rem}
.score-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:800}
.score-bar{height:8px;border-radius:999px;background:linear-gradient(90deg,#ef4444,#f59e0b,#65a30d);overflow:hidden;position:relative}
.score-fill{height:100%;background:rgba(255,255,255,.25);width:0%;border-radius:999px}
.note{font-size:.88rem;color:var(--muted);line-height:1.6}
.keyword-table{display:grid;gap:8px;max-height:340px;overflow:auto;padding-right:4px;align-content:start}
.keyword-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:7px;border-bottom:1px solid var(--line);font-size:.92rem}
.keyword-row:last-child{border-bottom:none;padding-bottom:0}
.bottom-panels{display:grid;gap:16px;margin-top:16px}
.panel{border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-soft);overflow:hidden}
.panel-head{padding:14px 16px;border-bottom:1px solid var(--line);background:var(--surface-3);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-weight:800}
.panel-body{padding:16px}
.mode-tabs{display:flex;flex-wrap:wrap;gap:8px}
.mode-tab{min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted-2);font-weight:800;font-size:.82rem;cursor:pointer}
.mode-tab.active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-color:transparent}
.guide-box{display:grid;gap:10px}
.guide-note{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:12px;color:var(--muted-2);line-height:1.65;font-size:.92rem}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.list-panel{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:14px;min-height:180px}
.list-panel h4{margin:0 0 10px;font-size:1rem}
.list-board{display:grid;gap:8px;max-height:260px;overflow:auto}
.list-row{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:10px 12px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.list-main strong{display:block;font-size:.92rem;line-height:1.4;margin-bottom:4px}
.list-main span{display:block;color:var(--muted);font-size:.82rem;line-height:1.5}
.mini-badge{min-height:28px;padding:0 10px;border-radius:999px;background:var(--surface-3);border:1px solid var(--line);font-size:.78rem;font-weight:800;display:inline-flex;align-items:center;white-space:nowrap}
.history-grid{display:grid;gap:10px}
.history-item{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:12px;display:grid;gap:8px}
.history-item strong{font-size:.94rem}
.history-item span{color:var(--muted);font-size:.82rem;line-height:1.55}
.history-meta,.history-actions{display:flex;flex-wrap:wrap;gap:8px}
.empty{border:1px dashed var(--line);border-radius:12px;background:var(--surface-3);padding:18px;text-align:center;color:var(--muted);line-height:1.8}
.studio-field-grid{display:grid;gap:12px}
.studio-label{display:grid;gap:8px;color:var(--muted-2);font-size:.9rem;font-weight:700}
.studio-input,.studio-textarea{width:100%;border:1px solid var(--input-line);background:var(--input-bg);color:var(--text);border-radius:12px;padding:12px 14px}
.studio-textarea{min-height:110px;resize:vertical;line-height:1.65}
.studio-input:focus,.studio-textarea:focus{border-color:rgba(37,99,235,.35);box-shadow:0 0 0 4px var(--input-focus)}
.keyword-studio-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}
.keyword-builder-panel{min-height:100%}
.keyword-cluster-wrap{display:grid;gap:14px}
.keyword-suggest-chip{cursor:pointer;border:none}
.keyword-suggest-chip.active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-color:transparent}
.keyword-suggest-chip[disabled]{opacity:.92;cursor:default}
.info{color:var(--muted-2);line-height:1.75;font-size:1rem}
.search-hidden{display:none !important}
.side-head-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0;border:none;background:transparent;color:inherit;font:inherit;font-weight:inherit;cursor:pointer;text-align:left}
.side-head-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.collapse-caret{font-size:1rem;line-height:1;transition:transform .22s ease,color .2s ease;color:var(--muted)}
.side-card.collapsed .collapse-caret{transform:rotate(-90deg)}
.side-card.collapsed .side-body{display:none}
.keyword-density-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.keyword-density-card strong{display:block;font-size:.92rem;line-height:1.25}
.keyword-density-card span{display:block;color:var(--muted);font-size:.81rem;line-height:1.45}
.keyword-density-actions{display:flex;align-items:center;gap:8px}
.keyword-remove{width:28px;height:28px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted-2);font-weight:900;cursor:pointer;line-height:1}
.keyword-remove:hover{border-color:var(--accent);color:var(--accent)}
.ignored-keywords{display:flex;flex-wrap:wrap;gap:8px;max-height:96px;overflow:auto;align-content:flex-start;padding-right:2px}
.ignored-chip{display:inline-flex;align-items:center;gap:8px;min-height:30px;padding:0 8px 0 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);font-size:.8rem}
.ignored-chip button{width:22px;height:22px;border:none;border-radius:999px;background:var(--surface);color:var(--muted-2);cursor:pointer;font-weight:800}
.health-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.health-card{border:1px solid var(--line);border-radius:14px;background:var(--surface-2);padding:14px;display:grid;gap:6px}
.health-card strong{font-size:1.35rem;line-height:1;color:var(--text)}
.health-card span{font-size:.82rem;color:var(--muted)}
.health-card p{margin:0;color:var(--muted-2);font-size:.86rem;line-height:1.55}
@media (max-width:860px){
.health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
.health-grid{grid-template-columns:1fr}
}
.tz-modal{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:20px}
.tz-modal.show{display:flex}
.tz-modal-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.52);backdrop-filter:blur(10px);animation:tzFade .22s ease}
.tz-modal-card{position:relative;width:min(980px,100%);max-height:min(88vh,920px);overflow:hidden;border:1px solid var(--line-strong);border-radius:24px;background:linear-gradient(180deg,var(--surface),var(--surface-2));box-shadow:0 30px 80px rgba(2,6,23,.30);animation:tzPop .26s ease;display:flex;flex-direction:column}
.tz-modal-card.small{width:min(760px,100%)}
.tz-modal-head{position:sticky;top:0;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,rgba(37,99,235,.16),rgba(124,58,237,.10));backdrop-filter:blur(8px)}
.tz-modal-head h3{margin:0;font-size:1.18rem;line-height:1.2}
.tz-modal-head p{margin:6px 0 0;color:var(--muted);line-height:1.6;font-size:.92rem}
.tz-modal-close{flex:0 0 auto;min-width:40px;height:40px;border:none;border-radius:12px;background:var(--surface);color:var(--text);font-size:1.15rem;cursor:pointer;box-shadow:var(--shadow-soft)}
.tz-modal-body{flex:1 1 auto;min-height:0;overflow:auto;padding:18px 20px 20px;display:grid;gap:16px;align-content:start;scrollbar-gutter:stable}
.tz-feature-grid,.tz-check-grid,.tz-stats-grid,.tz-how-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tz-feature-card,.tz-check-card,.tz-stat-card,.tz-how-card{border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-soft);padding:15px;display:grid;gap:10px}
.tz-feature-card h4,.tz-check-card h4,.tz-stat-card h4,.tz-how-card h4{margin:0;font-size:1rem;line-height:1.3}
.tz-feature-card p,.tz-check-card p,.tz-stat-card p,.tz-how-card p{margin:0;color:var(--muted);line-height:1.65;font-size:.9rem}
.tz-action-btn,.tz-ghost-btn,.tz-primary-btn{min-height:42px;padding:0 14px;border-radius:12px;font-weight:800;cursor:pointer;transition:transform .18s ease, box-shadow .18s ease, background .18s ease}
.tz-action-btn:hover,.tz-ghost-btn:hover,.tz-primary-btn:hover{transform:translateY(-1px)}
.tz-action-btn{border:1px solid var(--line);background:var(--surface-2);color:var(--text);text-align:left}
.tz-ghost-btn{border:1px solid var(--line);background:transparent;color:var(--text)}
.tz-primary-btn{border:none;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;box-shadow:0 14px 30px rgba(37,99,235,.22)}
.tz-modal-actions{position:sticky;bottom:-20px;z-index:4;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-items:center;margin-top:4px;padding:14px 0 0;background:linear-gradient(180deg,rgba(255,255,255,0),var(--surface) 28%);border-top:1px solid rgba(148,163,184,.18)}
html[data-theme="dark"] .tz-modal-actions,html[data-theme="dark"] .tz-modal-actions,html[data-theme="dark"] .tz-modal-actions,html[data-theme="dark"] .tz-modal-actions,html[data-theme="dark"] .tz-modal-actions,html[data-theme="dark"] .tz-modal-actions,html[data-theme="dark"] .tz-modal-actions,html[data-theme="dark"] .tz-modal-actions,.tool-app html.tool-dark .tz-modal-actions,.tool-app body.tool-dark .tz-modal-actions{background:linear-gradient(180deg,rgba(2,6,23,0),var(--surface) 28%)}
.tz-modal-actions .tz-primary-btn,.tz-modal-actions .tz-ghost-btn,.tz-modal-actions .tz-action-btn{min-width:132px;justify-content:center;text-align:center}
.tz-progress{height:12px;border-radius:999px;background:rgba(148,163,184,.16);overflow:hidden;position:relative}
.tz-progress i{position:absolute;inset:0 auto 0 0;width:0%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .45s ease}
.tz-score-hero{border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,rgba(37,99,235,.12),rgba(124,58,237,.10));padding:16px;display:grid;gap:12px}
.tz-score-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tz-big-score{font-size:2rem;font-weight:900;letter-spacing:-.04em}
.tz-check-meta{display:flex;flex-wrap:wrap;gap:8px}
.tz-check-list{display:grid;gap:10px}
.tz-check-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:.78rem;font-weight:800}
.tz-badge-good{background:rgba(22,163,74,.12);color:#16a34a;border:1px solid rgba(22,163,74,.22)}
.tz-badge-warn{background:rgba(217,119,6,.12);color:#d97706;border:1px solid rgba(217,119,6,.22)}
.tz-badge-bad{background:rgba(220,38,38,.12);color:#dc2626;border:1px solid rgba(220,38,38,.22)}
.tz-inline-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tz-inline-stat{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:12px;text-align:center}
.tz-inline-stat strong{display:block;font-size:1.15rem;line-height:1.1;margin-bottom:6px}
.tz-inline-stat span{display:block;color:var(--muted);font-size:.82rem}
.tz-report-shell{display:grid;gap:14px}
.tz-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:14px}
.tz-score-panel{border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,rgba(37,99,235,.14),rgba(124,58,237,.10));padding:16px;display:grid;gap:14px;box-shadow:var(--shadow-soft)}
.tz-score-ring-wrap{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.tz-score-ring{--deg:0deg;width:110px;height:110px;border-radius:50%;background:conic-gradient(var(--accent) 0deg,var(--accent2) var(--deg),rgba(148,163,184,.15) var(--deg),rgba(148,163,184,.15) 360deg);display:grid;place-items:center;flex:0 0 auto}
.tz-score-ring::after{content:"";width:82px;height:82px;border-radius:50%;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);grid-area:1/1}
.tz-score-ring strong{grid-area:1/1;position:relative;z-index:1;font-size:1.35rem;font-weight:900;letter-spacing:-.04em}
.tz-score-copy{display:grid;gap:8px;min-width:0}
.tz-score-copy h4{margin:0;font-size:1.2rem;line-height:1.2}
.tz-kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tz-kpi{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:12px;display:grid;gap:6px;text-align:center}
.tz-kpi strong{font-size:1.12rem;line-height:1}
.tz-kpi span{font-size:.8rem;color:var(--muted)}
.tz-insight-card{border:1px solid var(--line);border-radius:20px;background:var(--surface);padding:15px;display:grid;gap:12px;box-shadow:var(--shadow-soft)}
.tz-insight-card h4{margin:0;font-size:1rem;line-height:1.25}
.tz-insight-card p{margin:0;color:var(--muted);line-height:1.65;font-size:.9rem}
.tz-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tz-check-card{position:relative;overflow:hidden}
.tz-check-card::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent2));opacity:.9}
.tz-check-card:hover{transform:translateY(-2px)}
.tz-check-card{transition:transform .18s ease, box-shadow .18s ease}
.tz-check-note{font-size:.88rem;color:var(--muted);line-height:1.6}
.tz-tip-list,.tz-fix-list{display:grid;gap:8px;padding:0;margin:0;list-style:none}
.tz-tip-list li,.tz-fix-list li{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;padding:10px 12px;font-size:.88rem;line-height:1.55;color:var(--muted-2)}
.tz-signal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.tz-signal{border:1px solid var(--line);border-radius:14px;background:var(--surface-2);padding:12px;display:grid;gap:6px}
.tz-signal strong{font-size:1.05rem;line-height:1}
.tz-signal span{font-size:.8rem;color:var(--muted)}
.tz-signal p{margin:0;font-size:.84rem;color:var(--muted-2);line-height:1.55}
.tz-mini-meter{height:8px;border-radius:999px;background:rgba(148,163,184,.16);overflow:hidden}
.tz-mini-meter i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent2))}
.tz-summary-box{border:1px dashed var(--line-strong);border-radius:16px;background:linear-gradient(180deg,var(--surface-2),transparent);padding:12px 14px;color:var(--muted-2);line-height:1.65;font-size:.92rem}
@keyframes tzFade{from{opacity:0}to{opacity:1}}
@keyframes tzPop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.ai-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.ai-chip{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 12px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);font-size:.8rem;font-weight:700;color:var(--text)}
.ai-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ai-output-box{border:1px solid var(--line);border-radius:14px;background:var(--surface-2);padding:14px;line-height:1.7;color:var(--text)}
.ai-output-box h4{margin:0 0 10px;font-size:1rem}
.ai-output-box pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:inherit}
.ai-loading{display:grid;gap:12px;padding:8px 0}
.ai-loader{height:10px;border-radius:999px;background:rgba(148,163,184,.18);overflow:hidden;position:relative}
.ai-loader::after{content:"";position:absolute;inset:0;width:40%;background:linear-gradient(90deg,var(--accent),var(--accent2));animation:aiLoad 1.1s linear infinite;border-radius:999px}
@keyframes aiLoad{0%{transform:translateX(-120%)}100%{transform:translateX(320%)}}
.ai-note-list{display:grid;gap:10px;margin-top:8px}
.ai-note{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:12px;color:var(--muted-2);line-height:1.65}
.tz-resolve-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tz-resolve-card{border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:16px;display:grid;gap:12px;box-shadow:var(--shadow-soft)}
.tz-resolve-card h4{margin:0;font-size:1rem;line-height:1.25}
.tz-resolve-card pre{margin:0;white-space:pre-wrap;word-break:break-word;line-height:1.72;font-family:inherit;color:var(--text)}
.tz-resolve-list{display:grid;gap:10px}
.tz-resolve-list .ai-note{margin:0}
.tz-resolve-hero{border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,rgba(22,163,74,.10),rgba(37,99,235,.10));padding:16px;display:grid;gap:12px}
.tz-fix-chip-row{display:flex;flex-wrap:wrap;gap:8px}
.tz-fix-chip{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);font-size:.8rem;font-weight:800;color:var(--text)}
.tz-resolve-hero{border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,rgba(22,163,74,.10),rgba(37,99,235,.10));padding:16px;display:grid;gap:12px}
.tz-fix-chip-row{display:flex;flex-wrap:wrap;gap:8px}
.tz-fix-chip{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-size:.8rem;font-weight:800}
.tz-resolve-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tz-resolve-card{border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-soft);padding:15px;display:grid;gap:10px;min-width:0}
.tz-resolve-card h4{margin:0;font-size:1rem}
.tz-resolve-card pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:inherit;line-height:1.72;max-height:320px;overflow:auto;padding:12px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line)}
.tz-resolve-list{display:grid;gap:10px}
.tz-compare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tz-compare-card{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:14px;box-shadow:var(--shadow-soft);display:grid;gap:8px}
.tz-compare-card strong{font-size:1.15rem;line-height:1}
.tz-check-emphasis{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 12px;border-radius:999px;font-size:.8rem;font-weight:800;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}
@media (max-width:1140px){
.hero,.layout{grid-template-columns:1fr}
.right{position:static;top:auto}
}
@media (max-width:680px){
.tz-modal-card{max-height:min(92vh,980px)}
.tz-modal-head{padding:16px 16px 14px}
.tz-modal-body{padding:14px 16px 16px}
.tz-modal-actions{bottom:-16px;justify-content:stretch;padding-top:12px}
.tz-modal-actions .tz-primary-btn,.tz-modal-actions .tz-ghost-btn,.tz-modal-actions .tz-action-btn{flex:1 1 100%;min-width:0}
}
@media (max-width:860px){
.grid-2,.tz-feature-grid,.tz-check-grid,.tz-stats-grid,.tz-how-grid,.tz-inline-stats,.tz-hero-grid,.tz-section-grid,.tz-signal-grid,.tz-kpi-strip{grid-template-columns:1fr}
}
@media (max-width:680px){
.page{padding:12px 12px 24px}
.hero-top{flex-direction:column;align-items:flex-start}
.top-actions{width:100%;justify-content:flex-start}
.toolbar{border-radius:14px}
.tool-btn{flex:1 1 calc(50% - 0px);min-width:140px;border-bottom:1px solid var(--line)}
.editor-shell{border-top:1px solid var(--line);border-radius:14px}
.editor-text,.highlight-layer{min-height:280px;height:280px}
.editor-wrap{min-height:0}
.hero-title{font-size:2rem}
.search-box input{min-width:0;width:100%}
}

/* page overrides */
/* Word counter: Option C "Soft & clear" layout */
.tool-app{--surface:var(--zl-surface);--surface-2:var(--zl-surface-2);--surface-3:var(--zl-surface-2);--line:var(--zl-line);--line-strong:var(--zl-line-2);--input-line:var(--zl-line-2);--input-bg:var(--zl-surface);--input-focus:color-mix(in srgb,var(--zl-accent) 22%,transparent);--pill:var(--zl-tint);--pill-text:var(--zl-accent-strong);--text:var(--zl-ink);--muted:var(--zl-muted);--muted-2:var(--zl-muted);--shadow:none;--shadow-soft:none}
.tool-app .wc-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:12px;margin-bottom:12px}
.tool-app .wc-live,.tool-app .wc-mode{border:1px solid var(--zl-line);border-radius:18px;background:var(--zl-surface-2);padding:14px 18px}
.tool-app .wc-live{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.tool-app .word-count-stat{display:flex;flex-direction:column;line-height:1.1}
.tool-app .word-count-stat strong{font:600 34px/1.05 var(--zl-font-head);color:var(--zl-ink);font-variant-numeric:tabular-nums}
.tool-app .word-count-stat small{font:500 14px var(--zl-font-head);color:var(--zl-muted);margin-top:4px}
.tool-app .wc-live .mini-btn{margin-left:auto}
.tool-app .wc-mode{display:grid;gap:8px;align-content:center}
.tool-app .wc-mode-label{font:600 14px var(--zl-font-head);color:var(--zl-ink)}
.tool-app .mode-tabs{display:flex;flex-wrap:wrap;gap:6px}
.tool-app .mode-tab{min-height:40px;padding:0 14px;border-radius:999px;border:1.5px solid var(--zl-line-2);background:var(--zl-surface);color:var(--zl-ink);font:500 14px var(--zl-font-head);cursor:pointer}
.tool-app .mode-tab:hover{border-color:var(--zl-accent)}
.tool-app .mode-tab.active{background:var(--zl-accent);border-color:var(--zl-accent);color:var(--zl-accent-ink)}
.tool-app .wc-mode-target{margin:0;font-size:14.5px;color:var(--zl-muted)}
.tool-app .wc-mode-target.over{color:var(--zl-danger);font-weight:700}
/* toolbar */
.tool-app .toolbar{border:0;background:transparent;border-radius:0;box-shadow:none;overflow:visible;display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px}
.tool-app .toolbar-primary{display:flex;flex-wrap:wrap;gap:8px}
.tool-app .tool-btn{text-transform:none;letter-spacing:0;border-right:1.5px solid var(--zl-line-2)}
.tool-app .tool-btn.off::after{content:none}
.tool-app .tool-btn[aria-pressed="true"]{background:var(--zl-tint);border-color:var(--zl-accent)}
.tool-app .tool-btn.danger{color:var(--zl-danger)}
.tool-app .toolbar-overflow{position:relative}
.tool-app .toolbar-overflow>summary{list-style:none;display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;border-radius:999px;border:1.5px solid var(--zl-line-2);background:var(--zl-surface);font:500 14.5px var(--zl-font-head);cursor:pointer}
.tool-app .toolbar-overflow>summary::-webkit-details-marker{display:none}
.tool-app .toolbar-overflow>summary::after{content:"+";font-size:18px;line-height:1;color:var(--zl-muted)}
.tool-app .toolbar-overflow[open]>summary::after{content:"\2212"}
.tool-app .toolbar-overflow>summary:hover{border-color:var(--zl-accent)}
.tool-app .toolbar-overflow-panel{position:absolute;z-index:40;top:calc(100% + 8px);right:0;width:min(560px,calc(100vw - 48px));display:grid;gap:12px;padding:14px;border:1px solid var(--zl-line);border-radius:18px;background:var(--zl-surface);box-shadow:var(--zl-shadow)}
.tool-app .toolbar-group{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.tool-app .toolbar-group-label{flex:1 0 100%;font:600 13px var(--zl-font-head);color:var(--zl-muted)}
/* review bar */
.tool-app .word-review-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border:1px solid var(--zl-line);border-radius:16px;background:var(--zl-surface-2);padding:12px 14px}
.tool-app .word-review-copy{display:grid;gap:2px;min-width:0;flex:1 1 280px}
.tool-app .word-review-copy strong{font:600 15.5px var(--zl-font-head);color:var(--zl-ink)}
.tool-app .word-review-copy span{font-size:14px;color:var(--zl-muted)}
.tool-app .word-review-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.tool-app .text-link-btn{appearance:none;border:0;background:transparent;padding:8px 2px;min-height:44px;color:var(--zl-accent);font:500 14.5px var(--zl-font-head);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.tool-app .check-btn{box-shadow:none}
/* editor */
.tool-app .editor-shell{border:1px solid var(--zl-line);border-radius:18px;box-shadow:none}
.tool-app .editor-top,.tool-app .editor-bottom{background:var(--zl-surface-2)}
.tool-app .editor-text{font-family:var(--zl-font-body);font-size:17px}
.tool-app .highlight-layer{font-family:var(--zl-font-body);font-size:17px}
.tool-app .count-big{font:600 16px var(--zl-font-head);color:var(--zl-ink)}
.tool-app .count-big span{font-variant-numeric:tabular-nums}
.tool-app .pill{border:0;font-size:13px}
html[data-theme="dark"] .tool-app .highlight-layer mark.keyword{background:rgba(245,165,36,.35)}
html[data-theme="dark"] .tool-app .highlight-layer mark.repeat{background:rgba(95,207,143,.3)}
html[data-theme="dark"] .tool-app .highlight-layer mark.search{background:rgba(95,190,196,.4)}
/* side cards and panels */
.tool-app .side-card,.tool-app .panel{border-radius:18px;box-shadow:none}
.tool-app .side-head,.tool-app .panel-head{background:var(--zl-surface-2);font-family:var(--zl-font-head);font-weight:600}
.tool-app .side-head-btn{min-height:30px}
.tool-app .row{color:var(--zl-ink)}
.tool-app .chip{color:#fff}
.tool-app .chip.blue,.tool-app .chip.purple,.tool-app .chip:not(.green):not(.orange):not(.red){background:var(--zl-tint);color:var(--zl-accent-strong)}
.tool-app .chip.green{background:var(--zl-success-soft);color:var(--zl-success)}
.tool-app .chip.orange{background:var(--zl-warning-soft);color:var(--zl-warning)}
.tool-app .chip.red{background:var(--zl-danger-soft);color:var(--zl-danger)}
.tool-app .score-bar{background:var(--zl-tint)}
.tool-app .score-fill{background:var(--zl-accent)}
.tool-app .switch{min-width:46px}
.tool-app .switch.active{background:var(--zl-accent)}
.tool-app .advanced-analysis{border:1px solid var(--zl-line);border-radius:18px;background:var(--zl-surface)}
.tool-app .advanced-analysis>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;min-height:56px}
.tool-app .advanced-analysis>summary::-webkit-details-marker{display:none}
.tool-app .advanced-analysis>summary>span:first-child{display:grid;gap:2px}
.tool-app .advanced-analysis>summary strong{font:600 15.5px var(--zl-font-head)}
.tool-app .advanced-analysis>summary small{color:var(--zl-muted);font-size:14px}
.tool-app .advanced-summary-action{font:500 14px var(--zl-font-head);color:var(--zl-accent);white-space:nowrap}
.tool-app .advanced-analysis[open] .advanced-summary-action{font-size:0}
.tool-app .advanced-analysis[open] .advanced-summary-action::after{content:"Close analysis";font-size:14px}
.tool-app .bottom-panels{padding:0 12px 12px;margin-top:0}
.tool-app .mode-tab.active,.tool-app .keyword-suggest-chip.active{background:var(--zl-accent);color:var(--zl-accent-ink)}
.tool-app .flow-pills span.flow-4.active{background:var(--zl-accent)}
/* dialogs: flat */
.tool-app .tz-modal-backdrop{backdrop-filter:none;background:rgba(10,24,25,.55)}
.tool-app .tz-modal-card{background:var(--zl-surface);border-color:var(--zl-line);border-radius:22px;box-shadow:var(--zl-shadow)}
.tool-app .tz-modal-head{background:var(--zl-surface-2);backdrop-filter:none}
.tool-app .tz-modal-head .zl-ui-title{font-size:19px}
.tool-app .tz-modal-head p{margin:4px 0 0}
.tool-app .tz-modal-close{box-shadow:none;border:1.5px solid var(--zl-line-2);border-radius:999px;min-width:44px;height:44px}
.tool-app .tz-modal-actions{background:var(--zl-surface)}
html[data-theme="dark"] .tool-app .tz-modal-actions{background:var(--zl-surface)}
.tool-app .tz-action-btn,.tool-app .tz-ghost-btn,.tool-app .tz-primary-btn{border-radius:999px;font:500 14.5px var(--zl-font-head);min-height:44px;padding:0 18px}
.tool-app .tz-action-btn:hover,.tool-app .tz-ghost-btn:hover,.tool-app .tz-primary-btn:hover{transform:none}
.tool-app .tz-action-btn,.tool-app .tz-ghost-btn{border:1.5px solid var(--zl-line-2);background:var(--zl-surface);color:var(--zl-ink)}
.tool-app .tz-primary-btn{background:var(--zl-accent);color:var(--zl-accent-ink);box-shadow:none;font-weight:600}
.tool-app .tz-feature-card,.tool-app .tz-check-card,.tool-app .tz-stat-card,.tool-app .tz-how-card,.tool-app .tz-insight-card,.tool-app .tz-resolve-card,.tool-app .tz-compare-card,.tool-app .tz-score-panel{box-shadow:none}
.tool-app .tz-check-card:hover{transform:none}
.tool-app .tz-check-card::before{background:var(--zl-accent)}
.tool-app .tz-score-hero,.tool-app .tz-score-panel,.tool-app .tz-resolve-hero{background:var(--zl-surface-2)}
.tool-app .tz-summary-box{background:var(--zl-surface-2)}
.tool-app .tz-progress i,.tool-app .tz-mini-meter i,.tool-app .ai-loader::after,.tool-app .tz-check-emphasis{background:var(--zl-accent)}
.tool-app .tz-score-ring{background:conic-gradient(var(--zl-accent) 0deg,var(--zl-accent) var(--deg),var(--zl-tint) var(--deg),var(--zl-tint) 360deg)}
.tool-app .ai-output-box .zl-ui-title,.tool-app .list-panel .zl-ui-title{margin:0 0 10px}
@media (max-width:1140px){
  .tool-app .toolbar-overflow-panel{left:0;right:auto}
}
@media (max-width:760px){
  .tool-app .wc-top{grid-template-columns:1fr}
  .tool-app .wc-live{gap:18px}
  .tool-app .word-count-stat strong{font-size:28px}
  .tool-app .wc-live .mini-btn{margin-left:0;flex:1 0 100%}
  .tool-app .mode-tab{flex:1 1 calc(50% - 6px);min-height:44px}
  .tool-app .toolbar-primary{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .tool-app .toolbar-primary .anchor,.tool-app .toolbar-primary .anchor .tool-btn{width:100%}
  .tool-app .tool-btn{min-width:0;min-height:44px;flex:initial}
  .tool-app .toolbar-overflow{width:100%}
  .tool-app .toolbar-overflow>summary{width:100%;justify-content:center;min-height:44px}
  .tool-app .toolbar-overflow-panel{position:static;width:auto;margin-top:8px}
  .tool-app .word-review-actions{width:100%;justify-content:space-between}
  .tool-app .editor-top{padding:10px}
  .tool-app .search-box{width:100%}
  .tool-app .search-box input{min-width:0;flex:1}
}
.tool-app textarea.editor-text{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}
.tool-app textarea.editor-text:focus{box-shadow:none}
.tool-app .editor-shell:focus-within{border-color:var(--zl-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--zl-accent) 22%,transparent)}
.tool-app .toggle-wrap[hidden]{display:none}
.tool-app .highlight-layer mark,.tool-app .highlight-layer mark.flow-sentence{padding:0;margin:0;letter-spacing:inherit;font:inherit}
.tool-app textarea.editor-text,.tool-app .highlight-layer{line-height:1.72}
html[data-theme="dark"] .tool-app .flow-pills span.flow-4.active{color:var(--zl-accent-ink)}
