/* TRAVSCOPE V25.00 — progressive workspace controls & inclusive reading polish.
   SCREEN ONLY; never styles the print/PDF output. */
@media screen {
  :root { --ts25-border:#d7e3f3; --ts25-ink:#123358; --ts25-blue:#1769e0; }
  .ts25-skip-link {
    position:fixed!important;left:14px;top:-110px;z-index:2147483640;
    padding:10px 17px;border-radius:10px;background:#092e60;color:#fff!important;
    font-size:15px;font-weight:750;text-decoration:none;box-shadow:0 6px 18px #0003;
  }
  .ts25-skip-link:focus {top:12px;outline:3px solid #facc15;outline-offset:3px;}
  #ts25-main:focus {outline:none;}
  .ts25-toolbar {
    display:flex;align-items:center;flex-wrap:wrap;gap:9px;
    border:1px solid var(--ts25-border);background:#fff;
    box-shadow:0 3px 16px rgba(20,53,89,.04);border-radius:12px;
    padding:9px 12px;margin:0 0 15px;max-width:100%;box-sizing:border-box;
    color:var(--ts25-ink);font:600 13px/1.4 var(--ts99-font-body,Arial,sans-serif);
  }
  .ts25-toolbar * {box-sizing:border-box;}
  .ts25-toolbar-title {display:inline-flex;align-items:center;gap:7px;font-weight:800;white-space:nowrap;margin-right:auto;color:#123358;}
  .ts25-toolbar-label {font-size:12px;font-weight:650;color:#4a607c;}
  .ts25-toolbar-group {display:inline-flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap;}
  .ts25-toolbar select {
    height:38px;min-width:138px;max-width:210px;border:1px solid #cad9eb;
    border-radius:8px;background:#fff;color:#123358;font-size:13px!important;
    padding:0 24px 0 10px;cursor:pointer;
  }
  .ts25-toolbar-btn {
    min-height:38px;min-width:38px;border:1px solid #cad9eb;border-radius:8px;
    display:inline-flex;align-items:center;justify-content:center;gap:6px;
    padding:7px 11px!important;background:#f7faff;color:#18436d;
    font:700 12.5px/1.2 var(--ts99-font-body,Arial,sans-serif)!important;
    cursor:pointer;transition:background-color .15s,border-color .15s;
  }
  .ts25-toolbar-btn:hover {background:#eaf3ff;border-color:#94bbef;}
  .ts25-toolbar-btn[aria-pressed="true"] {color:#fff;background:#155fc6;border-color:#155fc6;}
  .ts25-toolbar :is(button,select):focus-visible,
  .ts25-to-top:focus-visible {outline:3px solid #2563eb!important;outline-offset:2px;}
  .ts25-to-top {
    position:fixed;right:20px;bottom:86px;z-index:70;
    width:43px;height:43px;border-radius:50%;border:1px solid #acc8e9;
    background:#fff;color:#114b8e;box-shadow:0 5px 19px #08234b27;
    display:flex;justify-content:center;align-items:center;cursor:pointer;
    font:800 20px/1 Arial,sans-serif;transition:opacity .15s,transform .15s;
  }
  .ts25-to-top[hidden]{display:none!important;}
  .ts25-to-top:hover{transform:translateY(-2px);}
  .ts25-long-table {scrollbar-color:#aac0dc #f1f6ff;}
  .ts25-long-table:focus-visible{outline:2px solid #1769e0;outline-offset:-2px;}
  .ts25-scroll-hint {
    display:block;margin:0;padding:3px 8px 5px;
    font:650 11px/1.5 var(--ts99-font-body,Arial,sans-serif);
    text-align:right;color:#566c88;background:transparent;
  }
  body.ts25-compact main :is(.form-grid,.details-grid,.filter-grid,.filters,.field-grid) {gap:9px;}
  body.ts25-compact main :is(.field,.form-group) {margin-bottom:10px;}
  body.ts25-compact main :is(.card-body,.panel-body) {padding-block:12px;}
  body.ts25-compact main :is(.page-head,.section-head,.panel-head) {margin-bottom:10px;}
  body.ts25-readable main :is(p,li,dd,blockquote,.description,.subtitle,.note,.helper-text) {
    font-size:max(15px,1em)!important;line-height:1.68!important;
  }
  body.ts25-readable main :is(td,th,label,.field-hint,.form-help,.small-note) {
    font-size:max(13.5px,1em)!important;line-height:1.6!important;
  }
  body.ts25-readable main :is(input:not([type="checkbox"]):not([type="radio"]),textarea,select) {
    font-size:16px!important;line-height:1.55!important;
  }
  body.ts25-readable main textarea {min-height:105px;}
  main :is(h1,h2,h3,h4)[id^="ts25-section-"] {scroll-margin-top:90px;}
}
@media screen and (max-width:900px){
  .ts25-toolbar-title{margin-right:0;flex:1 1 100%;}
  .ts25-toolbar{gap:8px;}
}
@media screen and (max-width:600px){
  .ts25-toolbar{padding:9px;gap:8px;}
  .ts25-toolbar-group{flex:1 1 100%;}
  .ts25-toolbar select{flex:1 1 160px;max-width:none;font-size:16px!important;height:44px;}
  .ts25-toolbar-btn{flex:1 1 auto;min-height:44px;font-size:13px!important;}
  .ts25-to-top{right:12px;bottom:88px;width:42px;height:42px;}
  .ts25-toolbar-label{font-size:13px;}
}
@media screen and (prefers-reduced-motion:reduce){
  .ts25-toolbar-btn,.ts25-to-top{transition:none!important;}
}
