:root{
  --navy:#0B1B2B;
  --navy-2:#122943;
  --navy-3:#1A3550;
  --surface:#F3F6F7;
  --card:#FFFFFF;
  --line:#DCE3E7;
  --line-2:#EAEFF1;
  --ink:#0F2027;
  --muted:#5B6E78;
  --teal:#0E7490;
  --teal-dark:#0A5A70;
  --teal-tint:#E3F1F4;
  --amber:#C98A1A;
  --amber-tint:#FBF0DC;
  --blue:#2B6CB0;
  --blue-tint:#E3ECF7;
  --green:#227A5B;
  --green-tint:#E1F1EA;
  --red:#C1352B;
  --red-tint:#FBE7E5;
  --grape:#6B4C9A;
  --grape-tint:#EEE7F6;
  --indigo:#4C5FA6;
  --indigo-tint:#E7EAF6;
  --radius:10px;
  --radius-lg:16px;
  --shadow:0 1px 2px rgba(15,32,39,.06), 0 8px 24px -12px rgba(15,32,39,.18);
  --font-display:'Manrope',sans-serif;
  --font-body:'IBM Plex Sans',sans-serif;
  --font-mono:'IBM Plex Mono',monospace;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  font-family:var(--font-body);
  background:var(--surface);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-family:var(--font-display);margin:0;letter-spacing:-0.01em;}
