.service-repairs { display:grid; gap:12px; min-width:0; }
.service-repair-filters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; min-width:0; }
.service-repair-filters button { display:flex; align-items:center; justify-content:center; gap:6px; min-width:0; min-height:44px; padding:6px 10px; border:1px solid var(--border-strong); border-radius:9px; background:#fff; color:inherit; font:inherit; font-size:13px; font-weight:700; cursor:pointer; }
.service-repair-filters button[aria-pressed="true"] { border-color:var(--accent,#17647a); background:#e9f3f5; color:#17536a; }
.service-repair-filters span { font-variant-numeric:tabular-nums; }
.service-repair-severity-overview { min-width:0; padding:9px 10px; border:1px solid var(--border); border-radius:9px; background:#f5f8fb; }
.service-repair-severity-overview h4 { margin:0 0 7px; font-size:12px; }
.service-repair-severity-overview > div { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr)); gap:6px; }
.service-repair-severity-overview details { min-width:0; border:1px solid var(--border); border-radius:8px; background:#fff; }
.service-repair-severity-overview summary { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:44px; padding:7px 9px; cursor:pointer; font-size:12px; font-weight:700; }
.service-repair-severity-overview summary::before { content:'▸'; color:var(--muted); }
.service-repair-severity-overview details[open] summary::before { transform:rotate(90deg); }
.service-repair-severity-overview summary:focus-visible,.service-repair-severity-overview a:focus-visible { outline:2px solid var(--accent,#17647a); outline-offset:2px; }
.service-repair-severity-overview summary span { font-variant-numeric:tabular-nums; }
.service-repair-severity-overview ul { margin:0; padding:0 8px 8px; list-style:none; }
.service-repair-severity-overview a { display:flex; align-items:center; min-height:44px; overflow-wrap:anywhere; font-size:12px; }
@media (max-width:480px) { .service-repair-severity-overview > div { grid-template-columns:minmax(0,1fr); } }
.service-repair-unlinked details { min-width:0; border:1px solid var(--border); border-radius:9px; background:#fff; }
.service-repair-unlinked summary { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:44px; padding:8px 10px; cursor:pointer; font-size:12px; font-weight:700; }
.service-repair-unlinked summary::before { content:'▸'; color:var(--muted); }
.service-repair-unlinked details[open] summary::before { transform:rotate(90deg); }
.service-repair-unlinked summary strong { flex:none; font-variant-numeric:tabular-nums; }
.service-repair-unlinked ul { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr)); gap:5px; margin:0; padding:0 9px 9px; list-style:none; }
.service-repair-unlinked li { display:grid; min-width:0; padding:5px 7px; border:1px solid var(--border); border-radius:7px; }
.service-repair-unlinked a { display:flex; align-items:center; min-height:44px; overflow-wrap:anywhere; font-size:12px; }
.service-repair-unlinked small { color:var(--muted); }
.service-repair-unlinked summary:focus-visible,.service-repair-unlinked a:focus-visible { outline:2px solid var(--accent,#17647a); outline-offset:2px; }
@media (max-width:480px) { .service-repair-unlinked ul { grid-template-columns:minmax(0,1fr); } }
.service-repair-list { display:grid; gap:9px; min-width:0; margin:0; padding:0; list-style:none; }
.service-repair-list li { min-width:0; padding:11px; border:1px solid var(--border); border-radius:10px; background:#fff; overflow-wrap:anywhere; }
.service-repair-head { display:flex; align-items:baseline; justify-content:space-between; gap:8px; }
.service-repair-head strong { min-width:0; font-size:14px; }
.service-repair-status { flex:none; padding:3px 7px; border-radius:999px; background:#e9f3f5; color:#17536a; font-size:11px; font-weight:700; }
.service-repair-list p { margin:5px 0 0; color:var(--muted); font-size:12px; line-height:1.4; }
.service-repair-form { display:grid; gap:10px; min-width:0; margin-top:10px; padding:12px; border:1px solid var(--border); border-radius:10px; background:#f9fbfd; }
.service-repair-source-note { margin:0; padding:9px 10px; border-radius:8px; background:#eaf5ef; color:#285d48; font-size:12px; line-height:1.4; overflow-wrap:anywhere; }
.service-repair-source-note strong { display:block; margin-top:4px; }
.service-repair-form label { display:grid; gap:4px; min-width:0; font-size:12px; font-weight:600; }
.service-repair-form :is(input,select,textarea) { box-sizing:border-box; width:100%; min-width:0; min-height:44px; padding:8px 10px; font:inherit; font-size:16px; border:1px solid var(--border-strong); border-radius:8px; background:#fff; }
.service-repair-form textarea { min-height:74px; resize:vertical; }
.service-repair-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.service-repair-resolution-fields[hidden] { display:none; }
.service-repair-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:9px; }
.service-repair-actions button,.service-repair-add { min-height:44px; }
.service-repair-error { color:var(--danger,#b42318) !important; }
.service-repair-order-conflict { margin-top:9px; padding:9px 10px; border:1px solid var(--danger,#b42318); border-radius:8px; background:#fff8f6; }
.service-repair-order-conflict p { color:var(--danger,#b42318); }
.service-repair-order-open,.service-repair-order-link { display:inline-flex; align-items:center; justify-content:center; min-height:44px; margin-top:8px; text-align:center; text-decoration:none; }
.service-repair-order-form .service-repair-order-note { margin:0; padding:8px 10px; border-radius:8px; background:#eaf5ef; color:#285d48; }
.service-repair-order-form > .quiet-btn { min-height:44px; justify-self:start; text-decoration:none; }
.service-repair-resolution-form > strong { color:#245d3b; font-size:13px; }
.service-repair-resolution-form .service-repair-actions { margin-top:2px; }
.service-repair-resolution-saved { padding:8px 10px; border-radius:8px; background:#eaf5ef; color:#245d3b !important; }
.service-repair-separate-visit { display:grid; justify-items:start; gap:3px; margin-top:8px; }
.service-repair-separate-visit a { display:inline-flex; align-items:center; min-height:44px; text-decoration:none; }
.service-repair-separate-visit small { color:var(--muted); font-size:11px; line-height:1.35; }
.service-repair-separate-visit a:focus-visible { outline:2px solid var(--accent,#17647a); outline-offset:2px; }
@media (max-width:480px) { .service-repair-separate-visit { justify-items:stretch; } .service-repair-separate-visit a { justify-content:center; width:100%; text-align:center; } }
.service-repair-print { min-height:44px; margin-top:8px; }
.service-repair-print:focus-visible { outline:2px solid var(--accent,#17647a); outline-offset:2px; }
.service-repair-print-sheet { display:none; }
@media (max-width:480px) { .service-repair-print { width:100%; } }
@page service-repair-case { size:A4; margin:14mm; }
@media print {
  body.print-service-repair-case > :not(.service-repair-print-sheet) { display:none !important; }
  body.print-service-repair-case > .service-repair-print-sheet { display:block !important; page:service-repair-case; color:#111; font:9pt/1.4 Arial,sans-serif; overflow-wrap:anywhere; }
  .service-repair-print-sheet header { border-bottom:1px solid #777; padding-bottom:4mm; margin-bottom:5mm; }
  .service-repair-print-sheet h1 { margin:0 0 2mm; font-size:16pt; }
  .service-repair-print-sheet header p { margin:0; font-weight:700; }
  .service-repair-print-sheet dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2mm 5mm; margin:0; }
  .service-repair-print-sheet dl div { break-inside:avoid-page; border-bottom:1px solid #ddd; padding:2mm 0; }
  .service-repair-print-sheet dt { color:#555; font-size:8pt; }
  .service-repair-print-sheet dd { margin:1mm 0 0; white-space:pre-wrap; }
  .service-repair-print-sheet a { color:#111; }
}
@media (max-width:480px) { .service-repair-pair { grid-template-columns:1fr; } .service-repair-form { padding:10px; } .service-repair-order-open,.service-repair-order-link,.service-repair-order-form > .quiet-btn { width:100%; } .service-repair-order-form .service-repair-actions { display:grid; grid-template-columns:1fr; } .service-repair-order-form .service-repair-actions button { width:100%; } }
@media (max-width:480px) { [data-service-repair-form] .service-repair-triage { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; } [data-service-repair-form] .service-repair-resolution-fields { grid-template-columns:minmax(0,1fr); } [data-service-repair-form] .service-repair-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:2px; } [data-service-repair-form] .service-repair-actions button { width:100%; min-width:0; min-height:44px; } }
@media (max-width:480px) { .service-repair-resolution-form .service-repair-actions { display:grid; grid-template-columns:1fr; } .service-repair-resolution-form .service-repair-actions button { width:100%; } }
