.page-hero{
  position:relative;
  border:1px solid var(--line);
  border-radius:34px;
  overflow:hidden;
  min-height:360px;
  background:#07111f;
  box-shadow:var(--shadow);
  isolation:isolate;
}
.page-hero .bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(1.05);transform:scale(1.03)}
.page-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(2,6,12,.05), rgba(2,8,15,.46), rgba(2,8,15,.92)),
    linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.62));
  z-index:1;
}
body[data-lang="fr"] .page-hero::after{
  background:
    linear-gradient(90deg, rgba(2,8,15,.92), rgba(2,8,15,.46), rgba(2,6,12,.05)),
    linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.62));
}
.page-hero-content{position:relative;z-index:2;min-height:360px;display:flex;align-items:center;justify-content:flex-end;padding:42px}
.page-hero-copy{max-width:720px;margin-right:0;margin-left:auto;text-align:right}
body[data-lang="fr"] .page-hero-content{justify-content:flex-start}
body[data-lang="fr"] .page-hero-copy{margin-left:0;margin-right:auto;text-align:left}
.page-hero-copy .eyebrow{color:#43b7ff;font-weight:900;font-size:18px;margin-bottom:12px}
.page-hero-copy h1{margin:0;font-size:clamp(38px,5vw,68px);line-height:1.1}
.page-hero-copy p{color:#dce8f8;font-size:18px;line-height:1.8;margin:18px 0 0}
.breadcrumb{display:flex;gap:8px;align-items:center;margin:18px 0 0;color:#cfe3ff;font-size:13px;flex-wrap:wrap}
.breadcrumb button{color:#6fc4ff;background:none;border:0;padding:0;font-size:13px}
.detail-body{margin-top:24px;display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.panel{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);border-radius:24px;padding:22px;box-shadow:0 18px 48px rgba(0,0,0,.22)}
.panel h3{margin:0 0 8px;font-size:24px}
.panel .hint{margin:0 0 18px;color:var(--muted);line-height:1.75;font-size:14px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.field label{display:block;margin-bottom:8px;color:#e0ecff;font-weight:900;font-size:14px}
.field input,.field select,.field textarea{width:100%;border:1px solid rgba(255,255,255,.09);background:#07121f;color:var(--text);border-radius:15px;padding:13px 14px;outline:none;font-size:14px}
.field textarea{min-height:98px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(31,162,255,.55);box-shadow:0 0 0 4px rgba(31,162,255,.12)}
.diag-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:16px}
.diag-card{position:relative;min-height:158px;border:1px solid rgba(255,255,255,.1);border-radius:18px;overflow:hidden;background:#0a1523;color:#fff;text-align:inherit;padding:14px;display:flex;align-items:flex-end;transition:.15s transform,.15s border-color}
.diag-card:hover{transform:translateY(-2px);border-color:var(--line2)}
.diag-card.active{border-color:#43b7ff;box-shadow:0 0 0 1px rgba(67,183,255,.25)}
.diag-card .bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(1.03);transform:scale(1.03)}
.diag-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,7,15,.02),rgba(2,7,15,.28) 38%,rgba(2,7,15,.94) 100%)}
.diag-card .content{position:relative;z-index:2}
.diag-card strong{display:block;font-size:17px;margin-bottom:6px}
.diag-card span{display:block;color:#c9dcf2;font-size:12px;line-height:1.5}
.tool-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}
.queries{display:none;margin-top:18px}
.queries.active{display:block}
.query-box{border:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.18);border-radius:18px;padding:15px;margin-top:12px}
.query-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.query-head strong{font-size:15px}
.copy{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:#e8f2ff;border-radius:12px;padding:8px 11px;font-size:12px;font-weight:800}
.query-text{color:#d9e7fa;line-height:1.75;font-size:13px;white-space:pre-wrap;direction:ltr;text-align:left}
.summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.summary div{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);border-radius:16px;padding:12px}
.summary span{display:block;color:var(--muted);font-size:12px;margin-bottom:6px}
.summary strong{display:block;font-size:14px}
.connection-placeholder{margin-top:18px;border:1px dashed rgba(112,171,255,.24);border-radius:18px;padding:16px;background:rgba(31,162,255,.045)}
.connection-placeholder strong{display:block;margin-bottom:6px;color:#d8edff}
.connection-placeholder span{color:var(--muted);font-size:13px;line-height:1.7}
@media(max-width:1280px){.detail-body{grid-template-columns:1fr}}
@media(max-width:900px){.page-hero,.page-hero-content{min-height:330px}.page-hero-content{padding:28px}.diag-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:1fr}}
@media(max-width:620px){.diag-grid,.tool-buttons,.summary{grid-template-columns:1fr}.page-hero-copy p{font-size:16px}}


.connection-center{
  margin-top:18px;
  border:1px solid rgba(112,171,255,.18);
  border-radius:22px;
  padding:18px;
  background:linear-gradient(180deg, rgba(31,162,255,.055), rgba(255,255,255,.025));
}
.connection-head{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  margin-bottom:14px;
}
.connection-head h3{margin:0 0 8px;font-size:22px}
.connection-head p{margin:0;color:var(--muted);line-height:1.7;font-size:13px}
.connection-badge{
  border:1px solid rgba(39,211,143,.22);
  background:rgba(39,211,143,.09);
  color:#d4ffef;
  border-radius:999px;
  padding:8px 11px;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}
.connection-methods{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.connection-method{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.035);
  color:var(--text);
  border-radius:16px;
  padding:13px;
  text-align:inherit;
  min-height:112px;
  transition:.15s transform,.15s border-color,.15s background;
}
.connection-method:hover{transform:translateY(-1px);border-color:rgba(67,169,255,.35)}
.connection-method.active{border-color:rgba(67,169,255,.72);background:rgba(31,162,255,.10)}
.connection-method.future{opacity:.68}
.method-icon{display:block;font-size:24px;margin-bottom:8px}
.connection-method strong{display:block;font-size:14px;margin-bottom:5px}
.connection-method small{display:block;color:var(--muted);font-size:12px;line-height:1.5}
.connection-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.connection-status{
  margin-top:12px;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(0,0,0,.16);
  border-radius:14px;
  padding:12px;
  color:#dce8f8;
  line-height:1.6;
  font-size:13px;
}
.scan-results{margin-top:14px}
.scan-codes-list{display:grid;gap:10px}
.no-codes{
  border:1px solid rgba(255,255,255,.07);
  background:rgba(255,255,255,.025);
  border-radius:14px;
  padding:12px;
  color:var(--muted);
  font-size:13px;
}
.scan-code-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.035);
  border-radius:16px;
  padding:12px;
}
.scan-code-card strong{display:block;font-size:17px;color:#fff}
.scan-code-card span{display:block;color:var(--muted);font-size:13px;margin-top:4px}
@media(max-width:1000px){.connection-methods{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.connection-methods,.connection-actions{grid-template-columns:1fr}.connection-head{flex-direction:column}.scan-code-card{flex-direction:column;align-items:stretch}}


.connection-status-card{
  margin-top:18px;
  border:1px solid rgba(112,171,255,.18);
  border-radius:18px;
  padding:15px;
  background:rgba(31,162,255,.045);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}
.connection-status-card.active{
  border-color:rgba(39,211,143,.30);
  background:rgba(39,211,143,.07);
}
.connection-status-card strong{display:block;font-size:16px;margin-bottom:4px}
.connection-status-card span{display:block;color:#dce8f8;font-size:13px;margin-bottom:4px}
.connection-status-card small{display:block;color:var(--muted);font-size:12px;line-height:1.5}
.connection-page-grid{
  margin-top:24px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:22px;
}
.connection-center{
  margin-top:18px;
  border:1px solid rgba(112,171,255,.18);
  border-radius:22px;
  padding:18px;
  background:linear-gradient(180deg, rgba(31,162,255,.055), rgba(255,255,255,.025));
}
.connection-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}
.connection-head h3{margin:0 0 8px;font-size:22px}
.connection-head p{margin:0;color:var(--muted);line-height:1.7;font-size:13px}
.connection-badge{border:1px solid rgba(39,211,143,.22);background:rgba(39,211,143,.09);color:#d4ffef;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:900;white-space:nowrap}
.connection-methods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.connection-method{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);color:var(--text);border-radius:16px;padding:13px;text-align:inherit;min-height:112px;transition:.15s transform,.15s border-color,.15s background}
.connection-method:hover{transform:translateY(-1px);border-color:rgba(67,169,255,.35)}
.connection-method.active{border-color:rgba(67,169,255,.72);background:rgba(31,162,255,.10)}
.connection-method.future{opacity:.68}
.method-icon{display:block;font-size:24px;margin-bottom:8px}
.connection-method strong{display:block;font-size:14px;margin-bottom:5px}
.connection-method small{display:block;color:var(--muted);font-size:12px;line-height:1.5}
.connection-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.connection-status{margin-top:12px;border:1px solid rgba(255,255,255,.07);background:rgba(0,0,0,.16);border-radius:14px;padding:12px;color:#dce8f8;line-height:1.6;font-size:13px}
.global-connection-panel{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);border-radius:18px;padding:16px;margin-top:10px}
.global-connection-panel.active{border-color:rgba(39,211,143,.30);background:rgba(39,211,143,.08)}
.global-connection-panel strong{display:block;font-size:18px;margin-bottom:7px}
.global-connection-panel span{color:var(--muted);font-size:14px;line-height:1.7}
.scan-results{margin-top:14px}
.scan-codes-list{display:grid;gap:10px}
.no-codes{border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);border-radius:14px;padding:12px;color:var(--muted);font-size:13px}
.scan-code-card{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);border-radius:16px;padding:12px}
.scan-code-card strong{display:block;font-size:17px;color:#fff}
.scan-code-card span{display:block;color:var(--muted);font-size:13px;margin-top:4px}
@media(max-width:1280px){.connection-page-grid{grid-template-columns:1fr}}
@media(max-width:1000px){.connection-methods{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.connection-status-card,.scan-code-card{flex-direction:column;align-items:stretch}.connection-methods,.connection-actions{grid-template-columns:1fr}.connection-head{flex-direction:column}}


.scan-code-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.connection-actions{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.connection-status-card small + small{
  margin-top:3px;
}
@media(max-width:720px){
  .connection-actions{grid-template-columns:1fr}
  .scan-code-actions{justify-content:stretch}
  .scan-code-actions .btn{width:100%}
}


.connection-method em{
  display:inline-flex;
  margin-inline-start:5px;
  font-style:normal;
  font-size:10px;
  color:#ffdc9f;
  border:1px solid rgba(255,189,89,.25);
  background:rgba(255,189,89,.08);
  padding:3px 6px;
  border-radius:999px;
}


.bridge-settings{
  display:none;
  margin-top:14px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.14);
  border-radius:18px;
  padding:14px;
}
.bridge-settings.active{
  display:block;
}
.bridge-settings h3{
  margin:0 0 12px;
  font-size:18px;
}


.diagnosis-result-shell{
  margin-top:16px;
  border:1px solid rgba(112,171,255,.16);
  background:rgba(31,162,255,.035);
  border-radius:18px;
  padding:15px;
}
.diagnosis-result-shell h3{
  margin:0 0 6px;
  font-size:20px;
}
.diagnosis-result-empty{
  margin-top:10px;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(0,0,0,.12);
  border-radius:14px;
  padding:12px;
  color:var(--muted);
}
.diagnosis-result-card{
  margin-top:12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.16);
  border-radius:16px;
  padding:14px;
}
.diagnosis-result-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:12px;
}
.diagnosis-result-head strong{
  display:block;
  font-size:18px;
  margin-bottom:5px;
}
.diagnosis-result-head span{
  color:var(--muted);
  font-size:12px;
}
.diagnosis-result-head em{
  font-style:normal;
  color:#ffdc9f;
  background:rgba(255,189,89,.08);
  border:1px solid rgba(255,189,89,.22);
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  white-space:nowrap;
}
.diagnosis-result-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-bottom:12px;
}
.diagnosis-result-grid div{
  border:1px solid rgba(255,255,255,.07);
  background:rgba(255,255,255,.025);
  border-radius:12px;
  padding:9px;
}
.diagnosis-result-grid span,
.diagnosis-result-section span{
  display:block;
  color:var(--muted);
  font-size:12px;
  margin-bottom:5px;
}
.diagnosis-result-grid strong{
  font-size:13px;
}
.diagnosis-result-card p{
  color:#dce8f8;
  line-height:1.7;
  font-size:13px;
}
.diagnosis-result-section{
  border-top:1px solid rgba(255,255,255,.07);
  padding-top:10px;
  margin-top:10px;
}
@media(max-width:900px){
  .diagnosis-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .diagnosis-result-grid{grid-template-columns:1fr}
  .diagnosis-result-head{flex-direction:column}
}

.diagnosis-result-shell{margin-top:16px;border:1px solid rgba(112,171,255,.16);background:rgba(31,162,255,.035);border-radius:18px;padding:15px}.diagnosis-result-shell h3{margin:0 0 6px;font-size:20px}.diagnosis-result-empty{margin-top:10px;border:1px solid rgba(255,255,255,.07);background:rgba(0,0,0,.12);border-radius:14px;padding:12px;color:var(--muted)}.diagnosis-compact-card{margin-top:12px;border:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.16);border-radius:16px;padding:14px}.diagnosis-main-line{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.diagnosis-main-line strong{display:block;font-size:18px;margin-bottom:5px}.diagnosis-main-line span{color:var(--muted);font-size:13px}.diagnosis-main-line em{font-style:normal;color:#ffdc9f;background:rgba(255,189,89,.08);border:1px solid rgba(255,189,89,.22);border-radius:999px;padding:7px 10px;font-size:12px;white-space:nowrap}.conclusion-box,.first-step-box{border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);border-radius:14px;padding:12px;margin-top:10px}.conclusion-box span,.first-step-box span{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}.conclusion-box strong{display:block;font-size:16px;line-height:1.6}.conclusion-box small{display:block;color:#dce8f8;margin-top:6px;font-size:12px}.first-step-box p{margin:0;color:#dce8f8;line-height:1.7;font-size:13px}.diagnosis-details{margin-top:10px;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:10px;background:rgba(255,255,255,.02)}.diagnosis-details summary{cursor:pointer;font-weight:900;color:#dce8f8}.probability-list{display:grid;gap:8px;margin-top:10px}.probability-row{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:9px;display:flex;justify-content:space-between;gap:10px;background:rgba(0,0,0,.12)}.probability-row span,.probability-row strong{position:relative;z-index:2;font-size:13px}.probability-row i{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,rgba(31,162,255,.22),rgba(39,211,143,.18));z-index:1}body[data-lang="ar"] .probability-row i{left:auto;right:0}.inspection-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.inspection-image-btn{border:1px solid rgba(112,171,255,.20);background:rgba(31,162,255,.07);color:#e7f2ff;border-radius:999px;padding:9px 12px;font-weight:900;font-size:12px}@media(max-width:620px){.diagnosis-main-line{flex-direction:column}.inspection-image-btn{width:100%;border-radius:12px}}


.report-box{
  display:none;
  margin-top:16px;
}
.report-box.active{
  display:block;
}
.report-card{
  border:1px solid rgba(112,171,255,.18);
  background:rgba(31,162,255,.035);
  border-radius:18px;
  padding:15px;
}
.report-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:14px;
}
.report-head strong{
  display:block;
  font-size:20px;
  margin-bottom:5px;
}
.report-head span{
  color:var(--muted);
  font-size:13px;
}
.report-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.report-grid div,.report-section{
  border:1px solid rgba(255,255,255,.07);
  background:rgba(255,255,255,.025);
  border-radius:13px;
  padding:10px;
}
.report-grid span,.report-section span{
  display:block;
  color:var(--muted);
  font-size:12px;
  margin-bottom:5px;
}
.report-section{
  margin-top:10px;
}
.report-section p{
  margin:0 0 6px;
  color:#dce8f8;
  line-height:1.7;
  font-size:13px;
}
.report-table{
  width:100%;
  border-collapse:collapse;
  color:#dce8f8;
  font-size:13px;
}
.report-table td{
  border:1px solid rgba(255,255,255,.07);
  padding:8px;
}
.report-warning{
  margin-top:12px;
  color:#ffdc9f;
  font-size:12px;
  line-height:1.7;
}
@media(max-width:650px){
  .report-grid{grid-template-columns:1fr}
  .report-head{flex-direction:column}
}


.inspection-guide-box{
  display:none;
  margin-top:16px;
}
.inspection-guide-box.active{
  display:block;
}
.inspection-guide-card{
  border:1px solid rgba(112,171,255,.18);
  background:rgba(31,162,255,.035);
  border-radius:18px;
  padding:15px;
}
.inspection-guide-head strong{
  display:block;
  font-size:20px;
  margin-bottom:5px;
}
.inspection-guide-head span{
  display:block;
  color:var(--muted);
  font-size:13px;
  line-height:1.6;
}
.inspection-steps{
  display:grid;
  gap:10px;
  margin-top:14px;
}
.inspection-step{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  align-items:flex-start;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(0,0,0,.13);
  border-radius:14px;
  padding:12px;
}
.inspection-step input{
  margin-top:5px;
  width:18px;
  height:18px;
}
.inspection-step strong{
  display:block;
  font-size:15px;
  margin-bottom:5px;
}
.inspection-step p{
  margin:0 0 8px;
  color:#dce8f8;
  line-height:1.7;
  font-size:13px;
}


.dtc-library-box{
  display:none;
  margin-top:16px;
}
.dtc-library-box.active{
  display:block;
}
.dtc-library-card{
  border:1px solid rgba(112,171,255,.18);
  background:rgba(31,162,255,.035);
  border-radius:18px;
  padding:15px;
}
.dtc-library-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:12px;
}
.dtc-library-head strong{
  display:block;
  font-size:20px;
  margin-bottom:5px;
}
.dtc-library-head span{
  color:var(--muted);
  font-size:13px;
  line-height:1.6;
}
.dtc-library-list{
  display:grid;
  gap:10px;
  margin-top:12px;
  max-height:360px;
  overflow:auto;
  padding-inline-end:4px;
}
.dtc-library-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.14);
  border-radius:14px;
  padding:12px;
}
.dtc-library-row strong{
  display:block;
  font-size:16px;
  margin-bottom:4px;
}
.dtc-library-row span{
  display:block;
  color:#dce8f8;
  font-size:13px;
  line-height:1.5;
}
.dtc-library-row small{
  display:block;
  color:var(--muted);
  margin-top:4px;
}
@media(max-width:620px){
  .dtc-library-row,.dtc-library-head{flex-direction:column;align-items:stretch}
}


