.ux-brand-mark{
  width:50px;
  height:50px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:4px;
  padding:11px;
  border:1px solid var(--line);
  border-radius:16px;
  background:linear-gradient(145deg,#0d233d,#050b13);
  box-shadow:0 8px 24px rgba(0,0,0,.24);
}
.ux-brand-mark i{
  width:6px;
  display:block;
  border-radius:6px;
  background:linear-gradient(180deg,var(--accent),var(--accent2));
}
.ux-brand-mark i:nth-child(1){height:13px}
.ux-brand-mark i:nth-child(2){height:26px}
.ux-brand-mark i:nth-child(3){height:19px}
.ux-page{overflow:hidden}
.ux-page h1,.ux-page h2,.ux-page h3{color:var(--text)}
.ux-page p{color:var(--muted)}
.ux-intro{
  padding:58px 0 36px;
  border-bottom:1px solid var(--line);
  background:
    radial-gradient(circle at 76% 10%,rgba(102,217,194,.12),transparent 24%),
    radial-gradient(circle at 8% 0,rgba(91,143,255,.18),transparent 27%);
}
.ux-intro-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:44px;
}
.ux-intro h1{
  max-width:910px;
  margin:0 0 18px;
  font-size:clamp(2.5rem,5vw,5rem);
  line-height:1;
  letter-spacing:-.052em;
}
.ux-intro p{max-width:780px;margin:0;font-size:1.05rem;line-height:1.75}
.ux-demo-notice{
  min-width:250px;
  display:grid;
  grid-template-columns:12px 1fr;
  align-items:start;
  gap:12px;
  padding:16px 18px;
  border:1px solid rgba(102,217,194,.23);
  border-radius:18px;
  background:rgba(102,217,194,.06);
}
.ux-demo-dot{width:9px;height:9px;margin-top:5px;border-radius:50%;background:#66d9c2;box-shadow:0 0 0 5px rgba(102,217,194,.1)}
.ux-demo-notice strong{display:block;font-size:.9rem}
.ux-demo-notice p{margin:3px 0 0;font-size:.78rem;line-height:1.5}
.ux-workspace-section{padding:42px 0 94px}
.ux-workspace-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:22px;
  margin-bottom:18px;
}
.ux-workspace-head>div:first-child{display:flex;align-items:baseline;gap:12px}
.ux-workspace-head h2{margin:0;font-size:1.4rem;letter-spacing:-.02em}
.ux-section-number{color:var(--accent);font-size:.7rem;font-weight:850;letter-spacing:.13em}
.ux-mode-label{
  display:flex;
  align-items:center;
  gap:8px;
  color:#aebed5;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ux-mode-label span{width:7px;height:7px;border-radius:50%;background:#66d9c2}
.ux-workspace{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  border:1px solid var(--line);
  border-radius:28px;
  overflow:hidden;
  background:rgba(255,255,255,.035);
  box-shadow:0 28px 70px rgba(0,0,0,.18);
}
.ux-controls{
  padding:24px;
  border-right:1px solid var(--line);
  background:rgba(3,9,17,.34);
}
.ux-control-block{
  min-width:0;
  margin:0 0 24px;
  padding:0 0 24px;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.ux-control-label{
  display:block;
  margin:0 0 11px;
  color:#dce8fb;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.035em;
}
.ux-upload-zone{
  min-height:138px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:16px;
  border:1px dashed rgba(139,184,255,.4);
  border-radius:18px;
  background:rgba(139,184,255,.045);
  text-align:center;
  cursor:pointer;
  transition:border-color .2s ease,background .2s ease,transform .2s ease;
}
.ux-upload-zone:hover,.ux-upload-zone.dragging{border-color:var(--accent);background:rgba(102,217,194,.07);transform:translateY(-1px)}
.ux-upload-zone.has-image{border-color:rgba(102,217,194,.55);background:rgba(102,217,194,.075)}
.ux-upload-zone input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ux-upload-icon{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  margin-bottom:10px;
  border:1px solid var(--line);
  border-radius:12px;
  color:var(--accent);
  background:rgba(255,255,255,.045);
  font-size:1.25rem;
}
.ux-upload-zone strong{font-size:.85rem}
.ux-upload-zone small{margin-top:4px;color:#7f94af;font-size:.7rem}
.ux-text-button{
  width:100%;
  margin-top:9px;
  padding:9px;
  border:0;
  color:#9dc7ff;
  background:transparent;
  font:inherit;
  font-size:.78rem;
  font-weight:750;
  cursor:pointer;
}
.ux-text-button:hover{color:#c9e2ff}
.ux-controls select{
  width:100%;
  min-height:44px;
  padding:0 12px;
  border:1px solid var(--line);
  border-radius:12px;
  color:var(--text);
  background:#0d1a2c;
  font:inherit;
  font-size:.83rem;
}
.ux-view-buttons{display:grid;grid-template-columns:1fr;gap:7px}
.ux-view-buttons button{
  min-height:39px;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:11px;
  color:#9eb0c8;
  background:rgba(255,255,255,.025);
  font:inherit;
  font-size:.8rem;
  font-weight:720;
  text-align:left;
  cursor:pointer;
}
.ux-view-buttons button:hover{color:#e8f1ff;border-color:rgba(139,184,255,.25)}
.ux-view-buttons button.active{color:#06111d;border-color:transparent;background:linear-gradient(135deg,#66d9c2,#8bb8ff)}
.ux-run-button{
  width:100%;
  min-height:49px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 16px;
  border:0;
  border-radius:14px;
  color:#06111d;
  background:linear-gradient(135deg,#66d9c2,#79a8ff);
  font:inherit;
  font-size:.86rem;
  font-weight:850;
  cursor:pointer;
  box-shadow:0 12px 28px rgba(72,125,255,.16);
}
.ux-run-button:disabled{color:#73839a;background:#1b2a3d;box-shadow:none;cursor:not-allowed}
.ux-control-note{margin:13px 0 0;font-size:.72rem;line-height:1.55}
.ux-viewer-column{min-width:0;padding:24px}
.ux-image-stage{
  position:relative;
  width:100%;
  min-height:0;
  aspect-ratio:16/10;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.1);
  border-radius:22px;
  background:#030810;
}
.ux-image-stage [hidden]{display:none!important}
.ux-image-stage img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain;object-position:center center}
.ux-empty-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;text-align:center}
.ux-empty-state strong,.ux-empty-state p{position:relative;z-index:1}
.ux-empty-state strong{font-size:1rem}
.ux-empty-state p{margin:5px 0 0;font-size:.82rem}
.ux-empty-grid{position:absolute;inset:0;opacity:.3;background-image:linear-gradient(rgba(139,184,255,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(139,184,255,.11) 1px,transparent 1px);background-size:46px 46px;mask-image:radial-gradient(circle,#000,transparent 72%)}
.ux-overlay{position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen;transition:opacity .25s ease}
.ux-overlay-attention{
  opacity:.9;
  background:
    radial-gradient(circle at 22% 54%,rgba(255,39,72,.9) 0 3%,rgba(255,180,0,.72) 8%,rgba(0,217,255,.28) 16%,transparent 28%),
    radial-gradient(circle at 56% 36%,rgba(255,49,70,.82) 0 3%,rgba(255,196,0,.62) 8%,rgba(0,190,255,.22) 16%,transparent 27%),
    radial-gradient(circle at 79% 59%,rgba(255,65,85,.75) 0 3%,rgba(255,193,0,.55) 8%,rgba(0,190,255,.2) 15%,transparent 26%);
}
.ux-overlay-errors{
  opacity:.94;
  background:
    linear-gradient(90deg,transparent 49.7%,rgba(255,187,72,.72) 50%,transparent 50.3%),
    linear-gradient(transparent 49.7%,rgba(255,187,72,.72) 50%,transparent 50.3%),
    radial-gradient(circle at 70% 52%,transparent 0 12%,rgba(255,87,87,.8) 12.4% 13%,transparent 13.4%),
    radial-gradient(circle at 26% 40%,transparent 0 9%,rgba(255,187,72,.82) 9.4% 10%,transparent 10.4%);
}
.ux-overlay-quality{
  opacity:.78;
  background:
    linear-gradient(90deg,rgba(102,217,194,.16),transparent 22%,transparent 78%,rgba(139,184,255,.16)),
    linear-gradient(0deg,rgba(7,17,31,.42),transparent 24%,transparent 76%,rgba(7,17,31,.42));
  box-shadow:inset 0 0 0 3px rgba(102,217,194,.54);
}
.ux-stage-label,.ux-stage-badge{position:absolute;z-index:3;padding:8px 11px;border:1px solid rgba(255,255,255,.16);border-radius:10px;color:#eaf3ff;background:rgba(3,8,16,.76);backdrop-filter:blur(10px);font-size:.7rem;font-weight:800;letter-spacing:.04em}
.ux-stage-label{left:14px;bottom:14px}
.ux-stage-badge{right:14px;top:14px;color:#06111d;border:0;background:#f5c56c;text-transform:uppercase}
.ux-view-tabs{display:flex;flex-wrap:wrap;gap:20px;margin:14px 3px 0;color:#8da1ba;font-size:.7rem}
.ux-view-tabs div{display:flex;align-items:center;gap:7px}
.ux-view-tabs strong{font-weight:650}
.ux-legend{width:8px;height:8px;border-radius:50%}
.ux-legend-high{background:#ff5367}.ux-legend-mid{background:#ffc247}.ux-legend-low{background:#38cfe0}
.ux-results{margin-top:22px;padding:22px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.03)}
.ux-results-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
.ux-results-head>div{display:flex;align-items:baseline;gap:10px}
.ux-results-head h2{margin:0;font-size:1.15rem}
.ux-review-status{padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:#9eb0c8;background:rgba(255,255,255,.03);font-size:.68rem;font-weight:800}
.ux-review-status.ready{color:#a3e9d8;border-color:rgba(102,217,194,.25);background:rgba(102,217,194,.07)}
.ux-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.ux-metrics-grid article{min-height:113px;display:flex;flex-direction:column;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(255,255,255,.025)}
.ux-metrics-grid span,.ux-evidence-label{color:#7f94af;font-size:.65rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.ux-metrics-grid strong{margin:auto 0 2px;font-size:1.18rem;letter-spacing:-.02em}
.ux-metrics-grid small{color:#7f94af;font-size:.65rem}
.ux-evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.ux-evidence-grid article{padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(255,255,255,.025)}
.ux-evidence-grid h3{margin:8px 0 5px;font-size:.92rem}
.ux-evidence-grid p{margin:0;font-size:.78rem;line-height:1.6}
.ux-process-section{padding:94px 0;border-top:1px solid var(--line);background:rgba(255,255,255,.023)}
.ux-section-heading{max-width:830px}
.ux-section-heading h2,.ux-boundary-section h2,.ux-assurance-note h2,.ux-contact-section h2{margin:9px 0 0;font-size:clamp(2.15rem,4.2vw,4rem);line-height:1.06;letter-spacing:-.043em}
.ux-section-heading p{margin:18px 0 0;font-size:1.04rem;line-height:1.75}
.ux-process-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-top:38px}
.ux-process-grid article{min-height:230px;display:flex;flex-direction:column;padding:22px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.035)}
.ux-process-grid article>span{color:var(--accent);font-size:.7rem;font-weight:850;letter-spacing:.12em}
.ux-process-grid h3{margin:auto 0 7px;font-size:1.08rem}
.ux-process-grid p{margin:0;font-size:.85rem;line-height:1.62}
.ux-boundary-section{padding:94px 0}
.ux-boundary-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ux-boundary-grid article{padding:34px;border:1px solid var(--line);border-radius:28px;background:rgba(255,255,255,.038)}
.ux-boundary-grid article:first-child{border-color:rgba(139,184,255,.22)}
.ux-boundary-grid article:last-child{border-color:rgba(102,217,194,.24);background:rgba(102,217,194,.045)}
.ux-boundary-grid h2{font-size:clamp(1.8rem,3.1vw,3rem)}
.ux-boundary-grid ul{display:grid;gap:10px;margin:24px 0 0;padding:0;list-style:none;color:var(--muted)}
.ux-boundary-grid li{position:relative;padding-left:20px;line-height:1.58}
.ux-boundary-grid li:before{content:"";position:absolute;left:0;top:.65em;width:6px;height:6px;border-radius:50%;background:var(--accent)}
.ux-assurance-note{padding:72px 0;background:linear-gradient(120deg,#153d70,#315bae 58%,#15828c)}
.ux-assurance-note .container{display:grid;grid-template-columns:1fr auto;align-items:center;gap:48px}
.ux-assurance-note .kicker{color:#b9f3e5}
.ux-assurance-note h2{font-size:clamp(1.85rem,3.3vw,3.35rem)}
.ux-assurance-note h2+h2{margin-top:5px;color:#d3e0f2}
.ux-contact-section{padding:76px 0;border-bottom:1px solid var(--line);background:rgba(139,184,255,.055)}
.ux-contact-section .container{display:grid;grid-template-columns:1fr auto;align-items:center;gap:42px}
.ux-contact-section h2{max-width:850px;font-size:clamp(2rem,3.7vw,3.7rem)}
.ux-contact-section .btn{min-width:180px}
body.ux-busy .ux-run-button{cursor:wait}

@media(max-width:1080px){
  .ux-workspace{grid-template-columns:270px minmax(0,1fr)}
  .ux-metrics-grid{grid-template-columns:1fr 1fr}
  .ux-process-grid{grid-template-columns:repeat(2,1fr)}
  .ux-process-grid article:last-child{grid-column:1/-1;min-height:180px}
}

@media(max-width:820px){
  .ux-intro-grid,.ux-workspace,.ux-boundary-grid,.ux-assurance-note .container,.ux-contact-section .container{grid-template-columns:1fr}
  .ux-demo-notice{min-width:0}
  .ux-controls{border-right:0;border-bottom:1px solid var(--line)}
  .ux-view-buttons{grid-template-columns:repeat(3,1fr)}
  .ux-view-buttons button{text-align:center}
  .ux-image-stage{aspect-ratio:16/10}
  .ux-assurance-note .container,.ux-contact-section .container{align-items:stretch}
  .ux-contact-section .btn{width:100%}
}

@media(max-width:600px){
  .ux-intro{padding:44px 0 30px}
  .ux-intro h1{font-size:2.65rem}
  .ux-workspace-head{align-items:flex-start;flex-direction:column}
  .ux-controls,.ux-viewer-column{padding:17px}
  .ux-view-buttons{grid-template-columns:1fr}
  .ux-image-stage{aspect-ratio:4/3}
  .ux-metrics-grid,.ux-evidence-grid,.ux-process-grid{grid-template-columns:1fr}
  .ux-process-grid article,.ux-process-grid article:last-child{grid-column:auto;min-height:180px}
  .ux-process-section,.ux-boundary-section{padding:68px 0}
  .ux-section-heading h2,.ux-boundary-section h2,.ux-assurance-note h2,.ux-contact-section h2{font-size:2.25rem}
  .ux-boundary-grid article{padding:25px}
  .ux-view-tabs{gap:10px}
}

@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;transition-duration:.01ms!important}
}
