.route-content{--bd:var(--line);--ink:#f1f5f9;--dim:rgba(241,245,249,.66);--faint:rgba(241,245,249,.42);--blue:#3b82f6;--blue-lt:#7dd3fc;--red:#ff6878;--green:#4dff9a;--amber:#ffc24d;--mono:ui-monospace,monospace;}
.route-content .tool{background:#000;border:1px solid var(--line);border-radius:8px;padding:28px;margin:28px 0 16px;}
.route-content .tawrap{position:relative;}
.route-content .tool textarea{width:100%;min-height:230px;background:#000;border:1px solid var(--bd);border-radius:8px;color:#cdd8ec;font-family:var(--mono);font-size:14px;line-height:1.6;padding:18px;outline:none;resize:vertical;white-space:pre;overflow:auto;}
.route-content .tool textarea:focus{border-color:rgba(125,211,252,.5);}
.route-content .toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap;}
.route-content .tlinks{display:flex;gap:14px;flex-wrap:wrap;}
.route-content .tlink{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--dim);cursor:pointer;background:none;border:none;padding:0;}
.route-content .tlink:hover{color:var(--blue-lt);text-decoration:underline;}
.route-content .runbtn{font-weight:600;font-size:13px;text-transform:none;letter-spacing:0;background:#3b82f6;color:#fff;padding:14px 28px;border-radius:4px;border:none;cursor:pointer;transition:background .2s;}
.route-content .runbtn:hover{background:#2563eb;}
.route-content .result{display:none;margin-top:28px;}
.route-content .result.show{display:block;}
.route-content .scorerow{display:flex;align-items:center;gap:26px;flex-wrap:wrap;background:#000;border:1px solid var(--bd);border-radius:8px;padding:24px 26px;}
.route-content .ring{--c:var(--green);width:128px;height:128px;border-radius:50%;background:conic-gradient(var(--c) calc(var(--p,0)*1%),rgba(255,255,255,.08) 0);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.route-content .ring .inner{width:104px;height:104px;border-radius:50%;background:#04060a;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.route-content .ring .num{font-size:34px;font-weight:800;line-height:1;color:#fff;font-variant-numeric:tabular-nums;}
.route-content .ring .of{font-family:var(--mono);font-size:11px;color:var(--faint);margin-top:3px;}
.route-content .sgrade{flex:1;min-width:200px;}
.route-content .sgrade .gr{font-size:40px;font-weight:800;letter-spacing:-.02em;line-height:1;}
.route-content .sgrade .txt{color:var(--dim);margin-top:8px;font-size:16px;}
.route-content .sgrade .det{font-family:var(--mono);font-size:12.5px;color:var(--faint);margin-top:10px;}
.route-content .findings{margin-top:20px;display:grid;gap:10px;}
.route-content .fitem{display:flex;gap:14px;align-items:flex-start;background:#000;border:1px solid var(--bd);border-radius:8px;padding:15px 17px;}
.route-content .fitem .ic{flex:0 0 auto;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;margin-top:1px;}
.route-content .fitem.pass .ic{background:rgba(77,255,154,.14);color:var(--green);}
.route-content .fitem.fail .ic{background:rgba(255,104,120,.14);color:var(--red);}
.route-content .fitem .body{flex:1;}
.route-content .fitem .ttl{font-weight:700;color:#fff;font-size:16px;}
.route-content .fitem .sev{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:2px 7px;border-radius:8px;margin-left:8px;vertical-align:middle;}
.route-content .sev.high{background:rgba(255,104,120,.16);color:var(--red);}
.route-content .sev.med{background:rgba(255,194,77,.16);color:var(--amber);}
.route-content .sev.low{background:rgba(143,186,255,.16);color:var(--blue-lt);}
.route-content .fitem .fix{color:var(--dim);font-size:14.5px;margin-top:4px;line-height:1.55;}
.route-content .fitem .fix code{font-family:var(--mono);font-size:.86em;background:#000;padding:1px 5px;border-radius:8px;color:#bcd4ff;}
.route-content .note-line{font-family:var(--mono);font-size:12.5px;color:var(--faint);margin-top:16px;display:flex;gap:8px;align-items:flex-start;}
.route-content .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px;}
.route-content .act{font-family:var(--mono);font-size:12.5px;font-weight:600;letter-spacing:0;text-transform:none;border:1px solid var(--bd);background:#000;color:var(--dim);padding:12px 18px;border-radius:4px;cursor:pointer;transition:.12s;}
.route-content .act:hover{border-color:var(--blue);color:#fff;}
.route-content .act.done{border-color:var(--green);color:var(--green);}
.route-content .privacy{font-family:var(--mono);font-size:12px;color:var(--faint);margin-top:18px;text-align:center;}