:root{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0;background:#f5f7fb;color:#111827}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}.login-page{min-height:100vh;display:grid;place-items:center;padding:16px}.login-card{width:100%;max-width:420px}.app-shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.app-shell.sidebar-collapsed{grid-template-columns:84px 1fr}.sidebar{background:#111827;color:#f9fafb;padding:20px;display:flex;flex-direction:column;gap:12px}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-logo{width:40px;height:40px;object-fit:contain;display:block;margin:0 auto}.sidebar-toggle{width:34px;min-width:34px;height:34px;padding:0;border-radius:8px;background:#374151;color:#fff}.sidebar nav{display:flex;flex-direction:column;gap:8px;margin:8px 0}.sidebar nav a{padding:8px 10px;border-radius:8px;background:#1f2937;display:flex;align-items:center;justify-content:flex-start;text-align:left}.sidebar nav a.active{background:#374151}.nav-short{display:none;font-weight:600}.sidebar.sidebar-collapsed{padding:16px 10px}.sidebar.sidebar-collapsed .sidebar-header{justify-content:center}.sidebar.sidebar-collapsed .sidebar-header h2{font-size:0;line-height:0}.sidebar.sidebar-collapsed .sidebar-toggle{margin-left:0}.sidebar.sidebar-collapsed .user-info{text-align:center;font-size:12px}.sidebar.sidebar-collapsed .nav-label{display:none}.sidebar.sidebar-collapsed .nav-short{display:inline}.user-info{font-size:14px;color:#d1d5db}.sidebar-credit{margin-top:auto;padding:10px;border-radius:8px;background:#1f2937;color:#d1d5db;font-size:12px;line-height:1.35;text-align:left}.sidebar-credit p+p{margin-top:4px}.sidebar.sidebar-collapsed .sidebar-credit{display:none}.logout-btn{margin-top:8px}.main-content{padding:20px;display:flex;flex-direction:column;gap:16px;min-width:0}.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px}.form-grid{display:grid;gap:10px}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.dashboard-status-card{border-width:1px}.dashboard-card-success{background:#ecfdf5;border-color:#86efac}.dashboard-card-processing{background:#eff6ff;border-color:#93c5fd}.dashboard-card-queued{background:#fffbeb;border-color:#fcd34d}.dashboard-card-failed{background:#fef2f2;border-color:#fca5a5}.dashboard-card-total{background:#f5f3ff;border-color:#c4b5fd}.condition-warning-card{background:#fffbeb;border-color:#fcd34d}.header-row{display:flex;justify-content:space-between;align-items:center}.muted{color:#6b7280}.error-text{color:#b91c1c}.success-text{color:#166534}input,select,textarea,button{width:100%;padding:10px 12px;border-radius:8px;border:1px solid #d1d5db;font-size:14px}select{background:#fff}textarea{resize:vertical;min-height:100px;font-family:inherit}button{cursor:pointer;background:#111827;color:#fff;border:none}button:disabled{opacity:.7;cursor:not-allowed}.checkbox-row{display:flex;align-items:center;gap:8px}.checkbox-row input{width:auto}.chart-card{margin-top:20px;min-height:420px}.chart-box{width:100%;height:340px;margin-top:12px}.table-wrap{width:100%;overflow-x:auto;overflow-y:visible;margin-top:8px}.monitor-page,.monitor-card{min-width:0}.monitor-page{width:100%;max-width:100%;overflow-x:hidden}.monitor-card{overflow:hidden}.monitor-table-wrap{width:100%;max-width:100%;max-height:calc(100vh - 320px);overflow-x:auto;overflow-y:auto}.monitor-date-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.monitor-date-field{display:grid;gap:10px}.monitor-action-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.toast-alert{position:fixed;top:16px;right:16px;z-index:1200;width:min(420px,calc(100vw - 32px));padding:10px 12px;border-radius:8px;font-size:14px;box-shadow:0 10px 24px #0000001f}.toast-alert.success{background:#dcfce7;color:#166534;border:1px solid #86efac}.toast-alert.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}table{width:100%;border-collapse:collapse}.monitor-table{table-layout:auto;width:max-content;min-width:100%}.monitor-table thead tr{height:300px}.monitor-table th,.monitor-table td{overflow-wrap:normal}.monitor-table tbody tr{height:auto}.monitor-table tbody td{height:auto;white-space:nowrap;vertical-align:top;line-height:1.2;padding-top:4px;padding-bottom:4px}.monitor-table th.monitor-sticky-col,.monitor-table td.monitor-sticky-col{position:sticky;left:var(--sticky-left);background:#fff}.monitor-table td.monitor-sticky-col{z-index:1;overflow:hidden;text-overflow:ellipsis}.monitor-table th.monitor-sticky-col{z-index:5}.sticky-id{--sticky-left: 0px;width:80px;min-width:80px;max-width:80px}.sticky-seq{--sticky-left: 80px;width:120px;min-width:120px;max-width:120px}.sticky-hn{--sticky-left: 200px;width:170px;min-width:170px;max-width:170px}.sticky-hcode{--sticky-left: 370px;width:170px;min-width:170px;max-width:170px}.sticky-hmain{--sticky-left: 540px;width:190px;min-width:190px;max-width:190px}.sticky-cid{--sticky-left: 730px;width:170px;min-width:170px;max-width:170px}.sticky-fullname{--sticky-left: 900px;width:240px;min-width:240px;max-width:240px}.monitor-sticky-divider{box-shadow:2px 0 #e5e7eb}.monitor-th-wide,.monitor-td-wide{min-width:max-content}.monitor-preline{white-space:pre-line}.monitor-table th{vertical-align:bottom;position:sticky;top:0;z-index:2;background:#fff}th,td{border-bottom:1px solid #e5e7eb;padding:8px 10px;text-align:left;font-size:14px;height:32px;vertical-align:middle}.monitor-th-rotated{position:relative;width:74px;min-width:74px;max-width:74px;height:300px;padding:0;overflow:hidden}.monitor-th-rotated .rotate-90{display:inline-block;transform:rotate(-90deg);transform-origin:left bottom;white-space:NOWRAP;margin-left:50%;margin-bottom:5%}.compensation-toolbar{display:flex;flex-direction:column;gap:8px}.compensation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.calc-notes{margin:12px 0 0;padding-left:18px;color:#374151}.billing-summary-cell-btn{width:auto;min-width:120px;padding:6px 10px;background:#fff;color:#111827;border:1px solid #d1d5db;border-radius:8px;font-weight:600}.billing-summary-cell-btn.active{background:#111827;color:#fff;border-color:#111827}@media (max-width: 860px){.app-shell{grid-template-columns:1fr}.sidebar{gap:10px}.monitor-date-row,.monitor-action-row{grid-template-columns:1fr}}
