@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-primary-500:#3b82f6;--color-primary-600:#2563eb;--color-primary-700:#1d4ed8;--color-primary-800:#1e40af;--color-gray-50:#f8fafc;--color-gray-100:#f1f5f9;--color-gray-200:#e2e8f0;--color-gray-300:#cbd5e1;--color-gray-400:#94a3b8;--color-gray-500:#64748b;--color-gray-600:#475569;--color-gray-700:#334155;--color-gray-800:#1e293b;--color-gray-900:#0f172a;--color-success:#16a34a;--color-error:#dc2626;--color-warning:#d97706;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--font-family:"Inter", sans-serif;--font-size-xs:12px;--font-size-sm:14px;--font-size-base:16px;--font-size-lg:18px;--font-size-xl:20px;--font-size-2xl:24px;--font-size-3xl:30px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--color-surface:#fff;--color-border:#e2e8f0;--radius:8px;--control-h:38px;--control-h-sm:32px;--control-px:var(--space-3);--focus-ring:0 0 0 3px var(--color-primary-100)}[data-theme=dark]{--color-gray-50:#0f172a;--color-gray-100:#1e293b;--color-gray-200:#334155;--color-gray-300:#475569;--color-gray-400:#64748b;--color-gray-500:#94a3b8;--color-gray-600:#cbd5e1;--color-gray-700:#e2e8f0;--color-gray-800:#f1f5f9;--color-gray-900:#f8fafc;--color-surface:#1e293b;--color-border:#334155;--color-primary-50:#1e3a5f;--color-primary-100:#1e40af}[data-theme=dark] body{color:#e2e8f0;background-color:#0f172a}[data-theme=dark] .card{background:#1e293b;border-color:#334155}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{color:#e2e8f0;background:#0f172a;border-color:#334155}[data-theme=dark] table thead tr{background:#0f172a}[data-theme=dark] .btn-secondary{color:#cbd5e1;background:#1e293b;border-color:#334155}[data-theme=dark] .btn-secondary:hover{background:#334155}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-base);-webkit-text-size-adjust:100%}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-gray-800);background-color:var(--color-gray-50);-webkit-font-smoothing:antialiased;line-height:1.5}#root{min-height:100vh}a{color:var(--color-primary-600);text-decoration:none}a:hover{color:var(--color-primary-700);text-decoration:underline}button{font-family:var(--font-family);cursor:pointer}input,select,textarea{font-family:var(--font-family);font-size:var(--font-size-base)}.field{gap:var(--space-1);flex-direction:column;display:flex}.field label{font-size:var(--font-size-sm);color:var(--color-gray-700);font-weight:500}.field input,.field select,.field textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-gray-900);height:var(--control-h);line-height:1.3;font-size:var(--font-size-sm);transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--color-primary-500);box-shadow:0 0 0 3px var(--color-primary-100);outline:none}.field input::placeholder{color:var(--color-gray-400)}.field textarea{resize:vertical;height:auto}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);font-size:var(--font-size-sm);border-radius:var(--radius-sm);height:var(--control-h);white-space:nowrap;vertical-align:middle;-webkit-user-select:none;user-select:none;border:1px solid #0000;font-weight:600;line-height:1.2;text-decoration:none;transition:background-color .15s,opacity .15s,border-color .15s,box-shadow .15s;display:inline-flex}.btn:hover{text-decoration:none}.btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;pointer-events:none}.btn svg,.btn img{flex-shrink:0}.btn-primary{background-color:var(--color-primary-600);color:#fff}.btn-primary:hover{background-color:var(--color-primary-700)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background-color:var(--color-gray-100);color:var(--color-gray-700);border:1px solid var(--color-gray-200)}.btn-secondary:hover{background-color:var(--color-gray-200)}.btn-danger{color:var(--color-error);background-color:#fef2f2;border:1px solid #fecaca}.btn-danger:hover{background-color:#fee2e2}.btn-full{width:100%}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.alert-error{color:var(--color-error);background-color:#fef2f2;border:1px solid #fecaca}.alert-success{color:var(--color-success);background-color:#f0fdf4;border:1px solid #bbf7d0}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}:root{--color-primary:#3b82f6;--color-bg:#fff;--color-danger:#ef4444;--radius-full:9999px}[data-theme=dark]{--color-bg:#1e293b}.btn-sm{height:var(--control-h-sm);font-size:var(--font-size-sm);gap:var(--space-1);padding:0 12px}.page-container{max-width:1400px}.page-subtitle{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-top:2px}.loading-state,.empty-state{padding:var(--space-12) var(--space-6);text-align:center;color:var(--color-gray-400);font-size:var(--font-size-sm)}.form-group{gap:var(--space-1);flex-direction:column;display:flex}.form-group label{font-size:var(--font-size-sm);color:var(--color-gray-700);font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-gray-900);height:var(--control-h);line-height:1.3;font-size:var(--font-size-sm);transition:border-color .15s,box-shadow .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary-500);box-shadow:0 0 0 3px var(--color-primary-100);outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-gray-400)}.form-group textarea{resize:vertical;height:auto}.form-error{font-size:var(--font-size-sm);color:var(--color-error)}.modal-overlay{z-index:1000;padding:var(--space-4);background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-box{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;width:100%;max-width:560px;max-height:90vh;display:flex;overflow-y:auto}.modal-box--sm{max-width:420px}.modal-box--lg{max-width:780px}.modal-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.modal-header h3{font-size:var(--font-size-lg);color:var(--color-gray-900);margin:0;font-weight:600}.modal-close{color:var(--color-gray-400);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:2px 6px;font-size:22px;line-height:1;transition:color .1s,background .1s}.modal-close:hover{color:var(--color-gray-700);background:var(--color-gray-100)}.modal-actions{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border);flex-shrink:0;display:flex}.page-header{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-title{font-size:var(--font-size-2xl);color:var(--color-gray-900);font-weight:700}.tab-bar{background:var(--color-gray-100);border-radius:var(--radius-lg);margin-bottom:var(--space-5);-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:2px;width:fit-content;max-width:100%;padding:4px;display:flex;overflow-x:auto}.tab-bar::-webkit-scrollbar{display:none}.tab-btn{border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex-shrink:0;padding:6px 18px;font-weight:500;transition:background .15s,color .15s,box-shadow .15s}.tab-btn:hover{background:var(--color-gray-200);color:var(--color-gray-800)}.tab-btn--active{background:var(--color-surface);color:var(--color-gray-900);box-shadow:var(--shadow-sm);font-weight:600}.form-section{padding:var(--space-6);margin-bottom:var(--space-4)}.form-section-title{font-size:var(--font-size-base);color:var(--color-gray-800);margin:0 0 var(--space-4) 0;font-weight:600}.form-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}@supports (grid-template-rows:subgrid){.form-grid>.form-group,.form-grid>.field{grid-row:span 3;grid-template-rows:subgrid;row-gap:var(--space-1);align-content:start;display:grid}.form-grid>.form-group>label,.form-grid>.field>label{align-self:end}}.form-actions{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) 0;display:flex}.att-list{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.att-chip{align-items:center;gap:var(--space-1);background:var(--color-gray-100);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);max-width:280px;padding:4px 8px;display:inline-flex}.att-chip-name{color:var(--color-primary-600,#2563eb);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;text-decoration:none;display:inline-flex;overflow:hidden}.att-chip-name:hover{text-decoration:underline}.att-chip-icon{flex-shrink:0;font-size:14px}.att-chip-del{cursor:pointer;color:var(--color-gray-400);background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:16px;line-height:1}.att-chip-del:hover{color:var(--color-danger,#ef4444)}.form-input,.form-control{width:100%;height:var(--control-h);padding:var(--space-2) var(--control-px);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-gray-900);font-size:var(--font-size-sm);line-height:1.3;transition:border-color .15s,box-shadow .15s}textarea.form-input,textarea.form-control{resize:vertical;height:auto;min-height:80px}.form-input:focus,.form-control:focus{border-color:var(--color-primary-500);box-shadow:var(--focus-ring);outline:none}.form-input::placeholder,.form-control::placeholder{color:var(--color-gray-400)}.field input:disabled,.field select:disabled,.field textarea:disabled,.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled,.form-input:disabled,.form-control:disabled{background:var(--color-gray-100);color:var(--color-gray-500);cursor:not-allowed;opacity:1}.field input[readonly],.form-group input[readonly],.form-input[readonly],.form-control[readonly]{background:var(--color-gray-50)}.field .is-invalid,.form-group .is-invalid,.form-input.is-invalid,.form-control.is-invalid,.field [aria-invalid=true],.form-group [aria-invalid=true]{border-color:var(--color-error)}.field select,.form-group select,select.form-input,select.form-control{padding-right:var(--space-6);text-overflow:ellipsis}.field label,.form-group label{line-height:1.3}.form-group>label,.field>label{display:block}.required:after,label.required:after{content:" *";color:var(--color-error)}.form-hint{font-size:var(--font-size-xs);color:var(--color-gray-500);line-height:1.4}.field input[type=checkbox],.field input[type=radio],.form-group input[type=checkbox],.form-group input[type=radio]{width:16px;height:16px;box-shadow:none;accent-color:var(--color-primary-600);cursor:pointer;flex-shrink:0;margin:0;padding:0}.form-check{align-items:center;gap:var(--space-2);min-height:var(--control-h);font-size:var(--font-size-sm);cursor:pointer;display:inline-flex}.form-group label:has(>input[type=checkbox]){align-items:center;gap:var(--space-2);min-height:var(--control-h);font-size:var(--font-size-sm);cursor:pointer;display:inline-flex}.form-group label:has(>input[type=radio]){align-items:center;gap:var(--space-2);min-height:var(--control-h);font-size:var(--font-size-sm);cursor:pointer;display:inline-flex}.field label:has(>input[type=checkbox]){align-items:center;gap:var(--space-2);min-height:var(--control-h);font-size:var(--font-size-sm);cursor:pointer;display:inline-flex}.field label:has(>input[type=radio]){align-items:center;gap:var(--space-2);min-height:var(--control-h);font-size:var(--font-size-sm);cursor:pointer;display:inline-flex}.form-check input[type=checkbox],.form-check input[type=radio]{width:16px;height:16px;accent-color:var(--color-primary-600);flex-shrink:0;margin:0}.form-row{gap:var(--space-4);flex-wrap:wrap;align-items:flex-start;display:flex}.form-row>*{flex:200px;min-width:0}.form-row>.form-row-auto{flex:none}.form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid>*{min-width:0}.span-2{grid-column:span 2}.span-full{grid-column:1/-1}.form-actions{flex-wrap:wrap;align-items:center}.btn-ghost{color:var(--color-gray-600);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--color-gray-100);color:var(--color-gray-800)}.btn-danger-outline{color:var(--color-error);background:0 0;border-color:#fecaca}.btn-danger-outline:hover{background:#fef2f2}.btn-icon{width:var(--control-h);padding:0}.btn-icon.btn-sm{width:var(--control-h-sm)}.btn-group{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.page-header>div:first-child{min-width:0}.page-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.toolbar{align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.toolbar>*{min-width:0}.toolbar-search{flex:240px}.toolbar-spacer{margin-left:auto}.toolbar input:not([type=checkbox]):not([type=radio]),.toolbar select{height:var(--control-h)}.filters{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;display:grid}.card-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.card-title{font-size:var(--font-size-base);color:var(--color-gray-900);margin:0;font-weight:600}.card-body{padding:var(--space-5)}.badge{font-size:var(--font-size-xs);white-space:nowrap;vertical-align:middle;border-radius:var(--radius-full);align-items:center;gap:4px;padding:2px 8px;font-weight:600;line-height:1.4;display:inline-flex}.badge-gray{background:var(--color-gray-100);color:var(--color-gray-600)}.badge-primary,.badge-info{color:#1d4ed8;background:#eff6ff}.badge-success{color:#166534;background:#dcfce7}.badge-danger{color:#b91c1c;background:#fee2e2}.badge-warning{color:#854d0e;background:#fef9c3}.table-wrap{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}@media screen{[class$=-table-wrap],[class*=-table-wrap\ ]{-webkit-overflow-scrolling:touch;max-width:100%}}.data-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}.data-table th,.data-table td{padding:10px var(--space-3);text-align:left;vertical-align:middle;border-bottom:1px solid var(--color-border)}.data-table thead th{background:var(--color-gray-50);color:var(--color-gray-500);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;font-weight:600}.data-table tbody tr:nth-child(2n){background:var(--color-gray-50)}.data-table tbody tr:hover{background:var(--color-primary-50)}.data-table tbody tr:last-child td{border-bottom:none}.data-table--compact th,.data-table--compact td{padding:6px var(--space-2)}.data-table--sticky thead th{z-index:1;position:sticky;top:0}.row-link{cursor:pointer}.num,th.num,td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.text-right{text-align:right}.text-center{text-align:center}.text-left{text-align:left}.nowrap{white-space:nowrap}.truncate{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.muted{color:var(--color-gray-500)}.col-actions,th.col-actions,td.col-actions{white-space:nowrap;text-align:right;width:1%}.col-actions .btn+.btn{margin-left:var(--space-1)}.col-actions .cell-actions .btn+.btn{margin-left:0}.form-section-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.form-section-header .form-section-title{margin-bottom:0}.cell-actions{align-items:center;gap:var(--space-1);flex-wrap:nowrap;display:inline-flex}.modal-header{gap:var(--space-3);z-index:2;background:var(--color-surface);position:sticky;top:0}.modal-header h3{overflow-wrap:anywhere;min-width:0}.modal-close{flex-shrink:0;min-width:32px;min-height:32px}.modal-body{padding:var(--space-5);flex:auto;min-height:0}.modal-box>p{padding:var(--space-5);margin:0}.modal-actions{z-index:2;background:var(--color-surface);flex-wrap:wrap;align-items:center;position:sticky;bottom:0}.modal-box--xl{max-width:1040px}@media print{.modal-header,.modal-actions{position:static}}@media (width<=768px){:root{--control-h:44px;--control-h-sm:36px}.page-title{font-size:var(--font-size-xl)}.page-header{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column}.page-header>div:last-child:not(:first-child),.page-header>.rn-detail-actions,.page-header [style*="display: flex"]{width:100%}.btn{min-height:44px;padding:var(--space-2) var(--space-4)}.btn-sm{min-height:var(--control-h-sm);padding:0 var(--space-3)}.btn-icon{width:var(--control-h)}.btn-icon.btn-sm{width:var(--control-h-sm)}input,select,textarea,.field input,.field select,.field textarea,.form-group input,.form-group select,.form-group textarea,.form-input,.form-control{font-size:16px}.field textarea,.form-group textarea{height:auto;min-height:80px}.field input[type=checkbox],.field input[type=radio],.form-group input[type=checkbox],.form-group input[type=radio],.form-check input[type=checkbox],.form-check input[type=radio]{width:20px;height:20px}.form-row{align-items:stretch;gap:var(--space-3);flex-direction:column}.form-row>*{flex:auto;width:100%}.form-grid--2,.form-grid--3,.form-grid--4{grid-template-columns:1fr}.span-2{grid-column:1/-1}.toolbar{align-items:stretch;gap:var(--space-2);flex-direction:column}.toolbar>*,.toolbar-search{flex:auto;width:100%}.toolbar-spacer{margin-left:0}.filters{gap:var(--space-2);grid-template-columns:1fr 1fr}.page-actions{width:100%}.card-header{padding:var(--space-3) var(--space-4)}.card-body{padding:var(--space-4)}.data-table th,.data-table td,.modal-overlay{padding:var(--space-2)}.modal-box{max-height:calc(100vh - 2 * var(--space-2));max-height:calc(100dvh - 2 * var(--space-2))}.modal-header{padding:var(--space-3) var(--space-4)}.modal-body,.modal-box>p{padding:var(--space-4)}.modal-actions{padding:var(--space-3) var(--space-4)}.card{border-radius:var(--radius-md)}.form-section{padding:var(--space-4)!important;margin-bottom:var(--space-3)!important}.form-section-title{font-size:var(--font-size-sm)!important;margin-bottom:var(--space-3)!important}.form-grid{gap:var(--space-3)!important;grid-template-columns:1fr!important}.form-actions{gap:var(--space-2)!important;padding:var(--space-4) 0!important;flex-direction:column-reverse!important}.form-actions .btn{justify-content:center!important;width:100%!important}.alert{font-size:var(--font-size-sm)}.rn-detail-meta{gap:var(--space-2)!important;font-size:var(--font-size-xs)!important;flex-wrap:wrap!important}[style*="position: fixed"][style*="alignItems: center"]>div,[style*="position: fixed"][style*="align-items: center"]>div{margin:var(--space-4);max-height:calc(100vh - 2 * var(--space-4));overflow-y:auto;max-width:calc(100vw - 2 * var(--space-4))!important}.card{overflow-x:auto}.doc-items-table,.doc-items-table--view{min-width:480px}.doc-filters,.rn-filters{grid-template-columns:1fr!important}.page-header>div:last-child:not(:first-child){gap:var(--space-2);flex-wrap:wrap;display:flex}.kat-table th:nth-child(n+5):not(:last-child),.kat-table td:nth-child(n+5):not(:last-child){display:none}.supplier-picker{border-radius:var(--radius-lg) var(--radius-lg) 0 0;position:fixed;bottom:0;left:0;right:0;max-width:100%!important;max-height:90vh!important}.supplier-picker-overlay{align-items:flex-end!important;padding:0!important}.isch-dropdown{max-height:220px}[style*="overflowY: auto"] table{min-width:500px}.doc-actions .btn,.rn-actions .btn{font-size:var(--font-size-xs);min-height:36px;padding:6px 10px}.tab-bar{scroll-snap-type:x proximity;flex-wrap:nowrap;width:100%;max-width:100%}.tab-btn{scroll-snap-align:start;min-height:38px;padding:7px 14px}}@media (width<=480px){.page-title{font-size:var(--font-size-lg)}.layout-main{padding:var(--space-3)}.form-section{padding:var(--space-3)!important}.page-header>div:last-child:not(:first-child) .btn,.page-actions .btn{flex:auto;min-width:max-content}.filters{grid-template-columns:1fr}.modal-overlay{align-items:flex-end;padding:0}.modal-box,.modal-box--sm,.modal-box--lg,.modal-box--xl{border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:none;max-width:100%;max-height:94dvh}.modal-actions{align-items:stretch;gap:var(--space-2);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0px));flex-direction:column-reverse}.modal-actions .btn{width:100%}.btn-group>.btn{flex:auto}}[data-theme=dark] .modal-box{background:var(--color-surface);border-color:var(--color-border)}[data-theme=dark] .modal-header,[data-theme=dark] .modal-actions{border-color:var(--color-border)}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select,[data-theme=dark] .form-group textarea{background:var(--color-gray-50);color:var(--color-gray-900);border-color:var(--color-border)}[data-theme=dark] .tab-bar{background:var(--color-gray-200)}[data-theme=dark] .tab-btn--active{background:var(--color-surface);color:var(--color-gray-900)}[data-theme=dark] .tab-btn:hover{background:var(--color-gray-300)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--color-surface)!important;color:var(--color-gray-900)!important;border-color:var(--color-border)!important}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--color-gray-400)!important}[data-theme=dark] .mp-task-card,[data-theme=dark] .mp-order-card,[data-theme=dark] .mp-tool-card,[data-theme=dark] .mp-tabs,[data-theme=dark] .mp-bottom-nav,[data-theme=dark] .mp-confirm-box,[data-theme=dark] .mp-qr-modal,[data-theme=dark] .mp-att-item,[data-theme=dark] .mp-order-btn,[data-theme=dark] .mp-btn-docs,[data-theme=dark] .mp-att-add,[data-theme=dark] .mp-photo-thumb{background:var(--color-surface);border-color:var(--color-border)}[data-theme=dark] .mp-task-card{border-left-color:var(--color-border)}[data-theme=dark] .mp-order-btn{color:var(--color-gray-700)}[data-theme=dark] .mp-tabs{border-bottom-color:var(--color-border)}[data-theme=dark] .rn-child-card,[data-theme=dark] .rn-complete-modal,[data-theme=dark] .confirm-box,[data-theme=dark] .rn-stavka,[data-theme=dark] .rn-edit-form,[data-theme=dark] .woc-comment,[data-theme=dark] .woc-input,[data-theme=dark] .woc-mention-dropdown,[data-theme=dark] .woc-photo-grid,[data-theme=dark] .tcl-fill,[data-theme=dark] .tcl-fill-item{background:var(--color-surface);border-color:var(--color-border)}[data-theme=dark] .tcl-number-input,[data-theme=dark] .tcl-text-input,[data-theme=dark] .woc-textarea{background:var(--color-surface);color:var(--color-gray-900);border-color:var(--color-border)}[data-theme=dark] .db-card,[data-theme=dark] .db-table-wrap,[data-theme=dark] .db-chart-wrap,[data-theme=dark] .doc-form-card,[data-theme=dark] .doc-table-wrap,[data-theme=dark] .doc-preview,[data-theme=dark] .mag-detail-card,[data-theme=dark] .mag-table-wrap,[data-theme=dark] .wl-cell{background:var(--color-surface);border-color:var(--color-border)}[data-theme=dark] table tbody tr{background:var(--color-surface)}[data-theme=dark] table tbody tr:nth-child(2n){background:var(--color-gray-100)}[data-theme=dark] table tbody td{border-color:var(--color-border);color:var(--color-gray-900)}[data-theme=dark] table tbody tr:hover{background:var(--color-gray-200)}.pag{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;font-size:var(--font-size-sm);color:var(--color-gray-500);display:flex}.pag-btn{border:1px solid var(--color-gray-200);background:var(--color-surface);cursor:pointer;color:var(--color-gray-600);border-radius:4px;padding:4px 10px;font-size:16px;line-height:1;transition:background .1s}.pag-btn:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-300)}.pag-btn:disabled{opacity:.3;cursor:default}.pag-info{text-align:center;min-width:130px}.pagination{padding:var(--space-3) var(--space-2);margin-top:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.pagination-info{font-size:var(--font-size-sm);color:var(--color-gray-500)}.pagination-controls{align-items:center;gap:var(--space-2);display:flex}.pagination-page{font-size:var(--font-size-sm);color:var(--color-gray-600);text-align:center;min-width:70px}.pagination-controls .btn{min-width:34px;padding:4px 10px;font-size:15px;line-height:1.2}@media (width<=768px){.pagination{text-align:center;justify-content:center}.pagination-info{width:100%}.pagination-controls .btn,.pag-btn{min-width:44px;min-height:44px}.form-section-header .btn-group{width:100%}.form-section-header .btn-group .btn{flex:auto}}.push-bell-wrap{align-items:center;display:flex;position:relative}.push-bell{width:32px;height:32px;color:var(--color-gray-600);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.push-bell:hover:not(:disabled){background:var(--color-gray-100);color:var(--color-gray-900)}.push-bell--on{color:#fbbf24}.push-bell--on:hover:not(:disabled){color:#f59e0b}.push-bell:disabled{opacity:.3;cursor:not-allowed}.push-bell-spinner{border:2px solid var(--color-gray-200);border-top-color:var(--color-primary-500);border-radius:50%;width:14px;height:14px;animation:.7s linear infinite pb-spin;display:inline-block}@keyframes pb-spin{to{transform:rotate(360deg)}}.push-bell-error{color:#f87171;white-space:normal;z-index:100;pointer-events:none;background:#1e1e1e;border-radius:6px;max-width:min(220px,100vw - 16px);padding:5px 9px;font-size:11px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 12px #0000004d}@media (width<=768px){.push-bell{width:44px;height:44px}}.timer-widget{background:#10b98126;border:1px solid #10b98166;border-radius:20px;align-items:center;gap:6px;padding:4px 10px 4px 12px;transition:background .2s;display:flex}.timer-widget--paused{background:#f59e0b26;border-color:#f59e0b66}.timer-info{cursor:pointer;flex-direction:column;line-height:1.2;display:flex}.timer-elapsed{color:#065f46;letter-spacing:.03em;font-family:monospace;font-size:14px;font-weight:700}.timer-widget--paused .timer-elapsed{color:#92400e}.timer-task{color:var(--color-gray-500);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:10px;overflow:hidden}.timer-btns{gap:2px;display:flex}.timer-btn{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;min-width:26px;min-height:26px;padding:2px 4px;font-size:14px;line-height:1;transition:background .15s;display:inline-flex}.timer-btn:hover{background:#00000014}.timer-btn--stop{color:#dc2626}.timer-btn--pause{color:#d97706}.timer-btn--resume{color:#059669}@media (width<=768px){.timer-btn{min-width:36px;min-height:36px}}@media (width<=600px){.timer-task{display:none}.timer-widget{padding:4px 8px}}.gs-backdrop{z-index:1000;background:#00000073;justify-content:center;align-items:flex-start;padding-top:10vh;animation:.1s gs-fade-in;display:flex;position:fixed;inset:0}@keyframes gs-fade-in{0%{opacity:0}to{opacity:1}}.gs-modal{background:var(--color-surface,white);border-radius:var(--radius-lg,12px);width:min(600px,90vw);animation:.15s gs-slide-in;overflow:hidden;box-shadow:0 20px 60px #00000040}@keyframes gs-slide-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.gs-input-wrap{align-items:center;gap:var(--space-3,12px);padding:var(--space-4,16px);border-bottom:1px solid var(--color-border,#e2e8f0);display:flex}.gs-icon{flex-shrink:0;font-size:18px}.gs-input{color:var(--color-gray-800,#1e293b);background:0 0;border:none;outline:none;flex:1;font-size:16px}.gs-spinner{border:2px solid var(--color-gray-200,#e2e8f0);border-top-color:var(--color-primary-500,#3b82f6);border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.gs-esc{background:var(--color-gray-100,#f1f5f9);border:1px solid var(--color-border,#e2e8f0);color:var(--color-gray-500,#64748b);cursor:pointer;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:11px}.gs-results{max-height:360px;list-style:none;overflow-y:auto}.gs-result{align-items:center;gap:var(--space-3,12px);padding:var(--space-3,12px) var(--space-4,16px);cursor:pointer;border-bottom:1px solid var(--color-border-light,#f1f5f9);transition:background .1s;display:flex}.gs-result:last-child{border-bottom:none}.gs-result--active,.gs-result:hover{background:var(--color-primary-50,#eff6ff)}.gs-result-code{color:var(--color-gray-400,#94a3b8);flex-shrink:0;min-width:60px;font-family:monospace;font-size:11px}.gs-result-body{flex-direction:column;flex:1;gap:2px;display:flex;overflow:hidden}.gs-result-title{color:var(--color-gray-800,#1e293b);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.gs-result-client{color:var(--color-gray-500,#64748b);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.gs-result-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.gs-badge{border-radius:10px;padding:1px 7px;font-size:10px;font-weight:600}.gs-badge--draft{color:#475569;background:#f1f5f9}.gs-badge--assigned{color:#1d4ed8;background:#eff6ff}.gs-badge--in_progress{color:#c2410c;background:#fff7ed}.gs-badge--completed{color:#166534;background:#f0fdf4}.gs-badge--closed{color:#475569;background:#f1f5f9}.gs-badge--cancelled{color:#991b1b;background:#fef2f2}.gs-progress{color:var(--color-gray-400,#94a3b8);font-size:11px}.gs-empty{padding:var(--space-6,24px);text-align:center;color:var(--color-gray-400,#94a3b8);font-size:14px}.gs-footer{gap:var(--space-4,16px);padding:var(--space-3,12px) var(--space-4,16px);border-top:1px solid var(--color-border,#e2e8f0);background:var(--color-gray-50,#f8fafc);color:var(--color-gray-400,#94a3b8);font-size:11px;display:flex}.gs-input{min-width:0}@media (width<=768px){.gs-backdrop{padding:var(--space-2);padding-top:var(--space-4)}.gs-modal{width:100%;max-width:600px;max-height:calc(100vh - 2 * var(--space-4));max-height:calc(100dvh - 2 * var(--space-4));flex-direction:column;display:flex}.gs-input-wrap{padding:var(--space-3)}.gs-esc{justify-content:center;align-items:center;min-width:44px;min-height:36px;font-size:12px;display:inline-flex}.gs-results{flex:auto;min-height:0;max-height:none}.gs-result{padding:var(--space-3);min-height:52px}.gs-result-code{min-width:0}.gs-footer{display:none}}.header{z-index:100;border-bottom:1px solid var(--color-gray-200);box-shadow:var(--shadow-sm);background:#fff;position:sticky;top:0}.header-inner{max-width:1400px;padding:0 var(--space-4);align-items:center;gap:var(--space-2);height:56px;margin:0 auto;display:flex}.header-logo{align-items:center;gap:var(--space-2);cursor:pointer;flex-shrink:0;text-decoration:none;display:flex}.header-logo-icon{background:var(--color-primary-600);color:#fff;border-radius:var(--radius-md);width:32px;height:32px;font-weight:700;font-size:var(--font-size-base);justify-content:center;align-items:center;display:flex}.header-logo-text{font-size:var(--font-size-lg);color:var(--color-gray-900);letter-spacing:-.5px;font-weight:700}.header-nav{flex:1;align-items:center;gap:2px;min-width:0;display:flex;overflow:visible}.header-nav-item{color:var(--color-gray-600);border-radius:var(--radius-sm);white-space:nowrap;background:0 0;border:none;flex-shrink:0;padding:6px 10px;font-size:13px;font-weight:500;transition:background-color .15s,color .15s}.header-nav-item:hover{background-color:var(--color-gray-100);color:var(--color-gray-900)}.header-nav-item--active{background-color:var(--color-primary-50);color:var(--color-primary-700);font-weight:600}.header-mobile-extras{display:none}.header-right{align-items:center;gap:var(--space-2);flex-shrink:0;margin-left:auto;display:flex}.header-icon-btn{cursor:pointer;color:var(--color-gray-600);background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:5px 7px;font-size:16px;line-height:1;transition:background .15s}.header-icon-btn:hover{background:var(--color-gray-100)}.header-help-btn{justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex;color:var(--color-primary-600)!important;border:1px solid var(--color-primary-200)!important;border-radius:50%!important;width:28px!important;height:28px!important;padding:0!important}.header-help-btn:hover{background:var(--color-primary-50)!important;border-color:var(--color-primary-400)!important}.header-lang-group{flex-shrink:0;gap:2px;display:flex}.header-lang-btn{border:1px solid var(--color-gray-300);cursor:pointer;letter-spacing:.04em;color:var(--color-gray-600);background:0 0;border-radius:4px;flex-shrink:0;padding:3px 6px;font-size:11px;font-weight:700;transition:background .15s,color .15s,border-color .15s}.header-lang-btn:hover{background:var(--color-gray-100)}.header-lang-btn.active{background:var(--color-primary-600);border-color:var(--color-primary-600);color:#fff}.header-user{flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.header-user-name{color:var(--color-gray-800);white-space:nowrap;font-size:13px;font-weight:600}.header-user-role{color:var(--color-gray-500);text-transform:capitalize;font-size:11px}.header-logout{height:32px;min-height:32px;padding:0 var(--space-3);flex-shrink:0;font-size:13px}.header-burger{padding:var(--space-2);cursor:pointer;background:0 0;border:none;flex-direction:column;flex-shrink:0;gap:5px;display:none}.burger-line{background:var(--color-gray-700);border-radius:2px;width:22px;height:2px;display:block}.hng{flex-shrink:0;position:relative}.hng-btn{align-items:center;gap:4px;display:flex!important}.hng-chevron{opacity:.45;pointer-events:none;font-size:9px;line-height:1;transition:transform .15s,opacity .15s}.hng--open .hng-chevron{opacity:.85;transform:rotate(180deg)}.hng-dropdown{border:1px solid var(--color-gray-200);border-radius:var(--radius-md);min-width:175px;box-shadow:var(--shadow-md);z-index:300;background:#fff;flex-direction:column;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);left:0}.hng-item{text-align:left;color:var(--color-gray-700);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:none;width:100%;padding:7px 12px;font-size:13px;font-weight:500;transition:background .1s,color .1s}.hng-item:hover{background:var(--color-gray-100);color:var(--color-gray-900)}.hng-item--active{color:var(--color-primary-700);background:var(--color-primary-50);font-weight:600}[data-theme=dark] .hng-dropdown{background:#1e293b;border-color:#334155}[data-theme=dark] .hng-item{color:#cbd5e1}[data-theme=dark] .hng-item:hover{color:#f1f5f9;background:#334155}[data-theme=dark] .hng-item--active{color:#93c5fd;background:#1e3a5f}@media (width<=900px){.header-inner{padding:0 var(--space-3)}.header-burger{min-width:44px;min-height:44px;margin-left:auto;margin-right:calc(-1 * var(--space-2));border-radius:var(--radius-sm);justify-content:center;align-items:center;display:flex}.header-right{display:none}.header-nav{border-bottom:1px solid var(--color-gray-200);box-shadow:var(--shadow-md);padding:var(--space-3);overscroll-behavior:contain;z-index:200;background:#fff;flex-direction:column;align-items:stretch;gap:2px;max-height:calc(100dvh - 56px);display:none;position:absolute;top:56px;left:0;right:0;overflow:visible auto}.header-nav--open{display:flex}.header-nav-item{text-align:left;white-space:normal;min-height:44px;padding:10px 12px;font-size:14px}.header-mobile-extras{align-items:center;gap:var(--space-2);border-top:1px solid var(--color-gray-100);margin-top:var(--space-2);padding-top:var(--space-3);flex-flow:wrap;display:flex}.header-mobile-extras .header-user{flex:100%;align-items:flex-start;padding-left:4px}.header-mobile-extras .header-icon-btn{border-radius:var(--radius-sm);justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0 12px;font-size:16px;display:inline-flex}.header-mobile-extras .header-icon-btn.header-help-btn{width:44px!important;height:44px!important}.header-mobile-extras .header-lang-group{gap:var(--space-1)}.header-mobile-extras .header-lang-btn{min-width:44px;min-height:40px;font-size:12px}.header-mobile-extras .btn{flex:100%;width:100%}.hng{width:100%}.hng-btn{text-transform:uppercase;letter-spacing:.4px;justify-content:space-between;width:100%;min-height:44px;color:var(--color-gray-500)!important;background:0 0!important;padding:10px 12px!important;font-size:13px!important;font-weight:700!important}.hng-btn.header-nav-item--active{color:var(--color-primary-600)!important}.hng-dropdown{box-shadow:none;background:0 0;border:none;border-radius:0;padding:0 0 6px 14px;position:static}.hng-item{white-space:normal;min-height:42px;color:var(--color-gray-700);padding:8px 12px;font-size:14px}[data-theme=dark] .hng-btn{color:#64748b!important}[data-theme=dark] .hng-btn.header-nav-item--active{color:#60a5fa!important}[data-theme=dark] .hng-item{color:#94a3b8}}[data-theme=dark] .header{background:#1e293b;border-color:#334155}[data-theme=dark] .header-nav{background:#1e293b}[data-theme=dark] .header-logo-text{color:#f1f5f9}[data-theme=dark] .header-icon-btn{color:#94a3b8}[data-theme=dark] .header-icon-btn:hover{background:#334155}[data-theme=dark] .burger-line{background:#94a3b8}.layout{flex-direction:column;min-height:100vh;display:flex}.layout-main{min-width:0;padding:var(--space-6);flex:1}.layout-content{width:100%;min-width:0;max-width:1400px;margin:0 auto}.layout-footer{text-align:center;padding:var(--space-3) var(--space-4);color:var(--color-gray-400);border-top:1px solid var(--color-gray-200);background:var(--color-gray-50);font-size:11px}@media print{.layout-footer{display:none}}@media (width<=768px){.layout-main{padding:var(--space-4);padding-left:max(var(--space-4), env(safe-area-inset-left,0px));padding-right:max(var(--space-4), env(safe-area-inset-right,0px))}.layout-footer{padding:var(--space-2) var(--space-3);font-size:10px}}.layout-main--mobile{padding:0}.layout-main--mobile .layout-content{max-width:none}.login-page{background:linear-gradient(135deg, var(--color-primary-800) 0%, var(--color-primary-600) 50%, var(--color-primary-500) 100%);min-height:100dvh;padding:var(--space-4);justify-content:center;align-items:center;display:flex}.login-card{width:100%;max-width:420px;padding:var(--space-8)}.login-logo{align-items:center;gap:var(--space-2);margin-bottom:var(--space-6);display:flex}.login-logo-icon{background:var(--color-primary-600);color:#fff;border-radius:var(--radius-md);width:40px;height:40px;font-weight:700;font-size:var(--font-size-xl);justify-content:center;align-items:center;display:flex}.login-logo-text{font-size:var(--font-size-xl);color:var(--color-gray-900);letter-spacing:-.5px;font-weight:700}.login-title{font-size:var(--font-size-2xl);color:var(--color-gray-900);margin-bottom:var(--space-1);font-weight:700}.login-subtitle{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-bottom:var(--space-6)}.login-form{gap:var(--space-4);flex-direction:column;display:flex}.login-card .alert{margin-bottom:var(--space-2)}.login-lang{justify-content:flex-end;gap:var(--space-1);margin-bottom:var(--space-4);display:flex}.login-lang-btn{font-size:var(--font-size-xs);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-500);cursor:pointer;letter-spacing:.5px;background:0 0;padding:2px 8px;font-weight:600;transition:background .15s,color .15s,border-color .15s}.login-lang-btn:hover{background:var(--color-gray-100);color:var(--color-gray-800)}.login-lang-btn.active{background:var(--color-primary-600);border-color:var(--color-primary-600);color:#fff}@media (width<=768px){.login-lang-btn{min-width:44px;min-height:36px;font-size:var(--font-size-sm)}}@media (width<=480px){.login-page{padding:var(--space-6) var(--space-3);align-items:flex-start}.login-card{padding:var(--space-5)}.login-title{font-size:var(--font-size-xl)}}
