/* MediCore — แจ้งซ่อม / สอบเทียบ / อัปโหลดสื่อ */
.mc-cap-btns{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}
@media(min-width:576px){.mc-cap-btns{grid-template-columns:repeat(4,auto);justify-content:start}}
.mc-cap-btns .btn{min-height:2.75rem}
.mc-cap-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}
.mc-cap-item{position:relative;width:88px;height:88px;border-radius:.6rem;overflow:hidden;background:#0f172a;cursor:pointer}
.mc-cap-item img,.mc-cap-item video{width:100%;height:100%;object-fit:cover;display:block}
.mc-cap-meta{position:absolute;left:0;right:0;bottom:0;font-size:.68rem;color:#fff;background:rgba(0,0,0,.55);padding:1px 4px;text-align:center}
.mc-cap-play{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:1.6rem;text-shadow:0 1px 4px #000}
.mc-cap-x{position:absolute;top:2px;right:2px;width:24px;height:24px;border:0;border-radius:50%;background:rgba(0,0,0,.65);color:#fff;line-height:1;font-size:1rem}
.mc-rec{position:fixed;inset:0;z-index:2000;background:#000;display:flex;flex-direction:column}
.mc-rec video{flex:1;min-height:0;width:100%;object-fit:cover}
.mc-rec-time{position:absolute;top:calc(env(safe-area-inset-top,0px) + 14px);left:50%;transform:translateX(-50%);background:rgba(0,0,0,.6);color:#fff;padding:.25rem .8rem;border-radius:2rem;font-variant-numeric:tabular-nums}
.mc-rec-bar{display:flex;gap:.75rem;justify-content:center;padding:1rem 1rem calc(env(safe-area-inset-bottom,0px) + 1rem);background:#000}
.mc-lb{position:fixed;inset:0;z-index:2100;background:rgba(0,0,0,.88);display:grid;place-items:center;padding:1rem}
.mc-lb img,.mc-lb video{max-width:100%;max-height:100%;border-radius:.5rem}
.mc-lb-x{position:absolute;top:10px;right:14px;border:0;background:none;color:#fff;font-size:2.4rem;line-height:1}
.mc-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:.5rem}
.mc-gal-i{position:relative;aspect-ratio:1;border-radius:.6rem;overflow:hidden;background:#0f172a}
.mc-gal-i a{display:block;width:100%;height:100%}.mc-gal-i img{width:100%;height:100%;object-fit:cover}
.mc-gal-v{display:grid;place-items:center;width:100%;height:100%;color:#fff;font-size:1.8rem;text-align:center}.mc-gal-v small{font-size:.7rem;display:block}
.mc-gal-x{position:absolute;top:2px;right:2px;width:22px;height:22px;border:0;border-radius:50%;background:rgba(0,0,0,.65);color:#fff;line-height:1}
.mc-tl{list-style:none;margin:0;padding:0}.mc-tl li{display:flex;gap:.75rem;padding-bottom:1rem;position:relative}
.mc-tl li:not(:last-child)::before{content:"";position:absolute;left:15px;top:32px;bottom:0;width:2px;background:var(--tblr-border-color)}
.mc-tl .dot{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center}.mc-tl .body{min-width:0;flex:1}
.mc-steps{display:flex;gap:.25rem;overflow-x:auto;padding-bottom:.25rem}
.mc-steps span{flex:1 0 auto;padding:.3rem .7rem;border-radius:2rem;font-size:.78rem;background:var(--tblr-bg-surface-secondary);color:var(--tblr-secondary);white-space:nowrap}
.mc-steps span.on{background:var(--tblr-primary);color:#fff}.mc-steps span.past{background:rgba(32,107,196,.14);color:var(--tblr-primary)}
.mc-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .8rem;border:1px solid var(--tblr-border-color);border-radius:2rem;cursor:pointer;margin:0 .35rem .45rem 0;font-size:.9rem}
.mc-chips input{position:absolute;opacity:0;pointer-events:none}.mc-chips input:checked+.mc-chip{background:var(--tblr-primary);color:#fff;border-color:var(--tblr-primary)}
.mc-chips input:focus-visible+.mc-chip{outline:2px solid var(--tblr-primary);outline-offset:2px}
.mc-unit-res{position:absolute;z-index:20;left:0;right:0;max-height:18rem;overflow:auto;background:var(--tblr-bg-surface);border:1px solid var(--tblr-border-color);border-radius:.5rem;box-shadow:0 8px 24px rgba(0,0,0,.15)}
.mc-unit-res button{display:block;width:100%;text-align:left;border:0;background:none;padding:.55rem .8rem;border-bottom:1px solid var(--tblr-border-color)}.mc-unit-res button:hover{background:var(--tblr-bg-surface-secondary)}
.mc-fab{position:fixed;right:1rem;bottom:calc(env(safe-area-inset-bottom,0px) + 1rem);z-index:1030;width:3.5rem;height:3.5rem;border-radius:50%;display:none;place-items:center;font-size:1.6rem;box-shadow:0 6px 18px rgba(214,57,57,.45)}
@media(max-width:767.98px){.mc-fab{display:grid}}
.cal-pt input{min-width:5.5rem}.cal-pt td{vertical-align:middle}
.rule-tbl td,.rule-tbl th{vertical-align:middle;text-align:center}.rule-tbl td:first-child,.rule-tbl th:first-child{text-align:left}

/* แจ้งซ่อมด่วน: การ์ดข้อมูลเครื่อง (ใช้ตัวแปรของ Tabler → ปรับตามโหมดสว่าง/มืดอัตโนมัติ) */
#q-info { border-left: 4px solid var(--tblr-primary); }
#q-img { cursor: zoom-in; border: 1px solid var(--tblr-border-color); transition: transform .15s; }
#q-img:hover { transform: scale(1.04); }
.qi-name { font-size: 1.05rem; font-weight: 700; color: var(--tblr-primary); margin-bottom: 4px; }
.qi-row { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; margin: 3px 0; }
.qi-k { min-width: 5.6rem; font-size: .78rem; font-weight: 600; color: var(--tblr-secondary, #667382); }
.qi-v { font-weight: 600; font-size: .8rem; }
.qi-mono { font-family: ui-monospace, Consolas, monospace; }
.qi-loc { font-weight: 600; color: var(--tblr-teal, #0ca678); }
[data-bs-theme=dark] .qi-loc { color: #3ddbb2; }
.qi-dim { font-size: .78rem; color: var(--tblr-secondary, #667382); }
.qi-lb { position: fixed; inset: 0; z-index: 3000; background: rgba(0,0,0,.82); display: flex; align-items: center; justify-content: center; padding: 16px; cursor: zoom-out; }
.qi-lb figure { margin: 0; text-align: center; max-width: 96vw; }
.qi-lb img { max-width: 96vw; max-height: 82vh; background: #fff; border-radius: 10px; box-shadow: 0 10px 40px #000a; }
.qi-lb figcaption { color: #fff; margin-top: 10px; font-weight: 600; }
.qi-lb-x { position: absolute; top: 14px; right: 14px; width: 42px; height: 42px; border: 0; border-radius: 50%; background: #fff; color: #111; font-size: 1.3rem; }
[data-bs-theme=dark] .qi-name { color: #6cb6ff; }
[data-bs-theme=dark] #q-info { border-left-color: #6cb6ff; }
