:root{color-scheme:dark;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#09111f;color:#e8eefc}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at top right,rgba(0,214,201,.16),transparent 25%),linear-gradient(180deg,#0b1020,#0a1327 45%,#0b1731)}a{color:inherit;text-decoration:none}button{border:0;border-radius:10px;background:#1d2a49;color:#fff;padding:.65rem .9rem;cursor:pointer}#root{min-height:100vh}.shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh;height:100vh;overflow:hidden}.sidebar{padding:24px;border-right:1px solid rgba(255,255,255,.06);background:#040a16bf;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:flex;flex-direction:column;gap:24px;position:sticky;top:0;height:100vh;overflow:hidden}.brand-header{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:-20px;margin-bottom:-20px}.brand-logo{width:230px}.brand{font-size:1.4rem;font-weight:700}.brand-subtitle{margin:8px 0 0;color:#8fa6d8;font-size:.95rem}.nav{display:flex;flex-direction:column;gap:10px}.nav-link{padding:12px 14px;border-radius:12px;color:#b9c8ea}.nav-link.active,.nav-link:hover{background:linear-gradient(90deg,#4178ff33,#00d6c929);color:#fff}.role-switcher{margin-top:auto;display:flex;flex-direction:column;gap:12px;color:#8fa6d8}.role-buttons{display:grid;gap:8px}.content{padding:32px;overflow:auto}.topbar{display:flex;justify-content:space-between;align-items:start;gap:18px;margin-bottom:28px}.topbar h1{margin:0;font-size:2rem}.topbar p{margin:8px 0 0;color:#8fa6d8}.topbar-user-area{display:flex;justify-content:flex-end;margin-left:auto;width:auto}.topbar-user-card{width:auto;padding:10px 12px;border-radius:20px;background:#111c36d9;border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:10px;box-shadow:0 18px 34px #0000002e}.topbar-user-grid{display:grid;grid-template-columns:auto auto auto;align-items:center;gap:30px}.prompt-score-stack{display:flex;flex-direction:column;align-items:center;gap:2px;width:86px;flex:0 0 86px}.user-box{min-width:0;display:flex;flex-direction:column;gap:6px;align-items:center;text-align:center}.user-box-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}.user-box-header strong{font-size:1rem}.user-box-email{color:#b9c8ea;word-break:break-word;font-size:.96rem}.user-box-team{color:#8fe8d8;font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.prompt-score-badge{position:relative;width:84px;height:84px;border-radius:50%;padding:0;overflow:visible;display:grid;place-items:center}.prompt-score-badge-good{filter:drop-shadow(0 0 10px rgba(0,214,201,.14))}.prompt-score-badge-warning{filter:drop-shadow(0 0 10px rgba(255,210,125,.14))}.prompt-score-badge-danger{filter:drop-shadow(0 0 10px rgba(255,97,134,.14))}.prompt-score-chart{width:100%;height:100%;transform:rotate(-90deg);cursor:pointer;transition:filter .3s ease}.prompt-score-chart:hover{filter:drop-shadow(0 0 8px rgba(255,255,255,.2))}.prompt-score-track,.prompt-score-progress{fill:none;stroke-width:9}.prompt-score-track{stroke:#ffffff14}.prompt-score-progress{stroke-linecap:round;transition:stroke-dashoffset .22s ease}.prompt-score-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none;gap:0}.prompt-score-value{margin-top:0;font-size:1.2rem;font-weight:800;line-height:1;letter-spacing:-.02em;display:flex;align-items:center;gap:2px;max-width:65px;overflow:hidden;text-overflow:ellipsis}.prompt-score-star{font-size:.9rem;line-height:1;flex-shrink:0}.prompt-score-internal-label{color:#dbe7ff;font-size:.42rem;line-height:1;letter-spacing:.05em;text-transform:uppercase}.prompt-score-label{color:#8fa6d8;font-size:.68rem;line-height:1.2;text-align:center;letter-spacing:.04em;max-width:100%;font-weight:600;text-transform:uppercase}.prompt-score-stack .prompt-score-label{color:#b9c8ea;font-size:.5rem;text-transform:none}.topbar-user-actions{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:10px}.icon-action-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border-radius:14px;border:1px solid rgba(110,176,255,.28);background:linear-gradient(180deg,#4180ff29,#4180ff14);color:#dbe7ff;font-weight:700;letter-spacing:.01em;box-shadow:inset 0 1px #ffffff0d}.icon-action-button:hover{background:linear-gradient(180deg,#4180ff38,#4180ff1f);border-color:#6eb0ff61}.settings-button,.logout-button{color:#dbe7ff}.settings-button span,.logout-button span{font-size:1.1rem;line-height:1}.settings-button{text-decoration:none}.logout-button{align-self:stretch}.role-chip{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.02em;border:1px solid transparent}.role-chip-admin{background:#4180ff2e;color:#a8c7ff;border-color:#4180ff3d}.role-chip-team-manager{background:#00d6c929;color:#7af2e8;border-color:#00d6c938}.role-chip-user{background:#ffffff14;color:#dbe7ff;border-color:#ffffff1f}@media (max-width: 980px){.topbar-user-area{width:100%}.topbar-user-grid{grid-template-columns:1fr;justify-items:start}.prompt-score-badge{width:60px;height:60px}.topbar-user-actions{flex-direction:row;justify-content:flex-start}}.session-ended-shell,.session-loading-shell{min-height:100vh;display:grid;place-items:center;padding:32px}.settings-drawer{position:fixed;top:0;right:0;height:100vh;width:360px;background:#0f141c;border-left:1px solid rgba(255,255,255,.08);box-shadow:-8px 0 20px #0006;padding:24px;display:flex;flex-direction:column;gap:20px;animation:slideDrawer .25s ease}.settings-drawer-header{display:flex;align-items:center;justify-content:space-between}.settings-drawer-header h2{margin:0;font-size:1.2rem}.settings-drawer-description{font-size:.9rem;opacity:.7}.settings-drawer-body{display:flex;flex-direction:column;gap:20px}.settings-drawer-section h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;opacity:.6;margin:0 0 6px}.settings-drawer-item{font-size:.9rem;padding:6px 0;opacity:.9}@keyframes slideDrawer{0%{transform:translate(100%)}to{transform:translate(0)}}.settings-page{max-width:720px;display:flex;flex-direction:column;gap:20px}.settings-header h2{margin:0;font-size:1.4rem;letter-spacing:-.01em}.settings-header p{margin:4px 0 0;opacity:.75;font-size:.9rem}.settings-section{padding:24px 26px;border-radius:14px;background:#ffffff05;border:1px solid rgba(255,255,255,.06)}.settings-section h3{margin:0 0 14px;font-size:.92rem;letter-spacing:.04em;text-transform:uppercase;opacity:.7}.settings-control{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.settings-control:last-child{margin-bottom:0}.settings-label{font-size:.85rem;opacity:.8}.settings-toggle-group{display:inline-flex;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.settings-toggle{padding:8px 14px;font-size:.85rem;background:transparent;border:none;color:#cfdcff;cursor:pointer;transition:background .15s ease}.settings-toggle:hover{background:#ffffff0f}.settings-toggle.is-active{background:linear-gradient(180deg,#4180ff47,#4180ff1f);color:#fff}.settings-range-shell{display:flex;flex-direction:column;gap:6px}.settings-range{width:100%}.settings-range-meta{display:flex;justify-content:space-between;font-size:.8rem;opacity:.7}.settings-range-meta strong{font-size:.9rem;opacity:1}.settings-actions{margin-top:6px}.settings-secondary-button{padding:8px 14px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:transparent;color:#dbe7ff;cursor:pointer}.settings-secondary-button:hover{background:#ffffff0f}.session-ended-card,.session-loading-card{width:min(640px,100%);display:grid;gap:12px}.session-ended-kicker{color:#8fa6d8;font-size:.92rem;text-transform:uppercase;letter-spacing:.08em}.session-ended-card h1{margin:0;font-size:2rem}.session-ended-card p{margin:0;color:#b9c8ea;line-height:1.6}.session-ended-actions{display:flex;gap:12px;flex-wrap:wrap}.page-grid{display:grid;gap:22px}.page-section{position:relative;display:grid;gap:22px}.page-section.is-loading{min-height:320px}.page-section.is-loading>*:not(.page-loader){filter:blur(1.5px);opacity:.45;pointer-events:none;-webkit-user-select:none;user-select:none}.page-loader{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;justify-content:center;gap:16px;padding:24px;border-radius:20px;background:#040a167a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2}.page-loader-copy{display:flex;flex-direction:column;gap:6px}.page-loader-copy strong{font-size:1rem}.page-loader-copy span{color:#b9c8ea;font-size:.95rem}.page-loader-spinner{width:52px;height:52px;border-radius:50%;border:4px solid rgba(255,255,255,.14);border-top-color:#00d6c9;border-right-color:#4180ff;animation:page-loader-spin .85s linear infinite;box-shadow:0 0 24px #4180ff2e}@keyframes page-loader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes polling-bar{0%{transform:translate(-100%)}to{transform:translate(100%)}}.timestamp-chip{display:inline-block;padding:6px 10px;border-radius:999px;background:transparent;transition:background-color .2s ease-in-out}.timestamp-chip.highlighted{animation:chip-flash 1s ease-in-out}@keyframes chip-flash{0%{background:transparent;box-shadow:none}20%{background:#00d6c9d9;box-shadow:0 6px 18px #00d6c92e}to{background:transparent;box-shadow:none}}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.monthly-stats-section{margin-bottom:24px}.monthly-stats-section h2{margin:0 0 14px;font-size:1.1rem;color:#e8eef5}.stats-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:#0f172cc7;border:1px solid rgba(255,255,255,.07);border-radius:20px;padding:20px;box-shadow:0 20px 40px #00000038}.stat-card{display:flex;flex-direction:column;gap:10px}.stat-title{color:#8fa6d8;font-size:.95rem}.stat-value{font-size:1.8rem}.stat-delta{color:#35d5ae;font-size:.9rem}.section-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.section-header h3,.intro-card h2{margin:0}.section-header span,.intro-card p{color:#8fa6d8}.chart{height:260px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;align-items:flex-end;justify-items:center;position:relative;min-height:200px}.chart-empty{min-height:260px;display:flex;align-items:center;justify-content:center;color:#8fa6d8;border-radius:18px;background:#070d1c57;border:1px dashed rgba(255,255,255,.08)}.chart-legend{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:14px}.chart-legend-item{display:inline-flex;align-items:center;gap:8px;color:#b9c8ea;font-size:.92rem}.chart-legend-swatch{width:12px;height:12px;border-radius:999px;box-shadow:0 0 0 2px #ffffff14 inset}.chart-item{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:10px;height:100%;width:100%;min-width:0;animation:slideIn .6s ease-out backwards}.chart-item:nth-child(1){animation-delay:.1s}.chart-item:nth-child(2){animation-delay:.15s}.chart-item:nth-child(3){animation-delay:.2s}.chart-item:nth-child(4){animation-delay:.25s}.chart-item:nth-child(5){animation-delay:.3s}.chart-item:nth-child(6){animation-delay:.35s}.chart-item:nth-child(7){animation-delay:.4s}.chart-bar-wrap{display:flex;align-items:flex-end;justify-content:center;min-height:8px;height:100%;flex:1;width:100%}.chart-bar{width:32px;border-radius:16px 16px 6px 6px;background:linear-gradient(180deg,#00d6c9,#4180ff);box-shadow:0 4px 12px #00d6c933,inset 0 1px #fff3;transition:all .3s cubic-bezier(.34,1.56,.64,1);position:relative}.chart-bar:hover{transform:translateY(-4px) scaleY(1.05);box-shadow:0 8px 20px #00d6c959,inset 0 1px #ffffff4d;filter:brightness(1.15)}.chart-bar:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);border-radius:16px 16px 0 0}.chart-bar-stack-wrap{width:32px;overflow:hidden;border-radius:16px 16px 6px 6px;background:#ffffff0d;box-shadow:0 4px 12px #00000059,inset 0 1px #ffffff14;transition:all .3s ease-out;border:1px solid rgba(0,214,201,.1)}.chart-bar-stack-wrap:hover{background:#ffffff14;transform:translateY(-4px);box-shadow:0 8px 20px #00d6c940,inset 0 1px #ffffff26;border-color:#00d6c94d}.chart-bar-stack{width:100%;display:flex;flex-direction:column-reverse;justify-content:flex-start}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes zoomIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes tableRevealIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes tablePulseGlow{0%{box-shadow:0 0 #00d6c900,inset 0 0 20px #00d6c900}50%{box-shadow:0 0 20px 4px #00d6c929,inset 0 0 20px #00d6c914}to{box-shadow:0 0 #00d6c900,inset 0 0 20px #00d6c900}}.table-card.scroll-revealed{animation:tableRevealIn .7s cubic-bezier(.34,1.56,.64,1) forwards,tablePulseGlow 2s ease-out .3s 2 forwards}.chart-bar-segment{width:100%;transition:opacity .2s ease}.chart-bar-stack-wrap:hover .chart-bar-segment{opacity:.9}.chart-label{color:#b9c8ea}.chart-value{font-size:.75rem;color:#8fa6d8;margin-top:2px}.chart-value.small{font-size:.65rem;color:#6b7fa6}.chart-gridline{position:absolute;width:100%;height:1px;background:#ffffff0d;pointer-events:none}.chart-bar-max{background:linear-gradient(180deg,#00f5e8,#5a9fff)!important;box-shadow:0 0 20px #00f5e866,inset 0 1px #ffffff4d!important;animation:pulse 2s ease-in-out infinite}.donut-card{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:16px}.donut-wrap{position:relative;width:100%;max-width:280px;aspect-ratio:1;margin:0 auto;animation:fadeInScale .8s ease-out;transition:transform .3s ease}.donut-wrap:hover{transform:scale(1.05)}.donut-legend-compact{display:grid;grid-template-columns:1fr;gap:6px;width:100%;max-width:280px;padding:8px 0}.donut-legend-item-compact{display:flex;align-items:center;gap:6px;font-size:.75rem}.donut-swatch-compact{width:8px;height:8px;border-radius:2px;flex-shrink:0}.donut-label-compact{color:#b9c8ea;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.donut-percent-compact{color:#8fa6d8;font-size:.7rem;flex-shrink:0}.donut-chart{width:100%;height:100%;transform:rotate(-90deg);overflow:visible;transition:filter .3s ease}.donut-wrap:hover .donut-chart{filter:drop-shadow(0 0 8px rgba(0,214,201,.3))}.donut-track,.donut-segment{fill:none;stroke-width:16}.donut-track{stroke:#ffffff14}.donut-segment{stroke-linecap:round;transition:stroke-dashoffset .18s ease,stroke-dasharray .18s ease,filter .3s ease;cursor:pointer;filter:brightness(1)}.donut-segment:hover{filter:brightness(1.2) drop-shadow(0 0 6px rgba(255,255,255,.3))}.donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;text-align:center;animation:zoomIn .6s .4s ease-out backwards}.donut-center strong{font-size:2rem;line-height:1}.donut-center span{color:#8fa6d8;font-size:.92rem;margin-top:4px}.donut-legend{display:grid;gap:14px}.donut-legend-item{display:grid;grid-template-columns:12px 1fr;gap:12px;align-items:start}.donut-swatch{width:12px;height:12px;border-radius:999px;margin-top:4px;box-shadow:0 0 0 2px #ffffff14 inset}.donut-legend-copy{display:flex;flex-direction:column;gap:4px}.donut-legend-copy strong{font-size:.98rem}.donut-legend-copy span{color:#8fa6d8;font-size:.92rem}@media (max-width: 720px){.donut-card{grid-template-columns:1fr}.donut-wrap{max-width:240px}}.table-card{overflow:hidden;position:relative}.data-table{width:100%;border-collapse:separate;border-spacing:0}.data-table th,.data-table td{text-align:left;padding:14px 10px;border-bottom:1px solid rgba(255,255,255,.06)}.data-table thead th{position:sticky;top:0;background:#0f172cf2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:3}.table-scroll-x{overflow-x:auto;overflow-y:visible}.data-table thead th{position:sticky;top:0;background:#0f172cfa;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;box-shadow:0 6px 12px #0000003d}.wide-table{min-width:980px}.token-cell{display:inline-flex;align-items:center;gap:8px}.icon-button{padding:4px 8px;border-radius:999px;background:#4180ff2e;font-size:.9rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#030814bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px}.modal-card{width:min(1100px,100%);max-height:88vh;background:#080f1ffa;border:1px solid rgba(255,255,255,.08);border-radius:22px;box-shadow:0 30px 80px #0006;display:flex;flex-direction:column;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:start;gap:16px;padding:20px 22px;border-bottom:1px solid rgba(255,255,255,.08)}.modal-header h3{margin:0 0 6px}.modal-header span{color:#8fa6d8}.forensic-viewer{margin:0;padding:20px 22px 24px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.88rem;line-height:1.5;color:#dbe7ff;background:linear-gradient(180deg,#070e1df5,#0b162df5)}.observatory-modal{background:radial-gradient(circle at top right,rgba(0,214,201,.12),transparent 25%),radial-gradient(circle at top left,rgba(65,128,255,.18),transparent 22%),#080f1ffa}.observatory-header h3{font-size:2rem}.observatory-tabs{display:flex;flex-wrap:wrap;gap:10px;padding:16px 22px 0}.observatory-tabs button{background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.observatory-tabs button.active{background:linear-gradient(135deg,#4180ff52,#00d6c93d)}.observatory-content{padding:18px 22px 0;overflow:auto}.observatory-overview,.observatory-analysis{display:grid;gap:20px}.observatory-hero{display:grid;grid-template-columns:300px 1fr;gap:20px;align-items:stretch}.gauge-card,.observatory-section,.metric-card{border:1px solid rgba(255,255,255,.08);background:#0a1327d1;border-radius:18px;box-shadow:0 18px 40px #0000002e}.gauge-card{padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.metric-card{padding:16px}.metric-label{display:flex;align-items:center;gap:6px;color:#9cb3df;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}.metric-value{margin-top:10px;font-size:1.4rem;font-weight:700;color:#eef4ff}.metric-card-good{box-shadow:inset 0 0 0 1px #5cf0c624}.metric-card-warning{box-shadow:inset 0 0 0 1px #ffd27d24}.metric-card-danger{box-shadow:inset 0 0 0 1px #ff618629}.metric-help{width:18px;height:18px;border-radius:999px;background:#4180ff33;color:#dbe7ff;display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;position:relative;cursor:help}.metric-tooltip{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%);width:240px;padding:10px 12px;border-radius:12px;background:#080f1ffa;border:1px solid rgba(255,255,255,.08);color:#dbe7ff;font-size:.78rem;line-height:1.4;opacity:0;pointer-events:none;transition:opacity .15s ease,transform .15s ease;box-shadow:0 18px 40px #0000003d;text-transform:none;letter-spacing:normal;z-index:20}.metric-help:hover .metric-tooltip{opacity:1;transform:translate(-50%) translateY(-4px)}.efficiency-gauge{position:relative;width:150px;height:150px}.efficiency-gauge svg{width:100%;height:100%}.gauge-track{fill:none;stroke:#ffffff14;stroke-width:10}.gauge-progress{fill:none;stroke-width:10;stroke-linecap:round;transform:rotate(-90deg);transform-origin:70px 70px;transition:stroke-dashoffset .5s ease}.efficiency-gauge-good .gauge-progress{stroke:#5cf0c6}.efficiency-gauge-warning .gauge-progress{stroke:#ffd27d}.efficiency-gauge-danger .gauge-progress{stroke:#ff6186}.gauge-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.gauge-center strong{font-size:2rem}.gauge-center span{color:#8fa6d8}.efficiency-caption{font-size:.95rem;font-weight:600}.efficiency-caption-good{color:#5cf0c6}.efficiency-caption-warning{color:#ffd27d}.efficiency-caption-danger{color:#ff7c9b}.observatory-section{padding:18px}.observatory-section-danger{box-shadow:inset 0 0 0 1px #ff61862e}.observatory-section-title{display:flex;align-items:center;gap:8px;margin-bottom:14px;font-weight:700;font-size:1rem}.heatmap-list{display:grid;gap:12px}.heatmap-row{display:grid;gap:8px}.heatmap-meta{display:flex;justify-content:space-between;gap:8px;font-size:.88rem;color:#c3d3f5}.heatmap-track{height:12px;border-radius:999px;background:#ffffff0a;overflow:hidden}.heatmap-bar{height:100%;border-radius:999px;animation:heatmap-grow .7s ease}.heatmap-role-system,.heatmap-role-assistant{background:linear-gradient(90deg,#4180ff,#63a0ff)}.heatmap-role-user{background:linear-gradient(90deg,#00d6c9,#56f3e8)}.heatmap-role-tool,.heatmap-role-function{background:linear-gradient(90deg,#ffb86c,#ffd27d)}.heatmap-role-unknown{background:linear-gradient(90deg,#7b88aa,#a4b0cf)}.token-legend{display:flex;gap:16px;margin-bottom:12px;color:#9cb3df;font-size:.85rem}.token-legend span{display:inline-flex;gap:8px;align-items:center}.token-swatch{width:10px;height:10px;border-radius:999px;display:inline-block}.token-swatch-input{background:#4180ff}.token-swatch-output{background:#00d6c9}.token-bars{display:grid;gap:14px}.token-bar-row{display:grid;grid-template-columns:80px 1fr auto;gap:10px;align-items:center}.token-bar-track{height:10px;border-radius:999px;background:#ffffff0a;overflow:hidden}.token-bar{height:100%;border-radius:999px;animation:heatmap-grow .7s ease}.token-bar-input{background:linear-gradient(90deg,#4180ff,#63a0ff)}.token-bar-output{background:linear-gradient(90deg,#00d6c9,#56f3e8)}.analysis-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.issue-list{display:grid;gap:12px}.issue-card{padding:14px;border-radius:14px;border:1px solid rgba(255,255,255,.08)}.issue-card strong{display:block;margin-bottom:6px}.issue-card p{margin:0;color:#c3d3f5}.issue-card-good{background:#35d5ae17}.issue-card-warning{background:#ffbe5c17}.issue-card-danger{background:#ff61861a}.coaching-list,.duplicate-list{margin:0;padding-left:18px;display:grid;gap:8px;color:#dbe7ff}.observatory-actions{display:flex;gap:10px;padding:18px 22px 22px}.syntax-sse{color:#2ac3de}.syntax-key{color:#7aa2f7}.syntax-string{color:#9ece6a}.syntax-number{color:#ff9e64}.syntax-boolean{color:#c792ea}.observatory-empty{color:#8fa6d8}@keyframes heatmap-grow{0%{width:0;opacity:.4}to{opacity:1}}.data-table th{color:#8fa6d8;font-weight:600}.badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 10px;font-size:.82rem}.badge-ok{background:#35d5ae26;color:#5cf0c6}.badge-warning{background:#ffbe5c24;color:#ffd27d}.panel-wide{min-height:340px}.weekly-analytics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.weekly-analytics-card{min-height:0;padding:14px}.weekly-analytics-header{margin-bottom:8px}.weekly-analytics-section{display:grid;grid-template-rows:auto auto 1fr;grid-template-columns:1fr;min-height:200px;padding:10px;border-radius:14px;background:#070d1c47;border:1px solid rgba(255,255,255,.06);align-items:start;justify-items:center}.weekly-analytics-section .chart{height:148px;gap:5px;grid-row:3;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:center;justify-items:center;width:100%;align-self:center}.weekly-analytics-section .chart-empty{min-height:148px;grid-row:3}.weekly-analytics-section .chart-legend{gap:6px;margin-bottom:6px;grid-row:2}.weekly-analytics-section .chart-label{font-size:.78rem}.weekly-analytics-section .donut-card{min-height:180px;grid-template-columns:minmax(180px,220px) 1fr;gap:10px}.weekly-analytics-section .donut-wrap{max-width:180px}.weekly-compact-header{margin-bottom:6px;grid-row:1;align-self:start;justify-self:start}.weekly-compact-header h4{margin:0;font-size:.92rem}.weekly-compact-header span{font-size:.8rem}.welcome-pack-frame-wrap{background:#0f172cc7;border:1px solid rgba(255,255,255,.07);border-radius:20px;box-shadow:0 20px 40px #00000038;overflow:hidden;min-height:80vh}.welcome-pack-frame{width:100%;min-height:80vh;border:0;display:block;background:#04050a}@media (max-width: 1080px){.shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid rgba(255,255,255,.06)}.stats-grid,.weekly-analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.prompt-score-card{grid-template-columns:1fr}}@media (max-width: 720px){.content{padding:20px}.topbar{flex-direction:column}.stats-grid,.stats-grid-three,.weekly-analytics-grid,.observatory-hero,.analysis-grid,.metrics-grid,.token-bar-row{grid-template-columns:1fr}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal-content{background:linear-gradient(135deg,#1a1f3a,#2d3561);border:1px solid rgba(0,214,201,.2);border-radius:12px;padding:32px;max-width:600px;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #0006,0 0 40px #00d6c914;position:relative;animation:slideIn .3s cubic-bezier(.34,1.56,.64,1)}@media (max-width: 640px){.modal-content{margin:16px;max-width:calc(100% - 32px)}}.modal-close{position:absolute;top:12px;right:12px;background:transparent;border:none;color:#b9c8ea;font-size:28px;cursor:pointer;padding:4px 8px;transition:color .2s ease;line-height:1}.modal-close:hover{color:#00d6c9}.score-explanation-modal h2{margin:0 0 8px;font-size:1.6rem;color:#fff;background:linear-gradient(90deg,#00d6c9,#4180ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.modal-subtitle{color:#8fa6d8;font-size:.95rem;margin:0 0 24px;padding-bottom:16px;border-bottom:1px solid rgba(0,214,201,.1)}.modal-subtitle strong{color:#00d6c9;font-size:1.1rem}.explanation-section{margin-bottom:24px}.explanation-section h3{margin:0 0 12px;font-size:1.05rem;color:#fff}.explanation-section p{margin:0 0 12px;color:#b9c8ea;font-size:.95rem;line-height:1.5}.formula-box{background:#00d6c914;border:1px solid rgba(0,214,201,.2);border-radius:8px;padding:12px 14px;margin:12px 0}.formula-box code{font-family:Monaco,Courier New,monospace;font-size:.88rem;color:#00d6c9;word-break:break-all}.metric-indicator{background:#4180ff14;border-left:3px solid #4180ff;border-radius:6px;padding:10px 12px;margin-top:8px;display:flex;flex-direction:column;gap:4px}.metric-label{font-size:.85rem;color:#8fa6d8;font-weight:600}.metric-value{font-size:.9rem;color:#b9c8ea;font-style:italic}.importance-list,.tips-list{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:10px}.importance-list li,.tips-list li{margin:0;padding:10px 12px 10px 36px;position:relative;color:#b9c8ea;font-size:.93rem;line-height:1.4;background:#ffffff05;border-radius:6px}.importance-list li strong,.tips-list li strong{color:#fff}.importance-list li:before{content:"✓";position:absolute;left:10px;color:#00d6c9;font-weight:700}.tips-list li:before{content:"→";position:absolute;left:10px;color:#ffd27d}.tip-section{background:#ffd27d0f;border:1px solid rgba(255,210,125,.2);border-radius:8px;padding:16px;margin-top:24px}.tip-section h3{color:#ffd27d}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