.history-page{
  margin-top:24px;
}
.history-list{
  display:grid;
  gap:10px;
  margin-top:16px;
}
.history-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.035);
  border-radius:16px;
  padding:12px;
}
.history-row strong{
  display:block;
  font-size:16px;
  margin-bottom:5px;
}
.history-row span{
  display:block;
  color:#dce8f8;
  font-size:13px;
}
.history-row small{
  display:block;
  color:var(--muted);
  margin-top:5px;
}
.history-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.history-actions .btn{
  min-width:auto;
  padding:9px 12px;
  font-size:13px;
}
@media(max-width:720px){
  .history-row{
    flex-direction:column;
    align-items:stretch;
  }
  .history-actions .btn{
    width:100%;
  }
}


.bluetooth-search-panel{
  margin-top:14px;
  border:1px solid rgba(112,171,255,.18);
  background:rgba(31,162,255,.045);
  border-radius:18px;
  padding:14px;
}
.bluetooth-search-panel h3{
  margin:0 0 8px;
  font-size:18px;
}
.bluetooth-search-panel .connection-status{
  margin-top:12px;
}


.bluetooth-simple-panel{
  border:1px solid rgba(112,171,255,.18);
  background:rgba(31,162,255,.045);
  border-radius:18px;
  padding:14px;
}
.bluetooth-simple-panel h3{
  margin:0 0 8px;
  font-size:18px;
}
.bluetooth-big-button{
  width:100%;
  margin-top:12px;
  border:1px solid rgba(112,171,255,.30);
  background:linear-gradient(135deg,rgba(31,162,255,.22),rgba(39,211,143,.16));
  color:#f4f8ff;
  border-radius:18px;
  padding:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  cursor:pointer;
  font-family:inherit;
}
.bluetooth-big-button span{
  font-size:30px;
}
.bluetooth-big-button strong{
  font-size:18px;
}


