:root{--ink:#111827;--muted:#6b7280;--line:#e5e7eb;--bg:#f3f4f6;--card:#fff;--primary:#2563eb;--ok:#16a34a;--warn:#d97706;--danger:#dc2626;--radius:10px}*{box-sizing:border-box}body{color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}h1{margin:0 0 .25rem;font-size:1.5rem}h2{letter-spacing:.01em;margin:0 0 .75rem;font-size:1.05rem}.muted{color:var(--muted);margin:.15rem 0;font-size:.9rem}.footnote{color:var(--muted);margin-top:1rem;font-size:.75rem}.error-text{color:var(--danger);margin:.5rem 0;font-size:.85rem}.btn{border:1px solid var(--line);cursor:pointer;background:var(--card);color:var(--ink);border-radius:8px;padding:.5rem 1rem;font-size:.9rem}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.primary:hover{background:#1d4ed8}.btn.ghost:hover{background:var(--bg)}input[type=password],input[type=text]{border:1px solid var(--line);border-radius:8px;width:100%;margin:1rem 0 .25rem;padding:.6rem .8rem;font-size:1rem}.screen-center{background:linear-gradient(160deg,#0f172a 0%,#1e293b 60%,#1e3a5f 100%);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.card{background:var(--card);border-radius:var(--radius);text-align:center;width:100%;max-width:420px;padding:2.25rem;box-shadow:0 12px 40px #00000059}.upload-card{max-width:520px}.upload-toolbar{justify-content:flex-end;margin:-.75rem -.75rem .25rem 0;display:flex}.upload-toolbar .theme-toggle{width:auto;margin-top:0}.intro{color:var(--muted);margin:.5rem 0;font-size:.92rem;line-height:1.6}.intro.privacy{font-size:.85rem}.intro-divider{border:none;border-top:1px solid var(--line);margin:1.25rem 0 1rem}.upload-subhead{margin-bottom:.25rem;font-size:1rem}.theme-toggle{white-space:nowrap}.app-bar .theme-toggle{padding:.4rem .7rem;font-size:.85rem}.card .btn{width:100%;margin-top:1rem}.app-bar-org{color:#fff;letter-spacing:.02em;background:#1e293b;border-radius:8px;align-items:center;padding:.25rem .7rem;font-size:.85rem;font-weight:700;display:inline-flex}.dropzone{border:2px dashed var(--line);border-radius:var(--radius);cursor:pointer;color:var(--muted);margin-top:1.25rem;padding:2.5rem 1rem;transition:border-color .15s,background .15s}.dropzone.dragging,.dropzone:hover{border-color:var(--primary);background:#eff6ff}.app-bar{z-index:10;color:#fff;background:#0f172a;align-items:center;gap:.75rem;padding:.65rem 1.25rem;display:flex;position:sticky;top:0}.app-bar-title{font-size:.95rem;font-weight:600}.app-bar-actions{gap:.5rem;margin-left:auto;display:flex}.app-bar .btn.ghost{color:#e2e8f0;background:0 0;border-color:#334155}.report{flex-direction:column;gap:1.25rem;max-width:960px;margin:0 auto;padding:1.5rem 1.25rem 4rem;display:flex}.report-section{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);break-inside:avoid;padding:1.25rem}.report-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.status-pill{white-space:nowrap;border-radius:999px;padding:.35rem .9rem;font-size:.8rem;font-weight:600}.status-pill.tone-ok{color:#166534;background:#dcfce7}.status-pill.tone-warn{color:#92400e;background:#fef3c7}.status-pill.tone-danger{color:#991b1b;background:#fee2e2}.two-col{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}@media (width<=760px){.two-col{grid-template-columns:1fr}}.kpi-grid{background:0 0;border:none;grid-template-columns:repeat(4,1fr);gap:1rem;padding:0;display:grid}.kpi-grid.three{grid-template-columns:repeat(3,1fr)}.kpi-grid.two{grid-template-columns:repeat(2,1fr)}@media (width<=760px){.kpi-grid,.kpi-grid.three,.kpi-grid.two{grid-template-columns:repeat(2,1fr)}}.kpi-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);break-inside:avoid;padding:1rem 1.1rem}.kpi-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.75rem}.kpi-value{margin:.3rem 0;font-size:1.6rem;font-weight:700}.kpi-card.tone-danger .kpi-value{color:var(--danger)}.kpi-card.tone-warn .kpi-value{color:var(--warn)}.kpi-sub{color:var(--muted);font-size:.78rem}.progress-track{background:var(--line);border-radius:3px;height:6px;margin:.4rem 0;overflow:hidden}.progress-fill{background:var(--ok);border-radius:3px;height:100%}.progress-fill.tone-warn{background:var(--warn)}.progress-fill.tone-danger{background:var(--danger)}.chart-legend{color:var(--muted);justify-content:center;gap:1.25rem;margin-top:.5rem;font-size:.8rem;display:flex}.swatch{border-radius:2px;width:10px;height:10px;margin-right:.35rem;display:inline-block}.donut-wrap{grid-template-columns:1fr;gap:.5rem;display:grid}.donut-legend{margin:0;padding:0;font-size:.85rem;list-style:none}.donut-legend li{align-items:center;gap:.4rem;padding:.2rem 0;display:flex}.legend-name{flex:1}.legend-val{color:var(--muted)}.data-table{border-collapse:collapse;width:100%;font-size:.875rem}.data-table th,.data-table td{border-bottom:1px solid var(--line);text-align:left;padding:.5rem .6rem}.data-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.72rem}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.risk-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.risk-item{border:1px solid var(--line);border-left-width:4px;border-radius:8px;gap:.75rem;padding:.75rem .9rem;display:flex}.risk-item.level-danger{border-left-color:var(--danger);background:#fef2f2}.risk-item.level-warn{border-left-color:var(--warn);background:#fffbeb}.risk-title,.action-title{font-size:.9rem;font-weight:600}.risk-detail,.action-detail{color:var(--muted);margin-top:.15rem;font-size:.85rem}.action-list{flex-direction:column;gap:.85rem;margin:0;padding-left:1.25rem;display:flex}.timeline{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}@media (width<=760px){.timeline{grid-template-columns:1fr}}.timeline-phase{border:1px solid var(--line);border-top-width:4px;border-radius:8px;padding:.9rem}.timeline-phase.tone-ok{border-top-color:var(--ok)}.timeline-phase.tone-warn{border-top-color:var(--warn)}.timeline-phase.tone-danger{border-top-color:var(--danger)}.timeline-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.72rem}.timeline-heading{margin:.3rem 0;font-size:.9rem;font-weight:600}.timeline-detail{color:var(--muted);font-size:.82rem}.bottom-line p{margin:0;font-size:.95rem;line-height:1.6}.view-nav{background:#0f172a;gap:.25rem;padding:.4rem 1.25rem 0;display:flex;overflow-x:auto}.view-tab{color:#94a3b8;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px 8px 0 0;padding:.5rem .85rem;font-size:.85rem}.view-tab:hover{color:#e2e8f0}.view-tab.active{background:var(--bg);color:var(--ink);font-weight:600}.date-filter{background:var(--card);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-size:.85rem;display:flex}.date-filter-label{color:var(--muted);font-weight:600}.date-filter input[type=date]{border:1px solid var(--line);color:var(--ink);background:var(--card);border-radius:8px;padding:.3rem .5rem;font-size:.85rem}.date-filter-sep{color:var(--muted)}.date-filter .btn{padding:.3rem .7rem;font-size:.8rem}.date-filter-badge{color:var(--primary);font-weight:600}.quota-cell{justify-content:flex-end;align-items:center;gap:.5rem;display:inline-flex}.quota-bar{background:var(--line);border-radius:4px;width:70px;height:7px;display:inline-block;overflow:hidden}.quota-bar-fill{border-radius:4px;height:100%;display:block}.quota-bar-fill.tone-ok{background:var(--ok)}.quota-bar-fill.tone-warn{background:var(--warn)}.quota-bar-fill.tone-danger{background:var(--danger)}.quota-status{font-size:.8rem;font-weight:600}.quota-status.tone-ok{color:var(--ok)}.quota-status.tone-warn{color:var(--warn)}.quota-status.tone-danger{color:var(--danger)}.overview-layout{min-height:0;display:flex}.overview-layout .report{flex:1;min-width:0}.overview-sidebar{background:var(--card);border-right:1px solid var(--line);flex-shrink:0;align-self:flex-start;width:190px;padding:1rem 0;position:sticky;top:52px}.sidebar-nav{flex-direction:column;gap:.15rem;display:flex}.sidebar-item{text-align:left;width:100%;color:var(--muted);cursor:pointer;background:0 0;border:none;border-left:3px solid #0000;padding:.55rem 1.1rem;font-size:.85rem;display:block}.sidebar-item:hover{background:var(--bg);color:var(--ink)}.sidebar-item.active{color:var(--ink);border-left-color:var(--primary);background:#eff6ff;font-weight:600}.sidebar-divider{background:var(--line);height:1px;margin:.5rem 1rem}@media (width<=760px){.overview-layout{flex-direction:column}.overview-sidebar{border-right:none;border-bottom:1px solid var(--line);width:100%;padding:.5rem 0;position:static}.sidebar-nav{flex-direction:row;gap:0;overflow-x:auto}.sidebar-item{white-space:nowrap;border-bottom:3px solid #0000;border-left:none;padding:.5rem .85rem}.sidebar-item.active{border-left-color:#0000;border-bottom-color:var(--primary)}.sidebar-divider{width:1px;height:auto;margin:.25rem 0}}.view-stack{flex-direction:column;gap:1.25rem;display:flex}.report-section h3{margin:.5rem 0;font-size:.9rem}.insight-headline{margin:0;font-size:1.05rem;font-weight:600}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.sortable:hover{color:var(--ink)}.data-table tr.clickable{cursor:pointer}.data-table tr.clickable:hover td{background:#f8fafc}.budget-form{grid-template-columns:repeat(4,1fr);gap:.75rem;margin-top:.75rem;display:grid}@media (width<=760px){.budget-form{grid-template-columns:repeat(2,1fr)}}.budget-form label{color:var(--muted);flex-direction:column;gap:.25rem;font-size:.75rem;display:flex}.budget-form input{border:1px solid var(--line);border-radius:8px;width:100%;margin:0;padding:.45rem .6rem;font-size:.9rem}.estimate-banner{background:#fef9c3;border-color:#fbbf24 #fbbf24 #fbbf24 #f59e0b;border-left-style:solid;border-left-width:4px;padding:.85rem 1.25rem;font-size:.9rem}.compare-banner{border-color:#93c5fd;border-left:4px solid var(--primary);background:#eff6ff;padding:.7rem 1.25rem;font-size:.85rem}.compare-error{background:#fef2f2;border-bottom:1px solid #fecaca;justify-content:space-between;align-items:center;gap:1rem;padding:.4rem 1.25rem;display:flex}.kpi-badge{margin-top:.3rem}.delta-badge{border-radius:4px;padding:.15rem .45rem;font-size:.7rem;font-weight:600;display:inline-block}.delta-badge.delta-up{color:var(--danger);background:#fef2f2}.delta-badge.delta-down{color:var(--ok);background:#f0fdf4}.anomaly-block{margin-bottom:1rem}.anomaly-label,.standard-checks-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.5rem;font-size:.7rem}.standard-checks-label{margin-top:1rem}.no-anomalies{margin:0 0 .75rem;font-size:.85rem}.anomaly-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.anomaly-item{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;gap:.75rem;padding:.7rem .9rem;display:flex}.anomaly-icon{flex-shrink:0;font-size:1rem}.anomaly-title{font-size:.88rem;font-weight:600}.anomaly-detail{color:var(--muted);margin-top:.1rem;font-size:.82rem}.estimator-cta{border-top:1px solid var(--line);margin-top:.75rem;padding-top:.75rem}.estimator-link{width:100%;color:var(--primary);border-color:#0000;font-size:.85rem}.estimator-form{text-align:left;flex-direction:column;gap:.75rem;margin:1rem 0 .5rem;display:flex}.estimator-form label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.8rem;display:flex}.estimator-form input,.estimator-form select{border:1px solid var(--line);border-radius:8px;width:100%;margin:0;padding:.5rem .7rem;font-size:.95rem}.solver-result{flex-direction:column;gap:.2rem;display:flex}.solver-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.72rem}.solver-value{color:var(--primary);font-size:1.6rem;font-weight:700}.solver-sub{color:var(--muted);font-size:.78rem}.letterhead{border-bottom:2px solid var(--line);background:#f8fafc;justify-content:space-between;align-items:center;margin-bottom:.25rem;padding:.6rem 1.25rem;display:flex}.letterhead-product{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:.78rem;font-weight:600}.letterhead-org{color:var(--ink);font-size:.82rem;font-weight:700}.verdict-banner{border-left-width:4px!important}.verdict-banner.tone-ok{background:#f0fdf4;border-left-color:var(--ok)!important}.verdict-banner.tone-warn{background:#fffbeb;border-left-color:var(--warn)!important}.verdict-banner.tone-danger{background:#fef2f2;border-left-color:var(--danger)!important}.verdict-text{color:var(--ink);margin:0;font-size:1.1rem;font-weight:600;line-height:1.5}.run-rate-section{padding:1.25rem}.run-rate-grid{grid-template-columns:1fr 1fr 1fr;gap:1.25rem;margin-top:.5rem;display:grid}@media (width<=760px){.run-rate-grid{grid-template-columns:1fr}}.run-rate-item{border:1px solid var(--line);border-radius:8px;padding:.75rem 1rem}.run-rate-divider{border-color:var(--danger);background:#fef2f2}.run-rate-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:.3rem;font-size:.72rem}.run-rate-value{color:var(--ink);font-size:1.5rem;font-weight:700}.run-rate-value.run-rate-danger{color:var(--danger)}.run-rate-value.run-rate-ok{color:var(--ok)}.run-rate-sub{color:var(--muted);margin-top:.2rem;font-size:.75rem}.decisions-list{flex-direction:column;gap:.85rem;margin:0;padding:0;list-style:none;display:flex}.decision-item{border:1px solid var(--line);border-left:4px solid var(--primary);background:#eff6ff;border-radius:8px;padding:.85rem 1rem}.decision-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.2rem;display:flex}.decision-title{font-size:.9rem;font-weight:600}.decision-amount{color:var(--primary);white-space:nowrap;font-size:.9rem;font-weight:700}.decision-deadline{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem;font-size:.75rem}.decision-description{color:var(--muted);font-size:.83rem}.action-impact{color:var(--ok);margin-top:.2rem;font-size:.78rem;font-style:italic}.appendix-header{background:#f8fafc}.appendix-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:1rem}.confidentiality-marker{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:center;padding:.5rem 0 .25rem;font-size:.72rem;display:none}.facts-label{background:var(--card);border:2px solid var(--ink);break-inside:avoid;border-radius:6px;max-width:560px;padding:1.5rem 1.75rem;font-size:.9rem}.facts-title{border-bottom:3px solid var(--ink);margin-bottom:0;padding-bottom:.75rem}.facts-title-main{letter-spacing:-.01em;font-size:1.5rem;font-weight:800;line-height:1.2}.facts-title-org{color:var(--ink);font-size:1.1rem;font-weight:400;line-height:1.3}.facts-title-product{color:var(--primary);font-size:.95rem;font-weight:500;line-height:1.4}.facts-title-sub{color:var(--muted);margin-top:.1rem;font-size:.8rem}.facts-section-header{border-bottom:1px solid var(--ink);padding:.6rem 0 .35rem;font-size:.88rem;font-weight:700}.facts-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:1rem;padding:.35rem 0;display:flex}.facts-row-bold{font-weight:700}.facts-row-label{flex:1;min-width:0}.facts-row-value{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.facts-footer{color:var(--muted);margin-top:.75rem;font-size:.72rem;line-height:1.5}.print-only,.print-footer{display:none}@media screen{[data-theme=dark]{--ink:#e5e7eb;--muted:#9ca3af;--line:#374151;--bg:#111827;--card:#1f2937;--primary:#60a5fa;--ok:#34d399;--warn:#fbbf24;--danger:#f87171}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--bg);color:var(--ink)}[data-theme=dark] .card{box-shadow:0 12px 40px #0000008c}[data-theme=dark] .dropzone.dragging,[data-theme=dark] .dropzone:hover{background:#60a5fa1f}[data-theme=dark] .status-pill.tone-ok,[data-theme=dark] .delta-badge.delta-down{color:#34d399;background:#34d39929}[data-theme=dark] .status-pill.tone-warn{color:#fbbf24;background:#fbbf2429}[data-theme=dark] .status-pill.tone-danger,[data-theme=dark] .delta-badge.delta-up{color:#f87171;background:#f8717129}[data-theme=dark] .risk-item.level-danger,[data-theme=dark] .run-rate-divider,[data-theme=dark] .verdict-banner.tone-danger,[data-theme=dark] .compare-error{background:#f871711a}[data-theme=dark] .risk-item.level-warn,[data-theme=dark] .estimate-banner,[data-theme=dark] .verdict-banner.tone-warn{background:#fbbf241a}[data-theme=dark] .verdict-banner.tone-ok{background:#34d3991a}[data-theme=dark] .sidebar-item.active,[data-theme=dark] .decision-item,[data-theme=dark] .compare-banner,[data-theme=dark] .anomaly-item{background:#60a5fa1f}[data-theme=dark] .anomaly-item{border-color:#60a5fa59}[data-theme=dark] .data-table tr.clickable:hover td{background:#ffffff0a}[data-theme=dark] .letterhead,[data-theme=dark] .appendix-header{background:#ffffff08}}@page{size:letter;margin:.6in .5in .75in;@bottom-right{content:"Page " counter(page);font-size:8pt;color:#6b7280}@bottom-left{content:"Confidential — GitHub Copilot Usage Report";font-size:8pt;color:#6b7280}}@media print{body{background:#fff}.no-print{display:none!important}.report{gap:0;max-width:none;padding:0}.page-one{break-after:page;padding-bottom:0}.page-one .letterhead{border-bottom:1px solid #9ca3af;margin-bottom:1.25rem;padding:.75rem 0}.page-one .report-section{break-inside:avoid;margin-bottom:1.25rem}.page-one .verdict-banner{padding:1.25rem 1.5rem}.page-one .verdict-text{font-size:1.2rem}.appendix .report-section{break-inside:avoid;margin-bottom:.75rem}.appendix{gap:.75rem}.confidentiality-marker{border-top:1px solid #d1d5db;margin-top:1.5rem;padding-top:.75rem;display:block}.print-footer{color:#6b7280;border-top:1px solid #d1d5db;justify-content:space-between;align-items:center;padding-top:.25rem;font-size:8pt;display:flex;position:fixed;bottom:.4in;left:.5in;right:.5in}.report-section,.kpi-card,.risk-item,.timeline-phase{break-inside:avoid;box-shadow:none}.report-section{border-color:#d1d5db}.dropzone,.btn{display:none}.print-color-exact{-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-only{font-size:.9rem;display:inline}.swatch-weekend{border:2px solid #4338ca;background:repeating-linear-gradient(45deg,#a5b4fc,#a5b4fc 2px,#fff 2px 5px)!important}}
