/* Bahari design system. Ported from layout_base/kaskazi_coast_transfers_ops_demo_v2.html.
   Tokens live in :root; components are plain classes layered over Fomantic UI. */
    :root {
      --ink:#082028;
      --deep:#082028;
      --deep2:#183f45;
      --sea:#2e575b;
      --sea2:#4d7677;
      --sea-soft:#dfe6e2;
      --coral:#ef7a65;
      --coral-dark:#d96552;
      --sand:#eeebe0;
      --sand2:#f6f2e7;
      --paper:#eeebe0;
      --white:#fffdf7;
      --muted:#617170;
      --muted2:#899491;
      --line:rgba(16,39,39,.12);
      --line-strong:rgba(16,39,39,.19);
      --green:#2f9b78;
      --amber:#c98b34;
      --shadow:0 24px 80px rgba(7,39,40,.14);
      --shadow-sm:0 12px 36px rgba(7,39,40,.10);
      --r-xl:30px;
      --r-lg:22px;
      --r-md:15px;
      --max:1200px;
    }

    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body {
      margin:0;
      font-family:"DM Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      color:var(--ink);
      background:var(--paper);
      -webkit-font-smoothing:antialiased;
      text-rendering:optimizeLegibility;
      overflow-x:hidden;
    }
    body.view-lock { overflow:hidden; }
    h1,h2,h3,h4,.brand-word { font-family:"Manrope",system-ui,sans-serif; letter-spacing:-.035em; }
    a { color:inherit; }
    img { max-width:100%; display:block; }
    button,input,select { font:inherit; }
    .shell { width:min(calc(100% - 32px),var(--max)); margin:0 auto; }
    .section { padding:100px 0; }
    .section.compact { padding:72px 0; }
    .hidden { display:none !important; }

    /* Fomantic tailoring */
    .ui.button {
      border-radius:999px;
      font-family:"DM Sans",sans-serif;
      font-weight:800;
      box-shadow:none !important;
      transition:transform .18s ease,background .18s ease,box-shadow .18s ease;
    }
    .ui.button:hover { transform:translateY(-1px); }
    .ui.primary.button,.ui.primary.buttons .button { background:var(--coral)!important; color:#fff!important; }
    .ui.primary.button:hover { background:var(--coral-dark)!important; }
    .ui.teal.button { background:var(--deep)!important; }
    .ui.basic.button.brand-basic { color:var(--deep)!important; background:rgba(255,255,255,.82)!important; box-shadow:0 0 0 1px var(--line-strong) inset!important; }
    .ui.form .field>label { color:var(--deep); font-size:.76rem; text-transform:uppercase; letter-spacing:.075em; font-weight:800; margin-bottom:8px; }
    .ui.form input,.ui.form select,.ui.selection.dropdown { min-height:50px; border-radius:12px!important; border-color:rgba(8,47,48,.15)!important; }
    .ui.selection.dropdown { padding-top:15px; }
    .ui.form input:focus,.ui.selection.active.dropdown { border-color:var(--sea)!important; }
    .ui.checkbox label { color:var(--ink)!important; }
    .ui.label { border-radius:999px; }
    .ui.modal { border-radius:22px!important; overflow:hidden; }

    /* global badges */
    .eyebrow {
      display:inline-flex; align-items:center; gap:8px;
      font-weight:800; text-transform:uppercase; letter-spacing:.11em;
      font-size:.72rem; color:var(--deep); background:var(--sea-soft);
      padding:9px 12px; border-radius:999px;
    }
    .micro-badge {
      display:inline-flex; align-items:center; gap:7px; padding:7px 10px;
      border-radius:999px; background:var(--sea-soft); color:var(--deep);
      font-size:.74rem; font-weight:800;
    }
    .section-head { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:end; margin-bottom:44px; }
    .section-title { margin:14px 0 0; font-size:clamp(2.3rem,4.5vw,4.7rem); line-height:1; color:var(--deep); }
    .section-lead { color:var(--muted); font-size:1.08rem; line-height:1.75; margin:0; max-width:610px; }

    /* nav */
    .topbar {
      position:fixed; z-index:1200; inset:0 0 auto 0; padding:14px 0;
      transition:.2s ease; color:#fff;
    }
    .topbar.scrolled,.topbar.solid { background:rgba(251,248,241,.96); color:var(--deep); backdrop-filter:blur(14px); box-shadow:0 1px 0 var(--line); padding:10px 0; }
    .nav-row { display:flex; align-items:center; justify-content:space-between; gap:28px; }
    .brand { display:inline-flex; align-items:center; gap:11px; text-decoration:none; color:inherit; }
    .brand-badge { width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--coral);color:#fff;font-weight:900;box-shadow:0 8px 22px rgba(239,118,87,.25); }
    .brand-word { font-weight:800; line-height:1; }
    .brand-word small { display:block; font-family:"DM Sans"; font-size:.55rem; letter-spacing:.12em; text-transform:uppercase; margin-top:5px; font-weight:800; opacity:.7; }
    .nav-links { display:flex;align-items:center;gap:26px;font-weight:700;font-size:.9rem; }
    .nav-links a { text-decoration:none; opacity:.84; }
    .nav-links a:hover { opacity:1; }
    .nav-actions { display:flex;align-items:center;gap:9px; }
    .mobile-toggle { display:none!important; }
    .mobile-panel { position:fixed; top:72px; left:16px; right:16px; z-index:1190; padding:10px; background:#fff; border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow); opacity:0; visibility:hidden; transform:translateY(-10px); transition:.2s ease; }
    .mobile-panel.open { opacity:1; visibility:visible; transform:none; }
    .mobile-panel a { display:block; text-decoration:none; padding:14px 12px; font-weight:800; border-bottom:1px solid var(--line); }
    .mobile-panel .ui.button { width:100%; margin-top:10px; }

    /* route views */
    .app-view { display:none; }
    .app-view.active { display:block; }
    .internal-view { min-height:100vh; background:#f7f5ef; padding:105px 0 70px; }

    /* hero */
    .hero {
      min-height:790px; display:flex;align-items:center;color:#fff;position:relative;isolation:isolate;
      background:
        linear-gradient(90deg,rgba(4,31,32,.95) 0%,rgba(4,31,32,.78) 48%,rgba(4,31,32,.26) 100%),
        url('https://images.unsplash.com/photo-1691161510065-298039a5b51b?auto=format&fit=crop&fm=jpg&q=84&w=2200') center/cover no-repeat;
    }
    .hero:before { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(circle at 73% 42%,rgba(255,255,255,.07),transparent 28%); }
    .hero-content { width:100%; padding:118px 0 74px; }
    .hero-grid { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr); gap:70px; align-items:center; }
    .hero .eyebrow { color:#fff; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.15); backdrop-filter:blur(10px); }
    .hero h1 { color:#fff; font-size:clamp(3.35rem,6.1vw,6.65rem); line-height:.91; margin:20px 0 24px; max-width:760px; }
    .hero h1 span { color:var(--sand); }
    .hero-copy { color:rgba(255,255,255,.82); font-size:clamp(1.05rem,1.55vw,1.24rem); line-height:1.7; max-width:690px; margin:0 0 28px; }
    .hero-benefits { display:flex; flex-wrap:wrap; gap:9px; }
    .hero-benefit { display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);font-size:.84rem;font-weight:700;color:rgba(255,255,255,.92);backdrop-filter:blur(8px); }

    .search-card { background:rgba(255,255,255,.985); color:var(--ink); border-radius:var(--r-xl); padding:26px; box-shadow:0 30px 90px rgba(0,0,0,.28); }
    .search-card h3 { color:var(--deep); font-size:1.55rem; margin:5px 0 5px; }
    .search-card>p { color:var(--muted); line-height:1.55; margin:0 0 20px; font-size:.92rem; }
    .search-card .ui.form .fields { margin-bottom:0; }
    .search-cta { width:100%; margin-top:5px!important; min-height:50px; }
    .search-foot { display:flex; justify-content:space-between; gap:12px; margin-top:13px; color:var(--muted); font-size:.77rem; }
    .search-foot span { display:flex;align-items:center;gap:5px; }

    /* anxiety strip */
    .certainty-strip { background:var(--deep); color:#fff; padding:20px 0; }
    .certainty-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:18px; }
    .certainty-item { display:flex;gap:11px;align-items:center;color:rgba(255,255,255,.73);font-size:.88rem; }
    .certainty-item i.icon { color:var(--sand); margin:0; font-size:1.1rem; }
    .certainty-item strong { display:block;color:#fff;font-size:.88rem;margin-bottom:1px; }

    /* friction pitch */
    .problem-grid { display:grid;grid-template-columns:.9fr 1.1fr;gap:68px;align-items:center; }
    .problem-copy h2 { font-size:clamp(2.5rem,4.6vw,4.8rem);line-height:1.02;margin:16px 0 22px;color:var(--deep); }
    .problem-copy p { color:var(--muted);font-size:1.08rem;line-height:1.75; }
    .problem-list { display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px; }
    .problem-chip { background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;align-items:flex-start;gap:10px;font-weight:700;color:var(--deep); }
    .problem-chip i { color:var(--sea); margin-top:2px; }

    .phone-mock { background:#092d2f;border-radius:36px;padding:10px;max-width:420px;margin:0 auto;box-shadow:0 34px 90px rgba(7,39,40,.22); }
    .phone-screen { background:#fbfaf5;border-radius:28px;overflow:hidden; }
    .phone-top { background:var(--deep);color:#fff;padding:22px 20px 18px; }
    .phone-top .tiny { font-size:.72rem;opacity:.65;text-transform:uppercase;letter-spacing:.09em;font-weight:800; }
    .phone-top h3 { color:#fff;margin:5px 0 0;font-size:1.35rem; }
    .phone-body { padding:18px; }
    .status-banner { background:var(--sea-soft);border-radius:16px;padding:15px;display:flex;gap:11px;align-items:flex-start; }
    .status-dot { width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(47,155,120,.13);margin-top:5px;flex:0 0 auto; }
    .status-banner strong { display:block;color:var(--deep); }
    .status-banner p { margin:4px 0 0;color:var(--muted);font-size:.82rem;line-height:1.45; }
    .driver-mini { margin-top:14px;border:1px solid var(--line);border-radius:16px;padding:14px;display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:center;background:#fff; }
    .driver-avatar { width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--sand),var(--coral));display:grid;place-items:center;font-family:Manrope;font-weight:800;color:var(--deep); }
    .driver-mini h4 { margin:0 0 2px;font-size:1rem;color:var(--deep); }
    .driver-mini p { margin:0;color:var(--muted);font-size:.77rem; }
    .eta-pill { font-size:.75rem;font-weight:800;background:var(--sand2);padding:7px 9px;border-radius:999px;color:var(--deep); }
    .meeting-mini { margin-top:14px;border-radius:16px;overflow:hidden;background:#e5ece8;min-height:150px;position:relative; }
    .meeting-mini:before,.meeting-map:before { content:"";position:absolute;inset:0;background:linear-gradient(26deg,transparent 46%,rgba(8,47,48,.13) 46% 49%,transparent 49%),linear-gradient(108deg,transparent 55%,rgba(8,47,48,.12) 55% 58%,transparent 58%); }
    .map-pin { position:absolute;left:58%;top:42%;width:38px;height:38px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--coral);box-shadow:0 10px 22px rgba(0,0,0,.2); }
    .map-pin:after { content:"";position:absolute;width:12px;height:12px;background:#fff;border-radius:50%;left:13px;top:13px; }
    .meeting-label { position:absolute;left:14px;bottom:14px;background:rgba(255,255,255,.93);padding:9px 11px;border-radius:12px;font-weight:800;font-size:.77rem;box-shadow:var(--shadow-sm); }
    .phone-actions { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px; }

    /* experience cards */
    .experience-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:18px; }
    .experience-card { background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:25px;min-height:265px;display:flex;flex-direction:column;justify-content:space-between; }
    .experience-icon { width:50px;height:50px;border-radius:15px;background:var(--sea-soft);display:grid;place-items:center;color:var(--deep);font-size:1.1rem; }
    .experience-card h3 { font-size:1.35rem;margin:22px 0 8px;color:var(--deep); }
    .experience-card p { margin:0;color:var(--muted);line-height:1.65; }
    .experience-proof { border-top:1px solid var(--line);margin-top:22px;padding-top:15px;color:var(--deep);font-size:.81rem;font-weight:800; }

    /* lifecycle */
    .journey-section { background:#f3ead8; }
    .journey-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:12px; }
    .journey-card { position:relative;background:#fff;border-radius:20px;padding:24px;min-height:235px;border:1px solid rgba(8,47,48,.08); }
    .journey-number { color:var(--coral);font-family:Manrope;font-weight:800;font-size:2rem; }
    .journey-card h3 { color:var(--deep);margin:30px 0 8px;font-size:1.15rem; }
    .journey-card p { color:var(--muted);line-height:1.58;margin:0;font-size:.92rem; }
    .journey-card:after { content:"→";position:absolute;right:-14px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:var(--deep);color:#fff;display:grid;place-items:center;z-index:3;font-weight:800; }
    .journey-card:last-child:after { display:none; }

    /* destination visual */
    .destination-grid { display:grid;grid-template-columns:repeat(12,1fr);gap:16px; }
    .destination-card { position:relative;min-height:330px;border-radius:22px;overflow:hidden;isolation:isolate;color:#fff; }
    .destination-card.big { grid-column:span 7;min-height:440px; }
    .destination-card.tall { grid-column:span 5;min-height:440px; }
    .destination-card.small { grid-column:span 4; }
    .destination-card img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .4s ease; }
    .destination-card:after { content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(4,30,31,.9),rgba(4,30,31,.06) 68%); }
    .destination-card:hover img { transform:scale(1.035); }
    .destination-copy { position:absolute;left:23px;right:23px;bottom:22px; }
    .destination-copy .micro { font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:rgba(255,255,255,.72); }
    .destination-copy h3 { color:#fff;margin:5px 0;font-size:1.65rem; }
    .destination-copy p { margin:0;color:rgba(255,255,255,.76); }

    /* mission */
    .mission-wrap { background:var(--deep);border-radius:34px;overflow:hidden;display:grid;grid-template-columns:.92fr 1.08fr;min-height:590px;color:#fff; }
    .mission-image { background:url('https://images.unsplash.com/photo-1716733087793-2db9bed9e3e3?auto=format&fit=crop&fm=jpg&q=82&w=1600') center/cover no-repeat; }
    .mission-copy { padding:68px;display:flex;flex-direction:column;justify-content:center; }
    .mission-copy .eyebrow { background:rgba(255,255,255,.1);color:#fff; }
    .mission-copy h2 { color:#fff;font-size:clamp(2.3rem,4.3vw,4.35rem);line-height:1.03;margin:18px 0 30px; }
    .mission-item { border-top:1px solid rgba(255,255,255,.14);padding:20px 0; }
    .mission-item:last-child { border-bottom:1px solid rgba(255,255,255,.14); }
    .mission-item strong { display:block;color:var(--sand);font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;margin-bottom:7px; }
    .mission-item p { margin:0;color:rgba(255,255,255,.74);line-height:1.65; }

    /* booking internal */
    .flow-shell { width:min(calc(100% - 32px),1000px);margin:0 auto; }
    .internal-top { display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px; }
    .internal-top h1 { font-size:clamp(2rem,4vw,3.25rem);color:var(--deep);margin:6px 0 0; }
    .back-link { display:inline-flex;align-items:center;gap:7px;font-weight:800;text-decoration:none;color:var(--deep); }
    .flow-layout { display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start; }
    .flow-card,.summary-card { background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 10px 40px rgba(7,39,40,.06); }
    .flow-card { padding:30px; }
    .summary-card { padding:22px;position:sticky;top:102px; }
    .summary-card h3 { margin:0 0 18px;color:var(--deep);font-size:1.1rem; }
    .route-line { display:grid;grid-template-columns:18px 1fr;gap:10px; }
    .route-rail { display:flex;flex-direction:column;align-items:center; }
    .route-dot { width:11px;height:11px;border-radius:50%;border:3px solid var(--deep);background:#fff; }
    .route-stick { width:2px;min-height:36px;background:rgba(8,47,48,.18); }
    .route-copy strong { display:block;color:var(--deep); }
    .route-copy span { color:var(--muted);font-size:.82rem; }
    .summary-divider { height:1px;background:var(--line);margin:18px 0; }
    .summary-row { display:flex;justify-content:space-between;gap:12px;padding:5px 0;color:var(--muted);font-size:.88rem; }
    .summary-row strong { color:var(--deep); }
    .flow-progress { display:flex;align-items:center;margin-bottom:28px; }
    .progress-step { display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:800;color:var(--muted2); }
    .progress-step .num { width:29px;height:29px;border-radius:50%;border:1px solid var(--line-strong);display:grid;place-items:center;background:#fff; }
    .progress-step.active,.progress-step.done { color:var(--deep); }
    .progress-step.active .num { background:var(--deep);color:#fff;border-color:var(--deep); }
    .progress-step.done .num { background:var(--sea-soft);color:var(--sea);border-color:transparent; }
    .progress-rule { height:1px;background:var(--line);flex:1;margin:0 10px; }
    .flow-step { display:none; }
    .flow-step.active { display:block; }
    .flow-step h2 { color:var(--deep);font-size:1.8rem;margin:0 0 8px; }
    .flow-step .intro { color:var(--muted);line-height:1.6;margin:0 0 24px; }
    .hint-box { background:var(--sea-soft);border-radius:15px;padding:14px 15px;color:var(--deep);display:flex;gap:10px;align-items:flex-start;font-size:.86rem;line-height:1.5;margin-bottom:20px; }
    .hint-box i { margin-top:2px; }
    .arrival-toggle { display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:18px; }
    .choice { border:1px solid var(--line-strong);border-radius:14px;padding:14px;cursor:pointer;transition:.18s ease;background:#fff; }
    .choice.active { border-color:var(--deep);box-shadow:0 0 0 1px var(--deep) inset;background:#fbfdfc; }
    .choice strong { display:block;color:var(--deep);margin-bottom:3px; }
    .choice span { color:var(--muted);font-size:.8rem; }
    .flow-actions { display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line); }
    .flow-actions .right { margin-left:auto; }

    .ride-options { display:grid;gap:12px; }
    .ride-option { border:1px solid var(--line);border-radius:17px;padding:17px;display:grid;grid-template-columns:52px 1fr auto;gap:14px;align-items:center;cursor:pointer;transition:.18s ease; }
    .ride-option:hover { border-color:var(--line-strong); }
    .ride-option.selected { border-color:var(--deep);box-shadow:0 0 0 1px var(--deep) inset;background:#fcfdfb; }
    .ride-icon { width:52px;height:52px;border-radius:15px;background:var(--sand2);display:grid;place-items:center;color:var(--deep);font-size:1.25rem; }
    .ride-option h4 { margin:0 0 3px;color:var(--deep);font-size:1rem; }
    .ride-option p { margin:0;color:var(--muted);font-size:.8rem; }
    .ride-price { text-align:right; }
    .ride-price strong { display:block;color:var(--deep);font-size:1rem; }
    .ride-price span { color:var(--muted);font-size:.72rem; }
    .policy-line { display:flex;gap:8px;align-items:flex-start;font-size:.8rem;color:var(--muted);margin-top:15px; }
    .policy-line i { color:var(--green);margin-top:1px; }

    .contact-minimal { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
    .contact-minimal .full { grid-column:1/-1; }
    .no-account { border:1px dashed rgba(8,47,48,.28);border-radius:16px;padding:15px;margin-top:18px;display:flex;gap:11px;align-items:flex-start;background:#fcfbf7; }
    .no-account strong { color:var(--deep);display:block;margin-bottom:3px; }
    .no-account p { margin:0;color:var(--muted);font-size:.82rem;line-height:1.5; }
    .payment-box { margin-top:18px;border-top:1px solid var(--line);padding-top:18px; }
    .payment-options { display:flex;gap:9px;flex-wrap:wrap; }
    .pay-chip { border:1px solid var(--line);border-radius:12px;padding:10px 13px;font-weight:800;font-size:.82rem;background:#fff; }

    .confirmation { text-align:center;padding:18px 10px 8px; }
    .confirm-icon { width:76px;height:76px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:var(--sea-soft);color:var(--green);font-size:2rem; }
    .confirmation h2 { font-size:2.15rem; }
    .confirmation p { max-width:520px;margin:0 auto 20px;color:var(--muted);line-height:1.6; }
    .trip-link-box { background:#f7f5ef;border:1px solid var(--line);border-radius:16px;padding:14px;display:flex;justify-content:space-between;align-items:center;gap:10px;margin:20px auto;max-width:560px;text-align:left; }
    .trip-link-box strong { display:block;color:var(--deep);font-size:.86rem; }
    .trip-link-box span { color:var(--muted);font-size:.76rem; }

    /* trip hub */
    .trip-shell { width:min(calc(100% - 32px),1080px);margin:0 auto; }
    .trip-header { background:var(--deep);color:#fff;border-radius:28px;padding:30px;margin-bottom:18px;position:relative;overflow:hidden; }
    .trip-header:after { content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.06);right:-80px;top:-120px; }
    .trip-header-top { display:flex;justify-content:space-between;gap:20px;position:relative;z-index:1; }
    .trip-header .tiny { color:var(--sand);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800; }
    .trip-header h1 { color:#fff;font-size:clamp(2rem,4vw,3.1rem);margin:7px 0 10px; }
    .trip-header p { color:rgba(255,255,255,.72);margin:0; }
    .trip-state-switcher { display:flex;flex-wrap:wrap;gap:7px;margin-top:24px;position:relative;z-index:1; }
    .state-btn { border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:rgba(255,255,255,.82);padding:8px 11px;border-radius:999px;font-size:.75rem;font-weight:800;cursor:pointer; }
    .state-btn.active { background:#fff;color:var(--deep); }

    .trip-grid { display:grid;grid-template-columns:minmax(0,1.18fr) minmax(310px,.82fr);gap:18px;align-items:start; }
    .trip-card { background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px;margin-bottom:18px; }
    .trip-card h3 { margin:0;color:var(--deep);font-size:1.25rem; }
    .trip-card .sub { color:var(--muted);font-size:.85rem;margin-top:4px; }
    .live-status { display:flex;gap:13px;align-items:flex-start;padding:16px;border-radius:16px;background:var(--sea-soft);margin-top:18px; }
    .live-status .pulse { width:11px;height:11px;border-radius:50%;background:var(--green);box-shadow:0 0 0 6px rgba(47,155,120,.13);margin-top:6px;flex:0 0 auto; }
    .live-status strong { display:block;color:var(--deep); }
    .live-status p { margin:3px 0 0;color:var(--muted);font-size:.84rem;line-height:1.45; }
    .timeline { margin-top:20px; }
    .timeline-row { display:grid;grid-template-columns:22px 1fr auto;gap:11px;align-items:start;padding-bottom:17px;position:relative; }
    .timeline-row:before { content:"";position:absolute;left:10px;top:19px;bottom:-1px;width:2px;background:var(--line); }
    .timeline-row:last-child:before { display:none; }
    .timeline-dot { width:21px;height:21px;border-radius:50%;border:2px solid rgba(8,47,48,.25);background:#fff;display:grid;place-items:center;font-size:.55rem;color:#fff;z-index:1; }
    .timeline-row.done .timeline-dot { background:var(--green);border-color:var(--green); }
    .timeline-row.current .timeline-dot { background:var(--coral);border-color:var(--coral);box-shadow:0 0 0 5px rgba(239,118,87,.12); }
    .timeline-row strong { display:block;color:var(--deep);font-size:.88rem; }
    .timeline-row span { color:var(--muted);font-size:.76rem; }
    .timeline-time { color:var(--muted2)!important;font-size:.72rem!important;white-space:nowrap; }

    .driver-card { display:grid;grid-template-columns:66px 1fr;gap:13px;align-items:center;margin-top:18px; }
    .driver-avatar.big { width:66px;height:66px;font-size:1.15rem; }
    .driver-card h4 { margin:0 0 4px;color:var(--deep);font-size:1.08rem; }
    .driver-meta { color:var(--muted);font-size:.8rem;line-height:1.5; }
    .vehicle-plate { display:inline-block;margin-top:5px;background:#f1f0eb;border:1px solid var(--line);border-radius:6px;padding:4px 7px;font-family:monospace;font-weight:800;color:var(--deep);letter-spacing:.04em; }
    .contact-actions { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px; }

    .meeting-map { height:220px;background:#dfe9e4;border-radius:17px;position:relative;overflow:hidden;margin-top:16px; }
    .meeting-map .map-pin { left:60%;top:35%; }
    .meeting-map .gate { position:absolute;left:17%;top:26%;width:120px;height:60px;border:5px solid rgba(8,47,48,.25);border-bottom:0;border-radius:14px 14px 0 0; }
    .meeting-map .road { position:absolute;left:0;right:0;bottom:31px;height:42px;background:rgba(255,255,255,.63);transform:rotate(-4deg); }
    .meeting-map .map-card { position:absolute;left:14px;bottom:14px;background:#fff;border-radius:12px;padding:10px 12px;box-shadow:var(--shadow-sm);font-size:.77rem;max-width:220px; }
    .meeting-map .map-card strong { display:block;color:var(--deep); }
    .instructions { counter-reset:step;margin-top:16px; }
    .instruction { counter-increment:step;display:grid;grid-template-columns:28px 1fr;gap:10px;padding:9px 0;align-items:start;color:var(--muted);font-size:.84rem;line-height:1.45; }
    .instruction:before { content:counter(step);width:25px;height:25px;border-radius:50%;background:var(--sand2);display:grid;place-items:center;color:var(--deep);font-weight:800;font-size:.72rem; }

    .help-card { background:#fff7ef;border:1px solid rgba(239,118,87,.22); }
    .help-card .ui.button { margin-top:14px;width:100%; }
    .comms-list { margin-top:13px; }
    .comms-row { display:flex;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);align-items:flex-start; }
    .comms-row:last-child { border-bottom:0; }
    .comms-icon { width:32px;height:32px;border-radius:9px;background:var(--sea-soft);display:grid;place-items:center;color:var(--sea);flex:0 0 auto; }
    .comms-row strong { display:block;font-size:.83rem;color:var(--deep); }
    .comms-row p { margin:2px 0 0;color:var(--muted);font-size:.75rem;line-height:1.4; }
    .comms-row time { margin-left:auto;color:var(--muted2);font-size:.68rem;white-space:nowrap; }

    /* partnership / footer */
    .partner-cta { padding:0 0 100px; }
    .partner-box { border-radius:32px;background:linear-gradient(90deg,rgba(8,47,48,.98),rgba(8,47,48,.83)),url('https://images.unsplash.com/photo-1673262791211-55f7a4e13118?auto=format&fit=crop&fm=jpg&q=82&w=1800') center/cover;color:#fff;padding:64px;display:flex;justify-content:space-between;align-items:center;gap:40px; }
    .partner-box h2 { color:#fff;font-size:clamp(2.1rem,4vw,4rem);margin:0 0 12px; }
    .partner-box p { max-width:650px;color:rgba(255,255,255,.72);font-size:1.04rem;line-height:1.65;margin:0; }
    footer { background:#061f20;color:rgba(255,255,255,.68);padding:55px 0 28px; }
    .footer-grid { display:grid;grid-template-columns:1.35fr .65fr .65fr;gap:45px;padding-bottom:36px; }
    footer .brand { color:#fff;margin-bottom:15px; }
    .footer-copy { max-width:470px;line-height:1.7; }
    .footer-title { color:#fff;font-weight:800;margin-bottom:12px; }
    .footer-links a { display:block;text-decoration:none;padding:5px 0;color:rgba(255,255,255,.66); }
    .footer-bottom { display:flex;justify-content:space-between;gap:18px;border-top:1px solid rgba(255,255,255,.1);padding-top:18px;font-size:.78rem; }

    /* utility */
        .subtle { color:var(--muted); }

    @media(max-width:1020px){
      .hero-grid{grid-template-columns:1fr;gap:38px}.hero{min-height:auto}.hero-content{padding:120px 0 70px}.search-card{max-width:680px}
      .problem-grid{grid-template-columns:1fr 1fr;gap:36px}.experience-grid{grid-template-columns:1fr 1fr}.experience-card:last-child{grid-column:1/-1}
      .journey-grid{grid-template-columns:1fr 1fr}.journey-card:nth-child(2):after{display:none}.mission-copy{padding:48px}
      .flow-layout{grid-template-columns:1fr}.summary-card{position:static;order:-1}.trip-grid{grid-template-columns:1fr 1fr}
      .partner-box{padding:48px}
    }

    @media(max-width:780px){
      .shell{width:min(calc(100% - 24px),var(--max))}.section{padding:76px 0}.section.compact{padding:56px 0}
      .nav-links,.nav-actions .manage-desktop{display:none}.mobile-toggle{display:inline-flex!important}.topbar{padding:10px 0}.brand-badge{width:38px;height:38px}
      .hero-content{padding:104px 0 52px}.hero-grid{gap:28px}.hero h1{font-size:clamp(3rem,13vw,4.7rem)}.hero-copy{font-size:1rem}
      .certainty-grid{grid-template-columns:1fr 1fr}.certainty-item{padding:4px 0}
      .section-head{grid-template-columns:1fr;gap:18px;margin-bottom:32px}.problem-grid{grid-template-columns:1fr}.problem-list{grid-template-columns:1fr 1fr}
      .experience-grid{grid-template-columns:1fr}.experience-card:last-child{grid-column:auto}.journey-grid{grid-template-columns:1fr}.journey-card:after{content:"↓";right:50%;top:auto;bottom:-14px;transform:translateX(50%)}.journey-card:nth-child(2):after{display:grid}.journey-card:last-child:after{display:none}
      .destination-card.big,.destination-card.tall,.destination-card.small{grid-column:span 12;min-height:380px}.mission-wrap{grid-template-columns:1fr}.mission-image{min-height:360px}.mission-copy{padding:34px 28px}
      .partner-box{padding:38px 28px;flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}
      .flow-card{padding:23px}.flow-layout{display:block}.summary-card{margin-bottom:16px}.progress-step span:last-child{display:none}.contact-minimal{grid-template-columns:1fr}.contact-minimal .full{grid-column:auto}
      .trip-grid{grid-template-columns:1fr}.trip-header{padding:24px}.trip-header-top{flex-direction:column}.trip-shell{width:min(calc(100% - 24px),1080px)}
    }

    @media(max-width:540px){
      .hero-benefits{display:grid;grid-template-columns:1fr 1fr}.hero-benefit{justify-content:flex-start}.search-card{padding:20px;border-radius:22px}
      .certainty-grid{grid-template-columns:1fr}.problem-list{grid-template-columns:1fr}.destination-card.big,.destination-card.tall,.destination-card.small{min-height:330px}
      .footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column}.partner-box{border-radius:24px}
      .arrival-toggle{grid-template-columns:1fr}.ride-option{grid-template-columns:45px 1fr}.ride-icon{width:45px;height:45px}.ride-price{grid-column:2;text-align:left}.flow-actions{flex-wrap:wrap}.flow-actions .ui.button{flex:1 1 auto}
      .trip-link-box{flex-direction:column;align-items:stretch}.contact-actions{grid-template-columns:1fr}.phone-actions{grid-template-columns:1fr}.hero h1{font-size:3.15rem}
      .state-btn{font-size:.69rem}.trip-header{border-radius:22px}.internal-view{padding-top:92px}.internal-top{align-items:flex-start}
    }


    /* Lucide icon treatment */
    [data-lucide], .lucide { width:17px; height:17px; stroke-width:2; vertical-align:-3px; flex:0 0 auto; }
    .ui.button .lucide, .ui.button [data-lucide] { margin-right:7px; }
    .ui.icon.button .lucide, .ui.icon.button [data-lucide] { margin-right:0; }
    .eyebrow .lucide,.micro-badge .lucide,.hero-benefit .lucide,.certainty-item .lucide,.back-link .lucide,.demo-tag .lucide { width:16px;height:16px; }

    /* Reference-led visual language: flat cream, deep marine, muted teal, coral */
    body { background:var(--paper); }
    .search-card,.experience-card,.journey-card,.flow-card,.summary-card,.trip-card { background:#fffdf7; }
    .certainty-strip { border-top:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.08); }
    .hero:after { content:""; position:absolute; inset:auto 0 0 0; height:100px; z-index:-1; background:linear-gradient(to bottom,transparent,rgba(8,32,40,.18)); }

    /* Operations console */
    body.ops-mode .topbar, body.ops-mode .mobile-panel { display:none !important; }
    .admin-view { min-height:100vh; background:#e8e5da; padding-top:0; }
    .ops-layout { min-height:100vh; display:grid; grid-template-columns:248px minmax(0,1fr); }
    .ops-sidebar { background:var(--deep); color:#fff; padding:26px 18px 24px; position:sticky; top:0; height:100vh; overflow:auto; }
    .ops-mobile-header { display:none; }
    .ops-sidebar-overlay { display:none; }
    .ops-sidebar-close { display:none !important; }
    .ops-brand { display:flex; align-items:center; gap:12px; padding:2px 8px 24px; border-bottom:1px solid rgba(255,255,255,.12); margin-bottom:18px; }
    .ops-symbol { width:42px; height:42px; position:relative; background:var(--coral); border-radius:50%; overflow:hidden; flex:0 0 auto; }
    .ops-symbol:before { content:""; position:absolute; left:-3px; right:-3px; bottom:12px; height:5px; background:var(--sand); box-shadow:0 9px 0 var(--sand); }
    .ops-brand strong { display:block; font-family:Manrope,sans-serif; font-size:1rem; }
    .ops-brand span { color:rgba(255,255,255,.56); font-size:.72rem; }
    .ops-nav-label { padding:10px 11px 7px; color:rgba(255,255,255,.42); font-size:.64rem; text-transform:uppercase; letter-spacing:.14em; font-weight:800; }
    .ops-nav { display:grid; gap:4px; }
    .ops-nav button { width:100%; display:flex; align-items:center; gap:10px; border:0; color:rgba(255,255,255,.68); background:transparent; padding:11px 12px; border-radius:10px; font-weight:700; cursor:pointer; text-align:left; transition:.16s ease; }
    .ops-nav button:hover { background:rgba(255,255,255,.07); color:#fff; }
    .ops-nav button.active { background:var(--coral); color:var(--deep); }
    .ops-nav button .lucide { width:16px; height:16px; }
    .ops-sidebar-foot { margin-top:28px; padding:17px 12px; border:1px solid rgba(255,255,255,.12); border-radius:12px; }
    .ops-sidebar-foot strong { font-size:.78rem; display:flex; align-items:center; gap:7px; }
    .ops-sidebar-foot p { margin:7px 0 0; color:rgba(255,255,255,.55); line-height:1.5; font-size:.72rem; }
    .live-dot { width:8px; height:8px; border-radius:50%; background:#86c9a9; box-shadow:0 0 0 4px rgba(134,201,169,.12); display:inline-block; }

    .ops-main { min-width:0; padding:28px clamp(20px,3vw,44px) 60px; }
    .ops-panel { display:none; }
    .ops-panel.active { display:block; }
    .ops-top { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:24px; }
    .ops-kicker { display:flex; align-items:center; gap:8px; color:var(--sea); text-transform:uppercase; letter-spacing:.12em; font-size:.68rem; font-weight:900; }
    .ops-top h1 { margin:6px 0 5px; color:var(--deep); font-size:clamp(2rem,4vw,3.4rem); line-height:1; }
    .ops-top p { color:var(--muted); margin:0; }
    .ops-top-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
    .ops-clock { background:#fffdf7; border:1px solid var(--line); border-radius:999px; padding:9px 12px; font-size:.78rem; font-weight:800; color:var(--deep); display:flex; align-items:center; gap:7px; }

    .ops-graphic-header { position:relative; overflow:hidden; background:var(--deep); color:#fff; min-height:170px; border-radius:18px; padding:30px; display:flex; align-items:flex-end; margin-bottom:20px; }
    .ops-graphic-header:before { content:""; position:absolute; width:150px; height:150px; border-radius:50%; background:var(--coral); right:110px; top:-58px; box-shadow:0 24px 0 -18px var(--sand),0 48px 0 -18px var(--sand); }
    .ops-graphic-header:after { content:""; position:absolute; right:-40px; bottom:-55px; width:190px; height:190px; border:34px solid var(--sea); transform:rotate(45deg); }
    .ops-graphic-copy { position:relative; z-index:2; max-width:650px; }
    .ops-graphic-copy .mini { color:var(--coral); text-transform:uppercase; letter-spacing:.13em; font-size:.66rem; font-weight:900; }
    .ops-graphic-copy h2 { color:#fff; font-size:clamp(1.8rem,3.5vw,3.1rem); margin:7px 0 8px; line-height:1.02; }
    .ops-graphic-copy p { margin:0; color:rgba(255,255,255,.68); max-width:610px; line-height:1.55; }

    .metric-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:20px; }
    .metric-card { background:#fffdf7; border:1px solid var(--line); border-radius:14px; padding:18px; min-width:0; }
    .metric-card.attention { background:var(--coral); border-color:transparent; }
    .metric-top { display:flex; align-items:center; justify-content:space-between; gap:8px; color:var(--muted); font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
    .metric-card.attention .metric-top,.metric-card.attention .metric-foot { color:rgba(8,32,40,.68); }
    .metric-icon { width:34px; height:34px; border-radius:10px; display:grid; place-items:center; background:var(--sea-soft); color:var(--deep); }
    .metric-card.attention .metric-icon { background:rgba(255,255,255,.3); }
    .metric-value { font-family:Manrope,sans-serif; font-size:2.05rem; font-weight:800; color:var(--deep); line-height:1; margin:18px 0 7px; letter-spacing:-.04em; }
    .metric-foot { color:var(--muted); font-size:.75rem; }

    .ops-grid-2 { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr); gap:14px; }
    .ops-card { background:#fffdf7; border:1px solid var(--line); border-radius:14px; padding:20px; min-width:0; }
    .ops-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:15px; margin-bottom:18px; }
    .ops-card-head h3 { margin:0; color:var(--deep); font-size:1.08rem; letter-spacing:-.02em; }
    .ops-card-head p { margin:3px 0 0; color:var(--muted); font-size:.78rem; }
    .text-button { border:0; background:transparent; color:var(--sea); font-weight:800; cursor:pointer; font-size:.78rem; padding:4px; }

    .attention-list { display:grid; gap:9px; }
    .attention-row { display:grid; grid-template-columns:36px minmax(0,1fr) auto; gap:11px; align-items:center; padding:12px; border:1px solid var(--line); border-radius:11px; cursor:pointer; background:#fffdf7; }
    .attention-row:hover { border-color:rgba(8,32,40,.3); }
    .attention-icon { width:36px; height:36px; display:grid; place-items:center; border-radius:9px; background:#f4dfda; color:#9d3f31; }
    .attention-row strong { display:block; font-size:.86rem; color:var(--deep); }
    .attention-row span { display:block; margin-top:2px; color:var(--muted); font-size:.72rem; }
    .sla { font-size:.69rem; font-weight:900; border-radius:999px; padding:6px 8px; background:var(--sand2); white-space:nowrap; }
    .sla.risk { background:#f8ded8; color:#9d3f31; }

    .pulse-bars { height:170px; display:flex; align-items:end; gap:8px; padding-top:12px; }
    .pulse-bar { flex:1; min-width:10px; background:var(--sea); border-radius:5px 5px 0 0; opacity:.85; position:relative; }
    .pulse-bar:nth-child(4n+1){background:var(--deep)} .pulse-bar:nth-child(5n){background:var(--coral)}
    .pulse-axis { display:flex; justify-content:space-between; color:var(--muted2); font-size:.67rem; margin-top:8px; }

    .route-health { width:100%; border-collapse:collapse; }
    .route-health th { text-align:left; padding:9px 8px; color:var(--muted2); text-transform:uppercase; letter-spacing:.08em; font-size:.63rem; border-bottom:1px solid var(--line); }
    .route-health td { padding:12px 8px; border-bottom:1px solid var(--line); font-size:.79rem; color:var(--muted); vertical-align:middle; }
    .route-health td strong { color:var(--deep); }
    .route-health tr:last-child td { border-bottom:0; }
    .status-pill { display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:6px 8px; font-weight:800; font-size:.68rem; background:var(--sea-soft); color:var(--deep); white-space:nowrap; }
    .status-pill.warn { background:#f8ded8; color:#8d3e32; }
    .status-pill.neutral { background:var(--sand2); color:var(--muted); }

    .event-stream { display:grid; gap:0; }
    .event-row { display:grid; grid-template-columns:24px minmax(0,1fr) auto; gap:10px; padding:10px 0; border-bottom:1px solid var(--line); }
    .event-row:last-child { border-bottom:0; }
    .event-dot { width:9px; height:9px; border-radius:50%; background:var(--sea); margin:5px auto 0; }
    .event-row strong { font-size:.78rem; color:var(--deep); display:block; }
    .event-row span,.event-row time { font-size:.69rem; color:var(--muted); }

    /* Dispatch */
    .dispatch-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; flex-wrap:wrap; }
    .filter-chips { display:flex; gap:7px; overflow:auto; padding-bottom:2px; }
    .filter-chip { border:1px solid var(--line); background:#fffdf7; padding:8px 11px; border-radius:999px; color:var(--muted); font-weight:800; font-size:.72rem; cursor:pointer; white-space:nowrap; }
    .filter-chip.active { background:var(--deep); color:#fff; border-color:var(--deep); }
    .dispatch-board { display:grid; grid-template-columns:repeat(5,minmax(230px,1fr)); gap:10px; align-items:start; min-width:1160px; }
    .dispatch-scroll { overflow-x:auto; padding-bottom:10px; }
    .dispatch-column { background:rgba(255,253,247,.46); border:1px solid var(--line); border-radius:13px; padding:10px; min-height:470px; }
    .dispatch-col-head { display:flex; justify-content:space-between; align-items:center; padding:4px 4px 11px; }
    .dispatch-col-head strong { font-size:.76rem; color:var(--deep); text-transform:uppercase; letter-spacing:.075em; }
    .dispatch-count { width:24px; height:24px; display:grid; place-items:center; background:var(--sand2); border-radius:50%; color:var(--deep); font-size:.69rem; font-weight:900; }
    .trip-ticket { background:#fffdf7; border:1px solid var(--line); border-radius:11px; padding:12px; margin-bottom:9px; cursor:pointer; box-shadow:0 4px 14px rgba(8,32,40,.035); }
    .trip-ticket:hover { transform:translateY(-1px); border-color:rgba(8,32,40,.26); }
    .trip-ticket.exception { border-left:4px solid var(--coral); }
    .ticket-top { display:flex; justify-content:space-between; gap:8px; margin-bottom:10px; }
    .ticket-id { color:var(--muted2); font-size:.67rem; font-weight:800; }
    .ticket-time { color:var(--deep); font-size:.72rem; font-weight:900; }
    .ticket-route { color:var(--deep); font-weight:800; font-size:.86rem; line-height:1.35; }
    .ticket-meta { display:grid; gap:5px; margin-top:11px; }
    .ticket-meta span { display:flex; align-items:center; gap:6px; color:var(--muted); font-size:.7rem; }
    .ticket-foot { display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--line); margin-top:11px; padding-top:9px; }
    .ticket-avatar { width:26px; height:26px; border-radius:50%; background:var(--sea-soft); display:grid; place-items:center; color:var(--deep); font-size:.62rem; font-weight:900; }
    .ticket-channel { font-size:.65rem; color:var(--muted); display:flex; align-items:center; gap:4px; }

    .trip-drawer { position:fixed; z-index:1600; right:0; top:0; bottom:0; width:min(440px,100%); background:#fffdf7; border-left:1px solid var(--line); box-shadow:-20px 0 70px rgba(8,32,40,.16); transform:translateX(102%); transition:.25s ease; display:flex; flex-direction:column; }
    .trip-drawer.open { transform:none; }
    .drawer-head { padding:22px; background:var(--deep); color:#fff; }
    .drawer-head-row { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
    .drawer-head .tiny { color:var(--coral); text-transform:uppercase; letter-spacing:.1em; font-size:.65rem; font-weight:900; }
    .drawer-head h2 { color:#fff; margin:5px 0 4px; font-size:1.5rem; }
    .drawer-head p { margin:0; color:rgba(255,255,255,.62); font-size:.78rem; }
    .drawer-close { border:1px solid rgba(255,255,255,.18); background:transparent; color:#fff; width:34px; height:34px; border-radius:50%; display:grid; place-items:center; cursor:pointer; }
    .drawer-body { padding:20px 22px 35px; overflow:auto; }
    .drawer-section { padding:17px 0; border-bottom:1px solid var(--line); }
    .drawer-section:first-child { padding-top:0; }
    .drawer-section h4 { margin:0 0 11px; color:var(--deep); font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; }
    .key-grid { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
    .key-cell { background:var(--sand2); border-radius:9px; padding:10px; }
    .key-cell span { display:block; color:var(--muted); font-size:.64rem; margin-bottom:3px; }
    .key-cell strong { color:var(--deep); font-size:.78rem; }
    .drawer-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:15px; }

    /* Route configuration */
    .route-table-wrap { overflow-x:auto; }
    .config-table { width:100%; border-collapse:collapse; min-width:860px; }
    .config-table th { text-align:left; padding:11px 12px; background:var(--deep); color:rgba(255,255,255,.68); text-transform:uppercase; font-size:.62rem; letter-spacing:.08em; }
    .config-table th:first-child { border-radius:10px 0 0 0; }.config-table th:last-child{border-radius:0 10px 0 0;}
    .config-table td { padding:13px 12px; border-bottom:1px solid var(--line); font-size:.76rem; color:var(--muted); background:#fffdf7; }
    .config-table td strong { color:var(--deep); }
    .config-table tbody tr:hover td { background:#faf7ed; }
    .corridor-tag { font-weight:800; color:var(--deep); display:flex; align-items:center; gap:7px; }
    .corridor-swatch { width:9px; height:24px; background:var(--sea); display:inline-block; }
    .corridor-swatch.south { background:var(--coral); }.corridor-swatch.city { background:#97a29e; }

    .data-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:9px; margin-top:14px; }
    .data-tile { background:var(--deep); color:#fff; border-radius:11px; padding:14px; min-height:118px; }
    .data-tile .lucide { color:var(--coral); }
    .data-tile strong { display:block; margin:22px 0 5px; font-size:.82rem; }
    .data-tile span { color:rgba(255,255,255,.55); font-size:.68rem; line-height:1.4; display:block; }

    /* Communications orchestration */
    .comms-route { display:grid; grid-template-columns:1fr 50px 1fr 50px 1fr 50px 1fr; align-items:stretch; gap:8px; margin:16px 0 24px; }
    .comms-node { background:#fffdf7; border:1px solid var(--line); border-radius:12px; padding:15px; min-height:120px; }
    .comms-node .node-icon { width:35px; height:35px; display:grid; place-items:center; border-radius:9px; background:var(--sea-soft); color:var(--deep); }
    .comms-node strong { display:block; color:var(--deep); margin:20px 0 4px; font-size:.82rem; }
    .comms-node span { color:var(--muted); font-size:.69rem; line-height:1.4; }
    .comms-arrow { display:grid; place-items:center; color:var(--sea); }
    .channel-stack { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
    .channel-card { background:#fffdf7; border:1px solid var(--line); border-radius:12px; padding:16px; }
    .channel-head { display:flex; justify-content:space-between; gap:10px; align-items:center; }
    .channel-name { display:flex; align-items:center; gap:8px; font-weight:800; color:var(--deep); }
    .channel-rate { font-family:Manrope,sans-serif; font-weight:800; color:var(--deep); }
    .channel-card p { color:var(--muted); font-size:.71rem; line-height:1.45; margin:10px 0 0; }
    .trigger-list { display:grid; gap:0; }
    .trigger-row { display:grid; grid-template-columns:minmax(180px,.8fr) minmax(220px,1.2fr) minmax(180px,.8fr) auto; gap:12px; align-items:center; padding:12px 0; border-bottom:1px solid var(--line); font-size:.74rem; }
    .trigger-row:last-child { border-bottom:0; }
    .trigger-event { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; color:var(--deep); font-weight:700; }
    .trigger-copy { color:var(--muted); }
    .channel-badges { display:flex; gap:5px; flex-wrap:wrap; }
    .channel-badge { border:1px solid var(--line); background:var(--sand2); border-radius:999px; padding:5px 7px; font-size:.63rem; font-weight:800; color:var(--deep); }

    .admin-mobile-tabs { display:none; }

    @media(max-width:1120px){
      .metric-grid{grid-template-columns:repeat(2,1fr)} .ops-grid-2{grid-template-columns:1fr}.data-grid{grid-template-columns:repeat(3,1fr)}
      .comms-route{grid-template-columns:1fr 34px 1fr 34px 1fr}.comms-node:last-child{grid-column:1/-1}.comms-arrow:nth-of-type(6){display:none}
    }
    @media(max-width:900px){
      .admin-view{padding-top:0}
      .ops-layout{grid-template-columns:1fr;min-height:calc(100vh - 62px)}
      .ops-mobile-header{display:flex;position:sticky;top:0;z-index:1200;height:62px;padding:0 12px;align-items:center;justify-content:space-between;gap:12px;background:#fffdf7;border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(8,32,40,.06)}
      .ops-mobile-title{min-width:0;display:flex;align-items:center;gap:9px;color:var(--deep)}
      .ops-mobile-title .ops-symbol{width:32px;height:32px}
      .ops-mobile-title strong{display:block;font-family:Manrope,sans-serif;font-size:.9rem;line-height:1.1}
      .ops-mobile-title span{display:block;color:var(--muted);font-size:.65rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
      .ops-sidebar{position:fixed;left:0;top:0;bottom:0;width:min(84vw,300px);height:100dvh;z-index:1500;padding:20px 16px 24px;transform:translateX(-105%);transition:transform .22s ease;box-shadow:18px 0 50px rgba(0,0,0,.22)}
      .ops-sidebar.open{transform:translateX(0)}
      .ops-sidebar-overlay{display:block;position:fixed;inset:0;z-index:1400;background:rgba(8,32,40,.48);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease;backdrop-filter:blur(2px)}
      .ops-sidebar-overlay.open{opacity:1;visibility:visible}
      .ops-brand{display:flex;justify-content:space-between;align-items:center;padding-right:0}
      .ops-brand-copy{display:flex;align-items:center;gap:12px;min-width:0}
      .ops-sidebar-close{display:inline-flex !important;flex:0 0 auto;color:#fff !important}
      .ops-nav-label,.ops-sidebar-foot{display:block}
      .ops-nav{display:grid;overflow:visible;gap:4px}
      .ops-nav button{width:100%;white-space:normal;padding:11px 12px}
      .ops-main{padding-top:22px}
      .data-grid{grid-template-columns:repeat(2,1fr)}
    }
    @media(max-width:680px){
      .ops-main{padding-left:12px;padding-right:12px}.ops-top{flex-direction:column}.ops-top-actions{justify-content:flex-start}.ops-graphic-header{padding:22px;min-height:190px}.ops-graphic-header:before{right:30px;opacity:.55}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{padding:14px}.metric-value{font-size:1.7rem}.data-grid{grid-template-columns:1fr 1fr}.channel-stack{grid-template-columns:1fr}.comms-route{grid-template-columns:1fr}.comms-arrow{height:28px;transform:rotate(90deg)}.comms-node:last-child{grid-column:auto}.trigger-row{grid-template-columns:1fr;gap:5px;padding:14px 0}.trip-drawer{width:100%}.drawer-actions{grid-template-columns:1fr}.ops-card{padding:15px}.ops-clock{font-size:.7rem}
    }
    @media(max-width:430px){ .metric-grid,.data-grid{grid-template-columns:1fr}.ops-nav button{padding:10px 12px}.ops-nav button .lucide{margin:0}.ops-graphic-header:after{opacity:.4}.key-grid{grid-template-columns:1fr}.certainty-grid{grid-template-columns:1fr} }