.bt-com-panel{
  border:1px solid rgba(112,171,255,.18);
  background:rgba(31,162,255,.045);
  border-radius:18px;
  padding:14px;
}
.bt-com-panel h3{
  margin:0 0 8px;
  font-size:18px;
}
.bt-com-steps{
  margin:10px 0 14px;
  padding-inline-start:22px;
  color:#dce8f8;
  line-height:1.75;
  font-size:13px;
}
.bt-com-panel select{
  width:100%;
  border:1px solid rgba(255,255,255,.12);
  background:#06101c;
  color:#fff;
  border-radius:14px;
  padding:12px;
}

.compatibility-panel,.advanced-connection-panel{
  margin-top:16px;
  border:1px solid rgba(112,171,255,.18);
  background:rgba(31,162,255,.035);
  border-radius:18px;
  padding:14px;
}
.compatibility-panel{
  display:grid;
  gap:12px;
}
.compatibility-result{
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  padding:12px;
  display:grid;
  gap:8px;
}
.compatibility-result.good{background:rgba(39,211,143,.08)}
.compatibility-result.medium{background:rgba(255,189,89,.08)}
.compatibility-result.bad{background:rgba(255,112,112,.08)}
.compatibility-checks{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.compatibility-checks em{
  font-style:normal;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
}
.advanced-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}
.advanced-methods{
  margin-top:0;
}


