:root{color-scheme:dark;--bg:#141419;--surface:#1c1c24;--border:#30303e;--muted:#aaa9ba;--accent:#8a6cff}
*{box-sizing:border-box}body{font:15px/1.5 system-ui,-apple-system,sans-serif;background:var(--bg);color:#f1f0f7;max-width:1280px;margin:0 auto;padding:32px 28px}h1,h2,h3,p{margin:0}h1{display:inline;font-size:27px;letter-spacing:-1px}h2{font-size:24px;letter-spacing:-.5px}h3{font-size:15px;font-weight:600}button,input,select{font:inherit;color:inherit;background:#25252f;border:1px solid var(--border);border-radius:8px;padding:9px 12px;min-height:40px}button{cursor:pointer;font-weight:550}button:hover{border-color:var(--accent)}button:disabled{opacity:.45;cursor:default}button.primary{background:#7754ea;border-color:#8a6cff}label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:12px;font-weight:550}input,select{min-width:0;max-width:100%;color:#f1f0f7}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}.muted{color:var(--muted);font-size:12px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.page-header p{color:var(--muted);font-size:13px;margin-top:3px}.brand-mark{width:26px;height:26px;vertical-align:-4px;margin-right:10px}.login-card{max-width:420px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:28px;margin:80px auto;display:grid;gap:20px}.login-card h2{font-size:22px}#error{padding:12px 16px;margin:14px 0;background:#442733;border:1px solid #774458;color:#ffc2cf;border-radius:8px}.project-bar{display:flex;gap:16px;border-bottom:1px solid var(--border);padding-bottom:24px;margin-bottom:26px}.project-bar label{flex:1}.dashboard-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:15px}.dashboard-heading h2{white-space:nowrap}.dashboard-heading p{margin-top:5px}.period-bar{display:flex;align-items:flex-end;gap:8px}.period-bar input{width:135px;font-size:13px}.period-bar select{font-size:13px}.period-bar button{font-size:13px}#reportStatus{margin-bottom:18px;min-height:18px}.widget-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:80px;gap:16px;min-height:90px}.widget{padding:18px 20px;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:auto;min-width:0}.widget-subtitle{font-size:11px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.metric-value{font-size:44px;font-weight:650;letter-spacing:-2px;line-height:1.2;margin-top:14px}.metric-unit{font-size:11px;color:var(--muted);margin-top:5px}.chart{margin-top:10px}.chart>svg{display:block;width:100%;max-height:190px}.axis-label{fill:var(--muted);font:11px system-ui}.grid-line{stroke:#343340;stroke-width:1}.chart-line{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round}.chart-area{fill:var(--accent);opacity:.1}.chart-dot{fill:#ac95ff}.chart-data{font-size:11px;color:var(--muted);margin-top:5px}.chart-data table{border-collapse:collapse;width:100%;margin-top:8px}.chart-data th,.chart-data td{text-align:left;border-bottom:1px solid var(--border);padding:5px 8px}.chart-data th{color:#e8e5f2}summary{cursor:pointer;user-select:none}.funnel-total{font-size:12px;margin-top:10px;color:#c7bbfa}.funnel-steps{display:flex;gap:14px;margin-top:4px}.funnel-step{flex:1;min-width:0}.funnel-step svg{display:block;width:100%;max-height:140px}.funnel-bar{fill:var(--accent)}.funnel-count{fill:#eee9ff;font:600 10px system-ui}.step-event{font-size:11px;overflow-wrap:anywhere;margin-bottom:3px}.funnel-step .muted{font-size:10px}.funnel-note{color:var(--muted);font-size:10px;margin-top:8px}.breakdown-body{display:flex;align-items:center;justify-content:center;gap:40px;margin:8px 0}.breakdown-body>svg{width:170px;height:170px;flex-shrink:0}.donut-value{fill:#eee9ff;font:600 26px system-ui}.legend{list-style:none;padding:0;margin:0;max-height:150px;overflow:auto;min-width:220px;max-width:60%}.legend li{display:flex;align-items:center;gap:9px;padding:4px 0;font-size:12px}.legend strong{margin-left:auto;padding-left:15px}.group-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.color-0{color:#8a6cff}.color-1{color:#58d6c7}.color-2{color:#ff9d79}.color-3{color:#73b6ff}.color-4{color:#f4ce70}.color-5{color:#e28dd8}.empty-state{grid-column:1/-1;align-self:center;text-align:center;color:var(--muted);padding:25px}.management,.diagnostics{border:1px solid var(--border);border-radius:10px;padding:16px 20px;margin-top:22px;color:var(--muted);font-size:13px}.management-row{display:flex;align-items:flex-end;gap:10px;margin:18px 0}.source-row{display:flex;align-items:center;gap:14px;border-top:1px solid var(--border);padding:10px 0}.source-row code{font-size:11px;overflow-wrap:anywhere}.source-row button{margin-left:auto;font-size:12px;min-height:30px;padding:5px 10px}.token{overflow-wrap:anywhere;color:#c7bbfa}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#191920;padding:16px;font-size:12px;color:#d3cfdf;max-height:500px;overflow:auto}.diagnostics button{margin-top:14px}footer{font-size:11px;color:var(--muted);margin:24px 0}
@media(max-width:1100px){.dashboard-heading{align-items:flex-start;flex-direction:column}.period-bar{flex-wrap:wrap}.metric-value{font-size:36px}.widget-subtitle{font-size:10px}}
@media(max-width:720px){body{padding:20px 14px}.project-bar{flex-wrap:wrap;gap:10px}.project-bar label{min-width:180px}.widget-grid{grid-template-columns:1fr;grid-auto-rows:auto}.widget{grid-column:1/-1!important;grid-row:auto!important;min-height:170px}.period-bar input{width:125px}.breakdown-body{gap:15px}.legend{min-width:130px}.source-row{flex-wrap:wrap}.management-row{flex-wrap:wrap}.funnel-steps{gap:7px}.step-event{font-size:10px}}
.x-0{grid-column-start:1}
.x-1{grid-column-start:2}
.x-2{grid-column-start:3}
.x-3{grid-column-start:4}
.x-4{grid-column-start:5}
.x-5{grid-column-start:6}
.x-6{grid-column-start:7}
.x-7{grid-column-start:8}
.x-8{grid-column-start:9}
.x-9{grid-column-start:10}
.x-10{grid-column-start:11}
.x-11{grid-column-start:12}
.y-0{grid-row-start:1}
.y-1{grid-row-start:2}
.y-2{grid-row-start:3}
.y-3{grid-row-start:4}
.y-4{grid-row-start:5}
.y-5{grid-row-start:6}
.y-6{grid-row-start:7}
.y-7{grid-row-start:8}
.y-8{grid-row-start:9}
.y-9{grid-row-start:10}
.y-10{grid-row-start:11}
.y-11{grid-row-start:12}
.y-12{grid-row-start:13}
.y-13{grid-row-start:14}
.y-14{grid-row-start:15}
.y-15{grid-row-start:16}
.y-16{grid-row-start:17}
.y-17{grid-row-start:18}
.y-18{grid-row-start:19}
.y-19{grid-row-start:20}
.y-20{grid-row-start:21}
.y-21{grid-row-start:22}
.y-22{grid-row-start:23}
.y-23{grid-row-start:24}
.y-24{grid-row-start:25}
.y-25{grid-row-start:26}
.y-26{grid-row-start:27}
.y-27{grid-row-start:28}
.y-28{grid-row-start:29}
.y-29{grid-row-start:30}
.y-30{grid-row-start:31}
.y-31{grid-row-start:32}
.y-32{grid-row-start:33}
.y-33{grid-row-start:34}
.y-34{grid-row-start:35}
.y-35{grid-row-start:36}
.y-36{grid-row-start:37}
.y-37{grid-row-start:38}
.y-38{grid-row-start:39}
.y-39{grid-row-start:40}
.y-40{grid-row-start:41}
.y-41{grid-row-start:42}
.y-42{grid-row-start:43}
.y-43{grid-row-start:44}
.y-44{grid-row-start:45}
.y-45{grid-row-start:46}
.y-46{grid-row-start:47}
.y-47{grid-row-start:48}
.y-48{grid-row-start:49}
.y-49{grid-row-start:50}
.y-50{grid-row-start:51}
.y-51{grid-row-start:52}
.y-52{grid-row-start:53}
.y-53{grid-row-start:54}
.y-54{grid-row-start:55}
.y-55{grid-row-start:56}
.y-56{grid-row-start:57}
.y-57{grid-row-start:58}
.y-58{grid-row-start:59}
.y-59{grid-row-start:60}
.y-60{grid-row-start:61}
.y-61{grid-row-start:62}
.y-62{grid-row-start:63}
.y-63{grid-row-start:64}
.y-64{grid-row-start:65}
.w-1{grid-column-end:span 1}.h-1{grid-row-end:span 1}
.w-2{grid-column-end:span 2}.h-2{grid-row-end:span 2}
.w-3{grid-column-end:span 3}.h-3{grid-row-end:span 3}
.w-4{grid-column-end:span 4}.h-4{grid-row-end:span 4}
.w-5{grid-column-end:span 5}.h-5{grid-row-end:span 5}
.w-6{grid-column-end:span 6}.h-6{grid-row-end:span 6}
.w-7{grid-column-end:span 7}.h-7{grid-row-end:span 7}
.w-8{grid-column-end:span 8}.h-8{grid-row-end:span 8}
.w-9{grid-column-end:span 9}.h-9{grid-row-end:span 9}
.w-10{grid-column-end:span 10}.h-10{grid-row-end:span 10}
.w-11{grid-column-end:span 11}.h-11{grid-row-end:span 11}
.w-12{grid-column-end:span 12}.h-12{grid-row-end:span 12}
.kind-count h3{font-size:14px;line-height:1.3;min-height:36.4px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.kind-count .widget-subtitle{font-size:10px;line-height:1.3;min-height:26px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.kind-count .metric-value{font-size:36px;line-height:1.1;margin-top:8px}.kind-count .metric-unit{line-height:1.2;margin-top:4px}
