:root{
  --bg:#0f1419; --panel:#1a2230; --panel2:#232d3d; --line:#31405422;
  --text:#e6edf3; --muted:#8b98a9; --accent:#4da3ff;
  --human:#2ecc71; --mixed:#f1c40f; --ai:#e74c3c;
  --radius:14px; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Malgun Gothic","Apple SD Gothic Neo",sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);line-height:1.5}
h2{font-size:16px;margin:0;font-weight:600}
.sub{color:var(--muted);font-weight:400;font-size:13px;margin-left:6px}

.topbar{display:flex;justify-content:space-between;align-items:center;
  padding:16px 28px;background:linear-gradient(90deg,#141b26,#1a2433);
  border-bottom:1px solid var(--line)}
.logo{font-size:24px;font-weight:800;letter-spacing:.5px}
.logo .dot{color:var(--accent)}
.tagline{color:var(--muted);font-size:13px;margin-left:14px}
.engine{color:var(--muted);font-size:12px;font-family:ui-monospace,monospace}

main{max-width:920px;margin:26px auto;padding:0 20px;display:flex;flex-direction:column;gap:22px}

.input-pane,.result-pane{background:var(--panel);border:1px solid var(--line);
  border-radius:var(--radius);padding:20px}
.pane-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:10px}
.controls{display:flex;gap:8px;align-items:center}
.controls label{color:var(--muted);font-size:13px;display:flex;gap:6px;align-items:center}
select{background:var(--panel2);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:5px 8px;font-size:13px}

textarea{width:100%;min-height:200px;resize:vertical;background:var(--panel2);
  color:var(--text);border:1px solid var(--line);border-radius:10px;padding:14px;
  font-size:15px;line-height:1.65;font-family:inherit}
textarea:focus{outline:none;border-color:var(--accent)}

.actionbar{display:flex;justify-content:space-between;align-items:center;margin-top:12px}
.charcount{color:var(--muted);font-size:13px;font-family:ui-monospace,monospace}

button{cursor:pointer;border:none;border-radius:9px;font-size:14px;font-weight:600;transition:.15s}
button.primary{background:var(--accent);color:#04121f;padding:11px 22px}
button.primary:hover{filter:brightness(1.1)}
button.primary:disabled{opacity:.5;cursor:default}
button.ghost{background:transparent;color:var(--muted);border:1px solid var(--line);padding:6px 12px;font-weight:500}
button.ghost:hover{color:var(--text);border-color:var(--accent)}

/* summary + gauge */
.summary{display:flex;gap:26px;align-items:center;margin-bottom:22px;flex-wrap:wrap}
.gauge{width:130px;height:130px}
.gauge-bg{fill:none;stroke:var(--panel2);stroke-width:10}
.gauge-fg{fill:none;stroke:var(--ai);stroke-width:10;stroke-linecap:round;
  transform:rotate(-90deg);transform-origin:60px 60px;
  stroke-dasharray:327;stroke-dashoffset:327;transition:stroke-dashoffset .8s ease,stroke .4s}
.gauge-num{fill:var(--text);font-size:26px;font-weight:800;text-anchor:middle;font-family:ui-monospace,monospace}
.gauge-lbl{fill:var(--muted);font-size:9px;text-anchor:middle;letter-spacing:1px}
.summary-text{flex:1;min-width:220px}
.verdict{font-size:26px;font-weight:800;margin-bottom:6px}
.meta{color:var(--muted);font-size:13px;margin-bottom:12px}
.signals{display:flex;flex-wrap:wrap;gap:6px}
.signal{font-size:12px;padding:4px 9px;border-radius:20px;background:var(--panel2);border:1px solid var(--line)}
.signal.ai{color:#ffb3ab;border-color:#e74c3c44}
.signal.human{color:#a9f0c6;border-color:#2ecc7144}

.highlight-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;flex-wrap:wrap;gap:8px}
.legend{display:flex;gap:8px}
.chip{font-size:11px;padding:3px 10px;border-radius:20px;font-weight:600}
.chip.human{background:#2ecc7122;color:var(--human)}
.chip.mixed{background:#f1c40f22;color:var(--mixed)}
.chip.ai{background:#e74c3c22;color:var(--ai)}

/* paragraphs */
.paragraphs{display:flex;flex-direction:column;gap:12px}
.para{border-radius:10px;padding:13px 15px;border-left:4px solid;background:var(--panel2);cursor:pointer;transition:.15s}
.para:hover{filter:brightness(1.08)}
.para .ptext{font-size:15px;line-height:1.7}
.para .pbar{display:flex;justify-content:space-between;align-items:center;margin-top:9px;
  font-size:12px;color:var(--muted);font-family:ui-monospace,monospace}
.para .pscore{font-weight:700}
.para-details{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);display:none}
.para.open .para-details{display:block}
.para-details .feat{display:inline-block;margin:2px 8px 2px 0}
.para-details .feat b{color:var(--text)}
.lowconf{font-style:italic;opacity:.7}

.error{background:#e74c3c22;border:1px solid #e74c3c66;color:#ffb3ab;padding:12px 16px;border-radius:10px}

footer{max-width:920px;margin:10px auto 40px;padding:0 20px;color:var(--muted);font-size:12px;text-align:center}

.spinner{display:inline-block;width:15px;height:15px;border:2px solid #04121f55;border-top-color:#04121f;border-radius:50%;animation:spin .7s linear infinite;vertical-align:-2px;margin-right:7px}
@keyframes spin{to{transform:rotate(360deg)}}
