:root{--color-primary: #133c2b;--color-primary-mid: #778e6f;--color-accent: #cfb596;--color-light: #f0e6db;--color-dark: #3a3a3a;--color-white: #ffffff;--color-bg: #f7f4f0;--color-surface: #ffffff;--color-border: #e8e0d8;--color-primary-hover: #1a5240;--color-primary-alpha: rgba(19,60,43,.08);--color-success: #2d7a47;--color-warning: #c87d2e;--color-danger: #c0392b;--color-info: #2563a8;--font-heading: "Playfair Display", Georgia, serif;--font-body: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.1);--shadow-lg: 0 8px 24px rgba(0,0,0,.12);--sidebar-w: 240px;--topbar-h: 60px;--transition: .2s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%}body{font-family:var(--font-body);font-size:14px;color:var(--color-dark);background:var(--color-bg);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-primary);line-height:1.25}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:var(--font-body)}input,select,textarea{font-family:var(--font-body);font-size:14px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-mid)}.text-primary{color:var(--color-primary)}.text-muted{color:#888}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:100px;font-size:11px;font-weight:600;letter-spacing:.3px}.badge-green{background:#e6f5ec;color:#1d6b38}.badge-red{background:#fdecea;color:#b02020}.badge-orange{background:#fef3e2;color:#9a5200}.badge-blue{background:#e8f0fe;color:#1a56a0}.badge-gray{background:#f0f0f0;color:#555}.badge-teal{background:#e0f4f0;color:#186b5a}.badge-purple{background:#f0ebff;color:#5b21b6}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .2s ease forwards}.card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;padding:10px 14px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#888;border-bottom:2px solid var(--color-border);white-space:nowrap}.data-table td{padding:12px 14px;border-bottom:1px solid var(--color-border);vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--color-primary-alpha)}.data-table tbody tr{transition:background var(--transition);cursor:pointer}.form-input{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:14px;color:var(--color-dark);background:var(--color-white);transition:border-color var(--transition),box-shadow var(--transition);outline:none}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha)}.form-input::placeholder{color:#bbb}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:600;border:none;transition:all var(--transition);white-space:nowrap}.btn-primary{background:var(--color-primary);color:var(--color-white)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:var(--color-white);color:var(--color-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-primary-alpha)}.btn-ghost{background:transparent;color:#666;border:none}.btn-ghost:hover{background:var(--color-primary-alpha);color:var(--color-primary)}.btn-danger{background:var(--color-danger);color:#fff}.btn-sm{padding:5px 10px;font-size:12px}.btn-icon{padding:7px;border-radius:var(--radius-md)}.tab-nav{display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:20px}.tab-nav-item{padding:10px 18px;font-size:13px;font-weight:600;color:#888;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:all var(--transition);white-space:nowrap}.tab-nav-item:hover{color:var(--color-primary)}.tab-nav-item.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:flex-start;justify-content:center;z-index:99999;padding:20px;overflow-y:auto}.modal{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:600px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;overflow:hidden;margin:auto 0;flex-shrink:0}.modal-header{padding:20px 24px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.modal-body{padding:24px;overflow-y:auto;flex:1;min-height:0}.modal-footer{padding:16px 24px;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:10px;flex-shrink:0}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500;background:var(--color-light);color:var(--color-primary)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#bbb;gap:12px;text-align:center}.empty-state h3{font-family:var(--font-body);color:#aaa;font-size:15px}.empty-state p{font-size:13px}.progress-bar{hei @media (max-width: 1023px){.btn{min-height:40px;padding:10px 16px}.btn-sm{min-height:34px;padding:7px 12px}.btn-icon{min-height:40px;min-width:40px;padding:10px}.form-input,input.form-input,select.form-input,textarea.form-input{min-height:44px;font-size:16px;padding:10px 14px}.tab-nav{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tab-nav::-webkit-scrollbar{display:none}.tab-nav-item{flex-shrink:0;padding:10px 14px}.modal{max-width:100%;border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin-top:auto;margin-bottom:0;max-height:92vh}.modal-overlay{align-items:flex-end;padding:0}}}@media (min-width: 768px) and (max-width: 1023px){.progress-bar main{padding:20px!important}.progress-bar .data-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-md)}}@media (max-width: 767px){.progress-bar main{padding:12px!important}.progress-bar h1{font-size:1.4rem}.progress-bar h2{font-size:1.15rem}.progress-bar .card{border-radius:var(--radius-md)}.progress-bar .data-table-wrap,.progress-bar .table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-md);margin:0 -4px}.progress-bar .data-table th,.progress-bar .data-table td{padding:10px;font-size:12px;white-space:nowrap}.progress-bar .stats-grid{grid-template-columns:1fr 1fr!important;gap:10px!important}.progress-bar .modal{max-width:100%;width:100%;border-radius:16px 16px 0 0;margin:0;max-height:90vh}.progress-bar .modal-overlay{align-items:flex-end;padding:0}.progress-bar .modal-header,.progress-bar .modal-body{padding:16px 18px}.progress-bar .modal-footer{padding:14px 18px;flex-wrap:wrap;gap:8px}.progress-bar .modal-footer .btn{flex:1;justify-content:center;min-width:120px}.progress-bar .filter-row{flex-wrap:wrap;gap:8px}.progress-bar .page-header{flex-direction:column;align-items:flex-start;gap:10px}.progress-bar .page-header-actions{width:100%;display:flex;gap:8px;flex-wrap:wrap}.progress-bar .page-header-actions .btn{flex:1;justify-content:center;min-width:120px}.progress-bar [style*=grid-template-columns]{grid-template-columns:1fr!important}.progress-bar .empty-state{padding:40px 16px}}@media (max-width: 767px){.progress-bar :root{--topbar-h: 56px}}