.clean-action-panel{
  margin-top:16px;
  border:1px solid rgba(112,171,255,.18);
  background:rgba(255,255,255,.035);
  border-radius:20px;
  padding:16px;
}
.clean-action-panel h3{
  margin:0 0 8px;
  font-size:20px;
}
.clean-action-panel p{
  margin:0 0 12px;
  color:var(--muted);
  line-height:1.7;
  font-size:14px;
}
.clean-actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
.clean-actions .btn,
.compatibility-panel > .btn{
  min-height:46px;
  padding:11px 14px;
  font-size:14px;
}
.compatibility-panel{
  grid-template-columns:1fr auto;
  align-items:center;
}
.compatibility-panel > div h3{
  margin:0 0 6px;
}
.compatibility-panel > div p{
  margin:0;
}
.bt-com-panel{
  margin-top:12px;
}
.bt-com-steps{
  display:none;
}
@media(max-width:760px){
  .clean-actions{grid-template-columns:1fr}
  .compatibility-panel{grid-template-columns:1fr}
}


/* Phase 24: refined Arabic connection UI */
.connection-methods{
  align-items:stretch;
}
.connection-method.compact-connection-card{
  min-height:132px !important;
  height:auto !important;
  padding:16px 14px !important;
  display:grid !important;
  grid-template-rows:auto auto 1fr;
  align-content:start;
  gap:8px;
  text-align:center;
  overflow:hidden;
}
.connection-method.compact-connection-card .method-icon{
  width:42px;
  height:42px;
  margin:0 auto 2px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:rgba(255,255,255,.06);
  font-size:25px !important;
  line-height:1;
}
.connection-method.compact-connection-card strong{
  display:block;
  font-size:17px !important;
  line-height:1.25 !important;
  margin:0 !important;
  white-space:normal !important;
  word-break:normal;
}
.connection-method.compact-connection-card small{
  display:block;
  font-size:12.5px !important;
  line-height:1.55 !important;
  color:var(--muted);
  margin:0 auto !important;
  max-width:210px;
  overflow:hidden;
}
html[dir="rtl"] .connection-method.compact-connection-card small,
html[dir="rtl"] .connection-method.compact-connection-card strong{
  direction:rtl;
  text-align:center;
}
.clean-action-panel{
  padding:16px !important;
  margin-top:14px !important;
}
.clean-action-panel h3{
  font-size:19px !important;
  line-height:1.35;
}
.clean-action-panel p{
  font-size:13px !important;
  line-height:1.7 !important;
  margin-bottom:10px !important;
}
.compatibility-panel{
  padding:13px 14px !important;
  margin-top:14px !important;
  border-radius:18px !important;
}
.compatibility-panel > .btn{
  width:auto !important;
  min-width:150px;
  max-width:220px;
  justify-self:end;
}
html[dir="rtl"] .compatibility-panel > .btn{
  justify-self:start;
}
.bt-com-panel{
  padding:14px !important;
}
.bt-com-panel h3{
  font-size:18px !important;
}
.bt-com-panel .field label,
.clean-action-panel .field label{
  font-size:13px;
}
.bt-com-panel .connection-actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.bt-com-panel .connection-actions .btn{
  min-height:44px;
  padding:10px 12px;
  font-size:13.5px;
}
.advanced-connection-panel .connection-method.compact-connection-card{
  min-height:118px !important;
}
@media(max-width:900px){
  .connection-method.compact-connection-card{
    min-height:124px !important;
  }
  .bt-com-panel .connection-actions{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .connection-methods{
    grid-template-columns:1fr !important;
  }
  .connection-method.compact-connection-card{
    min-height:auto !important;
    grid-template-columns:44px 1fr;
    grid-template-rows:auto auto;
    text-align:inherit;
    align-items:center;
  }
  .connection-method.compact-connection-card .method-icon{
    grid-row:1/3;
    margin:0;
  }
  .connection-method.compact-connection-card strong,
  .connection-method.compact-connection-card small{
    text-align:inherit !important;
    max-width:none;
  }
  .compatibility-panel{
    grid-template-columns:1fr !important;
  }
  .compatibility-panel > .btn{
    max-width:none;
    width:100% !important;
    justify-self:stretch !important;
  }
}


/* Phase 25 Stage 1: structural class applied to connection cards */
.connection-method.connection-card-small{
  display:grid;
  grid-template-columns:42px 1fr;
  grid-template-rows:auto;
  align-items:center;
  text-align:inherit;
}
.connection-method.connection-card-small .method-icon{
  margin:0;
}
.connection-method.connection-card-small .method-copy{
  display:block;
  min-width:0;
}
.connection-method.connection-card-small .method-copy strong,
.connection-method.connection-card-small .method-copy small{
  text-align:inherit;
}
html[dir="rtl"] .connection-method.connection-card-small .method-copy{
  direction:rtl;
}


/* Phase 26: fix oversized connection cards and remove nested-card look */
.connection-methods{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  align-items:stretch !important;
}
.connection-method.connection-card-small{
  min-height:88px !important;
  height:88px !important;
  max-height:88px !important;
  padding:12px 14px !important;
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  grid-template-rows:1fr !important;
  align-items:center !important;
  gap:12px !important;
  text-align:inherit !important;
  overflow:hidden !important;
  border-radius:18px !important;
}
.connection-method.connection-card-small .method-icon{
  width:42px !important;
  height:42px !important;
  margin:0 !important;
  display:grid !important;
  place-items:center !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.06) !important;
  font-size:24px !important;
  line-height:1 !important;
  grid-row:auto !important;
}
.connection-method.connection-card-small .method-copy{
  min-width:0 !important;
  display:block !important;
}
.connection-method.connection-card-small strong{
  font-size:16px !important;
  line-height:1.25 !important;
  margin:0 0 4px !important;
  display:block !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.connection-method.connection-card-small small{
  font-size:12px !important;
  line-height:1.35 !important;
  margin:0 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  color:var(--muted) !important;
}
html[dir="rtl"] .connection-method.connection-card-small{
  direction:rtl !important;
}
html[dir="rtl"] .connection-method.connection-card-small .method-copy,
html[dir="rtl"] .connection-method.connection-card-small strong,
html[dir="rtl"] .connection-method.connection-card-small small{
  text-align:right !important;
}
.connection-detail-panel{
  margin-top:16px !important;
  border:1px solid rgba(112,171,255,.18) !important;
  background:rgba(255,255,255,.035) !important;
  border-radius:20px !important;
  padding:16px !important;
}
.detail-panel-head h3{
  margin:0 0 6px !important;
  font-size:20px !important;
  line-height:1.3 !important;
}
.detail-panel-head p{
  margin:0 0 12px !important;
  color:var(--muted) !important;
  line-height:1.65 !important;
  font-size:13.5px !important;
}
.bt-com-panel{
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
}
.bt-com-compact-steps{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  margin:0 0 12px !important;
}
.bt-com-compact-steps span{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.14);
  border-radius:12px;
  padding:9px 10px;
  color:#dce8f8;
  font-size:12px;
  line-height:1.45;
}
.bt-com-actions,
.detail-actions{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
  margin-top:12px !important;
}
.bt-com-actions .btn,
.detail-actions .btn{
  min-height:44px !important;
  padding:10px 12px !important;
  font-size:13.5px !important;
  white-space:normal !important;
}
.compatibility-panel{
  grid-template-columns:1fr auto !important;
  align-items:center !important;
  padding:12px 14px !important;
}
.compatibility-panel > .btn{
  max-width:190px !important;
  min-height:42px !important;
  padding:9px 12px !important;
}
.advanced-connection-panel .connection-methods{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
.advanced-connection-panel .connection-method.connection-card-small{
  height:82px !important;
  min-height:82px !important;
  max-height:82px !important;
}
@media(max-width:900px){
  .connection-methods,
  .advanced-connection-panel .connection-methods{
    grid-template-columns:1fr !important;
  }
  .bt-com-compact-steps,
  .bt-com-actions,
  .detail-actions{
    grid-template-columns:1fr !important;
  }
  .connection-method.connection-card-small{
    height:82px !important;
    min-height:82px !important;
    max-height:82px !important;
  }
}


/* Phase 27: FIX lower panels outside card grid */
.connection-methods-top{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  align-items:stretch !important;
}
.connection-methods-top .connection-method{
  min-height:88px !important;
  height:88px !important;
  max-height:88px !important;
  padding:12px 14px !important;
  display:grid !important;
  grid-template-columns:42px 1fr !important;
  grid-template-rows:1fr !important;
  align-items:center !important;
  gap:10px !important;
  overflow:hidden !important;
}
.connection-methods-top .method-icon{
  width:38px !important;
  height:38px !important;
  margin:0 !important;
  display:grid !important;
  place-items:center !important;
  font-size:23px !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.06) !important;
}
.connection-methods-top .method-copy{
  display:block !important;
  min-width:0 !important;
}
.connection-methods-top strong{
  font-size:16px !important;
  line-height:1.25 !important;
  margin:0 0 4px !important;
  text-align:inherit !important;
}
.connection-methods-top small{
  font-size:12px !important;
  line-height:1.35 !important;
  margin:0 !important;
  color:var(--muted) !important;
  text-align:inherit !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden !important;
}
html[dir="rtl"] .connection-methods-top .connection-method{
  direction:rtl;
}
.connection-lower-zone{
  margin-top:16px !important;
  display:block !important;
}
.connection-lower-zone .connection-detail-panel,
.connection-lower-zone .compatibility-panel,
.connection-lower-zone .advanced-connection-panel,
.connection-lower-zone .bridge-settings{
  width:100% !important;
  max-width:100% !important;
  margin-top:14px !important;
  grid-column:1 / -1 !important;
}
.connection-detail-panel{
  border:1px solid rgba(112,171,255,.18);
  background:rgba(255,255,255,.035);
  border-radius:20px;
  padding:16px;
}
.detail-panel-head h3{
  margin:0 0 8px !important;
  font-size:20px !important;
  line-height:1.35 !important;
}
.detail-panel-head p{
  margin:0 0 12px !important;
  color:var(--muted);
  font-size:13px !important;
  line-height:1.7 !important;
}
.bt-com-panel{
  width:100% !important;
  max-width:100% !important;
}
.bt-com-compact-steps{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  margin-bottom:12px !important;
}
.bt-com-compact-steps span{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.13);
  border-radius:12px;
  padding:9px 8px;
  font-size:12px !important;
  line-height:1.45 !important;
  text-align:center;
}
.bt-com-grid{
  grid-template-columns:1fr 170px !important;
}
.bt-com-actions{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
  margin-top:12px !important;
}
.bt-com-actions .btn{
  min-height:44px !important;
  padding:10px 12px !important;
  font-size:13px !important;
  white-space:normal !important;
}
.compatibility-panel{
  grid-template-columns:1fr auto !important;
}
@media(max-width:850px){
  .connection-methods-top{
    grid-template-columns:1fr !important;
  }
  .connection-methods-top .connection-method{
    height:82px !important;
    max-height:82px !important;
  }
  .bt-com-compact-steps,
  .bt-com-actions,
  .bt-com-grid{
    grid-template-columns:1fr !important;
  }
  .compatibility-panel{
    grid-template-columns:1fr !important;
  }
}


