:root{--green:#7ac943;--green-dark:#5ea832;--green-light:#7ac9431a;--text:#333;--text-light:#888;--bg:#f0f0f0;--card-bg:#fff;--border:#e0e0e0;--error:#e74c3c;--success:#7ac943;color:var(--text);background:var(--bg);font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh}#root{width:100%;min-height:100vh}.container{justify-content:center;align-items:center;width:100%;max-width:440px;min-height:100vh;margin:0 auto;padding:24px;display:flex}.card{background:var(--card-bg);border-radius:16px;padding:48px 40px 40px;position:relative;overflow:hidden;box-shadow:0 2px 16px #0000000f}.card:after{content:"";background:linear-gradient(135deg, transparent 50%, var(--green) 50%);pointer-events:none;border-radius:0 0 16px;width:120px;height:120px;position:absolute;bottom:0;right:0}.logo-section{text-align:center;margin-bottom:36px}.brand{color:#333;letter-spacing:-.5px;font-size:32px;font-weight:300}.brand span{color:var(--green);font-weight:600}.subtitle{color:var(--text-light);letter-spacing:.5px;text-transform:uppercase;margin-top:4px;font-size:13px}.field{margin-bottom:16px}.field label{color:var(--text-light);margin-bottom:5px;font-size:13px;font-weight:500;display:block}.field input{border:1px solid var(--border);background:#fff;border-radius:6px;outline:none;width:100%;padding:11px 14px;font-size:14px;transition:border-color .2s}.field input:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-light)}.field input::placeholder{color:#bbb}.hint{color:var(--text-light);margin-top:3px;font-size:11px;display:block}.divider{border-top:1px solid var(--border);margin:20px 0}.field-row{gap:12px;display:flex}.field-row .field{flex:1}.field select{border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;background:#fff;border-radius:6px;outline:none;padding:11px 14px;font-size:14px;transition:border-color .2s}.field select:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-light)}.btn-primary{background:var(--green);color:#fff;cursor:pointer;z-index:1;border:none;border-radius:8px;width:100%;margin-top:12px;padding:13px;font-size:16px;font-weight:600;transition:background .2s;position:relative}.btn-primary:hover{background:var(--green-dark)}.btn-secondary{width:100%;color:var(--green);border:2px solid var(--green);cursor:pointer;z-index:1;background:0 0;border-radius:8px;margin-top:20px;padding:12px;font-size:14px;font-weight:600;transition:background .2s;position:relative}.btn-secondary:hover{background:var(--green-light)}.loading{text-align:center;padding:48px 0}.spinner{border:3px solid var(--border);border-top-color:var(--green);border-radius:50%;width:40px;height:40px;margin:0 auto 16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.status-text{color:var(--text-light);font-size:14px}.result-card{text-align:center;border-radius:8px;padding:24px}.result-card.success{background:var(--green-light);border:1px solid #7ac94340}.result-card.error{background:#e74c3c0d;border:1px solid #e74c3c33}.result-icon{border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 12px;font-size:24px;font-weight:700;display:flex}.success .result-icon{color:var(--green-dark);background:#7ac94333}.error .result-icon{color:var(--error);background:#e74c3c26}.result-card h3{color:var(--text);margin-bottom:16px;font-size:18px}.result-card.error p{color:var(--error);font-size:13px}.stats-row{justify-content:center;gap:32px;margin-bottom:20px;display:flex}.stat{flex-direction:column;align-items:center;display:flex}.stat-value{color:var(--green-dark);font-size:28px;font-weight:700}.stat-label{color:var(--text-light);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.periods{text-align:left;margin-bottom:16px}.periods h4{color:var(--text);margin-bottom:6px;font-size:13px;font-weight:600}.periods ul{padding:0;list-style:none}.periods li{color:var(--text-light);border-bottom:1px solid #0000000a;padding:4px 0;font-size:12px}.account-result{text-align:left;background:#00000005;border-radius:6px;margin-top:8px;padding:10px 12px;font-size:13px}.account-result.has-error{background:#e74c3c0d}.detail{color:var(--text-light);padding:2px 0 2px 12px;font-size:12px}.detail-error{color:var(--error);font-size:12px}.form-error{color:var(--error,#e74c3c);text-align:center;margin-bottom:12px;font-size:13px}.toggle-auth{text-align:center;color:var(--text-light);margin-top:16px;font-size:13px}.link-btn{color:var(--green);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:600}.link-btn:hover{text-decoration:underline}.clients-layout{background:#f4f5f7;min-height:100vh;display:flex}.clients-sidebar{z-index:10;background:#fff;border-right:1px solid #e8e8eb;flex-direction:column;width:240px;min-height:100vh;display:flex;position:fixed;top:0;left:0}.clients-main{flex:1;min-width:0;margin-left:240px;padding:28px 32px 48px}.filter-bar{margin-bottom:20px}.filter-input{border:1px solid #e8e8eb;border-radius:8px;outline:none;width:100%;max-width:400px;padding:10px 14px;font-size:14px;transition:border-color .2s}.filter-input:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-light)}.btn-sm{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:7px 16px;font-size:13px;font-weight:600;transition:background .2s}.btn-sm:hover{background:var(--green-dark)}.data-table{border-collapse:separate;border-spacing:0;background:#fff;border-radius:10px;width:100%;font-size:13px;overflow:hidden;box-shadow:0 1px 4px #0000000a}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.4px;color:#999;white-space:nowrap;background:#fff;border-bottom:2px solid #f0f0f2;padding:12px 14px;font-size:11px;font-weight:600}.audit-form-card{background:#fff;border:1px solid #e8e8eb;border-radius:12px;max-width:700px;padding:32px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-grid .field:first-child{grid-column:1/-1}.clients-loading{text-align:center;padding:60px 0}.clients-loading .spinner{border:3px solid #e8e8eb;border-top-color:var(--green);border-radius:50%;width:36px;height:36px;margin:0 auto 12px;animation:.8s linear infinite spin}.clients-loading p{color:#999;font-size:14px}.empty-state{text-align:center;color:#999;background:#fff;border:1px solid #e8e8eb;border-radius:10px;padding:60px 0;font-size:14px}.user-info{padding:0 0 10px}.user-name{color:#333;font-size:13px;font-weight:600}.user-email{color:#999;font-size:11px}.logout-btn{color:#999;cursor:pointer;background:0 0;border:1px solid #e8e8eb;border-radius:6px;width:100%;padding:8px;font-size:12px;transition:all .2s}.layout{background:#f4f5f7;min-height:100vh;display:flex}.sidebar{z-index:10;background:#fff;border-right:1px solid #e8e8eb;flex-direction:column;width:240px;min-height:100vh;display:flex;position:fixed;top:0;left:0}.sidebar-brand{border-bottom:1px solid #f0f0f2;padding:24px 20px 16px}.sidebar-brand h1{color:#333;margin:0;font-size:22px;font-weight:300}.sidebar-brand h1 span{color:var(--green);font-weight:700}.sidebar-account{border-bottom:1px solid #f0f0f2;align-items:center;gap:10px;padding:16px 20px;display:flex}.account-dot{background:var(--green);border-radius:50%;flex-shrink:0;width:8px;height:8px}.account-name{color:#333;font-size:13px;font-weight:600}.account-url{color:#999;font-size:11px}.sidebar-nav{flex:1;padding:16px 12px}.nav-label{text-transform:uppercase;letter-spacing:.8px;color:#aaa;padding:0 8px 8px;font-size:10px;font-weight:700}.nav-item{color:#666;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;margin-bottom:2px;padding:10px 12px;font-size:14px;transition:all .15s;display:flex}.nav-item:hover{color:#333;background:#f5f5f7}.nav-item.active{background:var(--green-light);color:var(--green-dark);font-weight:600}.nav-icon{text-align:center;width:20px;font-size:16px}.nav-text{flex:1}.nav-badge{background:var(--green);color:#fff;border-radius:8px;padding:2px 6px;font-size:10px;font-weight:700;line-height:1}.sidebar-footer{border-top:1px solid #f0f0f2;padding:16px 12px}.new-audit-btn{background:var(--green);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:10px;font-size:13px;font-weight:600;transition:background .2s}.new-audit-btn:hover{background:var(--green-dark)}.logout-btn{color:#999;cursor:pointer;background:0 0;border:1px solid #e8e8eb;border-radius:6px;width:100%;margin-top:8px;padding:8px;font-size:12px;transition:all .2s}.logout-btn:hover{color:#e74c3c;border-color:#e74c3c}.main-content{flex:1;min-width:0;margin-left:240px;padding:28px 32px 48px}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.page-header h2{color:#1a1a2e;margin:0;font-size:22px;font-weight:700}.page-badge{color:#888;white-space:nowrap;background:#fff;border:1px solid #e8e8eb;border-radius:16px;padding:5px 12px;font-size:12px}.kpi-row{flex-wrap:wrap;gap:16px;margin-bottom:24px;display:flex}.kpi-card{background:#fff;border:1px solid #e8e8eb;border-radius:12px;flex:1;align-items:center;gap:14px;min-width:150px;padding:20px;transition:box-shadow .2s;display:flex}.kpi-card:hover{box-shadow:0 4px 12px #0000000f}.kpi-icon{flex-shrink:0;font-size:28px}.kpi-content{flex-direction:column;gap:2px;display:flex}.kpi-value{color:#1a1a2e;font-size:22px;font-weight:700;line-height:1.2}.kpi-label{color:#999;text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:500}.kpi-card.benchmark{border-color:var(--green);background:linear-gradient(135deg,#7ac9430d,#7ac9431f)}.kpi-card.benchmark .kpi-value{color:var(--green-dark)}.card{background:#fff;border:1px solid #e8e8eb;border-radius:12px;margin-bottom:20px;padding:24px}.card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.card-title{color:#1a1a2e;text-transform:uppercase;letter-spacing:.3px;margin:0 0 16px;font-size:15px;font-weight:700}.card-header .card-title{margin-bottom:0}.card-badge{color:#888;background:#f5f5f7;border-radius:10px;padding:4px 10px;font-size:11px}.card-desc{color:#777;margin-bottom:16px;font-size:13px;line-height:1.6}.table-wrap{overflow-x:auto}.data-table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.4px;color:#999;white-space:nowrap;background:#fff;border-bottom:2px solid #f0f0f2;padding:10px 12px;font-size:11px;font-weight:600;position:sticky;top:0}.data-table td{color:#555;white-space:nowrap;border-bottom:1px solid #f5f5f7;padding:11px 12px}.data-table tbody tr{transition:background .1s}.data-table tbody tr:hover{background:#f9fafb}.cell-bold{color:#1a1a2e;font-weight:600}.channel-name{text-transform:capitalize}.below-benchmark{color:var(--error,#e74c3c);font-weight:600}.above-benchmark{color:var(--green-dark);font-weight:600}:root{--cell-empty:#f5f5f7}.heatmap-container{margin-bottom:8px}.heatmap-label{color:#1a1a2e;margin:0 0 10px;font-size:13px;font-weight:600}.heatmap-legend{color:#888;gap:20px;margin-bottom:12px;font-size:12px;display:flex}.legend-item{align-items:center;gap:6px;display:flex}.legend-swatch{border-radius:3px;width:14px;height:14px;display:inline-block}.legend-swatch.understaffed{background:#e74c3c8c}.legend-swatch.overstaffed{background:#7ac9438c}.heatmap-scroll{overflow-x:auto}.heatmap{border-collapse:collapse;width:100%;min-width:680px}.heatmap th{color:#aaa;text-transform:uppercase;text-align:center;white-space:nowrap;padding:4px 2px;font-size:10px;font-weight:600}.heatmap-day{color:#555;text-align:right;white-space:nowrap;padding:4px 8px 4px 0;font-size:11px;font-weight:600}.heatmap-cell{text-align:center;color:#333;cursor:default;border:1.5px solid #fff;border-radius:4px;min-width:28px;padding:6px 2px;font-size:10px;font-weight:500;transition:transform .1s}.heatmap-cell:hover{z-index:1;position:relative;transform:scale(1.15);box-shadow:0 2px 8px #00000026}.two-col{grid-template-columns:1fr 1fr;gap:20px;display:grid}.empty-state{text-align:center;color:#999;padding:48px 0;font-size:14px}.report-loading{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.report-loading .spinner{border:3px solid #e8e8eb;border-top-color:var(--green);border-radius:50%;width:40px;height:40px;margin-bottom:16px;animation:.8s linear infinite spin}.report-loading p{color:#999;font-size:15px}.report-error{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.report-error h2{color:#333;margin-bottom:8px}.report-error p{color:var(--error,#e74c3c);margin-bottom:20px}.back-btn{background:var(--green);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 24px;font-size:14px;font-weight:600}.back-btn:hover{background:var(--green-dark)}@media (width<=900px){.sidebar{width:200px}.main-content{margin-left:200px;padding:20px 16px}.two-col{grid-template-columns:1fr}.kpi-card{min-width:120px}}@media (width<=640px){.layout{flex-direction:column}.sidebar{border-bottom:1px solid #e8e8eb;border-right:none;flex-flow:wrap;align-items:center;width:100%;min-height:auto;position:relative}.sidebar-brand,.sidebar-account{border-bottom:none;padding:12px 16px}.sidebar-nav{gap:4px;padding:8px 12px;display:flex;overflow-x:auto}.nav-label{display:none}.nav-item{white-space:nowrap}.sidebar-footer{border-top:none;padding:8px 12px}.main-content{margin-left:0;padding:16px}}
