.guided-calibration { border-left: 3px solid var(--orange); }
.guided-calibration p { margin: 4px 0; }
.guided-calibration button { margin: 4px 6px 4px 0; }
.guided-candidates { display: flex; flex-wrap: wrap; gap: 6px; }
.guided-candidates button { margin: 0; }
.guided-calibration-focus { position:absolute; z-index:7; width:220px; padding:9px 10px; border:2px solid #1685f6; border-radius:8px; background:rgba(255,255,255,.97); color:#173c62; box-shadow:0 7px 20px rgba(11,62,112,.2); transform:translateY(-50%); pointer-events:auto; animation:guided-calibration-pulse 1.8s ease-in-out infinite; }
.guided-calibration-focus.hidden { display:none; }
.guided-calibration-focus.fallback { transform:translateX(-50%); border-style:dashed; }
.guided-calibration-focus.complete { border-color:#14a15c; animation:none; }
.guided-calibration-cursor { position:absolute; left:-19px; top:42%; color:#1685f6; font-size:22px; filter:drop-shadow(0 2px 2px rgba(0,0,0,.18)); }
.guided-calibration-focus strong,.guided-calibration-focus > span:not(.guided-calibration-cursor) { display:block; }
.guided-calibration-focus strong { font-size:12px; }
#guided-calibration-instruction { margin-top:3px; font-size:10px; line-height:1.35; }
#guided-calibration-confirmation { color:#075fc7; font-size:10px; font-weight:700; }
#guided-calibration-position { margin-top:3px; color:#61788f; font-size:9px; }
.guided-calibration-focus-actions { display:flex; gap:4px; margin-top:6px; }
.guided-calibration-focus-actions button { padding:4px 6px; font-size:9px; }
@keyframes guided-calibration-pulse { 50% { box-shadow:0 0 0 6px rgba(22,133,246,.13),0 7px 20px rgba(11,62,112,.2); } }
.guided-calibration-marker { position:absolute; z-index:6; width:24px; height:24px; margin:-12px 0 0 -12px; border:3px solid #f02b3a; border-radius:50%; background:rgba(240,43,58,.12); pointer-events:none; animation:guided-target-pulse 1.15s ease-out infinite; }
.guided-calibration-marker.hidden { display:none; }
@keyframes guided-target-pulse { 0% { box-shadow:0 0 0 0 rgba(240,43,58,.55); transform:scale(.8); } 70% { box-shadow:0 0 0 14px rgba(240,43,58,0); transform:scale(1.08); } 100% { box-shadow:0 0 0 0 rgba(240,43,58,0); transform:scale(.8); } }
@media (max-width:1500px) { .guided-calibration-focus { width:190px; padding:7px 8px; } }
.guided-calibration-focus-actions { flex-wrap:wrap; }
.guided-micro-demo { margin:8px 0; padding:9px; border:1px solid #90bfff; border-radius:7px; background:#edf6ff; color:#183e64; }
.guided-micro-demo.hidden { display:none; }
.guided-demo-heading,.guided-demo-controls { display:flex; align-items:center; justify-content:space-between; gap:6px; }
.guided-demo-heading button { padding:1px 7px; }
.guided-micro-demo p { margin:5px 0; font-size:10px; line-height:1.4; }
#guided-demo-step { font-weight:700; color:#075fc7; }
.guided-demo-disclaimer { color:#526d85; }
.guided-demo-controls button { font-size:10px; padding:4px 7px; }
.guided-demo-illustration { position:relative; height:66px; width:100%; max-width:270px; margin:0 auto; pointer-events:none; overflow:hidden; }
.guided-demo-illustration[hidden] { display:none; }
.guided-demo-point { position:absolute; top:12px; width:22px; height:22px; border:1px solid #6584a3; border-radius:50%; background:white; text-align:center; line-height:22px; }
.guided-demo-point.first { left:12%; } .guided-demo-point.second { left:78%; }
.guided-demo-line { position:absolute; top:23px; left:17%; width:66%; border-top:2px dashed #1685f6; transform:scaleX(0); transform-origin:left; transition:transform 1.1s ease; }
.guided-demo-ghost { position:absolute; top:20px; left:12%; color:#006be6; opacity:.65; font-size:27px; text-shadow:1px 1px white; transition:left 1.1s ease; animation:guided-ghost-arrive 1s ease; }
.guided-demo-ripple { position:absolute; top:11px; left:12%; width:24px; height:24px; border:2px solid #1685f6; border-radius:50%; animation:guided-demo-ripple 2s ease-out infinite; }
.guided-demo-distance { position:absolute; top:45px; left:28%; padding:2px 5px; font-size:10px; border:1px solid transparent; border-radius:4px; }
[data-phase="second"] .guided-demo-line,[data-phase="distance"] .guided-demo-line { transform:scaleX(1); }
[data-phase="second"] .guided-demo-ghost,[data-phase="distance"] .guided-demo-ghost,[data-phase="second"] .guided-demo-ripple { left:78%; }
[data-phase="distance"] .guided-demo-ghost,[data-phase="distance"] .guided-demo-ripple { visibility:hidden; }
[data-phase="distance"] .guided-demo-distance,.guided-demo-distance-highlight { border-color:#1685f6; box-shadow:0 0 0 3px #1685f630; }
@keyframes guided-ghost-arrive { from { transform:translate(-25px,-15px); opacity:0; } to { transform:translate(0,0); opacity:.65; } }
@keyframes guided-demo-ripple { 0%,50% { transform:scale(.7); opacity:0; } 60% { opacity:.7; } 100% { transform:scale(1.8); opacity:0; } }
@media (prefers-reduced-motion:reduce) { .guided-demo-ghost,.guided-demo-ripple { animation:none; } .guided-demo-line,.guided-demo-ghost { transition:none; } }
