:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f5f7f8;color:#182026}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #1b75bb;outline-offset:2px}.app-shell{min-height:100vh;display:grid;grid-template-columns:240px minmax(0,1fr)}.sidebar{background:#10212b;color:#f7fafb;padding:22px 18px;display:flex;flex-direction:column;gap:28px}.sidebar h1,.dashboard-header h2,.login-panel h1,.detail-header h2{margin:0;letter-spacing:0}.eyebrow{margin:0 0 6px;color:#6b7a82;font-size:.78rem;font-weight:700;text-transform:uppercase}.sidebar .eyebrow{color:#8fd3c7}nav{display:grid;gap:8px}.nav-item,.secondary-button,.primary-button,.danger-button,.icon-button,.link-button{border:0;cursor:pointer}.nav-item{width:100%;min-height:38px;display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:6px;color:#d7e4e8;background:transparent;text-align:left}.nav-item.active,.nav-item:hover{background:#1e3946;color:#fff}.sidebar-footer{margin-top:auto;display:grid;gap:12px;font-size:.9rem}.dashboard{min-width:0;padding:22px}.dashboard-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.dashboard-header p{margin:6px 0 0;color:#53646d}.grafana-dashboard-panel{min-height:calc(100vh - 150px);overflow:hidden;border:1px solid #dfe7ea;border-radius:8px;background:#fff}.grafana-toolbar,.grafana-error-state{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 14px;border-bottom:1px solid #dfe7ea;background:#fff}.grafana-toolbar p{margin:0;color:#53646d;font-size:.9rem}.grafana-error-state{align-items:flex-start;border:1px solid #dfe7ea;border-radius:8px}.grafana-error-state .error-banner{flex:1}.grafana-frame{display:block;width:100%;height:max(calc(100vh - 216px),1800px);border:0;background:#fff}.primary-button,.secondary-button,.danger-button{min-height:36px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;font-weight:700}.primary-button{background:#0c6f68;color:#fff}.secondary-button{background:#e8eef1;color:#17242b}.danger-button{background:#ffe0df;color:#8d2119;font-weight:800}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled,.icon-button:disabled{opacity:.55;cursor:not-allowed}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#0e191f6b}.confirm-dialog{width:min(480px,100%);display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;padding:18px;border:1px solid #d7e1e5;border-radius:8px;background:#fff;box-shadow:0 18px 54px #10212b38}.confirm-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#d8f3df;color:#176332}.confirm-dialog-reject .confirm-icon{background:#ffe0df;color:#9f251d}.confirm-content{min-width:0}.confirm-content h2{margin:0;font-size:1.05rem;letter-spacing:0}.confirm-content p{margin:8px 0 0;color:#465962;line-height:1.45}.confirm-summary{display:grid;gap:8px;margin:14px 0 0;padding:10px 12px;border:1px solid #e7eef0;border-radius:6px;background:#f7fafb}.confirm-summary div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px}.confirm-summary dt{color:#64757d;font-size:.74rem;font-weight:800;text-transform:uppercase}.confirm-summary dd{margin:0;overflow-wrap:anywhere}.confirm-actions{grid-column:2;display:flex;justify-content:flex-end;gap:10px;margin-top:2px}.filters{display:grid;grid-template-columns:180px 150px 150px minmax(180px,1fr) auto;gap:10px;align-items:end;margin-bottom:16px;padding:14px;background:#fff;border:1px solid #dfe7ea;border-radius:8px}label{display:grid;gap:6px;color:#4f6068;font-size:.82rem;font-weight:700}input,select,textarea{min-height:36px;border:1px solid #c8d4d9;border-radius:6px;padding:0 10px;color:#182026;background:#fff}textarea{min-height:130px;padding:10px;resize:vertical}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:16px;align-items:start}.review-grid{grid-template-columns:minmax(360px,.52fr) minmax(0,1.48fr)}.list-panel,.detail-panel,.login-panel{background:#fff;border:1px solid #dfe7ea;border-radius:8px}.table-wrap{overflow:auto;max-height:calc(100vh - 180px)}.report-table{width:100%;min-width:980px;border-collapse:collapse;font-size:.86rem}.support-table{min-width:720px}.review-table{min-width:980px}.report-table th{position:sticky;top:0;background:#eef4f5;z-index:1;text-align:left;color:#465962;font-size:.75rem;text-transform:uppercase}.report-table th,.report-table td{padding:10px 12px;border-bottom:1px solid #e7eef0;vertical-align:top}.report-table tbody tr{cursor:pointer}.report-table tbody tr:hover,.selected-row{background:#f0f8f7}.report-table strong{display:block;margin-bottom:3px}.report-table td span:not(.status-badge){color:#64757d;font-size:.76rem}.table-subline,.review-note{display:block;margin-top:4px;color:#64757d;font-size:.76rem}.review-note{color:#795100;font-weight:800}.approved-note{color:#176332}.table-actions{display:flex;flex-wrap:wrap;gap:6px}.affiliate-settings-actions{width:520px;display:grid;grid-template-columns:1fr;gap:6px}.affiliate-settings-actions .primary-button,.affiliate-settings-actions .secondary-button{min-width:0}.affiliate-create-config{display:grid;gap:6px;min-width:min(100%,520px)}.affiliate-config-row{display:grid;grid-template-columns:92px minmax(100px,1fr) 120px;gap:6px;align-items:end}.affiliate-config-row .compact-checkbox{align-self:center;margin:0}.affiliate-action-field{display:grid;gap:3px;color:#64757d;font-size:.68rem;font-weight:800;text-transform:uppercase}.affiliate-action-field input{min-width:0}.affiliate-config-row input:disabled{border-color:#d4dde1;background:#edf2f4;color:#7b8b93;cursor:not-allowed}.affiliate-config-row input:disabled::placeholder{color:#9aa8ae}.affiliate-identity-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.affiliate-identity-button:hover strong,.affiliate-identity-button:focus-visible strong{color:#176332;text-decoration:underline}.affiliate-identity-button:focus-visible{outline:2px solid #176332;outline-offset:3px;border-radius:4px}.affiliate-detail-backdrop{place-items:stretch end;padding:0}.affiliate-detail-dialog{width:min(860px,100%);height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr);border-left:1px solid #d7e1e5;background:#fff;box-shadow:-18px 0 54px #10212b2e}.affiliate-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px;border-bottom:1px solid #e7eef0}.affiliate-detail-tabs{display:flex;gap:6px;padding:10px 18px;overflow-x:auto;border-bottom:1px solid #e7eef0}.affiliate-detail-tabs button{min-height:34px;padding:0 12px;border:1px solid #d7e1e5;border-radius:8px;background:#fff;color:#465962;font-weight:800;white-space:nowrap;cursor:pointer}.affiliate-detail-tabs button.active{border-color:#176332;background:#e7f6ed;color:#176332}.affiliate-detail-body{min-height:0;padding:18px;overflow:auto}.affiliate-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.affiliate-detail-grid>div{padding:12px;border:1px solid #dfe7ea;border-radius:8px;background:#f8fbfb}.affiliate-detail-grid span{display:block;color:#64757d;font-size:.75rem;font-weight:800;text-transform:uppercase}.affiliate-detail-grid strong{display:block;margin-top:6px;color:#21313a;overflow-wrap:anywhere}.affiliate-detail-table{min-width:720px}.affiliate-detail-empty{margin:0}.compact-checkbox{min-height:30px;display:flex;align-items:center;gap:6px}.compact-button{min-height:30px;padding:0 9px;font-size:.78rem;white-space:nowrap}.link-button{padding:0;background:transparent;color:#0b63a0;font-weight:700}.status-badge{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:0 9px;font-size:.75rem;font-weight:800;text-transform:capitalize;white-space:nowrap}.status-pending_review{background:#fff2cc;color:#795100}.status-pending_approval{background:#e7ddff;color:#4c2f88}.status-queued{background:#dceeff;color:#145589}.status-running{background:#e7ddff;color:#4c2f88}.status-ready{background:#d8f3df;color:#176332}.status-failed{background:#ffe0df;color:#9f251d}.status-deleted{background:#e8ecef;color:#53616a}.rerun-status{background:#dceeff;color:#145589}.rerun-status-running{background:#e7ddff;color:#4c2f88}.rerun-status-failed{background:#ffe0df;color:#9f251d}.rerun-status-succeeded{background:#d8f3df;color:#176332}.rerun-note{background:#dceeff;color:#145589}.support-status{background:#e8eef1;color:#33424a}.support-status-open,.support-status-new,.support-status-pending,.support-status-in_progress{background:#fff2cc;color:#795100}.support-status-replied,.support-status-resolved,.support-status-handled,.support-status-closed{background:#d8f3df;color:#176332}.support-status-failed{background:#ffe0df;color:#9f251d}.detail-panel{max-height:calc(100vh - 44px);overflow:auto;padding:16px}.review-panel{max-height:calc(100vh - 140px)}.empty-detail{color:#61727a}.detail-header,.detail-actions,.pagination{display:flex;justify-content:space-between;align-items:center;gap:12px}.review-actions{justify-content:flex-start;flex-wrap:wrap;margin:14px 0 12px}.icon-button{width:34px;height:34px;border-radius:6px;background:#e8eef1;color:#17242b}.detail-grid,.request-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail-field{margin:0;min-width:0}.detail-field dt{color:#64757d;font-size:.74rem;font-weight:800;text-transform:uppercase}.detail-field dd{margin:3px 0 0;overflow-wrap:anywhere}.detail-panel h3{margin:18px 0 8px;font-size:.95rem}pre{margin:8px 0 0;max-height:280px;overflow:auto;padding:10px;border-radius:6px;background:#101820;color:#e9f1f4;font-size:.78rem}.muted-copy{margin:0 0 8px;color:#64757d;font-size:.82rem}.preview-frame{width:100%;min-height:680px;border:1px solid #dfe7ea;border-radius:6px;background:#fff}.report-preview-backdrop{position:fixed;z-index:10;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#0f232f8f}.report-preview-dialog{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(1540px,100%);height:min(920px,100%);overflow:hidden;border:1px solid #d2e0e6;border-radius:12px;background:#fff;box-shadow:0 24px 64px #0f232f5c}.report-preview-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid #dfe7ea}.report-preview-dialog-header .eyebrow,.report-preview-dialog-header h2{margin:0}.report-preview-dialog-header h2{margin-top:3px;font-size:1.1rem}.report-preview-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.report-preview-dialog-body{display:flex;min-height:0;flex-direction:column;gap:12px;overflow:auto;padding:12px}.preview-frame-full{min-height:680px;flex:1 0 680px;border:0;border-radius:0}.preview-pre-full{max-height:none;min-height:680px}.approval-list-section{min-width:0}.preview-pre{max-height:620px;white-space:pre-wrap}.preview-unavailable,.empty-preview{display:grid;gap:12px;align-items:start;padding:16px;border:1px dashed #c8d4d9;border-radius:6px;color:#53646d}.preview-unavailable .secondary-button{justify-self:start;text-decoration:none}.compact-state{min-height:120px}.report-preview-section{margin-top:8px}.review-metadata{margin-top:16px;border-top:1px solid #e7eef0;padding-top:12px}.review-metadata summary{cursor:pointer;color:#465962;font-size:.82rem;font-weight:800}.review-metadata .detail-grid{margin-top:12px}.content-link{max-width:520px;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.support-content{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#233138}.reply-form{display:grid;gap:12px;margin-top:18px}.reply-form .primary-button{justify-self:start}.admin-section{display:grid;gap:14px}.section-toolbar{display:flex;justify-content:flex-end}.inline-form,.admin-user-form{padding:14px;border:1px solid #dfe7ea;border-radius:8px;background:#fff}.inline-form{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr)) auto;gap:10px;align-items:end}.admin-user-form{display:grid;gap:14px}.permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.permission-group{display:grid;gap:8px;margin:0;padding:10px;border:1px solid #dfe7ea;border-radius:6px}.permission-group legend{padding:0 4px;color:#465962;font-size:.78rem;font-weight:800}.checkbox-label{display:flex;grid-template-columns:none;align-items:center;gap:8px;color:#24323a;font-weight:600;text-transform:capitalize}.checkbox-label input{min-height:0}.form-actions{display:flex;gap:10px;align-items:center}.admin-table-wrap{max-height:calc(100vh - 250px);background:#fff;border:1px solid #dfe7ea;border-radius:8px}.share-card-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:14px;align-items:start}.share-card-form{grid-template-columns:repeat(2,minmax(180px,1fr))}.share-card-form label:has(textarea),.share-card-form .share-card-image-field,.share-card-form .form-actions{grid-column:1 / -1}.share-card-image-field{display:grid;gap:8px;color:#53646d;font-size:.86rem;font-weight:700}.share-card-image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:10px}.share-card-image-option{display:grid;grid-template-rows:72px minmax(18px,auto);gap:6px;min-width:0;padding:6px;border:2px solid #dfe7ea;border-radius:8px;background:#fff;color:#24323a;font-size:.76rem;font-weight:700;text-align:left}.share-card-image-option.selected{border-color:#0c6f68;box-shadow:0 0 0 2px #0c6f6824}.share-card-image-option img{width:100%;height:72px;object-fit:cover;border-radius:6px;background:#edf3f5}.share-card-image-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-card-preview-panel{display:grid;gap:10px;padding:16px;border:1px solid #dfe7ea;border-radius:8px;background:#fff}.share-card-preview-panel img{width:100%;max-height:180px;object-fit:cover;border-radius:8px}.share-card-preview-panel span{color:#176332;font-size:.75rem;font-weight:800;text-transform:uppercase}.share-card-preview-panel h3,.share-card-preview-panel p{margin:0}.share-card-preview-panel strong,.share-card-preview-panel small{overflow-wrap:anywhere}.share-card-row-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.pagination{padding:12px;color:#53646d;font-size:.86rem}.pagination div{display:flex;align-items:center;gap:8px}.page-number{color:#1d2b32;font-weight:700}.center-state,.empty-state{display:grid;place-items:center;min-height:220px;color:#5e6f77}.empty-state{min-height:280px}.error-banner,.error-inline,.success-inline{border-radius:6px;padding:10px 12px;margin-bottom:12px;font-weight:700}.error-banner,.error-inline{background:#ffe8e6;color:#8d2119}.success-inline{background:#ddf4e5;color:#176332}.toast{position:fixed;right:18px;bottom:18px;min-height:44px;display:flex;align-items:center;gap:14px;padding:10px 14px;border-radius:8px;background:#18262f;color:#fff;box-shadow:0 12px 34px #08141c38}.login-shell{min-height:100vh;display:grid;place-items:center;padding:18px;background:#eef3f5}.login-panel{width:min(100%,420px);padding:24px}.login-form{display:grid;gap:14px;margin-top:20px}@media (max-width: 1100px){.app-shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:4;flex-direction:row;align-items:center;padding:12px 14px}.sidebar nav{grid-auto-flow:column;margin-left:auto;min-width:0;max-width:100%;overflow-x:auto}.sidebar nav .nav-item{white-space:nowrap}.sidebar-footer{margin-top:0;display:flex;align-items:center}.content-grid,.review-grid,.inline-form{grid-template-columns:1fr}.detail-panel{max-height:none}}@media (max-width: 760px){.dashboard{padding:14px}.sidebar{flex-wrap:wrap}.sidebar-footer{width:100%;justify-content:space-between}.filters{grid-template-columns:1fr}.dashboard-header{display:grid}.detail-grid,.request-summary,.confirm-dialog{grid-template-columns:1fr}.confirm-actions{grid-column:1}.confirm-summary div{grid-template-columns:1fr}}.poster-card{width:min(100%,710px);padding:40px;border-radius:20px;background:#fff;box-shadow:0 4px 20px #1b356015;color:#102242}.poster-brand{margin:0 0 22px;color:#0759d6;font-weight:800;letter-spacing:.1em}.poster-card h2{margin:0;font-size:2rem}.poster-intro{color:#50627f;font-size:1.15rem;line-height:1.5;margin:20px 0 32px}.poster-label{color:#102242;font-size:1rem;margin-bottom:10px}.poster-input{width:100%;min-height:58px;border:2px solid #c6d4e8;border-radius:12px;font-size:1.05rem}.poster-help{color:#5b6d8a;line-height:1.5}.poster-actions{display:flex;flex-wrap:wrap;gap:14px;margin:48px 0 24px}.poster-actions button{border:0;border-radius:12px;min-height:60px;padding:0 25px;font-weight:800;cursor:pointer}.poster-download{flex:1;color:#fff;background:#0755d4}.poster-download:disabled{opacity:.6;cursor:wait}.poster-reset{background:#e9eff8;color:#10284b}@media (max-width: 600px){.poster-card{padding:24px}.poster-actions{flex-wrap:wrap}}.poster-workspace{display:flex;gap:28px;align-items:flex-start;flex-wrap:wrap}.poster-preview-wrap{width:min(100%,500px)}.poster-preview-label{color:#53646d;font-weight:700;margin:0 0 10px}.poster-preview-frame{display:block;width:100%;aspect-ratio:210 / 297;border:0;box-shadow:0 4px 18px #112c3e20}