/* Phase 28 final switch: exactly one lower panel changes with top card */
.connection-switch-panel{
  margin-top:16px !important;
  display:block !important;
  width:100% !important;
}
.simple-active-panel{
  border:1px solid rgba(112,171,255,.18) !important;
  background:rgba(255,255,255,.035) !important;
  border-radius:22px !important;
  padding:16px !important;
  width:100% !important;
  box-sizing:border-box !important;
}
.simple-active-head{
  display:flex !important;
  justify-content:space-between !important;
  gap:14px !important;
  align-items:flex-start !important;
  margin-bottom:14px !important;
}
.simple-active-head h3{
  margin:0 0 6px !important;
  font-size:21px !important;
  line-height:1.25 !important;
}
.simple-active-head p{
  margin:0 !important;
  color:var(--muted) !important;
  line-height:1.65 !important;
  font-size:13.5px !important;
}
.simple-active-head > span{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.16);
  color:#dce8f8;
  border-radius:999px;
  padding:8px 10px;
  font-size:12px;
  white-space:nowrap;
}
.simple-com-row{
  display:grid !important;
  grid-template-columns:minmax(220px,1fr) repeat(3,minmax(140px,180px)) !important;
  gap:10px !important;
  align-items:end !important;
}
.simple-com-row .field label{
  font-size:13px !important;
  margin-bottom:7px !important;
}
.simple-com-row select{
  width:100% !important;
  height:46px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:#06101c !important;
  color:#fff !important;
  border-radius:14px !important;
  padding:0 12px !important;
}
.simple-com-row .btn,
.simple-usb-actions .btn{
  min-height:46px !important;
  height:46px !important;
  padding:8px 12px !important;
  font-size:13.5px !important;
  line-height:1.25 !important;
  white-space:normal !important;
}
.simple-usb-actions{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}
.mini-test-row{
  margin-top:12px !important;
}
.mini-test-row .btn{
  min-height:42px !important;
  padding:8px 12px !important;
  font-size:13px !important;
}
.mini-compat-result{
  margin-top:12px !important;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:12px;
  display:grid;
  gap:7px;
  font-size:13px;
}
.mini-compat-result.good{background:rgba(39,211,143,.08)}
.mini-compat-result.medium{background:rgba(255,189,89,.08)}
.mini-compat-result.bad{background:rgba(255,112,112,.08)}
.mini-compat-result div{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.mini-compat-result em{
  font-style:normal;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  padding:6px 8px;
  font-size:12px;
}
.advanced-methods-clean{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}
.advanced-methods-clean .connection-method{
  height:84px !important;
  min-height:84px !important;
  max-height:84px !important;
}

/* prevent old lower sections from leaking layout */
.connection-lower-zone > .compatibility-panel,
.connection-lower-zone > .connection-detail-panel,
.connection-lower-zone > .bt-com-panel{
  display:none !important;
}

@media(max-width:980px){
  .simple-com-row{
    grid-template-columns:1fr 1fr !important;
  }
  .simple-usb-actions,
  .advanced-methods-clean{
    grid-template-columns:1fr !important;
  }
}
@media(max-width:650px){
  .simple-active-head{
    display:block !important;
  }
  .simple-active-head > span{
    display:inline-block;
    margin-top:10px;
    white-space:normal;
  }
  .simple-com-row{
    grid-template-columns:1fr !important;
  }
}


/* Phase 29: mechanic-friendly final polish */
.mechanic-panel{
  padding:18px !important;
}
.mechanic-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:12px 0 14px;
}
.mechanic-steps em{
  font-style:normal;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(0,0,0,.16);
  border-radius:14px;
  padding:10px 9px;
  color:#e6f1ff;
  font-weight:800;
  font-size:12.5px;
  line-height:1.55;
  text-align:center;
}
.mechanic-actions-row{
  margin-top:0 !important;
}
.connection-methods-top .connection-method.active{
  box-shadow:0 0 0 3px rgba(31,162,255,.10), 0 0 26px rgba(31,162,255,.12);
}
.simple-active-panel.bluetooth-panel{
  border-color:rgba(31,162,255,.26) !important;
}
.simple-active-panel.usb-panel{
  border-color:rgba(39,211,143,.22) !important;
}
.advanced-panel-final .advanced-note{
  display:inline-block;
  margin-top:8px;
  color:#ffdc9f;
  font-size:12px;
  border:1px solid rgba(255,189,89,.18);
  background:rgba(255,189,89,.07);
  border-radius:999px;
  padding:7px 10px;
}
.advanced-methods-clean .connection-method{
  min-height:78px !important;
  height:78px !important;
  max-height:78px !important;
}
@media(max-width:900px){
  .mechanic-steps{
    grid-template-columns:1fr;
  }
}


