:root {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #172033;
  background: #eef2f7;
  font-synthesis: none;
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; }
button, input { font: inherit; }
.app-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(360px, 430px) 1fr; }
.sidebar { padding: 22px; overflow-y: auto; background: #f7f9fc; border-right: 1px solid #dfe5ee; }
.brand { display: flex; gap: 12px; align-items: center; margin-bottom: 18px; }
.brand-mark { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; background: #172033; color: white; font-weight: 800; }
.brand strong, .brand span { display: flex; }
.brand span { margin-top: 2px; font-size: 12px; color: whitesmoke; justify-content: center; }
.panel { background: white; border: 1px solid #e0e6ef; border-radius: 16px; box-shadow: 0 8px 30px rgba(31, 43, 68, .05); }
.form-panel { padding: 18px; margin: 0.5rem 0 0.5rem 0; }
#optimize-form { overflow: hidden; }
#optimize-form input,#optimize-form select,#optimize-form textarea,#optimize-form button { max-width: 100%; }
.section-title { font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: #7b8799; margin: 2px 0 10px; font-weight: 700; }
.section-title:not(:first-child) { margin-top: 18px; }
.grid.two { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
label { display: grid; gap: 6px; color: #596579; font-size: 12px; font-weight: 600; }
input[type="number"] { width: 100%; border: 1px solid #d9e0ea; border-radius: 10px; padding: 10px; color: #172033; background: #fbfcfe; }
input:focus { outline: 2px solid #90a9d2; outline-offset: 1px; border-color: transparent; }
.value-time-label { margin-top: 18px; grid-template-columns: 1fr auto; align-items: end; }
.value-time-label strong { color: #172033; font-size: 15px; }
input[type="range"] { width: 100%; margin-top: 10px; }
.range-hints { display: flex; justify-content: space-between; color: #98a2b2; font-size: 11px; margin: 2px 0 14px; }
.primary { width: 100%; border: 0; border-radius: 12px; padding: 12px 16px; font-weight: 800; color: white; background: #172033; cursor: pointer; }
.primary:disabled { opacity: .55; cursor: wait; }
.status { min-height: 18px; margin: 10px 0 0; font-size: 12px; color: #687386; }
.results { display: grid; gap: 10px; margin-top: 14px; }
.route-card { background: white; border: 1px solid #e0e6ef; border-radius: 15px; padding: 15px; cursor: pointer; transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease; }
.route-card:hover { transform: translateY(-1px); box-shadow: 0 8px 24px rgba(31, 43, 68, .07); }
.route-card.active { border-color: #172033; box-shadow: inset 0 0 0 1px #172033; }
.route-top { display: flex; justify-content: space-between; gap: 10px; align-items: flex-start; }
.route-title { font-size: 16px; font-weight: 800; }
.badges { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 6px; }
.badge { padding: 4px 7px; border-radius: 999px; background: #eef2f7; color: #596579; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.badge.recommended { background: #e9f7ef; color: #28784b; }
.route-price { font-size: 19px; font-weight: 850; white-space: nowrap; }
.route-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 14px; }
.metric { background: #f7f9fc; border-radius: 10px; padding: 9px; }
.metric span { display: block; color: #7c8798; font-size: 10px; }
.metric strong { display: block; margin-top: 3px; font-size: 13px; }
.route-delta { margin-top: 11px; padding-top: 10px; border-top: 1px solid #edf0f5; font-size: 12px; color: #596579; }
.warning { padding: 11px 12px; background: #fff7e7; border: 1px solid #f2d59a; border-radius: 12px; color: #7a5610; font-size: 12px; }
.map-area { position: sticky; top: 0; height: 100vh; background: #dfe5ec; }
#map { width: 100%; height: 100%; }
.map-fallback { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; gap: 8px; background: linear-gradient(135deg, #e5eaf1, #cfd8e4); color: #596579; }
.map-fallback strong { color: #172033; font-size: 20px; }
.hidden { display: none !important; }
.map-legend { position: absolute; right: 16px; bottom: 16px; display: flex; gap: 12px; padding: 9px 12px; border-radius: 10px; background: rgba(255,255,255,.92); box-shadow: 0 4px 16px rgba(31,43,68,.15); font-size: 11px; }
.map-legend span { display: flex; align-items: center; gap: 6px; }
.line { width: 22px; height: 4px; border-radius: 4px; display: inline-block; background: #8b97a9; }
.line.recommended { background: #172033; }
@media (max-width: 900px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { border-right: 0; padding: 16px; }
  .map-area { position: relative; height: 48vh; min-height: 360px; grid-row: 1; }
  .sidebar { grid-row: 2; }
}
select, input[type="text"] { width: 100%; border: 1px solid #d9e0ea; border-radius: 10px; padding: 10px; color: #172033; background: #fbfcfe; font: inherit; }
.place-label { margin-bottom: 4px; min-width: 0; }
.place-host { width: 100%; max-width: 100%; min-width: 0; margin-top: 2px; min-height: 46px; overflow: visible; }
.place-host > * { max-width: 100%; min-width: 0; }
.place-input { width: 100%; max-width: 100%; box-sizing: border-box; }
.pac-container { z-index: 10000; border-radius: 8px; box-shadow: 0 14px 32px rgba(20, 30, 48, .16); font-family: inherit; }
gmp-place-autocomplete { display: block; width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; }
gmp-place-autocomplete::part(input) { width: 100%; max-width: 100%; box-sizing: border-box; }
.selected-place { min-height: 17px; margin: 2px 0 11px; color: #7c8798; font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.manual-coordinates { margin-top: 8px; border: 1px dashed #d9e0ea; border-radius: 10px; padding: 8px 10px; color: #687386; font-size: 11px; }
.manual-coordinates summary { cursor: pointer; font-weight: 700; }
.coordinate-grid { margin-top: 10px; }
.vehicle-row { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 8px; margin-top: 0.75rem; }
.auth-session { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 10px; border: 1px solid #e1e7f0; border-radius: 12px; background: #f8fafc; }
.auth-session span,.auth-session strong { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.auth-session span { color: #7c8798; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.auth-session strong { color: #172033; font-size: 13px; }
.vehicle-select-label { min-width: 0; }
.secondary { border: 1px solid #cad3df; border-radius: 10px; padding: 9px 12px; color: #26344b; background: #f8fafc; font-weight: 750; cursor: pointer; }
.secondary:hover { background: #eef2f7; }
.secondary.compact { white-space: nowrap; height: 39px; }
.vehicle-form { display: grid; grid-template-columns: 1.25fr .75fr auto; gap: 8px; align-items: end; margin-top: 9px; padding: 10px; background: #f7f9fc; border-radius: 12px; }
.vehicle-form .secondary { height: 39px; }
@media (max-width: 520px) {
  .vehicle-form { grid-template-columns: 1fr; }
}
.ev-grid { grid-column: 1 / -1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:10px; border:1px solid #e0e6ef; border-radius:10px; background:#fff; }
.ev-trip { margin-top:14px; }
.panel-soft { padding:12px; border-radius:12px; background:#f3f7fb; border:1px solid #dfe7f1; }
.helper { margin:9px 0 0; font-size:11px; line-height:1.45; color:#7b8799; }
.ev-summary { margin-top:10px; padding:9px 10px; border-radius:10px; background:#eef6ff; color:#35506f; font-size:11px; }
@media (max-width:520px){.ev-grid{grid-template-columns:1fr;}}

.charge-stops{display:grid;gap:8px;margin-top:10px}.charge-stop{background:#fff;border:1px solid #dfe6ef;border-radius:10px;padding:9px 11px;line-height:1.35}.charge-stop span,.charge-stop small{color:#536174}
.savings-panel{padding:16px;margin-bottom:14px;background:linear-gradient(135deg,#172033,#2d405e);color:#fff;border:0}.savings-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.savings-head>div:first-child{display:grid}.eyebrow{font-size:9px;letter-spacing:.14em;opacity:.65;font-weight:800}.savings-head strong{font-size:30px;line-height:1.05;margin-top:5px}.savings-head small{opacity:.7;margin-top:4px}.savings-ring{width:64px;height:64px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:grid;place-content:center;text-align:center}.savings-ring span{font-size:18px;font-weight:850}.savings-ring small{font-size:9px;opacity:.7}.savings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:14px}.savings-grid>div{padding:8px;border-radius:10px;background:rgba(255,255,255,.08)}.savings-grid span,.savings-grid strong{display:block}.savings-grid span{font-size:9px;opacity:.7}.savings-grid strong{font-size:12px;margin-top:3px}.motivation{font-size:11px;line-height:1.45;margin:12px 0 0;color:#dbe5f4}.compact-grid{margin-top:8px;align-items:end}.compact-grid button{height:39px}.advanced-vehicle{grid-template-columns:repeat(2,minmax(0,1fr))}.advanced-vehicle .ev-grid{grid-column:1/-1}.span-all{grid-column:1/-1}.toggle-line{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:9px;padding:9px 10px;border-radius:10px;background:#f7f9fc}.toggle-line input{width:auto}.price-source{margin-top:8px;padding:9px 10px;border-radius:10px;background:#edf5ff;color:#36516f;font-size:11px;line-height:1.4}.provider-strip{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border:1px solid #dfe6ef;border-radius:12px;background:#f8fafc;font-size:11px;color:#667387}.provider-strip strong{font-size:12px;color:#172033}.savings-preview{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#eaf7ef;border:1px solid #c9ead5;border-radius:14px;padding:13px;color:#275f3e}.savings-preview>div{display:grid}.savings-preview span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.savings-preview strong{font-size:22px}.savings-preview small{font-size:10px;color:#5b7565}.savings-preview button{white-space:nowrap}@media(max-width:520px){.savings-grid{grid-template-columns:1fr}.advanced-vehicle{grid-template-columns:1fr}.savings-preview{align-items:flex-start;flex-direction:column}.savings-preview button{width:100%}}

.goal-box{margin-top:14px;padding:13px;border-radius:16px;background:rgba(255,255,255,.08)}.goal-box>div:first-child{display:flex;justify-content:space-between;gap:12px}.goal-track{height:8px;background:rgba(255,255,255,.14);border-radius:99px;overflow:hidden;margin:9px 0}.goal-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#2dd4bf,#a3e635);border-radius:99px;transition:width .25s}.goal-actions{display:flex;gap:8px}.goal-actions input{min-width:0}.panel-soft{margin:12px 0;padding:14px;border-radius:16px;background:#f5f7fb;border:1px solid #e6eaf2}
.live-trip-panel{margin-top:14px;padding:16px}.live-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.live-head>div{display:grid;gap:3px}.live-head strong{font-size:17px}.live-head small{font-size:11px;color:#748095;line-height:1.4}.eyebrow.dark{color:#617086;opacity:1}.live-pill{padding:6px 9px;border-radius:999px;background:#eef2f7;color:#536174;font-size:10px;font-weight:850;white-space:nowrap}.live-pill.ok{background:#e8f7ed;color:#247447}.live-pill.warn{background:#fff2d8;color:#8a5b00}.live-pill.bad{background:#feecec;color:#a23838}.live-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.live-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.live-metrics>div{background:#f6f8fb;border-radius:11px;padding:10px}.live-metrics span,.live-metrics strong{display:block}.live-metrics span{font-size:9px;text-transform:uppercase;color:#8993a3;letter-spacing:.05em}.live-metrics strong{margin-top:3px;font-size:14px}.live-variation{margin-top:10px;padding:10px 11px;border-radius:11px;background:#f0f6ff;color:#355475;font-size:11px;line-height:1.45}.reoptimization-card{margin-top:12px;padding:13px;border-radius:13px;background:#172033;color:#fff}.reoptimization-card strong{display:block;font-size:16px;margin-top:4px}.reoptimization-card p{font-size:11px;line-height:1.45;color:#d6e0ef}.reoptimization-card .secondary{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25);color:#fff}.reoptimization-card .primary{background:#fff;color:#172033}.verified-cost{margin-top:12px;border:1px dashed #d8e0ea;border-radius:10px;padding:8px 10px;font-size:11px;color:#687386}.verified-cost label{margin-top:9px}.privacy-note{font-size:10px;line-height:1.45;color:#8a94a4;margin:11px 0 0}@media(max-width:520px){.live-actions{grid-template-columns:1fr}.live-head{flex-direction:column}.live-metrics{grid-template-columns:1fr 1fr}}
.savings-grid{grid-template-columns:repeat(2,1fr)}

.service-performance{margin-top:10px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.service-performance>div{background:#f6f8fb;border-radius:11px;padding:10px}.service-performance span,.service-performance strong{display:block}.service-performance span{font-size:9px;text-transform:uppercase;color:#8993a3}.service-performance strong{font-size:15px;margin-top:3px}.service-performance .performance-counts{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.performance-counts b,.perf{font-size:10px;padding:4px 7px;border-radius:999px;font-style:normal}.fast,.perf.fast{background:#e6f7ed;color:#21734a}.target,.perf.ontarget{background:#e8f0ff;color:#315f9e}.slow,.perf.slow{background:#fff0e8;color:#a1532f}
.trip-timeline{margin-top:14px;border-top:1px solid #edf0f4;padding-top:12px}.timeline-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.timeline-head small{font-size:10px;color:#8993a3}.timeline-track{display:flex;height:12px;overflow:hidden;border-radius:999px;background:#eef1f5;margin:10px 0 12px}.timeline-segment{min-width:3px}.timeline-segment.driving,.timeline-dot.driving{background:#3a77d2}.timeline-segment.refuelling,.timeline-dot.refuelling{background:#d88a25}.timeline-segment.charging,.timeline-dot.charging{background:#29a66a}.timeline-segment.traffic,.timeline-dot.traffic{background:#d44b4b}.timeline-segment.rest,.timeline-dot.rest{background:#8667c7}.timeline-segment.service,.timeline-dot.service{background:#18a2a8}.timeline-segment.unknown,.timeline-dot.unknown{background:#98a1ae}.timeline-list{display:grid;gap:7px}.timeline-row{display:grid;grid-template-columns:10px 1fr auto;gap:9px;align-items:center;padding:7px 8px;border-radius:9px;background:#f8fafc}.timeline-dot{width:9px;height:9px;border-radius:50%}.timeline-row strong,.timeline-row small{display:block}.timeline-row strong{font-size:11px}.timeline-row small{font-size:9px;color:#7c8798;margin-top:2px}@media(max-width:520px){.service-performance{grid-template-columns:1fr 1fr}.service-performance .performance-counts{grid-column:1/-1}}
.multi-stop-panel{margin-top:18px}.multi-stop-panel .live-actions{margin:14px 0}.multi-stop-panel #multi-stop-list{max-height:300px;overflow:auto}

/* v16 multi-experience UI */
body[data-experience="personal"]{--accent:#2563eb;--accent-soft:#eaf2ff;--accent-dark:#153a80}
body[data-experience="delivery"]{--accent:#f97316;--accent-soft:#fff1e8;--accent-dark:#9a3f08}
body[data-experience="sales"]{--accent:#7c3aed;--accent-soft:#f2ebff;--accent-dark:#4d258e}
body[data-experience="transport"]{--accent:#0f766e;--accent-soft:#e7f6f3;--accent-dark:#124e49}
body[data-experience="fleet"]{--accent:#111827;--accent-soft:#edf0f4;--accent-dark:#111827}
.mode-hidden{display:none!important}.experience-panel{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0 0 12px}.experience-option{border:1px solid #dde4ee;background:#fff;border-radius:13px;padding:9px 6px;display:grid;place-items:center;gap:4px;cursor:pointer;color:#576274}.experience-option b{font-size:18px}.experience-option span{font-size:9px;font-weight:800;text-align:center}.experience-option small{display:none}.experience-option.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-dark);box-shadow:inset 0 0 0 1px var(--accent)}.experience-hero{border-radius:18px;padding:18px;margin-bottom:14px;background:linear-gradient(135deg,var(--accent-dark),var(--accent));color:#fff;box-shadow:0 14px 32px rgba(31,43,68,.14)}.experience-hero strong{display:block;font-size:22px;line-height:1.1;margin:5px 0 7px}.experience-hero p{font-size:11px;line-height:1.5;margin:0;max-width:38em;color:rgba(255,255,255,.82)}.experience-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.experience-actions span{font-size:9px;font-weight:800;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:5px 8px}.primary{background:var(--accent,#172033)}.route-card.active{border-color:var(--accent,#172033);box-shadow:inset 0 0 0 1px var(--accent,#172033)}.brand-mark{background:var(--accent-dark,#172033)}
.recipient-contact-box{margin-top:14px;padding:13px;border-radius:14px;background:var(--accent-soft,#f5f7fb);border:1px solid color-mix(in srgb,var(--accent,#172033) 20%,#e2e8f0)}.ghost{border:0;background:transparent;color:var(--accent-dark,#172033);font-weight:800;cursor:pointer}.fleet-dispatch-panel{margin-top:18px;padding:16px}.dispatch-routes{display:grid;gap:10px;margin-top:12px}.dispatch-route{border:1px solid #e0e6ef;border-radius:14px;padding:13px;background:#fff}.dispatch-route .route-top strong{font-size:15px}.dispatch-metrics{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.dispatch-metrics span{font-size:9px;padding:5px 7px;border-radius:999px;background:#f0f3f7;color:#58677b;font-weight:700}.dispatch-visits{display:grid;gap:5px;margin-top:10px}.dispatch-visits span{font-size:10px;padding:6px 8px;border-radius:8px;background:#f8fafc;color:#556275}.dispatch-warning{border-color:#efb366;background:#fffaf4}.window-violation{background:#fff0e8!important;color:#9d4c20!important}.visit-confirmed{border-left:3px solid #2ea66c}.visit-unavailable{opacity:.55;border-left:3px solid #d24d4d}.visit-neighbor,.visit-safeplace{border-left:3px solid #6b72c9}.ok-text{color:#23744b;font-weight:800}.warn-text{color:#a05b1a;font-weight:800}.capacity-field{transition:opacity .2s}.live-pill,.badge.recommended{background:var(--accent-soft,#e9f7ef);color:var(--accent-dark,#28784b)}
body[data-experience="personal"] #organization-panel,body[data-experience="personal"] #fleet-dispatch-panel,body[data-experience="personal"] #multi-stop-panel{display:none!important}body[data-experience="fleet"] #live-trip-panel{display:none!important}body[data-experience="sales"] #recipient-contact-box,body[data-experience="sales"] #fleet-dispatch-panel{display:none!important}
body[data-experience="fleet"] .map-legend:before{content:'Control de flota';font-weight:800;margin-right:4px}body[data-experience="delivery"] .map-legend:before{content:'Jornada';font-weight:800;margin-right:4px}body[data-experience="transport"] .map-legend:before{content:'Expedición';font-weight:800;margin-right:4px}
@media(max-width:520px){.experience-panel{grid-template-columns:repeat(3,1fr)}.experience-hero strong{font-size:19px}.dispatch-metrics{gap:5px}}
.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.module-chip{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #d9deea;border-radius:10px;background:#f8fafc;font-size:12px}.module-chip input{width:auto}.subscription-cost{display:flex;justify-content:space-between;gap:12px;margin-top:8px;padding:10px;border-radius:10px;background:#f3f6fb}.subscription-cost strong{font-size:14px}

.operational-summary{margin-top:10px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.operational-summary>div{background:#f7f8fb;border:1px solid #edf0f4;border-radius:11px;padding:10px}.operational-summary span,.operational-summary strong{display:block}.operational-summary span{font-size:9px;text-transform:uppercase;color:#8993a3}.operational-summary strong{font-size:14px;margin-top:3px}.timeline-dot.warning,.timeline-segment.warning{background:#e36a3d}.timeline-dot.savings,.timeline-segment.savings{background:#20a464}.timeline-dot.decision,.timeline-segment.decision{background:#7367d9}.timeline-dot.milestone,.timeline-segment.milestone{background:#222b38}.timeline-dot.event,.timeline-segment.event{background:#697386}@media(max-width:700px){.operational-summary{grid-template-columns:1fr 1fr}}
.navigation-box{margin:.9rem 0;padding:.9rem;border:1px solid rgba(23,32,51,.12);border-radius:14px;background:rgba(255,255,255,.72)}
.navigation-row{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:.75rem;align-items:end}.navigation-row label{display:grid;gap:.35rem}.navigation-row select{width:100%}@media(max-width:680px){.navigation-row{grid-template-columns:1fr}.navigation-row button{width:100%}}


/* v32 · Trust & progressive disclosure */
.trust-panel{display:grid;gap:14px;padding:16px;border:1px solid rgba(75,106,255,.15);background:linear-gradient(160deg,#fff 0%,#f7f9ff 100%)}
.trust-head,.trust-ledger-head,.trust-health-card,.trust-score-row{display:flex;align-items:center;justify-content:space-between;gap:14px}
.trust-head>div,.trust-ledger-head>div,.trust-health-card>div{display:grid;gap:6px;min-width:0}
.trust-head .eyebrow{display:inline-flex;width:max-content;padding:4px 7px;border-radius:999px;background:#eef3ff;color:#4058a8;opacity:1}
.trust-head strong,.trust-ledger-head strong,.trust-health-card strong{display:block;font-size:1rem;line-height:1.25;color:#172033}
.trust-head small,.trust-ledger-head small,.trust-health-card small,.trust-trip-card small{display:block;color:#647085;line-height:1.45}
.trust-badge{display:inline-flex;align-items:center;justify-content:center;min-width:78px;padding:8px 12px;border-radius:999px;font-weight:800;font-size:.78rem;white-space:nowrap}
.trust-badge.high,.health-healthy{background:#e8f8ef;color:#147a42}.trust-badge.medium,.health-watch{background:#fff5da;color:#916400}.trust-badge.low,.health-review{background:#ffebea;color:#a52a2a}.trust-badge.neutral{background:#edf0f5;color:#596273}
.trust-health-card,.trust-trip-card,.trust-ledger{padding:14px;border-radius:14px;background:#fff;border:1px solid #e7eaf1;box-shadow:0 8px 20px rgba(31,43,68,.04)}
.trust-score-row span{display:inline-flex;align-items:center;padding:5px 8px;border-radius:8px;background:#f3f6fb;color:#66738a;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.trust-score-row strong{font-size:1.05rem;color:#172033;text-align:right}
.trust-track{height:9px;border-radius:999px;background:#e8ecf4;overflow:hidden;margin:10px 0}.trust-track span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#e86d52,#e8b04b,#2fa66a);transition:width .25s ease}
.trust-details{margin-top:12px}.trust-details summary{cursor:pointer;font-weight:800;color:#32405a;padding:8px 9px;border-radius:9px;background:#f6f8fb}.trust-evidence-list{display:grid;gap:8px;margin-top:10px}.trust-evidence-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;background:#f6f8fb;font-size:.82rem}.trust-evidence-item span{display:block;min-width:0;line-height:1.35}.trust-evidence-item span:first-child{color:#68748a;font-weight:700}.trust-evidence-item span:last-child{text-align:right;font-weight:800;color:#172033}
.audit-ledger-list{display:grid;gap:8px;margin-top:10px}.audit-ledger-row{display:grid;grid-template-columns:minmax(0,1.25fr) auto;gap:5px 12px;padding:11px 12px;border-radius:11px;background:#f7f8fb;border:1px solid #edf1f6}.audit-ledger-row strong{font-size:.88rem;line-height:1.3;color:#172033}.audit-ledger-row>span{display:inline-flex;align-items:center;justify-content:flex-end;padding:4px 8px;border-radius:999px;background:#fff;font-weight:800;text-align:right;color:#26344b}.audit-ledger-row small{grid-column:1/-1;color:#68748a;line-height:1.45}.trust-simple-note{display:block;padding:10px 11px;border-radius:10px;background:#f6f8fb;font-size:.8rem;color:#647085}.mode-personal .trust-business-only{display:none!important}
@media(max-width:720px){.trust-head,.trust-health-card,.trust-ledger-head{align-items:flex-start;flex-direction:column}.trust-badge,.trust-health-card button{width:100%}.trust-score-row,.trust-evidence-item,.audit-ledger-row{grid-template-columns:1fr}.trust-score-row strong,.trust-evidence-item span:last-child,.audit-ledger-row>span{text-align:left;justify-content:flex-start}}
.decision-explain-panel{border-left:4px solid var(--accent,#2563eb)}
.decision-alternatives{display:grid;gap:10px;margin-top:12px}
.decision-alt{border:1px solid rgba(148,163,184,.28);border-radius:14px;padding:12px;background:rgba(255,255,255,.65)}
.decision-alt.selected{box-shadow:0 0 0 2px rgba(37,99,235,.25);border-color:rgba(37,99,235,.55)}
.decision-alt-head{display:flex;justify-content:space-between;gap:8px;align-items:center}
.decision-factor{display:grid;grid-template-columns:88px 1fr auto;gap:8px;padding:7px 0;border-top:1px solid rgba(148,163,184,.18);font-size:.88rem}
.decision-level{font-weight:800;font-size:.72rem;letter-spacing:.04em}
.decision-level.hard{color:#b91c1c}.decision-level.softcost{color:#b45309}.decision-level.preference{color:#0369a1}
.governance-permissions{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 14px}.permission-chip{padding:6px 9px;border-radius:999px;background:#eef3f7;font-size:.78rem;font-weight:700}.learning-control-list{display:grid;gap:10px;margin-top:10px}.learning-card{border:1px solid #dbe4ea;border-radius:14px;padding:12px;background:#fff}.learning-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.learning-card strong{display:block}.learning-metrics{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.learning-metrics span{background:#f5f8fa;border-radius:9px;padding:6px 8px;font-size:.8rem}.learning-status{font-weight:800;font-size:.78rem}.learning-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.learning-actions button{padding:7px 10px}.audit-mini{font-size:.82rem;border-left:3px solid #cad6df;padding:8px 10px;background:#f8fafb;border-radius:0 8px 8px 0}


/* Phase 4: explicit connectivity / degraded operation */
.connectivity-panel{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;margin:8px 0 12px;border-radius:14px;border:1px solid rgba(0,0,0,.08);background:#f5f7f7}.connectivity-panel>div{display:grid;grid-template-columns:auto auto;column-gap:7px;align-items:center}.connectivity-panel small{grid-column:2;color:#667;line-height:1.2}.connectivity-dot{width:9px;height:9px;border-radius:50%;background:#2b9b63;box-shadow:0 0 0 4px rgba(43,155,99,.12)}.connectivity-panel.degraded .connectivity-dot{background:#d69a22;box-shadow:0 0 0 4px rgba(214,154,34,.12)}.connectivity-panel.offline .connectivity-dot{background:#c95050;box-shadow:0 0 0 4px rgba(201,80,80,.12)}.connectivity-panel.recovering .connectivity-dot{background:#4278d0;box-shadow:0 0 0 4px rgba(66,120,208,.12)}.connectivity-queue{white-space:nowrap;font-size:.78rem;font-weight:700;padding:5px 7px;border-radius:999px;background:rgba(0,0,0,.06)}
