#serverStatus{position:fixed;right:14px;bottom:calc(var(--tabH) + 5px + env(safe-area-inset-bottom));z-index:58;border:1px solid #c9dcef;background:#fff;color:#315474;padding:4px 9px;border-radius:6px;font-size:12px;pointer-events:none;box-shadow:0 1px 4px #0d2a5214}#serverStatus.bad{background:#fff4ec;color:#9e331a}body.locked #serverStatus{z-index:10000;bottom:14px}
#saveFailure{position:fixed;top:70px;left:50%;transform:translateX(-50%);z-index:10001;width:min(680px,calc(100% - 24px));padding:16px;background:#fff3e9;border:1px solid #e4a476;border-radius:10px;box-shadow:0 8px 36px #0002;color:#7b3019}#saveFailure span{display:block;margin:6px 0}#saveFailure button,.flow-actions button{padding:7px 12px;background:white;border:1px solid var(--line);border-radius:7px;color:var(--navy);font:inherit;font-size:13px;cursor:pointer;margin:4px 5px 4px 0}
.flow-path{color:var(--sub);font-size:14px;margin-bottom:12px}.flow-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.flow-tools select{min-width:200px;max-width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit}.flow-actions{margin-top:10px}.flow-actions button.danger{color:var(--danger)}.record-meta{font-size:12px;color:var(--sub);border-top:1px dashed var(--line);padding-top:9px;margin-top:12px;line-height:1.8}.record-meta .hlink{font-size:12px;padding:3px 9px}.empty{padding:36px!important;text-align:center;color:var(--sub)}.audit-row{padding:12px 0;border-bottom:1px solid var(--line)}.audit-row>span{display:block;font-size:12px;color:var(--sub)}.audit-row details{font-size:13px;margin-top:8px}.audit-row pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto;background:#f2f5f9;padding:8px;font-size:11px}.upload-label{display:block;text-align:center;cursor:pointer}.upload-label input{display:block;width:100%;margin-top:10px}.login-box{max-height:94dvh;overflow:auto}.login-box input{min-height:44px}#modalBox select{max-width:100%}#modalBox .mfield input[type=checkbox]{width:auto;min-height:0;margin-right:5px}.note{overflow-wrap:anywhere}
@media(min-width:900px){#serverStatus{bottom:10px}.mscreen{padding-bottom:50px}.flow-tools select{min-width:280px}}
@media(max-width:899px){.appbar{min-height:64px;padding:8px 10px;gap:4px}.appbar .brand{font-size:13px}.appbar .who{gap:4px;flex-wrap:wrap;justify-content:flex-end;max-width:65%}.appbar .who>span{display:none}.appbar .outbtn{font-size:10px;padding:4px 5px}.mscreen{padding-top:92px!important}.tabbar{overflow-x:auto;justify-content:flex-start}.tabbar button{min-width:55px;flex:1 0 55px;font-size:10px}.tabbar .side-out,.tabbar .side-top,.tabbar .side-links{display:none!important}.flow-tools select{width:100%;min-width:0}#asSummary .kpis{grid-template-columns:1fr 1fr!important}.flow-path{font-size:12px;line-height:1.8}.mgrid{grid-template-columns:repeat(2,minmax(0,1fr))}#serverStatus{max-width:88vw;font-size:11px}.record-meta{font-size:11px}.kpi .v{font-size:18px}}
@media print{#serverStatus,#saveFailure,#mod-flow,.record-meta{display:none!important}}
@media(min-width:900px){.appbar .who{display:flex;gap:6px}.appbar .who>span{display:none}.appbar .outbtn{color:var(--navy);border-color:var(--line);background:white}.abtitle{white-space:nowrap}}
.quote-product-container .quote-product{margin:0;padding:6px;width:100%;box-sizing:border-box;text-align:center;break-inside:avoid;background:#fff}
.quote-product-container .quote-product-image{display:block;width:100%;height:164px;object-fit:contain;object-position:center}
.quote-product-container .quote-product figcaption{margin:5px 0 0;color:#66717d;font-size:8px;line-height:1.4;word-break:keep-all}
.quote-product-container .image-error figcaption{color:#9e331a}
.quote-manufacturer>:not(.quote-logo-lockup){display:none!important}
.quote-logo-lockup{display:flex;align-items:center;gap:18px;max-width:100%;min-height:40px}
.quote-brand-logo{display:block;width:225px;height:36px;object-fit:contain;object-position:left center}
.quote-brand-tls-korea{width:120px;height:42px}
.quote-brand-riemann{width:210px;height:46px}
.quote-cost-table .quote-cost-kind{font-weight:800;font-size:9px;white-space:nowrap}
.quote-cost-table .quote-equipment-line{font-weight:700}
.quote-cost-table .quote-first-option td{border-top:1px solid #a7b3c2}
.quote-cost-table tfoot .quote-cost-summary td{padding:4px 6px;font-weight:700;background:#f5f8fb}
.quote-cost-table tfoot .quote-cost-summary td:first-child{text-align:left}
#qjhPage .quote-cost-table tfoot .quote-cost-summary td{background:#fff8e3}
