
/* 页面私有：仅结构排版；颜色走 theme.css token */
.toolzone{max-width:1240px;margin:0 auto;padding:26px 22px 70px}
.tool-hd{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.tool-hd .nm{font-size:18px;font-weight:800}
.tool-hd .sp{flex:1}
.more-link{font-size:12px;font-weight:700;color:var(--mut)}
.more-link:hover{color:var(--ind)}
/* 额度条 */
.quota{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:9px 14px;margin-bottom:18px;font-size:12px;color:var(--mut)}
.quota b{color:var(--txt)}
.quota .free-num{color:var(--ind);font-weight:800}
.quota .deep-num{color:var(--ind2);font-weight:800}
.quota .sp{flex:1}
.qbtn{background:transparent;border:1px solid var(--line2);color:var(--mut);border-radius:20px;padding:4px 13px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit;transition:.15s}
.qbtn:hover{color:var(--ind);border-color:var(--ind-line);background:var(--ind-soft)}
.qbtn.deep{background:linear-gradient(135deg,var(--ind),var(--ind2));color:#fff;border:none}
.qbtn.deep:hover{filter:brightness(1.06)}
.layout{display:grid;grid-template-columns:380px 1fr;gap:22px;align-items:start}
@media(max-width:1000px){.layout{grid-template-columns:1fr}}
.panel{border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,#fff,var(--bg2));padding:18px}
.lbl{font-size:12px;color:var(--mut);margin:12px 0 6px;display:block}
.lbl:first-of-type{margin-top:0}
input[type=text],textarea{width:100%;border:1.5px solid var(--line2);border-radius:10px;padding:11px 12px;font-size:13.5px;font-family:inherit;background:#fff;color:var(--txt);resize:vertical;line-height:1.7;outline:none}
textarea{min-height:170px}
input:focus,textarea:focus{border-color:var(--ind-line);box-shadow:0 0 0 3px var(--ind-soft)}
.chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.chip{font-size:12px;padding:5px 13px;border-radius:20px;border:1.5px solid var(--line);background:#fff;color:var(--mut);cursor:pointer;transition:.15s}
.chip.on{background:var(--ind);border-color:var(--ind);color:#fff;font-weight:700}
/* ---------- 高级报告 ---------- */
.rcol{display:flex;flex-direction:column;gap:16px}
.gauge-card{border-radius:20px;background:linear-gradient(160deg,rgba(91,103,230,.07),#fff 46%);border:1px solid rgba(91,103,230,.28);padding:22px;position:relative;overflow:hidden}
.gauge-card::before{content:"";position:absolute;bottom:-150px;left:-90px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(220,38,38,.08),transparent 62%)}
.gauge-hd{display:flex;align-items:center;gap:10px;margin-bottom:16px;position:relative;z-index:2;flex-wrap:wrap}
.gauge-hd .verdict{font-size:17px;font-weight:800}
.gauge-hd .mode-badge{font-size:10px;font-weight:800;padding:3px 11px;border-radius:20px;background:var(--ind-soft);color:var(--ind);border:1px solid var(--ind-line)}
.gauge-hd .lvl{font-size:11px;font-weight:800;padding:4px 13px;border-radius:20px;border:1px solid}
.gauge-body{display:flex;align-items:center;gap:26px;position:relative;z-index:2;flex-wrap:wrap}
.gring{width:130px;height:130px;border-radius:50%;position:relative;flex-shrink:0;background:conic-gradient(var(--danger) 0deg,var(--danger) 0deg,rgba(16,20,27,.08) 0deg)}
.gring::before{content:"";position:absolute;inset:11px;background:#fff;border-radius:50%}
.gring .num{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.gring .num b{font-size:36px;font-weight:900;line-height:1}
.gring .num span{font-size:10px;color:var(--mut);margin-top:3px}
.gauge-side{flex:1;min-width:220px}
.gauge-side h4{font-size:15px;font-weight:800;margin-bottom:6px}
.gauge-side p{font-size:12.5px;color:var(--mut);line-height:1.75}
.metrics{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.metric{flex:1;min-width:96px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.7);padding:10px 12px}
.metric b{font-size:20px;font-weight:900;display:block;line-height:1.15}
.metric span{font-size:10.5px;color:var(--mut)}
.dim-card .bars{display:flex;flex-direction:column;gap:11px;margin-top:4px}
.dim-row{display:grid;grid-template-columns:130px 1fr 42px;gap:12px;align-items:center}
.dim-row .dn{font-size:12px;color:var(--mut);font-weight:600;white-space:nowrap}
.dim-track{height:10px;border-radius:6px;background:rgba(16,20,27,.06);overflow:hidden}
.dim-fill{height:100%;border-radius:6px;transition:width .5s}
.dim-row .dc{font-size:12px;font-weight:800;text-align:right}
.hl-box{font-size:13.5px;line-height:2.2;color:var(--txt);background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;max-height:230px;overflow-y:auto;white-space:pre-wrap}
.hl-box mark{background:var(--danger-soft);color:var(--danger-deep);border-radius:3px;padding:0 3px;font-weight:600;cursor:help;border-bottom:1px dashed var(--danger-line)}
.risk-list{display:flex;flex-direction:column;gap:10px}
.risk-card{border:1px solid var(--line);border-radius:12px;background:#fff;padding:13px 15px;position:relative;overflow:hidden}
.risk-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}
.risk-card.high::before{background:var(--danger)}
.risk-card.mid::before{background:var(--amber)}
.risk-card .rh{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.risk-card .rn{font-size:13.5px;font-weight:800}
.clev.high{background:var(--danger-soft);color:var(--danger)}
.clev.mid{background:var(--amber-soft);color:var(--amber)}
.clev.low{background:rgba(16,20,27,.05);color:var(--mut)}
.risk-card .w{font-size:11px;font-weight:700;margin-left:auto}
.risk-card .w.high{color:var(--danger)}
.risk-card .w.mid{color:var(--amber)}
.risk-card .hit{margin-top:7px;font-size:12px}
.risk-card .hit .kw{background:var(--danger-soft);color:var(--danger-deep);border-radius:4px;padding:1px 5px;font-weight:600}
.risk-card .hit .pos{color:var(--dim);font-size:11px;margin-left:6px}
.risk-card .why{margin-top:7px;font-size:11.8px;color:var(--mut);line-height:1.7}
.risk-card .sug{margin-top:7px;font-size:11.8px;color:var(--ind2);background:var(--ind-soft);border-radius:7px;padding:7px 10px;line-height:1.6}
.risk-card .sug b{font-weight:700}
.rewrite-card{background:linear-gradient(160deg,rgba(22,163,74,.06),#fff 50%);border:1px solid var(--ok-line);border-radius:16px;padding:18px}
.rw-out{background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px 15px;font-size:13.5px;line-height:2;white-space:pre-wrap;margin-top:12px;max-height:240px;overflow-y:auto}
.rw-actions{display:flex;gap:9px;margin-top:12px;flex-wrap:wrap}
.rw-actions .btn{border:none;border-radius:10px;padding:10px 16px;font-size:12.5px;font-weight:800;cursor:pointer;font-family:inherit;transition:.15s}
.btn-copy{background:linear-gradient(135deg,var(--ok),var(--ok-deep));color:#fff}
.btn-copy:hover{transform:translateY(-1px)}
.btn-ai{background:linear-gradient(135deg,var(--ind),var(--ind2));color:#fff}
.btn-ai:hover{transform:translateY(-1px)}
.btn-retry{background:transparent;color:var(--mut);border:1px solid var(--line2)!important}
.chg-list{margin-top:12px;font-size:11.5px;color:var(--mut);line-height:1.9}
.chg-list .chg{display:inline-flex;align-items:center;gap:5px;margin:2px 6px 2px 0}
.chg-list .old{color:var(--dim);text-decoration:line-through}
.chg-list .arr{color:var(--dim)}
.chg-list .new{color:var(--ok);font-weight:700}
.empty-box{margin-top:4px;padding:20px;text-align:center;color:var(--ok);font-size:13px;background:var(--ok-soft);border:1px dashed var(--ok-line);border-radius:12px}
.errbox{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger-line);border-radius:10px;padding:10px 14px;font-size:12.5px;line-height:1.7;margin-bottom:12px}
.demo-banner{background:var(--amber-soft);color:var(--amber);border:1px dashed var(--amber-line);border-radius:10px;padding:10px 14px;font-size:12px;line-height:1.8;margin-bottom:12px}
.demo-banner b{font-weight:800}
/* V2 / 行为检测 附加卡 */
.v2-card{border:1px solid var(--line);border-radius:16px;background:#fff;padding:18px}
.v2-item{font-size:12.5px;color:var(--mut);line-height:1.9;margin-top:8px}
.v2-item b{color:var(--txt)}
/* 弹层 */
.mask{position:fixed;inset:0;background:rgba(16,20,27,.45);z-index:80;display:flex;align-items:flex-end;justify-content:center;backdrop-filter:blur(2px)}
.sheet{width:100%;max-width:520px;background:#fff;border-radius:18px 18px 0 0;padding:20px 22px 24px;box-shadow:0 -10px 40px rgba(16,20,27,.18);max-height:82vh;overflow-y:auto}
@media(min-width:720px){.mask{align-items:center}.sheet{border-radius:18px}}
.sheet h3{font-size:15px;margin-bottom:6px}
.sheet .s-desc{font-size:12px;color:var(--mut);line-height:1.7;margin-bottom:14px}
.sheet .lbl{margin-top:0}
.sheet .s-msg{font-size:12px;margin-top:8px}
.sheet .s-row{display:flex;gap:9px;margin-top:14px}
.sheet .s-btn{flex:1;border:none;border-radius:10px;padding:11px;font-size:13px;font-weight:800;cursor:pointer;font-family:inherit}
.sheet .s-primary{background:linear-gradient(135deg,var(--ind),var(--ind2));color:#fff}
.sheet .s-ghost{background:transparent;color:var(--mut);border:1px solid var(--line2)}
.hist-item{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:8px;background:#fff}
.hist-item .hh{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700}
.hist-item .hh .tag{font-size:9.5px;font-weight:800;padding:1px 8px;border-radius:10px}
.hist-item .hm{font-size:11px;color:var(--mut);margin-top:4px}
/* 深度解锁引导卡（免费版结果底部） */
.up-card{border:1px dashed var(--ind-line);background:linear-gradient(135deg,var(--ind-soft),#fff 55%);border-radius:14px;padding:15px 17px;display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.up-card .up-tx{flex:1;min-width:180px}
.up-card .up-tx b{font-size:13.5px;color:var(--ind2)}
.up-card .up-tx p{font-size:11.5px;color:var(--mut);margin-top:3px;line-height:1.6}
.up-btn{border:none;border-radius:10px;padding:9px 16px;font-size:12.5px;font-weight:800;cursor:pointer;font-family:inherit;background:linear-gradient(135deg,var(--ind),var(--ind2));color:#fff}
.up-btn:hover{transform:translateY(-1px)}
/* 评分明细表 */
.score-tb{width:100%;border-collapse:collapse;font-size:12px;margin-top:4px}
.score-tb th{text-align:left;padding:7px 9px;background:var(--bg2);color:var(--mut);border-bottom:1px solid var(--line)}
.score-tb td{padding:6px 9px;border-bottom:1px solid var(--line);color:var(--txt)}
.score-tb tr:last-child td{border-bottom:none;font-weight:800}
.score-tb td.r{text-align:right;font-weight:700;color:var(--danger);white-space:nowrap}
.score-tb tr.total td{background:var(--bg2);border-radius:0 0 8px 8px}
/* 图片检查 */
.img-box{display:flex;flex-direction:column;gap:10px}
.img-actions{display:flex;gap:8px;flex-wrap:wrap}
.img-btn{flex:1;min-width:96px;border:none;border-radius:10px;padding:9px 6px;font-size:12px;font-weight:800;cursor:pointer;font-family:inherit;transition:.15s;background:var(--bg2);color:var(--txt);border:1px solid var(--line)}
.img-btn:hover{border-color:var(--ind-line);color:var(--ind2)}
.img-btn:disabled{opacity:.5;cursor:wait}
.img-btn.primary{background:linear-gradient(135deg,var(--ind),var(--ind2));color:#fff;border:none}
.img-result{font-size:12px;color:var(--mut);line-height:1.8;background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:10px 13px;min-height:44px}
.img-result .ok{color:var(--ok);font-weight:700}
.img-result .hit{color:var(--danger);font-weight:700}
/* 说明卡 */
.about{font-size:12.5px;color:var(--mut);line-height:1.9}
.about b{color:var(--txt)}
.about .lim{display:block;margin-top:8px;padding:9px 11px;background:var(--amber-soft);border:1px dashed var(--amber-line);border-radius:9px;color:var(--amber);font-size:11.5px;line-height:1.7}
