@font-face{font-family:Myriad Pro;src:url(/fonts/MyriadPro-Regular.otf) format("opentype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Myriad Pro;src:url(/fonts/MyriadPro-Bold.otf) format("opentype");font-style:normal;font-weight:700 900;font-display:swap}.thaco-display-root{--head-color: #4472c4;--row-color-1: #cfd5ea;--row-color-2: #e9ebf5;--text-color: #00529c;--title-color: #ff0000;--row-height: 70px;--data-font-size: 24px;--title-font-size: 48px;--date-font-size: 31px;--heading-font-size: 20px;position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;overflow:hidden;background:#fff;font-family:Myriad Pro,Segoe UI,Arial,sans-serif;-webkit-user-select:none;user-select:none;z-index:99999}.thaco-display-app{height:100%;width:100%;display:flex;flex-direction:column}.thaco-display-head{display:flex;align-items:center;gap:2vw;height:13vh;min-height:70px;padding-right:2vw;background:linear-gradient(90deg,#fff 0,#fff6c9 12%,#fffbe0);flex:none}.thaco-display-logo{height:100%;display:flex;align-items:center;justify-content:center;padding:0 2.2vw;background:#00529c;color:#fff;font-weight:800;font-size:3.2vh;letter-spacing:.05em;clip-path:polygon(0 0,92% 0,100% 50%,92% 100%,0 100%);min-width:19vw}.thaco-display-logo img{display:block;width:88%;max-height:72%;object-fit:contain}.thaco-responsive-logo{display:none}.thaco-display-titles{flex:1;text-align:center;line-height:1.15}.thaco-display-title{font-weight:800;font-size:var(--title-font-size);color:var(--title-color);margin:0;letter-spacing:.5px}.thaco-display-date{font-weight:800;font-size:var(--date-font-size);color:var(--text-color);margin-top:2px}.thaco-display-grid{flex:1;display:flex;flex-direction:column;min-height:0}.thaco-display-row{display:grid;grid-template-columns:minmax(0,4.5fr) minmax(0,15fr) minmax(0,11fr) minmax(0,11fr) minmax(0,8.5fr) minmax(0,27fr) minmax(0,24fr);border-bottom:1px solid #fff;overflow:hidden}.thaco-display-row>div{display:flex;align-items:center;padding:0 .8vw;border-right:1px solid #fff;color:var(--text-color);overflow:hidden;line-height:1.2;min-width:0;min-height:0;max-height:100%;word-break:break-word}.thaco-display-row>div:nth-child(7){white-space:normal;word-break:normal;overflow-wrap:break-word;line-height:1.1}.thaco-display-row>div:nth-child(3),.thaco-display-row>div:nth-child(5){white-space:nowrap}.thaco-display-heading{background:var(--head-color);flex:none;height:7vh;min-height:44px}.thaco-display-heading>div{color:#fff;font-weight:800;justify-content:center;text-align:center;font-size:var(--heading-font-size);white-space:normal;line-height:1.15;padding:0 4px;word-break:keep-all;overflow-wrap:break-word}.thaco-display-body{flex:1;position:relative;overflow:hidden}.thaco-display-page{position:absolute;top:0;right:0;bottom:0;left:0;font-size:var(--data-font-size);transition:opacity .4s ease,transform .4s ease}.thaco-display-page.slide-out{transform:translateY(-20px);opacity:0}.thaco-display-page.slide-in{transform:translateY(0);opacity:1}.thaco-display-page .thaco-display-row{height:var(--row-height);overflow:hidden}.thaco-display-page .thaco-display-row:nth-child(odd){background:var(--row-color-1)}.thaco-display-page .thaco-display-row:nth-child(2n){background:var(--row-color-2)}.thaco-display-page .thaco-display-row>div:nth-child(1),.thaco-display-page .thaco-display-row>div:nth-child(3),.thaco-display-page .thaco-display-row>div:nth-child(4),.thaco-display-page .thaco-display-row>div:nth-child(5){justify-content:center;text-align:center}.thaco-display-message{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:3vh;color:var(--text-color);text-align:center;padding:2vw;font-weight:600}.thaco-spinner{width:44px;height:44px;border:4px solid rgba(0,82,156,.15);border-top-color:var(--text-color, #00529c);border-radius:50%;animation:thacoSpin .8s linear infinite}@keyframes thacoSpin{to{transform:rotate(360deg)}}.thaco-display-status-dot{position:fixed;left:6px;bottom:6px;width:8px;height:8px;border-radius:50%;opacity:.65;transition:background .3s ease;z-index:100000}.thaco-display-page-number{position:fixed;right:10px;bottom:10px;font-size:13px;font-weight:600;color:#00529c;opacity:.6;z-index:100000}.thaco-mobile-scroll-hint{display:none}@media(max-width:1200px){.thaco-display-head{height:auto;min-height:unset;padding:.65rem 1rem;flex-direction:column;text-align:center;gap:.25rem}.thaco-display-logo{display:none!important}.thaco-responsive-logo{display:block;height:auto;max-height:56px;width:auto;max-width:min(280px,85vw);object-fit:contain;margin:2px auto 4px}.thaco-display-title{font-size:clamp(20px,3.2vw,32px)!important;line-height:1.2;white-space:nowrap;margin:0}.thaco-display-date{font-size:clamp(13px,1.8vw,17px)!important;margin-top:2px}.thaco-display-row{grid-template-columns:minmax(36px,4fr) minmax(95px,15fr) minmax(80px,11fr) minmax(80px,11fr) minmax(58px,8.5fr) minmax(130px,28fr) minmax(120px,24fr);width:100%;overflow:hidden}.thaco-display-row>div{padding:0 5px;line-height:1.2;overflow:hidden;min-height:0;max-height:100%}.thaco-display-heading>div{font-size:clamp(11px,1.5vw,14px)!important;padding:0 3px}}@media(max-width:768px){.thaco-display-title{font-size:clamp(18px,4.2vw,24px)!important}.thaco-display-date{font-size:clamp(12px,3vw,15px)!important}.thaco-display-row{grid-template-columns:minmax(30px,3.5fr) minmax(85px,15fr) minmax(70px,11fr) minmax(70px,11fr) minmax(52px,8fr) minmax(110px,24fr) minmax(105px,27.5fr);width:100%;overflow:hidden}.thaco-display-row>div{padding:0 4px;font-size:clamp(11px,2vw,13px)!important}.thaco-display-heading>div{font-size:clamp(10px,1.8vw,12px)!important;padding:0 2px}}@media(max-width:580px){.thaco-display-root{position:relative;width:100%;min-height:100vh;height:auto;overflow-y:auto;overflow-x:hidden}.thaco-display-app{min-height:100vh;height:auto}.thaco-display-grid{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%;flex:none}.thaco-display-row{min-width:660px;grid-template-columns:36px 120px 90px 90px 65px 145px 144px;overflow:hidden}.thaco-display-heading{height:44px}.thaco-display-body{position:relative;overflow:visible;min-height:350px}.thaco-display-page{position:relative}.thaco-display-page .thaco-display-row{height:auto!important;min-height:52px;padding:6px 0;overflow:hidden}.thaco-display-row>div{padding:0 6px;font-size:13px!important}.thaco-display-heading>div{font-size:12px!important}.thaco-mobile-scroll-hint{display:block;background:#e0f2fe;color:#0369a1;font-size:.775rem;font-weight:600;text-align:center;padding:5px 10px;border-bottom:1px solid #bae6fd}}:root{--primary: #004085;--primary-hover: #002752;--primary-light: #e8f0fe;--secondary: #00529c;--accent: #2563eb;--accent-light: #dbeafe;--success: #16a34a;--success-light: #dcfce7;--warning: #ca8a04;--warning-light: #fef9c3;--danger: #dc2626;--danger-light: #fee2e2;--bg-main: #f1f5f9;--bg-card: #ffffff;--bg-sidebar: #0f172a;--bg-sidebar-hover: #1e293b;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-light: #f8fafc;--border-color: #e2e8f0;--border-focus: #3b82f6;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .08), 0 2px 4px -2px rgb(0 0 0 / .05);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .08);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .08);--font-sans: "Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#94a3b8}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:700;line-height:1.25}a{color:var(--primary);text-decoration:none;transition:color .15s ease}a:hover{color:var(--secondary)}.app-container{display:flex;min-height:100vh}.main-content{flex:1;display:flex;flex-direction:column;min-width:0;overflow-x:hidden}.page-body{flex:1;padding:1.75rem;max-width:1440px;width:100%;margin:0 auto}@media(max-width:768px){.page-body{padding:1rem}}.top-header{height:70px;background:#fff;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 1.75rem;position:sticky;top:0;z-index:20}.sidebar{width:270px;background:var(--bg-sidebar);color:var(--text-light);display:flex;flex-direction:column;transition:all .25s ease;z-index:30;flex-shrink:0}.sidebar-header{height:70px;padding:0 1.5rem;display:flex;align-items:center;gap:.75rem;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-logo{height:38px;object-fit:contain}.sidebar-menu{flex:1;padding:1.25rem .85rem;display:flex;flex-direction:column;gap:.4rem;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:.85rem;padding:.75rem 1rem;color:#94a3b8;border-radius:var(--radius-md);font-weight:500;font-size:.95rem;transition:all .15s ease}.nav-item:hover{color:#fff;background:var(--bg-sidebar-hover)}.nav-item.active{color:#fff;background:linear-gradient(135deg,#00529c,#004085);box-shadow:0 4px 12px #00529c59}.sidebar-footer{padding:1rem;border-top:1px solid rgba(255,255,255,.08)}.card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);padding:1.5rem;transition:all .2s ease}.card:hover{box-shadow:var(--shadow-md)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-bottom:1.75rem}.stat-card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--border-color);padding:1.25rem;display:flex;align-items:center;gap:1.25rem;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-icon{width:52px;height:52px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:inherit;font-weight:600;font-size:.9rem;padding:.6rem 1.15rem;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all .15s ease;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#00529c,#004085);color:#fff;box-shadow:0 2px 6px #00408540}.btn-primary:hover:not(:disabled){background:#036;color:#fff}.btn-secondary{background:#f1f5f9;color:var(--text-secondary);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background:#e2e8f0;color:var(--text-primary)}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-outline{background:transparent;border-color:var(--border-color);color:var(--text-secondary)}.btn-outline:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.btn-sm{padding:.35rem .75rem;font-size:.825rem;border-radius:var(--radius-sm)}.form-group{margin-bottom:1.2rem}.form-label{display:block;font-weight:600;font-size:.875rem;color:var(--text-primary);margin-bottom:.4rem}.form-control,.form-select{width:100%;padding:.65rem .9rem;font-size:.95rem;font-family:inherit;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fff;color:var(--text-primary);transition:border-color .15s ease,box-shadow .15s ease}.form-control:focus,.form-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.form-text{font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.775rem;font-weight:600;border-radius:var(--radius-full)}.badge-admin{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.badge-staff{background:#e0f2fe;color:#0369a1;border:1px solid #bae6fd}.badge-success{background:var(--success-light);color:var(--success)}.badge-warning{background:var(--warning-light);color:var(--warning)}.badge-neutral{background:#f1f5f9;color:var(--text-secondary);border:1px solid var(--border-color)}.table-responsive{width:100%;overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border-color);background:#fff}.table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.table th{background:#f8fafc;padding:.9rem 1.15rem;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap}.table td{padding:1rem 1.15rem;border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background-color:#f8fafc}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:50;padding:1.25rem;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:var(--radius-lg);width:100%;max-width:680px;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl);overflow:hidden;animation:slideUp .2s ease}.modal-header{padding:1.25rem 1.75rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.modal-body{padding:1.5rem 1.75rem;overflow-y:auto;flex:1}.modal-footer{padding:1rem 1.75rem;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:flex-end;gap:.75rem;background:#f8fafc}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(15px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:1024px){.sidebar{position:fixed;top:0;bottom:0;left:-270px}.sidebar.open{left:0}.mobile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:25}}
