.tl-summary{font-size:0.95rem;color:#333;margin:6px 0 0}
    .tl-table-wrap{overflow-x:auto;border:1px solid #dfe4e9;border-radius:6px}
    .tl-table{width:100%;border-collapse:collapse;font-size:0.9rem}
    .tl-table th{position:sticky;top:0;background:#0f2942;color:#fff;text-align:left;padding:9px 10px;font-weight:600;font-size:0.82rem;letter-spacing:.02em}
    .tl-table td{padding:9px 10px;border-top:1px solid #e6eaee;vertical-align:top}
    .tl-table tbody tr:nth-child(even){background:#f8fafb}
    .tl-table tbody tr:target{background:#fff6d6}
    .tl-name strong{color:#14243a}
    .tl-sub{color:#667;font-size:0.8rem;margin-top:3px}
    .tl-site{font-size:0.8rem;white-space:nowrap}
    .tl-badge{display:inline-block;background:#e3f4e8;color:#1e6b3a;font-size:0.7rem;font-weight:600;padding:1px 6px;border-radius:9px;vertical-align:middle}
    .tl-muted{color:#99a}
    .tl-foot{font-size:0.78rem;color:#666;margin-top:6px}
    .tl-card[hidden]{display:none !important}
    .tl-lock{border:1px solid #c9d2da;background:#fff;border-radius:5px;padding:4px 9px;font-size:0.8rem;cursor:pointer;white-space:nowrap}
    .tl-lock:hover{background:#eef3f8}
    .tl-gate{margin:12px 0 14px;padding:14px 16px;background:#fff8e6;border:1px solid #f0d58a;border-radius:8px}
    .tl-gate.done{display:none}
    .tl-gate-txt{font-size:0.92rem;color:#3a3020;margin-bottom:10px}
    .tl-gate-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
    .tl-gate-form input[type=email],.tl-gate-form input[type=text]{flex:1 1 200px;padding:9px 11px;border:1px solid #c9b77a;border-radius:5px;font-size:0.92rem}
    .tl-gate-form button{padding:9px 16px;background:#0f2942;color:#fff;border:none;border-radius:5px;font-weight:600;cursor:pointer}
    .tl-gate-consent{flex-basis:100%;font-size:0.8rem;color:#555;display:flex;gap:6px;align-items:center}
    .tl-gate-err{flex-basis:100%;color:#b42318;font-size:0.85rem}
    .tl-gate.flash{box-shadow:0 0 0 3px #f0d58a}
    @media (max-width:720px){
      .tl-table thead{display:none}
      .tl-table,.tl-table tbody,.tl-table tr,.tl-table td{display:block;width:100%}
      .tl-table tr{border-top:1px solid #dfe4e9;padding:8px 4px}
      .tl-table td{border:none;padding:3px 8px}
      .tl-table td:not(.tl-name)::before{content:attr(data-label) ": ";color:#667;font-size:0.8rem}
    }
.tl-handle{border:none;background:#1f6fb2;color:#fff;border-radius:5px;padding:4px 9px;font-size:0.78rem;cursor:pointer;white-space:nowrap;margin-top:4px}
    .tl-handle:hover{background:#185a91}
    .tl-handle-big{padding:10px 16px;font-size:0.92rem;font-weight:600;margin:0}
    .tl-handle-bar{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:12px 0;padding:14px 16px;background:#eaf3fb;border:1px solid #b9d5ee;border-radius:8px;font-size:0.92rem}
    .tl-modal{position:fixed;inset:0;background:rgba(10,25,45,.55);display:none;align-items:flex-start;justify-content:center;z-index:9999;overflow-y:auto;padding:30px 12px}
    .tl-modal.open{display:flex}
    .tl-modal-box{background:#fff;border-radius:10px;max-width:560px;width:100%;padding:20px 22px;box-shadow:0 12px 40px rgba(0,0,0,.25)}
    .tl-modal-box h3{margin:0 0 4px;color:#14243a}
    .tl-modal-box p{margin:0 0 12px;font-size:0.88rem;color:#556}
    .tl-modal-box label{display:block;font-size:0.8rem;font-weight:600;color:#334;margin:9px 0 3px}
    .tl-modal-box input,.tl-modal-box textarea,.tl-modal-box select{width:100%;box-sizing:border-box;padding:9px 10px;border:1px solid #c9d2da;border-radius:5px;font-size:0.92rem;font-family:inherit}
    .tl-modal-row{display:flex;gap:10px}.tl-modal-row>div{flex:1}
    .tl-modal-fac{background:#f4f6f8;border-radius:5px;padding:8px 10px;font-size:0.85rem;margin-top:6px}
    .tl-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}
    .tl-modal-actions button{padding:10px 16px;border-radius:5px;font-weight:600;cursor:pointer}
    .tl-modal-send{background:#0f2942;color:#fff;border:none}
    .tl-modal-cancel{background:#fff;border:1px solid #c9d2da}
    .tl-modal-err{color:#b42318;font-size:0.85rem;margin-top:8px}
    .tl-modal-done{font-size:0.95rem;color:#1e6b3a}
    @media (max-width:520px){.tl-modal-row{flex-direction:column;gap:0}}
.tl-filter{margin:14px 0 18px;padding:12px 14px;background:#f4f6f8;border:1px solid #dfe4e9;border-radius:6px}
    .tl-filter-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
    .tl-filter-row+.tl-filter-row{margin-top:8px}
    .tl-filter input[type=search],.tl-filter select{padding:8px 10px;border:1px solid #c9d2da;border-radius:5px;font-size:0.9rem;background:#fff;color:#222}
    .tl-filter input[type=search]{flex:1 1 240px;min-width:0}
    .tl-filter-toggles label{font-size:0.85rem;color:#333;display:inline-flex;align-items:center;gap:5px}
    .tl-filter button{padding:7px 14px;border:1px solid #c9d2da;background:#fff;border-radius:5px;cursor:pointer;font-size:0.85rem}
    .tl-filter button:hover{background:#eef1f4}
    .tl-count{font-size:0.85rem;color:#555;margin-left:auto}
    .tl-sparse{margin:8px 0 0;font-size:0.78rem;color:#666;line-height:1.45}
    .tl-empty{padding:14px;color:#666;font-size:0.9rem}
    /* .railroad-item may carry a display rule in style.css, which would beat
       the [hidden] UA default and leave "hidden" cards visible. */
    .tl-card[hidden]{display:none !important}
    .tl-citylist.is-collapsed .tl-city-extra{display:none}
    .tl-morecities{background:none;border:none;color:#1f4e8c;cursor:pointer;font-size:0.9rem;padding:4px 0;text-decoration:underline}