/* Phase 30: fix Bluetooth action button overlap */
.simple-com-row.mechanic-actions-row{
  grid-template-columns:minmax(240px,1.1fr) repeat(3,minmax(150px,1fr)) !important;
  align-items:stretch !important;
}
.simple-com-row.mechanic-actions-row .field{
  min-width:0 !important;
}
.simple-com-row.mechanic-actions-row .field select{
  height:52px !important;
}
.simple-com-row.mechanic-actions-row .btn.bt-action-btn{
  height:52px !important;
  min-height:52px !important;
  width:100% !important;
  max-width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  padding:8px 10px !important;
  box-sizing:border-box !important;
  white-space:normal !important;
  overflow:hidden !important;
  text-align:center !important;
  line-height:1.15 !important;
}
.simple-com-row.mechanic-actions-row .btn.bt-action-btn span{
  flex:0 0 auto !important;
  font-size:17px !important;
  line-height:1 !important;
}
.simple-com-row.mechanic-actions-row .btn.bt-action-btn b{
  display:block !important;
  font-size:12.5px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  max-width:100% !important;
  overflow:hidden !important;
}
@media(max-width:1120px){
  .simple-com-row.mechanic-actions-row{
    grid-template-columns:1fr 1fr !important;
  }
}
@media(max-width:680px){
  .simple-com-row.mechanic-actions-row{
    grid-template-columns:1fr !important;
  }
  .simple-com-row.mechanic-actions-row .btn.bt-action-btn{
    justify-content:center !important;
  }
}


/* Phase 31 ROOT FIX: Bluetooth buttons must never overlap */
.simple-com-row.mechanic-actions-row{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;
  align-items:stretch !important;
  width:100% !important;
  max-width:100% !important;
  overflow:visible !important;
}
.simple-com-row.mechanic-actions-row .field{
  width:100% !important;
  max-width:100% !important;
}
.simple-com-row.mechanic-actions-row .field select{
  width:100% !important;
  max-width:100% !important;
}
.simple-com-row.mechanic-actions-row .btn.bt-action-btn{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:50px !important;
  min-height:50px !important;
  border-radius:16px !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  padding:10px 14px !important;
  box-sizing:border-box !important;
  position:relative !important;
  transform:none !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.simple-com-row.mechanic-actions-row .btn.bt-action-btn span{
  flex:0 0 auto !important;
  font-size:18px !important;
}
.simple-com-row.mechanic-actions-row .btn.bt-action-btn b{
  flex:0 1 auto !important;
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  font-size:15px !important;
  line-height:1.2 !important;
  text-align:center !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
/* cancel older grid rules that forced side-by-side action buttons */
.bt-com-actions,
.simple-com-row{
  overflow:visible !important;
}


/* Phase 33 FINAL Connection Center: stable 3-choice layout */
.final-connection-methods{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  align-items:stretch !important;
}
.final-connection-card{
  height:86px !important;
  min-height:86px !important;
  max-height:86px !important;
  display:grid !important;
  grid-template-columns:42px 1fr !important;
  align-items:center !important;
  gap:10px !important;
  padding:12px 14px !important;
  overflow:hidden !important;
  text-align:inherit !important;
}
.final-connection-card .method-icon{
  width:38px !important;
  height:38px !important;
  display:grid !important;
  place-items:center !important;
  margin:0 !important;
  font-size:23px !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.06) !important;
}
.final-connection-card .method-copy{
  min-width:0 !important;
  display:block !important;
}
.final-connection-card strong{
  display:block !important;
  font-size:16px !important;
  line-height:1.2 !important;
  margin:0 0 4px !important;
}
.final-connection-card small{
  display:-webkit-box !important;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden !important;
  font-size:12px !important;
  line-height:1.35 !important;
  color:var(--muted) !important;
}
.final-panel-zone{
  margin-top:16px !important;
  width:100% !important;
}
.final-active-panel{
  width:100% !important;
  border:1px solid rgba(112,171,255,.20) !important;
  background:rgba(255,255,255,.035) !important;
  border-radius:22px !important;
  padding:16px !important;
  box-sizing:border-box !important;
}
.final-panel-head{
  display:flex !important;
  justify-content:space-between !important;
  align-items:flex-start !important;
  gap:14px !important;
  margin-bottom:14px !important;
}
.final-panel-head h3{
  margin:0 0 6px !important;
  font-size:21px !important;
  line-height:1.25 !important;
}
.final-panel-head p{
  margin:0 !important;
  color:var(--muted) !important;
  line-height:1.65 !important;
  font-size:13.5px !important;
}
.final-panel-head span{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.16);
  color:#dce8f8;
  border-radius:999px;
  padding:8px 10px;
  font-size:12px;
  white-space:nowrap;
}
.final-com-row{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;
}
.final-com-row select{
  width:100% !important;
  height:46px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:#06101c !important;
  color:#fff !important;
  border-radius:14px !important;
  padding:0 12px !important;
}
.final-com-row .btn,
.final-usb-actions .btn{
  width:100% !important;
  min-height:48px !important;
  height:48px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:8px 12px !important;
  font-size:14px !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
}
.final-usb-actions{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}
.final-mini-test{
  margin-top:12px !important;
}
.final-mini-test .btn{
  min-height:42px !important;
  height:42px !important;
  padding:8px 12px !important;
  font-size:13px !important;
}
.final-test-result{
  margin-top:12px !important;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:12px;
  display:grid;
  gap:8px;
}
.final-test-result div{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.final-test-result em{
  font-style:normal;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  padding:6px 8px;
  font-size:12px;
}
.final-advanced-methods{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}
.final-advanced-methods .connection-method{
  height:78px !important;
  min-height:78px !important;
  max-height:78px !important;
}
html[dir="rtl"] .final-connection-card{
  direction:rtl;
}
@media(max-width:850px){
  .final-connection-methods,
  .final-usb-actions,
  .final-advanced-methods{
    grid-template-columns:1fr !important;
  }
  .final-panel-head{
    display:block !important;
  }
  .final-panel-head span{
    display:inline-block;
    margin-top:10px;
    white-space:normal;
  }
}


/* Phase 34: tiny QA indicator for selected connection panel */
.connection-qa-indicator{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0 0 12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.13);
  color:#dce8f8;
  border-radius:999px;
  padding:7px 10px;
  font-size:12.5px;
}
.connection-qa-indicator strong{
  color:#fff;
}