button{font-family:var(--font-body);cursor:pointer;}
input,select,textarea{font-family:var(--font-body);}
::selection{background:var(--teal);color:#fff;}

.mono{font-family:var(--font-mono);}
.hidden{display:none !important;}
a{color:inherit;}

/* ---------- LOGIN ---------- */
.login-wrap{
  position:relative;
  min-height:100vh;
  color:#F4F8FA;
}
.login-backdrop{
  position:fixed;inset:0;z-index:0;
  background:
    radial-gradient(1000px 620px at 12% -8%, rgba(20,184,166,.14) 0%, transparent 55%),
    radial-gradient(900px 560px at 108% 12%, rgba(18,41,74,.9) 0%, transparent 60%),
    radial-gradient(1200px 800px at 50% 120%, rgba(10,25,48,.9) 0%, transparent 60%),
    linear-gradient(180deg, #060F1F, #0A1930 55%, #060F1F);
}
.login-backdrop::before{
  content:'';position:absolute;inset:0;opacity:.35;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(700px 500px at 50% 30%, black, transparent 75%);
}
.login-page{
  position:relative;z-index:1;
  min-height:100vh;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:28px 20px 40px;
}
.login-topbar{
  position:absolute;top:0;left:0;right:0;
  display:flex;justify-content:space-between;align-items:center;
  padding:22px 30px;
}
.login-org{
  font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;
  color:#7891A6;text-transform:uppercase;
}
.login-clock{
  font-family:var(--font-mono);font-size:12.5px;color:#B9CCDA;
  letter-spacing:.03em;display:flex;align-items:center;gap:8px;
}
.login-live-dot{
  width:6px;height:6px;border-radius:50%;background:#2DD4BF;
  box-shadow:0 0 0 3px rgba(45,212,191,.18);
  animation:login-blink 2.4s ease-in-out infinite;
}
@keyframes login-blink{0%,100%{opacity:1;}50%{opacity:.35;}}
.login-brand{ text-align:center; max-width:560px; margin-bottom:30px; }
.login-emblem{
  width:52px;height:52px;margin:0 auto 22px;
  border-radius:14px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg, rgba(20,184,166,.16), rgba(20,184,166,.03));
  border:1px solid rgba(45,212,191,.28);
  box-shadow:0 0 0 6px rgba(20,184,166,.05), 0 12px 30px -12px rgba(20,184,166,.4);
}
.login-emblem svg{width:24px;height:24px;}
.login-brand .kicker{
  font-family:var(--font-mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;
  color:#7891A6;margin-bottom:14px;
}
.login-brand h1{
  font-size:clamp(26px,3.6vw,36px);line-height:1.15;letter-spacing:-.015em;
  color:#F4F8FA;font-weight:800;margin:0 0 16px;
}
.login-badge{
  display:inline-flex;align-items:center;gap:9px;
  font-family:var(--font-mono);font-size:12px;letter-spacing:.05em;
  color:#2DD4BF;background:rgba(20,184,166,.08);border:1px solid rgba(20,184,166,.25);
  padding:6px 14px 6px 12px;border-radius:999px;
}
.login-badge b{
  color:#060F1F;background:#2DD4BF;font-weight:700;
  padding:1px 7px;border-radius:5px;font-size:11px;
}
.login-pulse-wrap{ width:100%;max-width:420px;margin:26px auto 0;opacity:.85; }
.login-pulse-wrap svg{ width:100%;height:auto;display:block; }
.login-pulse-line{
  fill:none;stroke:url(#pulseGrad);stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round;
  stroke-dasharray:900;stroke-dashoffset:900;
  animation:login-draw 1.8s ease forwards .3s;
}
@keyframes login-draw{to{stroke-dashoffset:0;}}
.login-pulse-dot{ filter:drop-shadow(0 0 5px rgba(45,212,191,.9)); }

.login-card{
  width:100%;max-width:392px;margin-top:30px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;padding:30px 28px 26px;
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  box-shadow:0 30px 60px -30px rgba(0,0,0,.6);
}
.login-card h2{ font-family:var(--font-display);font-size:16px;font-weight:700;color:#F4F8FA;margin:0 0 4px; }
.login-card-sub{ font-size:12.5px;color:#7891A6;margin:0 0 24px; }

.login-field{ position:relative;margin-bottom:16px; }
.login-field input{
  width:100%;padding:18px 14px 8px;
  background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.10);
  border-radius:11px;color:#F4F8FA;font-family:var(--font-body);font-size:14.5px;
  outline:none;transition:border-color .15s ease, background .15s ease;
}
.login-field input::placeholder{ color:transparent; }
.login-field label{
  position:absolute;left:14px;top:16px;font-size:14px;color:#7891A6;
  pointer-events:none;transition:all .14s ease;font-family:var(--font-body);
}
.login-field input:focus{
  border-color:rgba(45,212,191,.55);background:rgba(255,255,255,.05);
  box-shadow:0 0 0 3px rgba(20,184,166,.12);
}
.login-field input:focus + label,
.login-field input:not(:placeholder-shown) + label{
  top:7px;font-size:10.5px;letter-spacing:.03em;color:#2DD4BF;text-transform:uppercase;
}
.login-field-password input{ padding-right:44px; }
.login-eye-btn{
  position:absolute;right:10px;top:14px;width:26px;height:26px;
  display:flex;align-items:center;justify-content:center;
  background:none;border:none;color:#7891A6;cursor:pointer;border-radius:6px;
}
.login-eye-btn:hover{ color:#F4F8FA;background:rgba(255,255,255,.06); }
.login-eye-btn svg{ width:17px;height:17px; }

.login-btn-enter{
  width:100%;padding:13.5px;border:none;border-radius:11px;
  background:linear-gradient(180deg, #14B8A6, #0E9186);
  color:#04211D;font-family:var(--font-body);font-weight:600;font-size:14.5px;letter-spacing:.01em;
  cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;
  box-shadow:0 14px 26px -12px rgba(20,184,166,.55);
  transition:transform .12s ease, box-shadow .12s ease, filter .12s ease;
  margin-top:6px;
}
.login-btn-enter:hover{ filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 18px 30px -12px rgba(20,184,166,.65); }
.login-btn-enter:active{ transform:translateY(0); }
.login-btn-enter svg{ width:16px;height:16px; }
.login-card-footnote{ margin-top:20px;font-size:11.5px;line-height:1.5;color:#7891A6;text-align:center; }

.login-below-note{
  margin-top:26px;font-size:11.5px;color:#7891A6;
  display:flex;align-items:center;gap:8px;
}
.login-sep{ width:3px;height:3px;border-radius:50%;background:#7891A6; }

@media (max-width:480px){
  .login-topbar{ padding:16px 18px;flex-direction:column;gap:6px;align-items:flex-start; }
  .login-brand{ margin-top:56px; }
}

select option{color:#10202B;background:#fff;}
.btn{
  border:none;border-radius:8px;padding:11px 18px;font-size:14px;font-weight:600;
  display:inline-flex;align-items:center;gap:8px;justify-content:center;
  transition:.12s ease;
}
.btn-block{width:100%;}


/* ---------- APP SHELL ---------- */
.app-header{
  background:var(--navy);color:#fff;
  display:flex;align-items:center;justify-content:space-between;
  padding:12px 24px;position:sticky;top:0;z-index:40;
  box-shadow:0 2px 10px rgba(0,0,0,.15);
}
.app-header .brand{display:flex;align-items:center;gap:10px;}
.app-header .brand .dot{width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(14,116,144,.25);}
.app-header .brand strong{font-family:var(--font-display);font-size:15px;letter-spacing:-.01em;}
.app-header .brand span.sub{font-size:11px;color:#7FA7BC;display:block;margin-top:-2px;}
.header-mid{display:flex;gap:22px;align-items:center;}
.header-nav{display:flex;gap:4px;background:rgba(255,255,255,.06);padding:4px;border-radius:9px;}
.header-nav button{background:transparent;border:none;color:#B9D3DF;padding:7px 14px;border-radius:7px;font-size:13px;font-weight:600;}
.header-nav button.active{background:var(--teal);color:#fff;}
.header-right{display:flex;align-items:center;gap:16px;}
.clock-badge{font-family:var(--font-mono);font-size:12.5px;color:#BFE0EC;background:rgba(255,255,255,.06);padding:6px 10px;border-radius:7px;letter-spacing:.02em;}
.user-badge{display:flex;flex-direction:column;align-items:flex-end;line-height:1.25;}
.user-badge b{font-size:12.5px;}
.user-badge span{font-size:11px;color:#8FB4C6;}
.logout-btn{background:transparent;border:1px solid rgba(255,255,255,.2);color:#EAF2F5;padding:7px 12px;border-radius:7px;font-size:12.5px;}
.logout-btn:hover{border-color:var(--red);color:#ffb4ac;}

.container{max-width:1320px;margin:0 auto;padding:22px 20px 60px;}
.page-title{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:8px;}
.page-title h1{font-size:21px;}
.page-title .desc{font-size:13px;color:var(--muted);}

.grid-2{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;align-items:start;}
@media (max-width:980px){.grid-2{grid-template-columns:1fr;}}

.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);}
.card-pad{padding:20px;}
.card-head{padding:16px 20px;border-bottom:1px solid var(--line-2);display:flex;align-items:center;justify-content:space-between;}
.card-head h3{font-size:14.5px;}
.card-head .hint{font-size:11.5px;color:var(--muted);font-family:var(--font-mono);}

fieldset{border:none;padding:0;margin:0 0 18px;}
legend{font-family:var(--font-display);font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--teal-dark);font-weight:800;padding:0 0 8px;border-bottom:2px solid var(--teal-tint);width:100%;margin-bottom:14px;}
.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:12px;}
.form-row.cols-3{grid-template-columns:repeat(3,1fr);}
.form-row.cols-4{grid-template-columns:repeat(4,1fr);}
@media (max-width:700px){.form-row,.form-row.cols-3,.form-row.cols-4{grid-template-columns:1fr 1fr;}}
.field-lite label{display:block;font-size:11.5px;font-weight:600;color:var(--muted);margin-bottom:5px;text-transform:uppercase;letter-spacing:.03em;}
.field-lite input, .field-lite select, .field-lite textarea{
  width:100%;padding:9px 11px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:13.5px;color:var(--ink);outline:none;
}
.field-lite input:focus, .field-lite select:focus, .field-lite textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-tint);}
.field-lite input[readonly]{background:var(--line-2);color:var(--muted);}
.field-lite textarea{resize:vertical;min-height:64px;}
.field-full{grid-column:1/-1;}

.toggle-group{display:flex;gap:6px;}
.toggle-btn{flex:1;padding:8px 6px;border:1px solid var(--line);background:#fff;border-radius:8px;font-size:12.5px;font-weight:600;color:var(--muted);}
.toggle-btn.on-yes.selected{background:var(--green-tint);border-color:var(--green);color:var(--green);}
.toggle-btn.on-no.selected{background:var(--red-tint);border-color:var(--red);color:var(--red);}

.btn-teal{background:var(--teal);color:#fff;}
.btn-teal:hover{background:var(--teal-dark);}
.btn-outline{background:#fff;border:1px solid var(--line);color:var(--ink);}
.btn-outline:hover{border-color:var(--teal);color:var(--teal);}
.btn-sm{padding:7px 12px;font-size:12.5px;border-radius:7px;border:none;font-weight:600;}
.btn-red{background:var(--red-tint);color:var(--red);border:1px solid #f0c4bf;}
.btn-red:hover{background:var(--red);color:#fff;}
.btn-amber{background:var(--amber-tint);color:var(--amber);border:1px solid #ecd8ad;}
.btn-blue{background:var(--blue-tint);color:var(--blue);border:1px solid #c6d7ee;}
.btn-indigo{background:var(--indigo-tint);color:var(--indigo);border:1px solid #cdd3ec;}
.btn-green{background:var(--green-tint);color:var(--green);border:1px solid #bfe1d0;}

/* status badge */
.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:11.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap;}
.badge::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor;}
.badge.st-aguardando{background:var(--amber-tint);color:var(--amber);}
.badge.st-empenhada{background:var(--blue-tint);color:var(--blue);}
.badge.st-andamento{background:var(--grape-tint);color:var(--grape);}
.badge.st-conduta{background:var(--indigo-tint);color:var(--indigo);}
.badge.st-finalizada{background:var(--green-tint);color:var(--green);}
.badge.st-cancelada{background:var(--red-tint);color:var(--red);}

/* occurrence list items */
.occ-item{
  border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:10px;background:#fff;
  transition:.12s ease;cursor:pointer;
}
.occ-item:hover{border-color:var(--teal);box-shadow:0 4px 14px -8px rgba(14,116,144,.4);}
.occ-item.selected{border-color:var(--teal);background:var(--teal-tint);}
.occ-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;gap:8px;}
.occ-code{font-family:var(--font-mono);font-size:11px;color:var(--muted);}
.occ-name{font-size:14.5px;font-weight:700;margin:2px 0;}
.occ-meta{font-size:12px;color:var(--muted);display:flex;gap:14px;flex-wrap:wrap;margin-top:4px;}
.occ-meta b{color:var(--ink);}
.empty-state{padding:36px 20px;text-align:center;color:var(--muted);}
.empty-state .em-icon{font-size:26px;margin-bottom:8px;}
.empty-state p{font-size:13px;margin:4px 0 0;}

/* timeline / signature */
.timeline{display:flex;align-items:flex-start;padding:6px 4px 2px;overflow-x:auto;}
.tl-step{flex:1;min-width:92px;text-align:center;position:relative;}
.tl-step .tl-line{position:absolute;top:9px;left:-50%;width:100%;height:2px;background:var(--line);z-index:0;}
.tl-step:first-child .tl-line{display:none;}
.tl-step.done .tl-line{background:var(--teal);}
.tl-dot{width:19px;height:19px;border-radius:50%;background:#fff;border:2px solid var(--line);margin:0 auto 6px;position:relative;z-index:1;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--muted);}
.tl-step.done .tl-dot{border-color:var(--teal);background:var(--teal);color:#fff;}
.tl-step.cancel .tl-dot{border-color:var(--red);background:var(--red);color:#fff;}
.tl-label{font-size:10.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.02em;}
.tl-step.done .tl-label{color:var(--ink);}
.tl-time{font-family:var(--font-mono);font-size:10.5px;color:var(--teal-dark);margin-top:2px;}

.audit-log{max-height:200px;overflow-y:auto;border:1px solid var(--line-2);border-radius:10px;background:var(--surface);}
.audit-row{display:flex;gap:10px;padding:8px 12px;font-size:12px;border-bottom:1px solid var(--line-2);}
.audit-row:last-child{border-bottom:none;}
.audit-row .a-ts{font-family:var(--font-mono);color:var(--teal-dark);white-space:nowrap;font-size:11px;}
.audit-row .a-tx{color:var(--ink);}

/* detail data grid */
.dl-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;font-size:13px;margin:14px 0;}
.dl-grid.cols-3{grid-template-columns:1fr 1fr 1fr;}
@media (max-width:640px){.dl-grid,.dl-grid.cols-3{grid-template-columns:1fr 1fr;}}
.dl-grid .dl-item b{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:2px;font-weight:700;}
.dl-full{grid-column:1/-1;}
.vitals-box{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:12px 0;}
@media (max-width:760px){.vitals-box{grid-template-columns:repeat(3,1fr);}}
.vital-pill{background:var(--teal-tint);border-radius:9px;padding:9px 6px;text-align:center;}
.vital-pill .vp-label{font-size:9.5px;color:var(--teal-dark);text-transform:uppercase;letter-spacing:.03em;font-weight:700;}
.vital-pill .vp-val{font-family:var(--font-mono);font-size:14px;color:var(--ink);margin-top:3px;font-weight:600;}
.flag-row{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0;}
.flag-chip{font-size:11.5px;padding:5px 10px;border-radius:20px;font-weight:600;border:1px solid;}
.flag-chip.yes{background:var(--red-tint);border-color:#f0c4bf;color:var(--red);}
.flag-chip.no{background:var(--line-2);border-color:var(--line);color:var(--muted);}

/* modal / drawer */
.overlay{position:fixed;inset:0;background:rgba(11,27,43,.55);backdrop-filter:blur(2px);z-index:100;display:flex;justify-content:flex-end;}
.drawer{width:min(560px,100%);height:100%;background:var(--card);box-shadow:-14px 0 40px rgba(0,0,0,.2);overflow-y:auto;animation:slidein .18s ease;}
@keyframes slidein{from{transform:translateX(24px);opacity:.4}to{transform:translateX(0);opacity:1}}
.drawer-head{padding:18px 22px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--card);z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:10px;}
.drawer-close{background:var(--line-2);border:none;border-radius:8px;width:30px;height:30px;font-size:15px;color:var(--muted);flex-shrink:0;}
.drawer-body{padding:20px 22px 32px;}
.cmd-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;}
@media (max-width:480px){.cmd-grid{grid-template-columns:1fr;}}
.cmd-grid .btn-sm{width:100%;padding:10px;}

.viatura-select-row{display:flex;gap:8px;margin-top:8px;}
.viatura-select-row select{flex:1;padding:9px 10px;border-radius:8px;border:1px solid var(--line);font-size:13px;}

/* toasts */
#toast-container{position:fixed;bottom:20px;right:20px;z-index:200;display:flex;flex-direction:column;gap:8px;}
.toast{background:var(--navy);color:#fff;padding:11px 16px;border-radius:9px;font-size:13px;box-shadow:var(--shadow);display:flex;align-items:center;gap:8px;animation:toastin .18s ease;min-width:220px;}
.toast.success{background:var(--green);}
.toast.error{background:var(--red);}
@keyframes toastin{from{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}

/* Operador layout */
.op-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;align-items:start;}
@media (max-width:1040px){.op-grid{grid-template-columns:1fr;}}
.op-sticky{position:sticky;top:20px;}
@media (max-width:1040px){.op-sticky{position:static;}}
.viatura-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border:1px solid var(--line-2);border-radius:9px;margin-bottom:8px;background:var(--surface);}
.viatura-row .vname{font-weight:700;font-size:13.5px;}
.viatura-row .vinfo{font-size:11.5px;color:var(--muted);}
.del-btn{background:none;border:none;color:var(--muted);font-size:15px;padding:2px 6px;border-radius:6px;}
.del-btn:hover{color:var(--red);background:var(--red-tint);}

/* Gestor dashboard */
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;}
@media (max-width:620px){.kpi-grid{grid-template-columns:repeat(2,1fr);}}
.kpi-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow);}
.kpi-card .kpi-num{font-family:var(--font-display);font-size:26px;font-weight:800;}
.kpi-card .kpi-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-weight:700;margin-top:4px;}
.kpi-card.k-teal{border-top:3px solid var(--teal);}
.kpi-card.k-amber{border-top:3px solid var(--amber);}
.kpi-card.k-blue{border-top:3px solid var(--blue);}
.kpi-card.k-grape{border-top:3px solid var(--grape);}
.kpi-card.k-indigo{border-top:3px solid var(--indigo);}
.kpi-card.k-green{border-top:3px solid var(--green);}
.kpi-card.k-red{border-top:3px solid var(--red);}

.bar-row{display:flex;align-items:center;gap:10px;margin-bottom:10px;}
.bar-row .bl{width:150px;font-size:12px;color:var(--muted);flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.bar-track{flex:1;height:9px;background:var(--line-2);border-radius:6px;overflow:hidden;}
.bar-fill{height:100%;background:var(--teal);border-radius:6px;}
.bar-num{font-family:var(--font-mono);font-size:11.5px;color:var(--muted);width:26px;text-align:right;}

.tabs{display:flex;gap:4px;background:var(--line-2);padding:4px;border-radius:9px;margin-bottom:18px;width:fit-content;}
.tabs button{background:transparent;border:none;padding:8px 16px;border-radius:7px;font-size:13px;font-weight:600;color:var(--muted);}
.tabs button.active{background:#fff;color:var(--teal-dark);box-shadow:var(--shadow);}

.filters-row{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:16px;}
@media (max-width:900px){.filters-row{grid-template-columns:repeat(2,1fr);}}
table.res-table{width:100%;border-collapse:collapse;font-size:12.5px;}
table.res-table th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);padding:9px 10px;border-bottom:2px solid var(--line);background:var(--surface);}
table.res-table td{padding:10px;border-bottom:1px solid var(--line-2);}
table.res-table tr{cursor:pointer;}
table.res-table tbody tr:hover{background:var(--teal-tint);}
.scroll-x{overflow-x:auto;}
.small-muted{font-size:11.5px;color:var(--muted);}
.note-form{display:flex;gap:8px;margin-top:6px;}
.note-form input{flex:1;padding:8px 10px;border-radius:7px;border:1px solid var(--line);font-size:12.5px;}
