@charset "UTF-8";@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary: #185FA5;--color-primary-light: #E6F1FB;--color-primary-dark: #0C447C;--color-success: #3B6D11;--color-success-light: #EAF3DE;--color-warning: #854F0B;--color-warning-light: #FAEEDA;--color-danger: #A32D2D;--color-danger-light: #FCEBEB;--color-purple: #534AB7;--color-purple-light: #EEEDFE;--bg-primary: #FFFFFF;--bg-secondary: #F7F6F3;--bg-tertiary: #F1EFE8;--text-primary: #1A1917;--text-secondary: #5F5E5A;--text-tertiary: #888780;--border-color: rgba(26,25,23,.12);--border-hover: rgba(26,25,23,.25);--sidebar-width: 220px;--topbar-height: 52px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 16px rgba(0,0,0,.08);--font-body: "Plus Jakarta Sans", sans-serif;--font-mono: "JetBrains Mono", monospace;--transition: .15s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font-body);font-size:14px;background:var(--bg-tertiary);color:var(--text-primary);-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none}input,select,textarea{font-family:var(--font-body);outline:none;font-size:13px}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.modal-overlay{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease}.modal-box{background:var(--bg-primary);border-radius:var(--radius-xl);width:580px;max-width:95vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .2s ease;box-shadow:var(--shadow-md)}.modal-header{padding:16px 20px;border-bottom:.5px solid var(--border-color);display:flex;align-items:center;gap:10px}.modal-title{font-size:14px;font-weight:600;color:var(--text-primary);flex:1}.modal-close{width:28px;height:28px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);background:none;border:none}.modal-close:hover{background:var(--bg-secondary)}.modal-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:14px}.modal-footer{padding:14px 20px;border-top:.5px solid var(--border-color);display:flex;gap:8px;justify-content:flex-end}.btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border-radius:var(--radius-md);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap;border:none;font-family:var(--font-body)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-dark)}.btn-secondary{background:var(--bg-secondary);color:var(--text-secondary);border:.5px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-primary)}.btn-danger{background:var(--color-danger-light);color:var(--color-danger);border:.5px solid rgba(163,45,45,.2)}.btn-success{background:var(--color-success-light);color:var(--color-success);border:.5px solid rgba(59,109,17,.2)}.btn-sm{height:28px;padding:0 10px;font-size:11px}.btn-lg{height:42px;padding:0 20px;font-size:13px}.btn svg{width:14px;height:14px;flex-shrink:0}.form-group{display:flex;flex-direction:column;gap:4px}.form-group label{font-size:10px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.form-control{height:36px;border-radius:var(--radius-md);border:.5px solid var(--border-color);background:var(--bg-secondary);padding:0 12px;font-size:13px;color:var(--text-primary);width:100%;transition:all .15s ease;font-family:var(--font-body)}.form-control:focus{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #185fa514}.form-control::placeholder{color:var(--text-tertiary)}select.form-control{appearance:none;padding-right:28px}textarea.form-control{height:auto;padding:10px 12px;resize:vertical}.form-row{display:grid;gap:12px}.form-row-2{grid-template-columns:1fr 1fr}.form-row-3{grid-template-columns:1fr 1fr 1fr}.badge{display:inline-flex;align-items:center;font-size:11px;font-weight:500;padding:2px 8px;border-radius:20px}.badge-success{background:var(--color-success-light);color:var(--color-success)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.badge-danger{background:var(--color-danger-light);color:var(--color-danger)}.badge-primary{background:var(--color-primary-light);color:var(--color-primary)}.badge-gray{background:var(--bg-secondary);color:var(--text-secondary)}.badge-purple{background:var(--color-purple-light);color:var(--color-purple)}.card{background:var(--bg-primary);border:.5px solid var(--border-color);border-radius:var(--radius-lg);padding:16px}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.card-title{font-size:13px;font-weight:600;color:var(--text-primary)}.page-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.page-header{height:var(--topbar-height);min-height:var(--topbar-height);background:var(--bg-primary);border-bottom:.5px solid var(--border-color);display:flex;align-items:center;padding:0 20px;gap:12px;flex-shrink:0}.page-title{font-size:15px;font-weight:600;color:var(--text-primary);flex:1}.page-body{flex:1;overflow:auto;padding:20px}.table-wrap{background:var(--bg-primary);border:.5px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.sub-tabs{display:flex;background:var(--bg-primary);border-bottom:.5px solid var(--border-color);padding:0 20px;flex-shrink:0}.tab-item{font-size:12px;padding:9px 14px;cursor:pointer;border-bottom:2px solid transparent;color:var(--text-secondary);margin-bottom:-.5px;transition:color .15s}.tab-item:hover{color:var(--text-primary)}.tab-item.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:500}.data-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.data-table thead th{padding:8px 12px;text-align:left;font-size:10px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:.5px solid var(--border-color);background:var(--bg-primary);position:sticky;top:0;white-space:nowrap}.data-table tbody td{padding:10px 12px;border-bottom:.5px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--bg-secondary);cursor:pointer}.data-table tbody tr.selected td{background:var(--color-primary-light)}.metric-card{background:var(--bg-primary);border:.5px solid var(--border-color);border-radius:var(--radius-lg);padding:14px 16px}.metric-label{font-size:10px;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.metric-value{font-size:22px;font-weight:600;color:var(--text-primary)}.metric-delta{font-size:11px;margin-top:4px}.delta-up{color:var(--color-success)}.delta-down{color:var(--color-danger)}.search-bar{display:flex;align-items:center;gap:8px;background:var(--bg-secondary);border:.5px solid var(--border-color);border-radius:var(--radius-md);padding:0 12px;height:34px}.search-bar svg{width:13px;height:13px;color:var(--text-tertiary);flex-shrink:0}.search-bar input{background:none;border:none;font-size:12px;color:var(--text-primary);width:100%}.search-bar input::placeholder{color:var(--text-tertiary)}.alert-banner{padding:10px 14px;border-radius:var(--radius-md);display:flex;align-items:center;gap:10px;font-size:12px}.alert-banner svg{width:14px;height:14px;flex-shrink:0}.alert-warning{background:var(--color-warning-light);color:var(--color-warning);border:.5px solid #FAC775}.alert-success{background:var(--color-success-light);color:var(--color-success);border:.5px solid #C0DD97}.alert-danger{background:var(--color-danger-light);color:var(--color-danger);border:.5px solid #F7C1C1}.alert-info{background:var(--color-primary-light);color:var(--color-primary);border:.5px solid #85B7EB}.code-pill{font-family:var(--font-mono);font-size:11px;background:var(--color-primary-light);color:var(--color-primary-dark);padding:2px 7px;border-radius:4px;font-weight:500}.lote-pill{font-family:var(--font-mono);font-size:11px;background:var(--color-warning-light);color:#633806;padding:2px 7px;border-radius:4px;font-weight:500}.spinner{width:18px;height:18px;border:2px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite}.field-error{border-color:var(--color-danger)!important;background:#fff!important}.field-error-msg{font-size:10px;color:var(--color-danger);margin-top:2px}.required-mark{color:var(--color-danger);margin-left:1px}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-icon{padding:0;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.page-header{height:auto;min-height:var(--topbar-height);flex-wrap:wrap;padding:8px 14px;row-gap:6px}.page-title{font-size:13px;min-width:0}.page-body{padding:12px}.sub-tabs{overflow-x:auto;padding:0 12px;-webkit-overflow-scrolling:touch}.form-row-2,.form-row-3{grid-template-columns:1fr!important}.modal-box{max-height:96vh;max-width:100vw;border-radius:var(--radius-lg);margin:0 8px}.modal-body{padding:14px;gap:12px}.modal-footer{padding:12px 14px}.metric-value{font-size:18px}.modal-body .form-row{grid-template-columns:1fr!important}}
