/* TECDOOR application UI. Screen-only: document and invoice print layouts stay independent. */
@media screen {
 :root{--tec-brand:#003878;--tec-ink:#24364b;--tec-muted:#607086;--tec-line:#d8e0e9;--tec-surface:#fff;--tec-bg:#f3f5f8;--shadow:0 2px 10px #1633530a;--shadow2:0 8px 28px #16335318;--radius-xl:12px;--radius-lg:10px;--radius-md:8px}
 body.tec-ui{font-family:"Segoe UI",Arial,sans-serif;color:var(--tec-ink);background:var(--tec-bg);line-height:1.45}
 .tec-ui :is(.topbar,.app-header){background:var(--tec-brand);box-shadow:0 1px 4px #18335318}
 .tec-ui :is(.card,.form-container,.order-card){border:1px solid var(--tec-line);border-radius:12px;box-shadow:var(--shadow);background:var(--tec-surface)}
 .tec-ui :is(h1,h2,h3){letter-spacing:normal;line-height:1.3}
 .tec-ui :is(.card h2,.form-section h3,.modal-header h2){font-weight:600}
 .tec-ui :is(button,.btn){font-family:inherit;font-weight:600;letter-spacing:normal;text-transform:none;transition:background-color .12s,border-color .12s;box-shadow:none}
 .tec-ui .btn{border-radius:7px;min-height:34px}
 .tec-ui :is(.btn-primary,.btn.primary){background:var(--tec-brand);color:#fff;border:1px solid var(--tec-brand)}
 .tec-ui :is(.btn-primary,.btn.primary):hover{background:#002c60}
 .tec-ui :is(.card,.modal-body,.modal-footer,.form-container) .btn.secondary{background:#fff;color:var(--tec-brand);border:1px solid var(--tec-line)}
 .tec-ui :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=submit]):not([type=button]),select,textarea){font-family:inherit;border:1px solid var(--tec-line);border-radius:6px;background:#fff;color:var(--tec-ink);min-height:34px;padding:6px 9px;box-sizing:border-box;max-width:100%}
 .tec-ui textarea{line-height:1.5;resize:vertical}
 .tec-ui :is(input,select,textarea):disabled{background:#f0f3f6;color:#65758a}
 .tec-ui :is(input,select,textarea)[readonly]{background:#f6f8fa}
 .tec-ui :is(input[type=checkbox],input[type=radio]){accent-color:var(--tec-brand)}
 .tec-ui :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #e69926;outline-offset:2px}
 .tec-ui :is(.field label,.form-group>label){font-weight:600;color:#42556b}
 .tec-ui :is(.modal-content,.modal-overlay>.modal,dialog){border:1px solid var(--tec-line);border-radius:12px;box-shadow:0 16px 60px #152b4930;max-width:calc(100vw - 24px)}
 .tec-ui dialog{color:var(--tec-ink);background:#fff;max-height:calc(100dvh - 32px);overflow:auto}
 .tec-ui dialog::backdrop{background:#142c4966}
 .tec-ui .modal-header{border-bottom:1px solid var(--tec-line);padding:16px 20px;background:#fff;border-radius:12px 12px 0 0}
 .tec-ui .modal-footer{border-top:1px solid var(--tec-line);padding:12px 20px;background:#f8fafc;gap:8px;flex-wrap:wrap}
 .tec-ui :is(.tabs,.panel-tabs){gap:4px;box-shadow:none}
 .tec-ui :is(.main-nav,.view-tabs){max-width:100%;overflow-x:auto;scrollbar-width:thin}
 .tec-ui :is(.tab-btn,.panel-tab){border-radius:6px;font-weight:500}
 .tec-ui :is(.tab-btn,.panel-tab).active{font-weight:600}
 .tec-ui .tt-table{border-collapse:separate;border-spacing:0;border:1px solid var(--tec-line);border-radius:8px;background:#fff}
 .tec-ui .tt-table>thead>tr>th{background:#edf2f7;color:#344c67;font-weight:600;padding:10px 9px;border-bottom:1px solid var(--tec-line)}
 .tec-ui .tt-table>tbody>tr>td{border-bottom:1px solid #edf1f5;padding:9px;vertical-align:middle}
 .tec-ui .tt-table>tbody>tr:hover>td{background-color:#f4f7fb}
 .tec-ui .tt-bar{background:#f8fafc;border:1px solid var(--tec-line);border-radius:8px;padding:8px;gap:6px;flex-wrap:wrap}
 .tec-ui .tt-bar button{border-radius:6px;min-height:32px;background:#fff;color:var(--tec-brand);border:1px solid var(--tec-line)}
 .tec-ui .tt-count{color:var(--tec-muted)}
 .tec-ui .tec-table-scroll{max-width:100%;overflow:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
 .tec-ui .tec-table-scroll:focus-visible{outline:2px solid #e69926;outline-offset:2px}
 .tec-ui .tec-skip{position:fixed;left:16px;top:-100px;z-index:100000;background:#fff;color:var(--tec-brand);padding:12px;border:2px solid var(--tec-brand);border-radius:6px}
 .tec-ui .tec-skip:focus{top:12px}
 @media(max-width:700px){
  .tec-ui :is(.topbar,.app-header){padding:10px 12px;gap:8px}
  .tec-ui :is(.topbar-actions,.form-actions){flex-wrap:wrap;gap:8px}
  .tec-ui :is(.btn,.main-nav-tab,.view-tab,.tab-btn,.panel-tab,.modal-close,.tt-bar button){min-height:44px}
  .tec-ui :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){font-size:16px;min-height:40px}
  .tec-ui :is(.modal-header,.modal-footer){padding:12px}
  .tec-ui .modal-body{padding:12px;overscroll-behavior:contain}
  .tec-ui .tt-panel{flex-wrap:wrap;max-width:100%}
 }
 @media(prefers-reduced-motion:reduce){.tec-ui *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
}
