/* XELORI Rover Configurator — scoped styles */
.xelori-configurator-page { --rc-bg:#07111b; --rc-panel:#0b1926; --rc-panel-2:#102131; --rc-line:rgba(139,185,215,.18); --rc-text:#edf6ff; --rc-muted:#9fb4c7; --rc-cyan:#08b9f4; color:var(--rc-text); }
.xelori-configurator-page .rc-main { width:min(1800px, calc(100% - 32px)); margin:26px auto 56px; }
.rc-page-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin:0 0 22px; }
.rc-page-heading h1 { font-size:clamp(28px,3vw,42px); line-height:1.08; margin:6px 0 8px; color:#f5faff; }
.rc-page-heading p,.rc-section-title p { color:var(--rc-muted); margin:0; }
.rc-eyebrow { color:var(--rc-cyan); font-size:10px; letter-spacing:.16em; font-weight:800; }
.rc-progress { display:flex; align-items:center; gap:10px; color:var(--rc-muted); font-size:12px; white-space:nowrap; }
.rc-progress span { display:flex; align-items:center; gap:7px; }
.rc-progress b { width:30px; height:30px; display:grid; place-items:center; border:1px solid #587186; border-radius:50%; color:#d8e9f5; }
.rc-progress .active b { background:var(--rc-cyan); color:#00121c; border-color:var(--rc-cyan); }
.rc-progress i { display:block; width:35px; height:1px; background:#3b5264; }
.rc-layout { display:grid; grid-template-columns:220px minmax(400px,1fr) 310px; gap:14px; align-items:start; }
.rc-steps,.rc-summary,.rc-viewer-card,.rc-platform,.rc-component,.rc-tech-card,.rc-export-card { border:1px solid var(--rc-line); background:linear-gradient(145deg,rgba(17,36,52,.96),rgba(7,19,30,.98)); border-radius:13px; overflow:hidden; }
.rc-steps { padding:8px; position:sticky; top:12px; }
.rc-step { display:flex; align-items:center; gap:11px; width:100%; border:0; border-bottom:1px solid rgba(151,191,216,.1); background:transparent; color:var(--rc-text); text-align:left; padding:13px 9px; cursor:pointer; }
.rc-step:last-child { border-bottom:0; }
.rc-step>b { flex:0 0 34px; width:34px; height:34px; display:grid; place-items:center; border-radius:50%; border:1px solid #37546b; color:#cce2f1; }
.rc-step strong,.rc-step small { display:block; }
.rc-step strong { font-size:12px; font-weight:700; }
.rc-step small { color:var(--rc-muted); font-size:10px; margin-top:4px; }
.rc-step.active { border-radius:9px; background:rgba(0,181,245,.12); box-shadow:inset 3px 0 var(--rc-cyan); }
.rc-step.active>b { background:var(--rc-cyan); color:#00121b; border-color:var(--rc-cyan); }
.rc-workspace { min-width:0; }
.rc-viewer-card { margin-bottom:19px; }
.rc-viewer-toolbar { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:12px 14px; border-bottom:1px solid var(--rc-line); font-size:10px; letter-spacing:.09em; font-weight:800; }
.rc-viewer-toolbar small { display:block; margin:4px 0 0 14px; font-weight:400; letter-spacing:0; color:var(--rc-muted); }
.rc-live-dot { display:inline-block; width:7px; height:7px; background:#19d5a0; border-radius:50%; margin-right:7px; box-shadow:0 0 10px #19d5a0; }
.rc-view-tabs { display:flex; gap:5px; }
.rc-view-tabs button,.rc-canvas-controls button { background:#0b1b28; color:#c7d8e6; border:1px solid var(--rc-line); border-radius:7px; padding:7px 10px; cursor:pointer; font-size:11px; }
.rc-view-tabs button.selected { border-color:var(--rc-cyan); color:var(--rc-cyan); }
.rc-canvas-wrap { position:relative; height:clamp(340px,38vw,540px); min-height:320px; background:radial-gradient(ellipse at 50% 70%,#20394a 0,#0c1c29 48%,#06111b 100%); overflow:hidden; }
#rc-rover-canvas { display:block; width:100%; height:100%; }
.rc-canvas-label { position:absolute; left:18px; bottom:17px; display:flex; flex-direction:column; gap:5px; pointer-events:none; }
.rc-canvas-label strong { font-size:15px; text-shadow:0 2px 10px #000; }
.rc-canvas-label span { font-size:11px; color:#a8bfd0; }
.rc-canvas-controls { position:absolute; right:12px; top:12px; display:flex; flex-direction:column; gap:5px; }
.rc-canvas-controls button { width:34px; height:34px; font-size:18px; padding:0; background:rgba(5,16,26,.82); }
.rc-canvas-tip { position:absolute; right:12px; bottom:16px; color:#9cb3c5; font-size:10px; pointer-events:none; }
.rc-viewer-bottom { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; padding:12px 15px; background:rgba(4,14,23,.45); }
.rc-viewer-bottom div { display:flex; flex-direction:column; gap:5px; min-width:0; }
.rc-viewer-bottom small { font-size:9px; color:var(--rc-muted); letter-spacing:.1em; }
.rc-viewer-bottom strong { font-size:10px; overflow-wrap:anywhere; }
.rc-ready { color:#30d6a0; }
.rc-section { margin:20px 0 25px; scroll-margin-top:20px; }
.rc-section-title { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-bottom:12px; }
.rc-section-title h2,.rc-tech-card h2,.rc-export-card h2 { font-size:19px; margin:5px 0 5px; color:#f1f7fc; }
.rc-section-title p { font-size:11px; line-height:1.5; }
.rc-platform-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.rc-platform { padding:8px; text-align:left; color:var(--rc-text); cursor:pointer; transition:border-color .18s,transform .18s; }
.rc-platform:hover { transform:translateY(-2px); border-color:#4d829f; }
.rc-platform.selected { border-color:var(--rc-cyan); box-shadow:0 0 0 1px var(--rc-cyan),0 0 20px rgba(0,184,245,.1); }
.rc-platform-art { display:grid; place-items:center; height:90px; margin:-1px -1px 8px; border-radius:8px; background:radial-gradient(ellipse at 50% 75%,#234458,#0a1824 70%); overflow:hidden; }
.rc-platform strong,.rc-platform small,.rc-platform b { display:block; }
.rc-platform strong { font-size:11px; margin:3px 0 5px; }
.rc-platform small { color:var(--rc-muted); font-size:10px; line-height:1.4; min-height:27px; }
.rc-platform b { color:var(--rc-cyan); font-size:12px; margin-top:7px; }
.rc-mini-rover { width:72px; height:28px; border-radius:7px 9px 5px 5px; background:linear-gradient(#4a6374,#172630 65%,#080e14); border:1px solid #71899a; position:relative; box-shadow:0 9px 12px #0008; transform:skewY(-7deg); }
.rc-mini-rover:before { content:""; position:absolute; left:18px; right:12px; top:-12px; height:14px; background:#233c4d; border:1px solid #668093; border-radius:3px; }
.rc-mini-rover:after { content:""; position:absolute; width:9px;height:9px;border-radius:50%;background:#080d12;border:2px solid #8195a2;left:5px;top:22px;box-shadow:52px 0 #080d12,52px 0 0 2px #8195a2; }
.rc-mini-rover.tracks:after { width:70px;height:11px;border-radius:8px;background:#101a21;border:2px solid #647581;left:0;top:18px;box-shadow:none; }
.rc-mini-arm { width:13px;height:52px;background:#435c6c;border-radius:5px;position:relative;transform:rotate(24deg);box-shadow:0 0 0 3px #172631; }
.rc-mini-arm:before,.rc-mini-arm:after { content:"";position:absolute;width:30px;height:9px;background:#6d8796;border:2px solid #172631;border-radius:5px;left:-9px;top:9px;transform:rotate(-48deg); }
.rc-mini-arm:after { top:28px;left:-17px;width:20px;transform:rotate(34deg); }
.rc-mini-station { width:58px;height:40px;background:linear-gradient(#354e5f,#0d1a25);border:2px solid #6b8494;border-radius:6px;position:relative; }
.rc-mini-station:before { content:"";position:absolute;width:18px;height:15px;top:-20px;left:18px;background:#2b4556;border:2px solid #7c95a3;border-radius:4px; }
.rc-component-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.rc-component { display:grid; grid-template-columns:44px minmax(0,1fr); gap:10px; align-items:center; padding:11px; }
.rc-component-icon { height:42px;width:42px;border-radius:9px;display:grid;place-items:center;font-size:22px;background:linear-gradient(135deg,#244458,#101f2b);border:1px solid #3c6075;color:#48c9f5; }
.rc-component-info { min-width:0; }
.rc-component-info strong,.rc-component-info small,.rc-component-info b { display:block; }
.rc-component-info strong { font-size:11px; }
.rc-component-info small { font-size:10px; color:var(--rc-muted); margin:4px 0; line-height:1.35; }
.rc-component-info b { font-size:11px; color:var(--rc-cyan); }
.rc-add-component { grid-column:1/-1; border:1px solid #275b75; background:rgba(0,180,245,.08); color:#72d7ff; border-radius:7px; padding:8px; cursor:pointer; font-size:11px; }
.rc-add-component.added { background:rgba(37,208,153,.1); border-color:#258b70; color:#62e0b6; }
.rc-text-button { background:none;border:0;color:var(--rc-cyan);cursor:pointer;font-size:11px; }
.rc-purpose-options { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px; }
.rc-purpose-options label { position:relative;display:flex;flex-direction:column;gap:6px;padding:13px;border:1px solid var(--rc-line);border-radius:10px;background:var(--rc-panel);cursor:pointer; }
.rc-purpose-options input { position:absolute;right:9px;top:9px;accent-color:var(--rc-cyan); }
.rc-purpose-options label>span { color:var(--rc-cyan);font-size:20px; }
.rc-purpose-options strong { font-size:11px; }
.rc-purpose-options small { color:var(--rc-muted);font-size:10px;line-height:1.4; }
.rc-purpose-options label:has(input:checked) { border-color:var(--rc-cyan);background:rgba(0,180,245,.08); }
.rc-tech-grid { display:grid;grid-template-columns:1fr 1fr;gap:10px; }
.rc-tech-card,.rc-export-card { padding:16px; }
.rc-tech-card dl { margin:12px 0 0; }
.rc-tech-card dl div { display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--rc-line);font-size:11px; }
.rc-tech-card dt { color:var(--rc-muted); }
.rc-tech-card dd { margin:0;text-align:right; }
.rc-disclaimer { color:#91a8b9;font-size:10px;line-height:1.5;margin:12px 0 0; }
.rc-export-card>p { color:var(--rc-muted);font-size:11px;line-height:1.6; }
.rc-export-actions,.rc-summary-actions { display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:13px 0; }
.rc-primary-btn,.rc-secondary-btn { display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;border-radius:8px;padding:12px 10px;font:inherit;font-size:11px;font-weight:700;cursor:pointer; }
.rc-primary-btn { width:100%;border:1px solid #00baf5;background:linear-gradient(100deg,#00a9ed,#0fc6ff);color:#001724;box-shadow:0 7px 18px #00a7e51c; }
.rc-primary-btn span { margin-left:auto; }
.rc-secondary-btn { border:1px solid #34576c;background:#0b1b28;color:#d6e7f4; }
.rc-login-note { color:var(--rc-muted);font-size:10px;line-height:1.5; }
.rc-summary { padding:13px; position:sticky; top:12px; }
.rc-summary-heading { display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--rc-line); }
.rc-summary-heading h2 { font-size:17px;margin:4px 0 0; }
.rc-summary-heading>button { width:36px;height:36px;border:1px solid var(--rc-line);border-radius:8px;background:#102333;color:#d9edf9;cursor:pointer; }
.rc-selected-list { max-height:360px;overflow:auto; }
.rc-selected-item { display:grid;grid-template-columns:42px minmax(0,1fr) auto 24px;gap:8px;align-items:center;padding:11px 0;border-bottom:1px solid rgba(139,185,215,.12); }
.rc-selected-thumb { width:42px;height:42px;border-radius:7px;background:linear-gradient(135deg,#243d4d,#0b1721);display:grid;place-items:center;color:#53cfff;font-size:18px;border:1px solid #35556a; }
.rc-selected-copy { min-width:0; }
.rc-selected-copy strong,.rc-selected-copy small { display:block; }
.rc-selected-copy strong { font-size:10px; }
.rc-selected-copy small { color:var(--rc-muted);font-size:9px;margin-top:4px; }
.rc-selected-price { font-size:10px;white-space:nowrap; }
.rc-remove { border:0;background:transparent;color:#a5bac9;cursor:pointer;font-size:17px; }
.rc-add-more { width:100%;margin:11px 0;padding:9px;border:1px dashed #3c667d;border-radius:8px;background:rgba(13,39,55,.6);color:#9bdfff;cursor:pointer;font-size:11px; }
.rc-price-breakdown { border-top:1px solid var(--rc-line);padding-top:12px; }
.rc-price-breakdown>div { display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin:9px 0;font-size:11px; }
.rc-price-breakdown span { color:var(--rc-muted); }
.rc-price-breakdown strong { text-align:right;font-weight:600; }
.rc-price-breakdown .rc-total { padding-top:10px;border-top:1px solid var(--rc-line);font-size:13px; }
.rc-price-breakdown .rc-total strong { color:var(--rc-cyan);font-size:21px; }
.rc-summary-actions { margin-bottom:8px; }
.rc-summary .rc-login-note { padding-top:5px; }
.rc-notice { min-height:15px;color:#5be2b4;font-size:11px;line-height:1.5; }
.rc-modal[hidden] { display:none!important; }
.rc-modal { position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:20px; }
.rc-modal-backdrop { position:absolute;inset:0;background:#020812d9;backdrop-filter:blur(6px); }
.rc-modal-dialog { position:relative;width:min(100%,460px);padding:28px;border:1px solid #2e607a;border-radius:17px;background:#0b1b29;color:#eff8ff;box-shadow:0 25px 100px #0009; }
.rc-modal-dialog h2 { font-size:24px;margin:9px 0; }
.rc-modal-dialog p,.rc-modal-dialog small { color:var(--rc-muted);font-size:12px;line-height:1.6; }
.rc-modal-close { position:absolute;right:12px;top:10px;border:0;background:transparent;color:#fff;font-size:27px;cursor:pointer; }
.rc-modal-actions { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0; }
@media (max-width:1250px) { .rc-layout{grid-template-columns:190px minmax(0,1fr) 285px;gap:10px}.rc-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rc-purpose-options{grid-template-columns:repeat(2,minmax(0,1fr))}.rc-progress{display:none}.rc-component-grid{grid-template-columns:1fr} }
@media (max-width:900px) { .xelori-configurator-page .rc-main{width:calc(100% - 20px)}.rc-layout{grid-template-columns:1fr}.rc-steps{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.rc-step{border:1px solid var(--rc-line);border-radius:8px;padding:8px 5px;gap:6px}.rc-step>b{width:25px;height:25px;flex-basis:25px;font-size:11px}.rc-step strong{font-size:10px}.rc-step small{display:none}.rc-summary{position:static;grid-row:2}.rc-workspace{grid-row:3}.rc-canvas-wrap{height:420px}.rc-component-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rc-page-heading{display:block}.rc-viewer-bottom{grid-template-columns:repeat(2,1fr)} }
@media (max-width:560px) { .rc-view-tabs button{padding:7px;font-size:10px}.rc-view-tabs button:nth-child(3),.rc-view-tabs button:nth-child(4){display:none}.rc-viewer-toolbar{align-items:flex-start}.rc-canvas-wrap{height:330px;min-height:300px}.rc-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rc-component-grid,.rc-tech-grid{grid-template-columns:1fr}.rc-purpose-options{grid-template-columns:repeat(2,minmax(0,1fr))}.rc-progress{display:none}.rc-page-heading h1{font-size:30px}.rc-steps{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media print { .navbar,.rc-steps,.rc-view-tabs,.rc-canvas-controls,.rc-add-component,.rc-primary-btn,.rc-secondary-btn,.rc-summary-actions,.rc-modal,.footer{display:none!important}.rc-layout{display:block}.rc-summary{position:static}.rc-canvas-wrap{height:360px}.xelori-configurator-page{background:#fff;color:#111}.rc-section,.rc-summary,.rc-tech-card,.rc-export-card{break-inside:avoid} }
