      .fl-vessel{max-width:min(1100px,92vw);margin:1.25rem auto 2.25rem}
      
      .fl-vessel-header{margin:0 0 1.5rem;text-align:center}
      .fl-vessel-imo{font-size:clamp(1.1rem,2vw,3.5rem);font-weight:bold;letter-spacing:.15em;text-transform:uppercase;color:#4b5563;margin-bottom:var(--wp--preset--spacing--60);font-family:var(--wp--preset--font-family--rajdhani);font-style:normal;margin-top:0}
      @media (max-width:600px){.fl-vessel-imo{letter-spacing:.1em}}

      .fl-v-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:1.5rem;align-items:start}
      @media (max-width:900px){.fl-v-grid{grid-template-columns:1fr}}

      .fl-sub{margin:1.5rem 0 .75rem}
      .fl-sub-first{margin-top:0}
      
      .fl-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem;margin-bottom:2rem}
      .fl-info-item{background:#f8fafc;border:1px solid #e5e7eb;border-radius:.6rem;padding:.75rem;display:flex;flex-direction:column;gap:.25rem}
      .fl-info-item.fl-info-primary{background:#eef2ff;border-color:#c7d2fe}
      .fl-info-label{font-size:.75rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.03em}
      .fl-info-value{font-size:1.05rem;color:#111827;font-weight:600}

      .fl-sanc-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}
      .fl-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid #e5e7eb;border-radius:999px;padding:.35rem .7rem;background:#f8fafc;font-weight:600;font-size:.9rem}
      .fl-chip.sanc{background:#fff;border-color:#d1d5db}
      .fl-chip.sanc .fl-date{opacity:.75;margin-left:.3rem;font-weight:500}
      .fl-chip.mini{padding:.15rem .45rem;font-size:.8rem}

      .fl-company-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}
      .fl-company-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid #f3f4f6}
      .fl-company-icon{font-size:2rem;line-height:1}
      .fl-company-main{flex:1}
      .fl-company-name{font-size:1.25rem;font-weight:700;color:#111827;margin-bottom:.25rem}
      .fl-company-imo{font-size:.9rem;color:#6b7280;font-family:monospace}
      .fl-company-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.25rem}
      .fl-company-row{display:flex;justify-content:space-between;align-items:flex-start;padding:.5rem 0;border-bottom:1px solid #f3f4f6}
      .fl-company-row:last-child{border-bottom:none}
      .fl-company-label{font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.03em;min-width:100px}
      .fl-company-value{flex:1;text-align:right;color:#111827;font-weight:500}
      .fl-company-status{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.875rem;font-weight:600}
      .fl-status-active{background:#d1fae5;color:#065f46}
      .fl-status-inactive{background:#fee2e2;color:#991b1b}
      .fl-company-fleet{font-size:.9rem}
      .fl-company-actions{padding-top:.75rem}
      .fl-company-history-btn{padding:.75rem 1rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;border-radius:.5rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}
      .fl-company-history-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(102,126,234,.3)}

      .fl-management-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;margin-bottom:2rem}
      .fl-mgmt-card{background:#f8fafc;border:1px solid #e5e7eb;border-radius:.6rem;padding:1rem}
      .fl-mgmt-label{font-size:.75rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.5rem}
      .fl-mgmt-company{font-size:.95rem;font-weight:700;color:#111827;margin-bottom:.5rem}
      .fl-mgmt-address{font-size:.85rem;color:#6b7280;line-height:1.4}

      .fl-classification-section{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}
      .fl-class-header{margin-bottom:1.5rem;padding-bottom:1.25rem;border-bottom:1px solid #f3f4f6}
      .fl-class-label{font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.5rem}
      .fl-class-main{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.5rem}
      .fl-class-society{font-size:1.1rem;font-weight:700;color:#111827}
      .fl-class-status{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.8rem;font-weight:600}
      .fl-class-notation{font-size:.9rem;color:#4b5563;margin-top:.25rem}
      .fl-survey-schedule{margin-top:1.5rem}
      .fl-survey-label{font-size:.9rem;font-weight:600;color:#374151;margin-bottom:.75rem}
      .fl-survey-table{overflow-x:auto;margin-bottom:1rem}
      .fl-survey-table table{width:100%;border-collapse:collapse;font-size:.9rem}
      .fl-survey-table thead{background:#f9fafb}
      .fl-survey-table th{text-align:left;padding:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;font-size:.75rem;letter-spacing:.03em;border-bottom:2px solid #e5e7eb}
      .fl-survey-table td{padding:.75rem;border-bottom:1px solid #e5e7eb;color:#111827}
      .fl-survey-table tbody tr:hover{background:#f9fafb}
      .fl-survey-valid{color:#065f46;font-weight:600}
      .fl-survey-expiring{color:#d97706;font-weight:600}
      .fl-survey-expired{color:#991b1b;font-weight:600}
      .fl-survey-unknown{color:#6b7280}
      .fl-certificates-btn{width:100%;padding:.75rem 1rem;background:#f3f4f6;color:#111827;border:1px solid #d1d5db;border-radius:.5rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}
      .fl-certificates-btn:hover{background:#e5e7eb;border-color:#9ca3af}

      .fl-psc-section{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}
      .fl-psc-risk{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:.5rem;margin-bottom:1.5rem}
      .fl-risk-low{background:#d1fae5;border:1px solid #a7f3d0}
      .fl-risk-medium{background:#fed7aa;border:1px solid #fdba74}
      .fl-risk-high{background:#fecaca;border:1px solid #fca5a5}
      .fl-psc-risk-icon{font-size:2rem;line-height:1}
      .fl-psc-risk-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;opacity:.8}
      .fl-psc-risk-value{font-size:1.25rem;font-weight:700}
      .fl-risk-low .fl-psc-risk-value{color:#065f46}
      .fl-risk-medium .fl-psc-risk-value{color:#92400e}
      .fl-risk-high .fl-psc-risk-value{color:#991b1b}
      .fl-psc-stats{margin-bottom:1.5rem}
      .fl-psc-period{font-size:.875rem;font-weight:600;color:#6b7280;margin-bottom:.75rem}
      .fl-psc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}
      .fl-psc-stat{text-align:center;padding:1rem;background:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb}
      .fl-psc-stat-value{font-size:2rem;font-weight:700;color:#111827;line-height:1;margin-bottom:.5rem}
      .fl-psc-stat-label{font-size:.8rem;color:#6b7280;font-weight:500}
      .fl-psc-warning .fl-psc-stat-value{color:#dc2626}
      .fl-psc-last{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;margin-bottom:1rem}
      .fl-psc-last-label{font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.5rem}
      .fl-psc-last-port,.fl-psc-last-date{font-size:.95rem;color:#111827;margin-bottom:.25rem}
      .fl-psc-history-btn{width:100%;padding:.75rem 1rem;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);color:white;border:none;border-radius:.5rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}
      .fl-psc-history-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(59,130,246,.3)}
      
      .fl-prog{white-space:pre-wrap;margin-bottom:.75rem}
      .fl-notes{border:1px solid #eef2f7;background:#fff;border-radius:.6rem;padding:.75rem .9rem;margin-bottom:2rem}
      .fl-small{color:#6b7280;font-size:.9rem}

      .fl-src-table{width:100%;border-collapse:collapse;border:1px solid #eef2f7;border-radius:.6rem;overflow:hidden;margin-bottom:2rem}
      .fl-src-table th,.fl-src-table td{padding:.5rem .6rem;border-bottom:1px solid #eef2f7;text-align:left}
      .fl-src-table thead th{background:#f8fafc;font-weight:700}

      .fl-rel-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
      .fl-rel-item{border:1px solid #eef2f7;background:#fff;border-radius:.6rem;padding:.55rem .65rem;display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}
      .fl-rel-title{font-weight:700;text-decoration:none}
      .fl-rel-title:hover{text-decoration:underline}
      .fl-rel-srcs{display:flex;gap:.3rem;margin-left:auto}
      .fl-mute{color:#6b7280;font-size:.9rem}

      .fl-v-side>*{margin-bottom:1.25rem}
      .fl-v-side>*:last-child{margin-bottom:0}
      
      .fl-sidebar-title{font-size:1rem;font-weight:700;margin:0 0 .75rem;color:#111827}
      
      .fl-sidebar-status{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem}
      .fl-status-main{text-align:center;margin-bottom:.75rem}
      .fl-status-label-main{font-size:.75rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.5rem}
      .fl-status-badge{background:#4f46e5;color:#fff;padding:.4rem .75rem;border-radius:.5rem;font-size:.85rem;font-weight:600;display:inline-block}
      .fl-status-details{display:flex;flex-direction:column;gap:.35rem}
      .fl-status-row{display:flex;justify-content:space-between;font-size:.85rem;padding:.35rem 0;border-bottom:1px solid #f3f4f6}
      .fl-status-row:last-child{border-bottom:none}
      .fl-status-label{color:#6b7280;font-weight:500}
      .fl-status-value{color:#111827;font-weight:600}
      .fl-status-updated{opacity:.75}

      .fl-sidebar-map-container{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem}
      .fl-sidebar-map{height:250px;border-radius:.5rem;overflow:hidden;border:1px solid #e5e7eb;margin-bottom:.5rem}
      .fl-map-coords{text-align:center;color:#6b7280;font-size:.8rem;margin:0;font-family:monospace}
      .fl-single-arrow-marker{background:none;border:none}

      .fl-sidebar-no-location{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem}
      .fl-no-loc-text{color:#6b7280;font-size:.85rem;line-height:1.5;margin:0}

      .fl-figure{margin:0}
      .fl-figure figcaption{font-size:.8rem;color:#6b7280;margin-top:.5rem}
      .fl-photo{width:100%;height:auto;border-radius:.6rem;display:block}

      /* ShipSpotting photo gallery — name pills */
      .fl-ss-gallery .fl-photo{transition:opacity .2s ease}
      .fl-ss-names{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin-top:.6rem}
      .fl-ss-names-label{font-size:.72rem;color:#9ca3af;font-weight:500;margin-right:.15rem}
      .fl-ss-name-pill{
        display:inline-flex;align-items:center;gap:.3rem;
        padding:.25rem .6rem;border-radius:1rem;
        font-size:.75rem;font-weight:600;
        background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;
        cursor:pointer;transition:all .15s ease;
        line-height:1.3;
      }
      .fl-ss-name-pill:hover{background:#eef2ff;border-color:#c7d2fe;color:#4f46e5}
      .fl-ss-name-pill.active{background:#4f46e5;border-color:#4f46e5;color:#fff}
      .fl-ss-name-pill.active .fl-ss-name-count{background:rgba(255,255,255,.2);color:#fff}
      .fl-ss-name-count{
        font-size:.65rem;font-weight:700;
        background:#e2e8f0;color:#64748b;
        border-radius:50%;min-width:1.1rem;height:1.1rem;
        display:inline-flex;align-items:center;justify-content:center;
        line-height:1;
      }

      .fl-sidebar-actions{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem}
      .fl-action-btn{display:flex;align-items:center;gap:.65rem;padding:.65rem .75rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;text-decoration:none;color:#111827;font-weight:600;font-size:.9rem;margin-bottom:.5rem;transition:all .15s}
      .fl-action-btn:hover{background:#eef2ff;border-color:#c7d2fe}
      .fl-action-btn:last-of-type{margin-bottom:0}
      .fl-action-icon{font-size:1.2rem;line-height:1}
      .fl-action-text{flex:1}
      .fl-action-divider{height:1px;background:#e5e7eb;margin:1rem 0}
      .fl-action-label{font-size:.8rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.02em;margin:0 0 .5rem}
      .fl-action-links{display:flex;flex-wrap:wrap;gap:.4rem}
      .fl-action-links a{font-size:.8rem;color:#4f46e5;text-decoration:none;padding:.25rem .5rem;background:#eef2ff;border-radius:.4rem;border:1px solid #c7d2fe}
      .fl-action-links a:hover{background:#e0e7ff}

      .fl-changes-history{margin:2rem 0;padding:1.25rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem}
      .fl-changes-title{font-size:1.1rem;font-weight:700;margin:0 0 1rem;color:#111827}
      .fl-changes-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
      .fl-change-entry{background:#fff;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:.5rem}
      .fl-change-date{font-weight:700;color:#111827;margin-bottom:.5rem;font-size:.9rem}
      .fl-changes{margin:.35rem 0 0;display:flex;gap:.35rem;flex-wrap:wrap;font-size:.85rem}
      .fl-change-add{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;padding:.15rem .45rem;border-radius:.4rem;font-weight:600}
      .fl-change-remove{background:#fff1f2;color:#991b1b;border:1px solid #fecaca;padding:.15rem .45rem;border-radius:.4rem;font-weight:600}
      .fl-change-flag,.fl-change-type,.fl-change-info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe;padding:.15rem .45rem;border-radius:.4rem;font-weight:600}
      .fl-muted{color:#6b7280;font-style:italic}

      .fl-history-btn{width:100%;padding:.75rem 1rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;border-radius:.5rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px rgba(0,0,0,.1)}
      .fl-history-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(102,126,234,.3)}
      .fl-history-btn:active{transform:translateY(0)}

      .fl-history-lightbox{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.95);z-index:999999;animation:fadeIn .3s}
      @keyframes fadeIn{from{opacity:0}to{opacity:1}}
      .fl-history-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 2rem;background:#1a1a1a;border-bottom:1px solid #333}
      .fl-history-header .fl-history-title{color:white !important;font-size:1.25rem;font-weight:700;margin:0}
      .fl-history-close{background:none;border:none;color:white;font-size:2rem;cursor:pointer;padding:0;width:40px;height:40px;line-height:1;border-radius:.25rem;transition:background .2s}
      .fl-history-close:hover{background:rgba(255,255,255,.1)}
      .fl-history-map{width:100%;height:calc(100vh - 180px)}
      .fl-history-controls{position:absolute;bottom:0;left:0;right:0;background:#2a2a2a;padding:1rem 2rem;display:flex;gap:1rem;align-items:center;border-top:1px solid #444}
      .fl-play-btn{width:50px;height:50px;border-radius:50%;background:#667eea;color:white;border:none;font-size:1.25rem;cursor:pointer;transition:all .2s;flex-shrink:0}
      .fl-play-btn:hover{background:#5568d3;transform:scale(1.05)}
      .fl-timeline-scrubber{flex:1;height:8px;-webkit-appearance:none;appearance:none;background:#444;border-radius:4px;outline:none}
      .fl-timeline-scrubber::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#667eea;cursor:pointer;transition:all .2s}
      .fl-timeline-scrubber::-webkit-slider-thumb:hover{background:#5568d3;transform:scale(1.2)}
      .fl-timeline-scrubber::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#667eea;cursor:pointer;border:none;transition:all .2s}
      .fl-current-time{color:white;font-size:.9rem;font-family:monospace;min-width:200px;text-align:center}
      .fl-control-select{padding:.5rem 1rem;background:#333;color:white;border:1px solid #555;border-radius:.375rem;font-size:.9rem;cursor:pointer}
      .fl-control-select:focus{outline:none;border-color:#667eea}
      .fl-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:white;font-size:1.25rem;display:flex;flex-direction:column;align-items:center;gap:1rem}
      .fl-spinner{width:50px;height:50px;border:4px solid #333;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}
      @keyframes spin{to{transform:rotate(360deg)}}
      .fl-no-history{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:white;text-align:center;font-size:1.1rem}

      @media (max-width:640px){
        .fl-company-header{flex-direction:column;text-align:center}
        .fl-company-row{flex-direction:column;text-align:center;gap:.25rem}
        .fl-company-label{min-width:auto}
        .fl-company-value{text-align:center}
        .fl-psc-grid{grid-template-columns:1fr}
        .fl-class-main{flex-direction:column;align-items:flex-start}
        .fl-survey-table{font-size:.8rem}
        .fl-survey-table th,.fl-survey-table td{padding:.5rem}
        .fl-management-grid{grid-template-columns:1fr}
      }
      /* Port Map */
      .fl-port-map-container {
        margin-bottom: 1.5rem;
        border: 1px solid #e5e7eb;
        border-radius: 0.6rem;
        overflow: hidden;
        background: #f9fafb;
      }

      .fl-port-map {
        height: 400px;
        width: 100%;
      }

      .fl-port-calls {
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
        margin-bottom: 1rem;
      }

      .fl-port-call-entry {
        background: #f8fafc;
        border: 1px solid #e5e7eb;
        border-radius: 0.6rem;
        padding: 1rem;
        transition: all 0.2s ease;
        cursor: pointer;
      }

      .fl-port-call-entry:hover {
        background: #eef2ff !important;
        border-color: #c7d2fe !important;
        transform: translateX(4px);
      }

      .fl-port-call-active {
        background: #eef2ff !important;
        border-color: #4f46e5 !important;
        box-shadow: 0 2px 4px rgba(79, 70, 229, 0.1);
      }

      .fl-port-route {
        display: flex;
        align-items: center;
        gap: 0.75rem;
        margin-bottom: 0.5rem;
      }

      .fl-port-from,
      .fl-port-to {
        font-weight: 700;
        color: #111827;
        font-size: 0.95rem;
      }

      .fl-port-arrow {
        color: #6b7280;
        flex-shrink: 0;
      }

      .fl-port-times {
        display: flex;
        gap: 1.5rem;
        font-size: 0.85rem;
        color: #6b7280;
      }

      .fl-current-dest {
        background: #eef2ff;
        border: 1px solid #c7d2fe;
        border-radius: 0.6rem;
        padding: 0.75rem 1rem;
        font-size: 0.9rem;
        margin-top: 1rem;
      }

      .fl-certificates-table {
        overflow-x: auto;
        margin-bottom: 2rem;
      }

      .fl-certificates-table table {
        width: 100%;
        border-collapse: collapse;
        font-size: 0.9rem;
      }

      .fl-certificates-table thead {
        background: #f8fafc;
      }

      .fl-certificates-table th {
        text-align: left;
        padding: 0.75rem;
        font-weight: 600;
        color: #6b7280;
        text-transform: uppercase;
        font-size: 0.75rem;
        letter-spacing: 0.03em;
        border-bottom: 2px solid #e5e7eb;
      }

      .fl-certificates-table td {
        padding: 0.75rem;
        border-bottom: 1px solid #e5e7eb;
        color: #111827;
      }

      .fl-certificates-table tbody tr:hover {
        background: #f9fafb;
      }

      .fl-route-arrow {
        background: none !important;
        border: none !important;
        transition: none !important;
      }

      .fl-port-single {
        font-weight: 700;
        color: #f59e0b;
        font-size: 0.95rem;
      }

      .fl-in-progress {
        color: #f59e0b;
        font-weight: 600;
      }

      /* Company History Lightbox */
      .fl-company-content {
        padding: 2rem;
        max-width: 900px;
        margin: 0 auto;
      }

      /* Company History Timeline Improvements */
      .fl-company-summary {
        background: #fff;
        border: 1px solid #e5e7eb;
        border-radius: 0.75rem;
        padding: 1.5rem;
        margin-bottom: 2rem;
      }

      .fl-company-summary h3 {
        margin: 0 0 1rem;
        font-size: 1.5rem;
        color: #111827;
        font-weight: 700;
      }

      .fl-company-meta {
        display: flex;
        gap: 2rem;
        flex-wrap: wrap;
        font-size: 0.9rem;
        color: #6b7280;
      }

      .fl-company-meta span {
        display: flex;
        align-items: center;
        gap: 0.5rem;
      }

      .fl-company-timeline {
        position: relative;
        padding-left: 2rem;
      }

      .fl-company-timeline::before {
        content: '';
        position: absolute;
        left: 0.5rem;
        top: -2.1rem;
        bottom: 0;
        width: 2px;
        height: calc(100% + 4.1rem);
        background: #e5e7eb;
      }

      .fl-timeline-entry {
        position: relative;
        margin-bottom: 2rem;
        padding-bottom: 2rem;
      }

      .fl-timeline-entry::before {
          content: '';
          position: absolute;
          background: #e5e7eb;
          height: 2px;
          width: 20px;
          top: 0.9rem;
          left: -1.2rem;
      }

      .fl-timeline-entry:last-child {
        padding-bottom: 0;
        margin-bottom: 0;
      }

      .fl-timeline-marker {
        position: absolute;
        left: -2.15rem;
        top: 0.25rem;
        width: 1rem;
        height: 1rem;
        border-radius: 50%;
        background: #4f46e5;
        border: 3px solid #fff;
        box-shadow: 0 0 0 1px #e5e7eb;
        z-index: 1;
      }

      .fl-timeline-content {
        background: #f9fafb;
        border: 1px solid #e5e7eb;
        border-radius: 0.5rem;
        padding: 1rem;
      }

      .fl-timeline-date {
        font-size: 0.875rem;
        font-weight: 600;
        color: #4f46e5;
        margin-bottom: 0.75rem;
      }

      .fl-timeline-company {
        font-size: 1rem;
        margin-bottom: 0.5rem;
      }

      .fl-timeline-company strong {
        color: #111827;
        font-weight: 700;
      }

      @media (max-width: 640px) {
        .fl-company-meta {
          flex-direction: column;
          gap: 0.5rem;
        }
        
        .fl-company-timeline {
          padding-left: 1.5rem;
        }
        
        .fl-timeline-marker {
          left: -1.25rem;
        }
      }

      .fl-timeline-fleet {
        font-size: 0.9rem;
        color: #374151;
        margin-bottom: 0.5rem;
      }

      .fl-timeline-changes {
        margin-top: 0.75rem;
      }

      .fl-timeline-changes strong {
        display: block;
        margin-bottom: 0.5rem;
        color: #111827;
        font-size: 0.875rem;
      }

      .fl-timeline-changes ul {
        list-style: none;
        margin: 0;
        padding: 0;
      }

      .fl-timeline-changes li {
        padding: 0.5rem;
        margin-bottom: 0.5rem;
        border-radius: 0.375rem;
        font-size: 0.875rem;
      }

      .fl-change-positive {
        background: #d1fae5;
        color: #065f46;
        border-left: 3px solid #10b981;
      }

      .fl-change-negative {
        background: #fee2e2;
        color: #991b1b;
        border-left: 3px solid #ef4444;
      }

      .fl-change-neutral {
        background: #eff6ff;
        color: #1e40af;
        border-left: 3px solid #3b82f6;
      }

      @media (max-width: 640px) {
        .fl-company-content {
          padding: 1rem;
        }
        
        .fl-company-meta {
          flex-direction: column;
          gap: 0.5rem;
        }
        
        .fl-company-timeline {
          padding-left: 1.5rem;
        }
      }

      @media (max-width: 640px) {
        .fl-port-map {
          height: 300px;
        }
        
        .fl-port-times {
          flex-direction: column;
          gap: 0.25rem;
        }
        
        .fl-certificates-table {
          font-size: 0.8rem;
        }
        
        .fl-certificates-table th,
        .fl-certificates-table td {
          padding: 0.5rem;
        }
      }
      /* === PSC HISTORY LIGHTBOX === */
      /* All styles scoped to #fl-psc-lightbox to prevent affecting main page */
      #fl-psc-lightbox .fl-psc-summary {
        padding: 1.5rem;
        background: #fff;
      }
      
      #fl-psc-lightbox .fl-psc-summary-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 1rem;
        margin-bottom: 1.5rem;
      }
      
      #fl-psc-lightbox .fl-psc-summary-card {
        background: #f9fafb;
        border: 1px solid #e5e7eb;
        border-radius: 0.5rem;
        padding: 1rem;
        text-align: center;
      }
      
      #fl-psc-lightbox .fl-psc-summary-card.fl-psc-warning {
        background: #fef2f2;
        border-color: #fecaca;
      }
      
      #fl-psc-lightbox .fl-psc-summary-card.fl-risk-high {
        background: #fee2e2;
        border-color: #f87171;
      }
      
      #fl-psc-lightbox .fl-psc-summary-card.fl-risk-medium {
        background: #fed7aa;
        border-color: #fb923c;
      }
      
      #fl-psc-lightbox .fl-psc-summary-card.fl-risk-low {
        background: #d1fae5;
        border-color: #6ee7b7;
      }
      
      #fl-psc-lightbox .fl-psc-summary-value {
        font-size: 2rem;
        font-weight: 700;
        color: #111827;
      }
      
      #fl-psc-lightbox .fl-psc-summary-label {
        font-size: 0.875rem;
        color: #6b7280;
        margin-top: 0.25rem;
      }
      
      #fl-psc-lightbox .fl-psc-filters {
        display: flex;
        gap: 1rem;
        padding: 1rem 1.5rem;
        background: #f9fafb;
        border-bottom: 1px solid #e5e7eb;
      }
      
      #fl-psc-lightbox .fl-psc-content {
        padding: 1.5rem;
      }
      
      #fl-psc-lightbox .fl-psc-inspections-list {
        display: flex;
        flex-direction: column;
        gap: 1rem;
      }
      
      #fl-psc-lightbox .fl-inspection-entry {
        background: #fff;
        border: 1px solid #e5e7eb;
        border-radius: 0.5rem;
        padding: 1rem;
      }
      
      #fl-psc-lightbox .fl-inspection-entry.fl-inspection-detained {
        border-left: 4px solid #ef4444;
        background: #fef2f2;
      }
      
      #fl-psc-lightbox .fl-inspection-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 0.75rem;
        padding-bottom: 0.75rem;
        border-bottom: 1px solid #e5e7eb;
      }
      
      #fl-psc-lightbox .fl-inspection-date {
        font-weight: 600;
        color: #111827;
        font-size: 1rem;
      }
      
      #fl-psc-lightbox .fl-inspection-status {
        font-size: 0.875rem;
        font-weight: 600;
        padding: 0.25rem 0.75rem;
        border-radius: 0.25rem;
      }
      
      #fl-psc-lightbox .fl-inspection-entry.fl-inspection-detained .fl-inspection-status {
        background: #fee2e2;
        color: #991b1b;
      }
      
      #fl-psc-lightbox .fl-inspection-entry:not(.fl-inspection-detained) .fl-inspection-status {
        background: #d1fae5;
        color: #065f46;
      }
      
      #fl-psc-lightbox .fl-inspection-details {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 0.5rem;
      }
      
      #fl-psc-lightbox .fl-inspection-detail {
        font-size: 0.875rem;
        color: #374151;
      }
      
      #fl-psc-lightbox .fl-inspection-detail strong {
        color: #6b7280;
      }
      
      /* === CERTIFICATES LIGHTBOX === */
      .fl-cert-summary {
        padding: 1.5rem;
        background: #fff;
        border-bottom: 1px solid #e5e7eb;
      }
      
      .fl-cert-summary-grid {
        display: flex;
        justify-content: space-around;
        gap: 1rem;
        flex-wrap: wrap;
      }
      
      .fl-cert-stat {
        text-align: center;
        padding: 0.5rem 1rem;
      }
      
      .fl-cert-stat strong {
        display: block;
        font-size: 1.5rem;
        margin-bottom: 0.25rem;
      }
      
      .fl-cert-stat.fl-cert-valid strong {
        color: #10b981;
      }
      
      .fl-cert-stat.fl-cert-expiring strong {
        color: #f59e0b;
      }
      
      .fl-cert-stat.fl-cert-expired strong {
        color: #ef4444;
      }
      
      .fl-cert-content {
        padding: 1.5rem;
      }
      
      .fl-certificates-table table {
        width: 100%;
        border-collapse: collapse;
        background: #fff;
      }
      
      .fl-certificates-table th {
        text-align: left;
        padding: 0.75rem;
        background: #f9fafb;
        color: #6b7280;
        font-weight: 600;
        font-size: 0.875rem;
        text-transform: uppercase;
        border-bottom: 2px solid #e5e7eb;
      }
      
      .fl-certificates-table td {
        padding: 1rem 0.75rem;
        border-bottom: 1px solid #e5e7eb;
        color: #111827;
      }
      
      .fl-certificates-table tbody tr:hover {
        background: #f9fafb;
      }
      
      .fl-cert-badge {
        display: inline-block;
        padding: 0.25rem 0.75rem;
        border-radius: 0.25rem;
        font-size: 0.875rem;
        font-weight: 600;
      }
      
      .fl-cert-badge.fl-status-valid {
        background: #d1fae5;
        color: #065f46;
      }
      
      .fl-cert-badge.fl-status-expiring {
        background: #fed7aa;
        color: #92400e;
      }
      
      .fl-cert-badge.fl-status-expired {
        background: #fee2e2;
        color: #991b1b;
      }
      
      @media (max-width: 640px) {
        .fl-psc-filters {
          flex-direction: column;
        }
        
        .fl-inspection-details {
          grid-template-columns: 1fr;
        }
        
        .fl-certificates-table {
          overflow-x: auto;
        }
        
        .fl-certificates-table table {
          min-width: 600px;
        }
      }
      /* History Icons & Buttons */
      a.fl-history-icon {
        font-size: 0.85em;
        text-decoration: none;
        margin-left: 0.5rem;
        cursor: pointer;
        opacity: 0.7;
        transition: opacity 0.2s;
        display: inline-block;
      }

      a.fl-history-icon:hover {
        opacity: 1;
      }

      .fl-class-actions {
        margin-top: 1rem;
      }

      .fl-class-history-btn,
      .fl-name-history-btn,
      .fl-flag-history-btn {
        background: #f3f4f6;
        color: #111827;
        border: 1px solid #d1d5db;
        border-radius: 0.5rem;
        padding: 0.75rem 1rem;
        font-size: 0.9rem;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
      }

      .fl-class-history-btn:hover,
      .fl-name-history-btn:hover,
      .fl-flag-history-btn:hover {
        background: #e5e7eb;
        border-color: #9ca3af;
      }

      /* History Timeline Styles */
      .fl-history-timeline {
        padding: 1.5rem 2rem;
        background: #0a0a0a;
        min-height: 300px;
      }

      .fl-history-item {
        display: grid;
        grid-template-columns: 120px 50px 1fr;
        gap: 1.25rem;
        padding: 1.25rem 0;
        border-bottom: 1px solid #2a2a2a;
        align-items: start;
      }

      .fl-history-item:last-child {
        border-bottom: none;
      }

      .fl-history-item .fl-history-date {
        color: #9ca3af !important;
        font-size: 0.9rem;
        font-weight: 600;
        padding-top: 0.35rem;
      }

      /* Timeline icon circle */
      .fl-history-item .fl-history-icon {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.25rem;
        flex-shrink: 0;
      }

      .fl-history-item.fl-history-active .fl-history-icon {
        background: linear-gradient(135deg, #10b981 0%, #059669 100%);
        box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.2);
      }

      .fl-history-item.fl-history-inactive .fl-history-icon {
        background: #1f2937;
        border: 2px solid #374151;
      }

      .fl-history-content {
        min-width: 0;
        padding-top: 0.15rem;
      }

      .fl-history-content .fl-history-title {
        font-weight: 700 !important;
        color: #f9fafb !important;
        font-size: 1.05rem !important;
        margin-bottom: 0.5rem !important;
        line-height: 1.3 !important;
      }

      .fl-history-status {
        font-size: 0.85rem;
        color: #9ca3af;
        margin-bottom: 0.25rem;
      }

      .fl-history-reason {
        font-size: 0.85rem;
        color: #6b7280;
        font-style: italic;
      }

      .fl-history-badge {
        display: inline-block;
        background: linear-gradient(135deg, #10b981 0%, #059669 100%);
        color: white;
        padding: 0.25rem 0.65rem;
        border-radius: 999px;
        font-size: 0.7rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.03em;
        margin-top: 0.5rem;
        box-shadow: 0 2px 4px rgba(16, 185, 129, 0.3);
      }

      .fl-history-content .fl-history-source {
        font-size: 0.75rem !important;
        color: #9ca3af !important;
        margin-top: 0.5rem;
        font-style: italic;
      }

      /* Lightbox scrollbar styling for dark theme */
      .fl-history-lightbox ::-webkit-scrollbar {
        width: 10px;
      }

      .fl-history-lightbox ::-webkit-scrollbar-track {
        background: #1a1a1a;
      }

      .fl-history-lightbox ::-webkit-scrollbar-thumb {
        background: #374151;
        border-radius: 5px;
      }

      .fl-history-lightbox ::-webkit-scrollbar-thumb:hover {
        background: #4b5563;
      }

      /* Global lightbox text color fixes */
      .fl-history-lightbox h2,
      .fl-history-lightbox h3,
      .fl-history-lightbox h4 {
        color: #f9fafb !important;
      }

      .fl-history-lightbox p,
      .fl-history-lightbox div,
      .fl-history-lightbox span,
      .fl-history-lightbox td,
      .fl-history-lightbox th {
        color: #e5e7eb;
      }

      .fl-history-lightbox a {
        color: #60a5fa;
      }

      .fl-history-lightbox a:hover {
        color: #93c5fd;
      }

      /* Specific lightbox content areas */
      #fl-name-content,
      #fl-flag-content,
      #fl-class-content,
      #fl-certificates-content,
      #fl-psc-content {
        color: #e5e7eb !important;
      }

      /* Loading and no-data states */
      .fl-loading,
      .fl-no-history {
        color: #e5e7eb !important;
      }

      .fl-loading div,
      .fl-no-history div {
        color: #e5e7eb !important;
      }

      /* Responsive adjustments */
      @media (max-width: 768px) {
        .fl-history-timeline {
          padding: 1rem;
        }

        .fl-history-item {
          grid-template-columns: 90px 40px 1fr;
          gap: 0.75rem;
          padding: 1rem 0;
        }

        .fl-history-date {
          font-size: 0.8rem;
        }

        .fl-history-item .fl-history-icon {
          width: 35px;
          height: 35px;
          font-size: 1.1rem;
        }

        .fl-history-content .fl-history-title {
          font-size: 0.95rem;
        }
      }

      /* PSC History Lightbox Styles */
      .fl-psc-timeline {
        padding: 1.5rem 2rem;
        background: #0a0a0a;
        min-height: 300px;
      }

      .fl-psc-item {
        background: #1a1a1a;
        border: 1px solid #2a2a2a;
        border-radius: 0.5rem;
        padding: 1.25rem;
        margin-bottom: 1rem;
      }

      .fl-psc-item:hover {
        border-color: #374151;
        background: #1f1f1f;
      }

      .fl-psc-date,
      .fl-psc-port,
      .fl-psc-deficiencies {
        color: #e5e7eb !important;
        margin-bottom: 0.5rem;
      }

      .fl-psc-date {
        font-weight: 700;
        font-size: 1rem;
        color: #f9fafb !important;
      }

      .fl-psc-port {
        font-size: 0.9rem;
        color: #9ca3af !important;
      }

      .fl-psc-deficiencies {
        font-size: 0.85rem;
        color: #fca5a5 !important;
      }

      /* Classification History Styles */
      .fl-class-timeline {
        padding: 1.5rem 2rem;
        background: #0a0a0a;
        min-height: 300px;
      }

      .fl-class-item {
        background: #1a1a1a;
        border: 1px solid #2a2a2a;
        border-radius: 0.5rem;
        padding: 1.25rem;
        margin-bottom: 1rem;
      }

      .fl-class-item:hover {
        border-color: #374151;
        background: #1f1f1f;
      }

      /* Certificates Lightbox Styles */
      .fl-certificates-table {
        background: #0a0a0a;
        padding: 1.5rem 2rem;
        min-height: 300px;
      }

      .fl-cert-item {
        background: #1a1a1a;
        border: 1px solid #2a2a2a;
        border-radius: 0.5rem;
        padding: 1.25rem;
        margin-bottom: 1rem;
      }

      .fl-cert-item:hover {
        border-color: #374151;
        background: #1f1f1f;
      }

      .fl-cert-name {
        font-weight: 700;
        font-size: 1rem;
        color: #f9fafb !important;
        margin-bottom: 0.5rem;
      }

      .fl-cert-details {
        color: #9ca3af !important;
        font-size: 0.85rem;
      }

      .fl-cert-details span {
        color: #9ca3af !important;
        margin-right: 1rem;
      }

/* Flag History Lightbox Styles */
.fl-flag-timeline {
  padding: 1.5rem 2rem;
  background: #0a0a0a;
  min-height: 300px;
}

.fl-flag-item {
  display: grid;
  grid-template-columns: 120px 50px 1fr;
  gap: 1.25rem;
  padding: 1.25rem 0;
  border-bottom: 1px solid #2a2a2a;
  align-items: start;
}

.fl-flag-item:last-child {
  border-bottom: none;
}

.fl-flag-date {
  color: #9ca3af !important;
  font-size: 0.9rem;
  font-weight: 600;
  padding-top: 0.35rem;
}

.fl-flag-emoji {
  font-size: 2rem;
  line-height: 1;
}

.fl-flag-name {
  font-weight: 700;
  color: #f9fafb !important;
  font-size: 1.05rem;
  margin-bottom: 0.5rem;
}

.fl-flag-detail {
  font-size: 0.85rem;
  color: #9ca3af !important;
}

/* Certificates Lightbox - Comprehensive Styling */
.fl-cert-summary {
  background: #1a1a1a;
  padding: 1.5rem 2rem;
  border-bottom: 1px solid #2a2a2a;
}

.fl-cert-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 1rem;
}

.fl-cert-stat {
  background: #0a0a0a;
  padding: 1rem;
  border-radius: 0.5rem;
  text-align: center;
  border: 1px solid #2a2a2a;
  color: #e5e7eb !important;
}

.fl-cert-stat strong {
  display: block;
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 0.25rem;
  color: #f9fafb !important;
}

.fl-cert-stat.fl-cert-valid {
  border-color: #10b981;
  background: rgba(16, 185, 129, 0.1);
}

.fl-cert-stat.fl-cert-valid strong {
  color: #10b981 !important;
}

.fl-cert-stat.fl-cert-expiring {
  border-color: #f59e0b;
  background: rgba(245, 158, 11, 0.1);
}

.fl-cert-stat.fl-cert-expiring strong {
  color: #f59e0b !important;
}

.fl-cert-stat.fl-cert-expired {
  border-color: #ef4444;
  background: rgba(239, 68, 68, 0.1);
}

.fl-cert-stat.fl-cert-expired strong {
  color: #ef4444 !important;
}

/* Certificates Table Styling */
.fl-cert-content {
  background: #0a0a0a;
  padding: 1.5rem 2rem;
  min-height: 300px;
}

.fl-certificates-table table {
  width: 100%;
  border-collapse: collapse;
  background: #1a1a1a;
  border-radius: 0.5rem;
  overflow: hidden;
}

.fl-certificates-table thead {
  background: #2a2a2a;
}

.fl-certificates-table th {
  padding: 1rem;
  text-align: left;
  font-weight: 700;
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #9ca3af !important;
  border-bottom: 2px solid #374151;
}

.fl-certificates-table td {
  padding: 1rem;
  color: #e5e7eb !important;
  border-bottom: 1px solid #2a2a2a;
  vertical-align: middle;
}

.fl-certificates-table tbody tr:hover {
  background: #1f1f1f;
}

.fl-certificates-table td strong {
  color: #f9fafb !important;
  font-weight: 700;
}

.fl-certificates-table .fl-cert-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.75rem;
  border-radius: 0.375rem;
  font-size: 0.85rem;
  font-weight: 600;
  white-space: nowrap;
}

.fl-certificates-table .fl-cert-badge.fl-status-valid {
  background: rgba(16, 185, 129, 0.2);
  color: #10b981 !important;
  border: 1px solid #10b981;
}

.fl-certificates-table .fl-cert-badge.fl-status-expiring {
  background: rgba(245, 158, 11, 0.2);
  color: #f59e0b !important;
  border: 1px solid #f59e0b;
}

.fl-certificates-table .fl-cert-badge.fl-status-expired {
  background: rgba(239, 68, 68, 0.2);
  color: #ef4444 !important;
  border: 1px solid #ef4444;
}

/* Responsive table */
@media (max-width: 768px) {
  .fl-cert-summary-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .fl-certificates-table {
    overflow-x: auto;
  }
  
  .fl-certificates-table table {
    min-width: 600px;
  }
  
  .fl-certificates-table th,
  .fl-certificates-table td {
    padding: 0.75rem 0.5rem;
    font-size: 0.85rem;
  }
}

/* PSC Inspection History Lightbox - Comprehensive Styling */
#fl-psc-lightbox .fl-psc-content {
  background: #0a0a0a;
  padding: 1.5rem 2rem;
  min-height: 300px;
}

/* PSC Summary Stats */
#fl-psc-lightbox .fl-psc-summary {
  background: #1a1a1a !important;
  padding: 1.5rem 2rem;
  border-bottom: 1px solid #2a2a2a;
  margin-bottom: 1.5rem;
}

#fl-psc-lightbox .fl-psc-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 1rem;
}

#fl-psc-lightbox .fl-psc-summary-stat {
  background: #0a0a0a !important;
  padding: 1rem;
  border-radius: 0.5rem;
  text-align: center;
  border: 1px solid #2a2a2a;
  color: #e5e7eb !important;
}

#fl-psc-lightbox .fl-psc-summary-stat strong {
  display: block;
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 0.25rem;
  color: #f9fafb !important;
}

#fl-psc-lightbox .fl-psc-summary-stat.fl-psc-warning strong {
  color: #ef4444 !important;
}

/* Override any conflicting styles */
#fl-psc-lightbox .fl-psc-summary-stat * {
  color: inherit !important;
}

/* PSC Filters */
#fl-psc-lightbox .fl-psc-filters {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.5rem;
  padding: 1rem 2rem;
  background: #1a1a1a;
  border-bottom: 1px solid #2a2a2a;
}

#fl-psc-lightbox .fl-psc-filters select {
  background: #0a0a0a;
  color: #e5e7eb;
  border: 1px solid #374151;
  border-radius: 0.375rem;
  padding: 0.5rem 1rem;
  font-size: 0.9rem;
  cursor: pointer;
}

#fl-psc-lightbox .fl-psc-filters select:focus {
  outline: none;
  border-color: #667eea;
}

/* PSC Inspection Cards */
#fl-psc-lightbox .fl-psc-inspection {
  background: #1a1a1a !important;
  border: 1px solid #2a2a2a !important;
  border-radius: 0.5rem;
  padding: 1.25rem;
  margin-bottom: 1rem;
  transition: all 0.2s;
}

#fl-psc-lightbox .fl-psc-inspection:hover {
  border-color: #374151 !important;
  background: #1f1f1f !important;
  transform: translateX(2px);
}

#fl-psc-lightbox .fl-psc-inspection-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #2a2a2a;
}

#fl-psc-lightbox .fl-psc-inspection-date {
  font-weight: 700;
  font-size: 1.1rem;
  color: #f9fafb !important;
  margin-bottom: 0.25rem;
}

#fl-psc-lightbox .fl-psc-inspection-port {
  font-size: 0.9rem;
  color: #9ca3af !important;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

/* Force all text colors in inspection cards */
#fl-psc-lightbox .fl-psc-inspection * {
  color: inherit;
}

#fl-psc-lightbox .fl-psc-inspection-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.75rem;
  border-radius: 0.375rem;
  font-size: 0.85rem;
  font-weight: 600;
  white-space: nowrap;
}

#fl-psc-lightbox .fl-psc-inspection-badge.fl-psc-clean {
  background: rgba(16, 185, 129, 0.2);
  color: #10b981 !important;
  border: 1px solid #10b981;
}

#fl-psc-lightbox .fl-psc-inspection-badge.fl-psc-deficiencies {
  background: rgba(239, 68, 68, 0.2);
  color: #ef4444 !important;
  border: 1px solid #ef4444;
}

#fl-psc-lightbox .fl-psc-inspection-badge.fl-psc-detention {
  background: rgba(239, 68, 68, 0.3);
  color: #ef4444 !important;
  border: 2px solid #ef4444;
  font-weight: 700;
}

/* Inspection Details */
#fl-psc-lightbox .fl-inspection-details {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1rem;
}

#fl-psc-lightbox .fl-inspection-detail {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

#fl-psc-lightbox .fl-inspection-label {
  font-size: 0.75rem;
  color: #6b7280 !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 600;
}

#fl-psc-lightbox .fl-inspection-value {
  font-size: 0.95rem;
  color: #e5e7eb !important;
  font-weight: 500;
}

#fl-psc-lightbox .fl-inspection-value strong {
  color: #f9fafb !important;
}

/* Deficiency List */
#fl-psc-lightbox .fl-deficiency-list {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid #2a2a2a;
}

#fl-psc-lightbox .fl-deficiency-title {
  font-size: 0.9rem;
  font-weight: 700;
  color: #f9fafb !important;
  margin-bottom: 0.75rem;
}

#fl-psc-lightbox .fl-deficiency-item {
  background: #0a0a0a;
  border: 1px solid #2a2a2a;
  border-radius: 0.375rem;
  padding: 0.75rem;
  margin-bottom: 0.5rem;
  font-size: 0.85rem;
  color: #9ca3af !important;
}

#fl-psc-lightbox .fl-deficiency-item:last-child {
  margin-bottom: 0;
}

#fl-psc-lightbox .fl-deficiency-code {
  font-weight: 700;
  color: #ef4444 !important;
  margin-right: 0.5rem;
}

/* No inspections message */
#fl-psc-lightbox .fl-psc-no-data {
  text-align: center;
  padding: 3rem 2rem;
  color: #9ca3af !important;
}

#fl-psc-lightbox .fl-psc-no-data-icon {
  font-size: 3rem;
  margin-bottom: 1rem;
  opacity: 0.5;
}

/* Responsive */
@media (max-width: 768px) {
  #fl-psc-lightbox .fl-psc-filters {
    flex-direction: column;
  }
  
  #fl-psc-lightbox .fl-inspection-details {
    grid-template-columns: 1fr;
  }
  
  #fl-psc-lightbox .fl-psc-inspection-header {
    flex-direction: column;
    gap: 0.75rem;
  }
  
  #fl-psc-lightbox .fl-psc-content {
    padding: 1rem;
  }
}
