.repair-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.repair-profile{background:white;border:1px solid #dbe5e5;border-radius:14px;overflow:hidden;padding:22px;display:flex;flex-direction:column;box-shadow:0 3px 12px #173d4204;transition:border-color .15s,box-shadow .15s}.repair-profile:hover{border-color:#9bbfb8;box-shadow:0 8px 24px #173d420a}.rp-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}.rp-top .badge{font-size:12px;font-weight:600;padding:8px 12px;white-space:normal;line-height:1.5}.rp-symbol{color:#3d8476;background:#edf6f3;border-radius:9px;display:grid;place-items:center;width:36px;height:36px;font-size:22px;flex-shrink:0}.rp-number small{display:block;color:#6d8185;font-size:11px;margin-bottom:6px}.rp-number strong{color:#164d49;display:block;font-size:22px;letter-spacing:.2px;overflow-wrap:anywhere}.repair-profile h2{font-size:16px;font-weight:500;line-height:1.7;margin:12px 0 18px;overflow-wrap:anywhere}.rp-sn{background:#f0f5f5;border-left:3px solid #237b6d;padding:13px 15px;margin-top:auto}.rp-sn span{font-size:9px;letter-spacing:1.3px;color:#667e83;display:block;margin-bottom:7px}.rp-sn strong{font-family:Consolas,monospace;font-size:19px;color:#1d3f46;overflow-wrap:anywhere}.rp-spec{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:18px 0 22px}.rp-spec .rp-wide{grid-column:1/-1}.rp-spec dt{font-size:11px;color:#73868a;margin-bottom:5px}.rp-spec dd{font-size:13px;margin:0;overflow-wrap:anywhere;line-height:1.5}.rp-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:17px;border-top:1px solid #e6eded}.rp-bottom small{font-size:10px}.rp-bottom button{font-size:12px;padding:11px 13px;white-space:nowrap}.rp-bottom button span{margin-left:8px}.facts>div{overflow-wrap:anywhere;white-space:pre-wrap}.work-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:25px}.work-summary>div{background:white;border:1px solid var(--line);border-radius:12px;padding:18px 22px}.work-summary strong{display:block;font-size:28px;margin-top:10px;font-weight:500}.work-summary>div:first-child{background:var(--ink);color:white}.work-summary>div:first-child small{color:#c3dcd5}.work-pending{background:#fff1cd;color:#896019}.work-accepted{background:#e4f0ff;color:#2d6192}.work-completed{background:#e7f4ed;color:#34744f}.work-cancelled{background:#f5e8e8;color:#8c4c4c}.urgent{font-size:11px;color:#a74335;background:#ffefeb;padding:7px;border-radius:6px}.work-empty{text-align:center;padding:65px 24px}.work-empty>div{width:58px;height:58px;display:grid;place-items:center;background:#eaf4f1;color:#397f72;border-radius:16px;font-size:29px;margin:0 auto 20px}.work-empty p{max-width:460px;margin:0 auto 20px;color:var(--muted)}.work-profile .rp-bottom{margin-top:auto}.work-profile h2{min-height:50px}
@media(max-width:1250px){.repair-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.repair-cards{grid-template-columns:1fr;gap:16px}.repair-profile{padding:20px}.rp-number strong{font-size:24px}.work-summary{grid-template-columns:repeat(2,1fr);gap:10px}.work-summary>div{padding:16px}.sidebar nav{grid-template-columns:repeat(5,1fr)}.work-empty{padding:40px 20px}}
.repair-directory .repair-cards{gap:12px;align-items:start}.repair-profile.repair-compact{padding:14px;border-radius:10px;gap:12px}.rc-identifiers{display:flex;align-items:baseline;gap:7px 12px;flex-wrap:wrap;line-height:1.5}.rc-identifiers>strong{font-size:16px;color:#164d49;overflow-wrap:anywhere}.rc-asset{font-size:11px;color:#526d73;overflow-wrap:anywhere}.rc-asset small{font-size:10px;color:#7a8b8e;margin-right:3px}.rc-equipment{line-height:1.65;overflow-wrap:anywhere}.repair-compact .rc-equipment h2{display:inline;font-size:13px;font-weight:600;margin:0;line-height:1.65}.rc-equipment>span{font-size:11px;color:#6c8085}.rc-equipment>span:before{content:' / ';color:#a0b2b5}.rc-bottom{display:flex;align-items:stretch;gap:10px;margin-top:auto}.repair-compact .rp-sn{flex:1;min-width:0;margin:0;padding:8px 10px;border-left-width:3px}.repair-compact .rp-sn>span{font-size:8px;letter-spacing:.8px;margin-bottom:4px}.repair-compact .rp-sn>strong{font-size:17px;line-height:1.35}.rc-bottom>button{align-self:center;font-size:10px;padding:10px 9px;white-space:nowrap;border-radius:7px}.rc-bottom>button>span{margin-left:3px}
@media(min-width:1600px){.repair-directory .repair-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}

.repair-compact .rc-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.rc-header .rc-identifiers{flex:1;min-width:0}.rc-header>.badge{flex:0 1 auto;max-width:46%;font-size:10px;font-weight:600;line-height:1.5;padding:4px 7px;white-space:normal;overflow-wrap:anywhere;text-align:center}

[data-card-detail]{cursor:pointer}[data-card-detail]:focus-visible{outline:3px solid #ad8bea;outline-offset:3px}.quote-documents{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.quote-documents a{font-size:12px;overflow-wrap:anywhere;max-width:100%}.quote-file-list{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.8;margin-top:10px}
.repair-status-tabs{display:flex;gap:9px;overflow-x:auto;padding:4px 2px 14px;margin:8px 0 12px}.repair-status-tabs>button{display:flex;align-items:center;gap:9px;white-space:nowrap;flex-shrink:0;border:1px solid #e2daf4;background:#faf8ff;color:#7b6d90;padding:11px 14px;border-radius:12px;font-size:12px}.repair-status-tabs>button strong{border-radius:20px;background:#eee8fc;color:#7455aa;padding:3px 7px;font-size:11px;min-width:24px}.repair-status-tabs>button[aria-selected=true]{background:linear-gradient(120deg,#8060ec,#6655d5);color:white;border-color:#8060ec;box-shadow:0 4px 12px #795ada25}.repair-status-tabs>button[aria-selected=true] strong{background:#ffffff30;color:white}
.repair-status-icon{display:none}
/* Suppress the browser's transient touch highlight on the delegated tab controls. */
.repair-status-tabs,.repair-status-tabs *{-webkit-tap-highlight-color:transparent}
.repair-status-tabs{-webkit-user-select:none;user-select:none}
.repair-status-tabs .repair-status-icon{pointer-events:none}
@media(max-width:700px){
 .repair-directory{padding-right:50px}
 .repair-status-tabs{position:fixed;right:0;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-end;gap:6px;overflow:visible;margin:0;padding:6px 0;z-index:12;width:48px;max-height:calc(100dvh - 160px)}
 .repair-status-tabs>button{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:21px 14px;justify-items:center;align-content:center;gap:3px;flex:0 0 52px;width:48px;height:52px;min-width:0;margin:0;padding:6px 4px;white-space:normal;text-align:left;border-radius:13px 0 0 13px;box-shadow:0 3px 12px #65558a12;overflow:hidden;transition:width .22s ease,background .2s;transform:none}
 .repair-status-tabs .repair-status-icon{display:flex;flex:0 0 21px;align-items:center;justify-content:center}
 .repair-status-tabs .repair-status-name{display:none;font-size:12px;line-height:18px;min-width:0;white-space:nowrap;overflow-wrap:normal;overflow:hidden}
 .repair-status-tabs>button strong{display:block;min-width:0;max-width:100%;background:transparent!important;color:inherit!important;text-align:center;font-size:10px;line-height:14px;font-variant-numeric:tabular-nums;padding:0;white-space:nowrap}
 .repair-status-tabs>button.status-expanded{width:min(270px,calc(100vw - 22px));grid-template-columns:21px minmax(0,1fr) auto;grid-template-rows:minmax(0,1fr);justify-items:stretch;align-items:center;gap:10px;padding:6px 11px;height:52px;min-height:52px;flex-basis:52px;overflow:hidden;box-shadow:0 7px 25px #59478226}
 .repair-status-tabs>button.status-expanded .repair-status-name,.repair-status-tabs>button.status-expanded strong{display:block}
 .repair-status-tabs>button.status-expanded strong{font-size:11px;border-radius:8px;padding:4px 7px;background:#eee8fc!important;color:#7455aa!important}.repair-status-tabs>button.status-expanded[aria-selected=true] strong{background:#ffffff30!important;color:white!important}
 .repair-status-tabs>button:hover{transform:none}
 .repair-status-tabs>button:focus-visible{outline:3px solid #baa4ef;outline-offset:2px}
}
@media(max-width:700px) and (max-height:520px){.repair-status-tabs{top:70px;transform:none;gap:3px;padding:0}.repair-directory{padding-right:64px}.repair-status-tabs{width:62px}.repair-status-tabs>button{width:62px;height:32px;flex-basis:32px;grid-template-columns:21px minmax(0,1fr);grid-template-rows:auto;gap:3px;padding:5px}.repair-status-tabs>button.status-expanded{width:min(270px,calc(100vw - 22px));grid-template-columns:21px minmax(0,1fr) auto;min-height:32px;padding:5px 9px}}
@media(prefers-reduced-motion:reduce){.repair-status-tabs>button{transition:none}}

/* Compact repair detail only; other shared dialogs retain their layout. */
#detail:has(.repair-detail-layout){width:min(680px,calc(100vw - 24px));max-height:90dvh;border-radius:18px;overflow-y:auto;overscroll-behavior:contain}
#detail-content:has(.repair-detail-layout){padding:0 20px 20px}
#detail .repair-detail-layout{font-size:13px;line-height:1.6;overflow-wrap:anywhere}
#detail .repair-detail-layout .detail-head{padding:12px 0 10px;margin-bottom:12px;gap:10px}
#detail .repair-detail-layout .detail-head h2{font-size:19px;margin:2px 0 0;line-height:1.4}
#detail .repair-detail-layout .eyebrow{font-size:9px;letter-spacing:1.5px}
#detail .repair-detail-layout>h1{font-size:18px;line-height:1.55;margin:8px 0 12px}
#detail .repair-detail-layout>h2{font-size:15px;margin:18px 0 10px}
#detail .repair-detail-layout .facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 16px;margin:12px 0 16px;padding:12px;background:#f6f3fc;border:1px solid #ece6f6;border-radius:12px;font-size:12px}
#detail .repair-detail-layout .facts>div{min-width:0;padding-bottom:7px;line-height:1.55}
#detail .repair-detail-layout .facts small{font-size:11px;line-height:1.5;margin-bottom:3px;color:#726781}
#detail .repair-detail-layout .notice{padding:11px 13px;margin:10px 0;border-radius:11px}
#detail .repair-detail-layout .notice p{line-height:1.65;margin:4px 0 0}
#detail .repair-detail-layout .timeline{margin:12px 0 16px 6px;padding-left:18px}
#detail .repair-detail-layout .event{margin-bottom:14px}
#detail .repair-detail-layout .event:before{left:-27px}
#detail .repair-detail-layout .event h3{font-size:13px;margin:0 0 2px;line-height:1.6}
#detail .repair-detail-layout .event small{font-size:11px}
#detail .repair-detail-layout .event p{font-size:12px;line-height:1.65;margin:4px 0 0}
#detail .repair-detail-layout .card{padding:14px;border-radius:12px;box-shadow:none}
#detail .repair-detail-layout .card h2{font-size:15px;margin-bottom:12px}
#detail .repair-detail-layout .stack,#detail .repair-detail-layout .fields{gap:12px}
#detail .repair-detail-layout label{font-size:12px;margin-bottom:5px}
#detail .repair-detail-layout input,#detail .repair-detail-layout select{padding:10px;min-height:44px}
#detail .repair-detail-layout textarea{min-height:80px}
@media(max-width:520px){
 #detail-content:has(.repair-detail-layout){padding:0 14px 14px}
 #detail .repair-detail-layout .facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;padding:10px}
 #detail .repair-detail-layout>h1{font-size:16px}
 #detail .repair-detail-layout input,#detail .repair-detail-layout select,#detail .repair-detail-layout textarea{font-size:16px}
}