/* Phase 35: button QA line */
.connection-qa-buttons{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 14px;
  border:1px solid rgba(39,211,143,.14);
  background:rgba(39,211,143,.055);
  color:#dce8f8;
  border-radius:14px;
  padding:8px 10px;
  font-size:12.5px;
  line-height:1.5;
}
.connection-qa-buttons strong{
  color:#fff;
  font-weight:900;
}
html[dir="rtl"] .connection-qa-buttons{
  direction:rtl;
}
@media(max-width:700px){
  .connection-qa-buttons{
    display:block;
  }
  .connection-qa-buttons span,
  .connection-qa-buttons strong{
    display:block;
  }
}


/* Phase 36: hide QA helper lines after validation */
.connection-qa-indicator,
.connection-qa-buttons{
  display:none !important;
}


/* Phase 37: clearer device test result */
.final-test-result.good{background:rgba(39,211,143,.075)}
.final-test-result.medium{background:rgba(255,189,89,.075)}
.final-test-result.bad{background:rgba(255,112,112,.075)}
.test-score-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.test-score-head small{
  color:var(--muted);
  font-size:12px;
}
.test-score-bar{
  height:9px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.08);
}
.test-score-bar span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(31,162,255,.9), rgba(39,211,143,.9));
}
.final-test-result p{
  margin:0;
  color:#e6f1ff;
  font-size:13.5px;
  line-height:1.6;
}
.final-test-result > .btn{
  width:max-content;
  min-width:145px;
  min-height:40px !important;
  height:40px !important;
  font-size:13px !important;
}
@media(max-width:650px){
  .test-score-head{
    display:block;
  }
  .final-test-result > .btn{
    width:100%;
  }
}


/* Phase 38: recommended COM helper */
.com-recommendation{
  margin:0 0 12px;
  border:1px solid rgba(39,211,143,.16);
  background:rgba(39,211,143,.055);
  border-radius:16px;
  padding:10px 12px;
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:space-between;
  color:#e6f1ff;
  font-size:13px;
  line-height:1.5;
}
.com-recommendation strong{
  color:#fff;
  font-size:14px;
}
.com-recommendation em{
  color:var(--muted);
  font-style:normal;
  font-size:12px;
}
html[dir="rtl"] .com-recommendation{
  direction:rtl;
}
@media(max-width:650px){
  .com-recommendation{
    display:block;
  }
  .com-recommendation em{
    display:block;
    margin-top:5px;
  }
}


/* Phase 39 final QA badge */
.phase39-final-badge{
  display:inline-flex;
  vertical-align:middle;
  margin-inline-start:8px;
  border:1px solid rgba(39,211,143,.20);
  background:rgba(39,211,143,.08);
  color:#d4ffef;
  border-radius:999px;
  padding:5px 8px;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
}


/* Phase 40: professional scanner flow */
.scanner-scan-flow{
  margin:16px 0;
  border:1px solid rgba(112,171,255,.18);
  background:rgba(255,255,255,.035);
  border-radius:20px;
  padding:16px;
}
.scan-flow-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.scan-flow-head h3{
  margin:0 0 6px;
  font-size:20px;
}
.scan-flow-head p{
  margin:0;
  color:var(--muted);
  line-height:1.6;
  font-size:13.5px;
}
.scan-flow-head span{
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  white-space:nowrap;
}
.scan-flow-head span.ok{background:rgba(39,211,143,.08);border:1px solid rgba(39,211,143,.20);color:#d4ffef}
.scan-flow-head span.warn{background:rgba(255,189,89,.08);border:1px solid rgba(255,189,89,.20);color:#ffdc9f}
.scan-flow-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:14px;
}
.scan-flow-actions .btn{
  min-height:46px;
}
.scan-flow-progress{
  display:none;
  gap:8px;
  margin-top:14px;
}
.scan-flow-progress.active{
  display:grid;
}
.scan-step{
  display:grid;
  grid-template-columns:34px 1fr 34px;
  align-items:center;
  gap:10px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.13);
  border-radius:14px;
  padding:9px 10px;
}
.scan-step span{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(255,255,255,.07);
  font-weight:900;
}
.scan-step strong{
  font-size:13px;
}
.scan-step em{
  font-style:normal;
  color:var(--muted);
  text-align:center;
}
.scan-step.running{
  border-color:rgba(31,162,255,.40);
  background:rgba(31,162,255,.08);
}
.scan-step.running em{
  animation:pulseScan 1s infinite;
}
.scan-step.done em{
  color:#d4ffef;
}
@keyframes pulseScan{0%,100%{opacity:.35}50%{opacity:1}}
.scan-flow-result{
  display:none;
  margin-top:14px;
  border:1px solid rgba(39,211,143,.16);
  background:rgba(39,211,143,.055);
  border-radius:16px;
  padding:12px;
}
.scan-flow-result.active{
  display:block;
}
.scan-flow-result h4{
  margin:0 0 8px;
}
.scan-flow-result p{
  margin:6px 0;
  color:#e6f1ff;
  line-height:1.6;
  font-size:13px;
}
.scan-warning{
  color:#ffdc9f !important;
}
.scan-found-codes{
  display:grid;
  gap:8px;
  margin-top:10px;
}
.scan-found-codes button{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.16);
  color:var(--text);
  border-radius:12px;
  padding:10px;
  display:grid;
  grid-template-columns:90px 90px 1fr;
  gap:8px;
  align-items:center;
  text-align:inherit;
}
.scan-found-codes strong{
  font-size:17px;
}
.scan-found-codes span,
.scan-found-codes small{
  color:var(--muted);
}
.scan-note{
  color:#d4ffef !important;
}
@media(max-width:720px){
  .scan-flow-head{display:block}
  .scan-flow-head span{display:inline-block;margin-top:10px;white-space:normal}
  .scan-flow-actions{grid-template-columns:1fr}
  .scan-found-codes button{grid-template-columns:1fr}
}


