:root{
  --bg:#06131c;
  --bg2:#081923;
  --panel:#0a202b;
  --panel2:#081a24;
  --line:#193d4d;
  --line2:#285b6f;
  --text:#edfaff;
  --muted:#8ca5b1;
  --cyan:#59e2f7;
  --green:#65e5ae;
  --amber:#f0c36a;
  --red:#ff6880;
  --violet:#a58cff;
}
*{box-sizing:border-box}
html{color-scheme:dark;scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(950px 460px at 50% -180px,rgba(61,210,238,.10),transparent 72%),
    radial-gradient(800px 400px at 95% 25%,rgba(158,126,255,.055),transparent 72%),
    var(--bg);
  color:var(--text);
  font-family:"Segoe UI Variable","Segoe UI",system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;
}
button,input{font:inherit}
button,a{transition:.18s ease}
button{cursor:pointer}
.score-wrap{width:min(1120px,calc(100% - 32px));margin-inline:auto}
.score-top{
  position:sticky;top:0;z-index:50;
  border-bottom:1px solid rgba(42,93,112,.30);
  background:rgba(5,18,27,.88);
  backdrop-filter:blur(15px);
}
.score-top__in{
  min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:18px
}
.score-brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none}
.score-brand__mark{
  width:36px;height:36px;border-radius:10px;display:grid;place-items:center;
  border:1px solid rgba(89,226,247,.28);
  background:linear-gradient(145deg,rgba(89,226,247,.10),rgba(165,140,255,.08));
  color:var(--cyan);font-weight:850;font-size:12px
}
.score-brand b{display:block;font-size:11.5px;letter-spacing:.055em}
.score-brand small{display:block;margin-top:3px;color:#648493;font-size:9.5px;letter-spacing:.11em}
.score-top__actions{display:flex;align-items:center;gap:9px}
.score-langs{
  display:flex;align-items:center;padding:3px;border:1px solid #163b4b;
  border-radius:10px;background:#071a24
}
.score-langs button{
  width:34px;height:30px;border:0;border-radius:7px;background:transparent;
  color:#809ba9;font-size:10.5px;font-weight:800
}
.score-langs button.active{background:#55dff5;color:#06131b}
.score-back{
  min-height:37px;padding:0 12px;border:1px solid #184355;border-radius:10px;
  color:#bdeefa;text-decoration:none;display:inline-flex;align-items:center;font-size:11px;font-weight:750
}
.score-back:hover{border-color:#2b7992;transform:translateY(-1px)}
.score-hero{text-align:center;padding:84px 0 34px}
.score-eyebrow{
  display:inline-flex;padding:7px 11px;border:1px solid rgba(89,226,247,.20);
  border-radius:999px;color:#9ceeff;background:rgba(89,226,247,.045);
  font-size:10.5px;font-weight:800;letter-spacing:.10em
}
.score-hero h1{
  margin:18px auto 12px;max-width:850px;font-size:clamp(38px,6vw,68px);
  line-height:1.0;letter-spacing:-.045em
}
.score-hero>p{max-width:780px;margin:0 auto;color:#91aab6;font-size:16px;line-height:1.6}
.score-form{
  max-width:790px;margin:30px auto 0;display:grid;grid-template-columns:minmax(0,1fr) auto;
  gap:9px;padding:8px;border:1px solid #1c4a5d;border-radius:16px;background:rgba(7,25,35,.90);
  box-shadow:0 20px 55px rgba(0,0,0,.20)
}
.score-input{display:flex;align-items:center;min-width:0}
.score-input>span{padding-left:10px;color:#54d9ef;font-size:20px}
.score-input input{
  width:100%;height:48px;border:0;outline:0;background:transparent;color:var(--text);
  padding:0 12px;font-size:15px
}
.score-form button{
  min-height:48px;padding:0 22px;border:0;border-radius:11px;background:linear-gradient(135deg,#50d8f3,#94f0ff);
  color:#06131b;font-size:11px;font-weight:900;letter-spacing:.035em
}
.score-form button:hover{filter:brightness(1.05);transform:translateY(-1px)}
.score-form button:disabled{opacity:.52;cursor:wait;transform:none}
.score-safe{margin-top:12px!important;font-size:11px!important;color:#6f8d9b!important}
.score-method{
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:34px
}
.score-method>div{
  padding:15px;border:1px solid rgba(32,83,103,.48);border-radius:13px;background:rgba(7,23,33,.76)
}
.score-method span{color:#59dff4;font-size:10px;font-weight:850}
.score-method b{display:block;margin:6px 0 4px;font-size:12px}
.score-method small{display:block;color:#7894a2;font-size:11px;line-height:1.45}
.score-loading{
  min-height:130px;margin-bottom:38px;border:1px solid #1b4354;border-radius:15px;background:#071b25;
  display:flex;align-items:center;justify-content:center;gap:18px
}
.score-loading[hidden]{display:none}
.score-loader{
  width:42px;height:42px;border-radius:50%;border:3px solid #173c4c;border-top-color:#60e5fa;
  animation:spin .9s linear infinite
}
.score-loading b{display:block;font-size:14px}
.score-loading span{display:block;margin-top:5px;color:#7796a5;font-size:11.5px}
@keyframes spin{to{transform:rotate(360deg)}}
.score-error{
  margin-bottom:38px;padding:17px;border:1px solid rgba(255,104,128,.32);border-radius:13px;background:rgba(255,104,128,.055)
}
.score-error[hidden]{display:none}
.score-error b{display:block;color:#ff9cad}
.score-error span{display:block;margin-top:5px;color:#c9a1a8;font-size:12px}
.score-result{padding-bottom:58px}
.score-result[hidden]{display:none}
.score-result__top{
  display:flex;align-items:center;gap:25px;padding:23px;border:1px solid #204d5e;border-radius:18px;
  background:linear-gradient(145deg,rgba(10,34,45,.92),rgba(7,24,34,.92));
  box-shadow:0 26px 70px rgba(0,0,0,.20)
}
.score-ring{
  --score:0;
  width:142px;height:142px;flex:0 0 142px;border-radius:50%;display:grid;place-items:center;
  position:relative;background:conic-gradient(var(--cyan) calc(var(--score)*1%),#12303d 0)
}
.score-ring::before{content:"";position:absolute;inset:9px;border-radius:50%;background:#071a24}
.score-ring strong,.score-ring span{position:relative;z-index:1}
.score-ring strong{font-size:42px;line-height:1}
.score-ring span{position:absolute;bottom:31px;color:#6f8d9b;font-size:10px}
.score-summary__label{color:#69def2;font-size:10px;font-weight:850;letter-spacing:.12em}
.score-summary h2{margin:6px 0 5px;font-size:28px}
.score-summary p{margin:0;color:#b8d5df;font-size:13px;overflow-wrap:anywhere}
.score-summary small{display:block;margin-top:7px;color:#6e8b98;font-size:10.5px}
.score-categories{
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px
}
.score-cat{
  padding:16px;border:1px solid #1b4354;border-radius:14px;background:rgba(7,24,34,.84)
}
.score-cat__top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.score-cat__top b{font-size:12px}
.score-cat__top strong{font-size:16px}
.score-bar{height:5px;margin-top:12px;border-radius:999px;background:#112f3c;overflow:hidden}
.score-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#4ad4ef,#7de9c1);border-radius:inherit}
.score-cat small{display:block;margin-top:8px;color:#708d9a;font-size:10.5px}
.score-priority,.score-technical{margin-top:34px}
.score-section-head>span{color:#5ddff4;font-size:9.5px;font-weight:850;letter-spacing:.13em}
.score-section-head h2{margin:5px 0 5px;font-size:22px}
.score-section-head p{margin:0;color:#7895a2;font-size:12px}
.score-priority__list{display:grid;gap:8px;margin-top:14px}
.score-prio{
  display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;
  padding:13px 14px;border:1px solid #1a4050;border-radius:12px;background:#071c27
}
.score-prio__n{
  width:30px;height:30px;border:1px solid #24586b;border-radius:9px;display:grid;place-items:center;
  color:#7fe8f8;font-size:10px;font-weight:850
}
.score-prio b{display:block;font-size:12px}
.score-prio p{margin:3px 0 0;color:#76929f;font-size:10.5px;line-height:1.45}
.score-prio__lost{color:#efc675;font-size:10px;font-weight:850;white-space:nowrap}
.score-technical details{
  margin-top:12px;border:1px solid #1a4050;border-radius:13px;background:#071a24;overflow:hidden
}
.score-technical summary{padding:14px 16px;cursor:pointer;color:#bceefa;font-size:11px;font-weight:750}
.score-checks{padding:0 12px 12px}
.score-check{
  display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:9px 6px;border-top:1px solid rgba(30,72,89,.36)
}
.score-check__cat{color:#638291;font-size:9.5px;text-transform:uppercase;font-weight:800}
.score-check b{font-size:10.5px}
.score-check small{display:block;margin-top:3px;color:#6c8794;font-size:9.5px;overflow-wrap:anywhere}
.score-state{font-size:9.5px;font-weight:850}
.score-state.pass{color:#6ee2ae}.score-state.partial{color:#efc675}.score-state.fail{color:#ff8798}
.score-nexa{
  margin-top:34px;padding:20px;border:1px solid rgba(165,140,255,.26);border-radius:16px;
  background:linear-gradient(135deg,rgba(165,140,255,.055),rgba(70,211,237,.035));
  display:flex;align-items:center;justify-content:space-between;gap:18px
}
.score-nexa span{color:#b3a6ff;font-size:9.5px;font-weight:850;letter-spacing:.12em}
.score-nexa h2{margin:5px 0;font-size:20px}
.score-nexa p{margin:0;max-width:720px;color:#7f9ba8;font-size:11.5px;line-height:1.55}
.score-nexa a{
  flex:0 0 auto;min-height:40px;padding:0 14px;border:1px solid #376c7f;border-radius:10px;
  display:inline-flex;align-items:center;color:#d9f8ff;text-decoration:none;font-size:10.5px;font-weight:800
}
.score-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.score-actions button{
  min-height:38px;padding:0 12px;border:1px solid #1f4d5f;border-radius:10px;background:#081f2a;
  color:#bceaf5;font-size:10.5px;font-weight:750
}
.score-actions button:hover{border-color:#397f96;transform:translateY(-1px)}
.score-disclaimer{margin:17px 0 0;color:#66828f;font-size:10px;line-height:1.5}
.score-footer{border-top:1px solid rgba(34,79,96,.34);padding:23px 0 28px;color:#64808d;font-size:10px}
.score-footer .score-wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.score-footer a{color:#7ca6b6;text-decoration:none}
@media(max-width:820px){
  .score-categories{grid-template-columns:repeat(2,1fr)}
  .score-method{grid-template-columns:1fr}
}
@media(max-width:600px){
  .score-wrap{width:min(100% - 20px,1120px)}
  .score-brand small{display:none}
  .score-back{width:38px;padding:0;justify-content:center}
  .score-back span{display:none}
  .score-back::after{content:"←"}
  .score-hero{padding-top:52px}
  .score-form{grid-template-columns:1fr}
  .score-form button{width:100%}
  .score-result__top{align-items:flex-start;flex-direction:column}
  .score-ring{width:125px;height:125px;flex-basis:125px}
  .score-categories{grid-template-columns:1fr}
  .score-prio{grid-template-columns:34px minmax(0,1fr)}
  .score-prio__lost{grid-column:2}
  .score-check{grid-template-columns:70px minmax(0,1fr)}
  .score-state{grid-column:2}
  .score-nexa{align-items:flex-start;flex-direction:column}
}
@media print{
  .score-top,.score-form,.score-safe,.score-method,.score-actions,.score-footer,.score-nexa{display:none!important}
  body{background:#fff;color:#111}
  .score-result{display:block!important;padding:0}
  .score-result__top,.score-cat,.score-prio,.score-technical details{
    background:#fff;color:#111;border-color:#ccc;box-shadow:none
  }
  .score-summary p,.score-summary small,.score-cat small,.score-prio p,.score-check small{color:#555}
  .score-ring::before{background:#fff}
}