/* Phase 41: scan requires valid connection */
.scan-flow-actions .btn:disabled{
  opacity:.45;
  cursor:not-allowed;
  filter:grayscale(.35);
}
.scan-flow-result .btn{
  margin-top:10px;
}

/* v43 — Android direct OBD Bluetooth / mobile scanner flow */
.android-main-methods{
  grid-template-columns:1fr !important;
}
.android-obd-panel{
  border-color:rgba(31,162,255,.30) !important;
  background:linear-gradient(180deg,rgba(31,162,255,.075),rgba(255,255,255,.025)) !important;
}
.android-obd-head > span.android-ready{
  border-color:rgba(39,211,143,.28);
  background:rgba(39,211,143,.09);
  color:#d8fff0;
}
.android-obd-head > span.android-busy{
  border-color:rgba(31,162,255,.28);
  background:rgba(31,162,255,.10);
  color:#dcefff;
  animation:androidPulse 1.2s ease-in-out infinite;
}
.android-obd-head > span.android-wait{
  border-color:rgba(255,189,89,.24);
  background:rgba(255,189,89,.075);
  color:#ffe6bd;
}
@keyframes androidPulse{0%,100%{opacity:.58}50%{opacity:1}}
.android-obd-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin:12px 0 14px;
}
.android-obd-steps span{
  border:1px solid rgba(255,255,255,.085);
  background:rgba(0,0,0,.15);
  border-radius:14px;
  padding:10px;
  color:#e8f3ff;
  font-size:12.5px;
  line-height:1.55;
  text-align:center;
}
.android-capability-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-bottom:14px;
}
.android-capability{
  display:grid;
  grid-template-columns:28px 1fr;
  gap:8px;
  align-items:center;
  border:1px solid rgba(255,255,255,.08);
  border-radius:13px;
  padding:9px 10px;
  background:rgba(0,0,0,.13);
}
.android-capability span{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border-radius:999px;
  font-weight:900;
}
.android-capability strong{font-size:12px;line-height:1.45}
.android-capability.ok span{background:rgba(39,211,143,.14);color:#d8fff0}
.android-capability.fail span{background:rgba(255,112,112,.14);color:#ffd8d8}
.android-obd-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
.android-obd-actions .btn{
  min-height:48px;
  height:auto;
  padding:10px 12px;
  font-size:13px;
  line-height:1.3;
  white-space:normal;
}
.android-obd-actions .btn:disabled{
  opacity:.42;
  cursor:not-allowed;
  filter:grayscale(.35);
}
.danger-soft{
  border-color:rgba(255,112,112,.22) !important;
  color:#ffd8d8 !important;
  background:rgba(255,112,112,.07) !important;
}
.android-obd-runtime{
  margin-top:12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.16);
  border-radius:15px;
  padding:11px 12px;
  display:flex;
  flex-wrap:wrap;
  gap:7px 12px;
  align-items:center;
  color:#dce8f8;
  font-size:12.5px;
}
.android-obd-runtime strong{color:#fff}
.android-obd-runtime span{
  border-inline-start:1px solid rgba(255,255,255,.10);
  padding-inline-start:10px;
}
.android-obd-runtime small{width:100%;color:var(--muted);line-height:1.55}
.android-obd-runtime .android-error{color:#ffb8b8}
.android-physical-note{
  margin:12px 0 0;
  border:1px solid rgba(255,189,89,.17);
  background:rgba(255,189,89,.055);
  color:#ffdfac;
  border-radius:14px;
  padding:10px 12px;
  font-size:12px;
  line-height:1.65;
}
.android-test-result{
  margin-top:12px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:16px;
  padding:12px;
  display:grid;
  gap:9px;
}
.android-test-result.good{background:rgba(39,211,143,.075)}
.android-test-result.medium{background:rgba(255,189,89,.075)}
.android-test-result.bad{background:rgba(255,112,112,.075)}
.android-test-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}
.android-test-head .btn{min-height:38px;height:38px;padding:7px 10px;font-size:12px}
.android-test-meter{
  height:8px;
  background:rgba(255,255,255,.08);
  border-radius:999px;
  overflow:hidden;
}
.android-test-meter span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#1495ff,#27d38f);
}
.android-test-checks{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.android-test-checks em{
  font-style:normal;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  padding:6px 8px;
  color:#e8f3ff;
  font-size:11.5px;
}
.scan-mode-button{
  height:auto !important;
  min-height:62px !important;
  display:grid !important;
  place-items:center !important;
  gap:4px !important;
  white-space:normal !important;
}
.scan-mode-button strong{font-size:15px}
.scan-mode-button small{font-size:11.5px;line-height:1.4;opacity:.86}
.scan-meta-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:10px 0;
}
.scan-meta-grid span{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.14);
  border-radius:12px;
  padding:9px;
  color:#e8f3ff;
  font-size:12px;
}
.scan-meta-grid b{display:block;color:var(--muted);font-size:10.5px;margin-bottom:3px}

@media(max-width:760px){
  .android-main-methods{grid-template-columns:1fr !important}
  .android-obd-steps,
  .android-capability-grid,
  .android-obd-actions,
  .scan-meta-grid{grid-template-columns:1fr}
  .android-obd-head{display:block !important}
  .android-obd-head > span{display:inline-block;margin-top:9px;white-space:normal}
  .android-test-head{display:block}
  .android-test-head .btn{width:100%;margin-top:8px}
  .android-obd-runtime{display:grid}
  .android-obd-runtime span{border:0;padding:0}
}
.dtc-status-label{
  display:inline-flex !important;
  margin:3px 0 5px !important;
  border:1px solid rgba(112,171,255,.17);
  background:rgba(31,162,255,.06);
  color:#cfe8ff !important;
  border-radius:999px;
  padding:4px 7px;
  font-size:10.5px !important;
  line-height:1 !important;
}
