/* Starbound sketched analytics workspace */
.controls{position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(23,5,61,.2);box-shadow:0 7px 0 rgba(23,5,61,.04)}
.controls label:nth-child(3) select{min-width:155px}
.signal-room{padding-top:70px}.signal-room .section-head{max-width:1240px;margin-left:auto;margin-right:auto}.signal-room .section-head h2{font-size:clamp(2.1rem,4vw,3.8rem)}
.analytics-shell{max-width:1240px;margin:0 auto;background:#f5e6ca;color:var(--ink);border:2px solid #f8edd8;border-radius:12px 9px 13px 10px;padding:22px;box-shadow:12px 14px 0 rgba(0,245,212,.11);position:relative;overflow:hidden}
.analytics-shell:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(23,5,61,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(23,5,61,.025) 1px,transparent 1px);background-size:25px 25px;mix-blend-mode:multiply}
.analytics-shell>*{position:relative;z-index:1}.analytics-topline{display:flex;justify-content:space-between;color:#71687a;font:700 .58rem Space Mono;letter-spacing:.08em;margin:2px 2px 14px}
.analytics-tabs{display:flex;gap:5px;border-bottom:1px solid rgba(23,5,61,.22);margin-bottom:18px}.analytics-tabs button{position:relative;border:0;background:transparent;padding:10px 14px 12px;color:#5f5966;font:700 .68rem Space Mono;text-transform:uppercase;cursor:pointer}.analytics-tabs button:after{content:"";position:absolute;left:9px;right:9px;bottom:-2px;height:4px;background:var(--aqua);transform:scaleX(0);transition:transform .2s}.analytics-tabs button.active{color:var(--space)}.analytics-tabs button.active:after{transform:scaleX(1)}
.analytics-view{display:none}.analytics-view.active{display:block}.analytics-card{background:rgba(255,250,240,.78);border:1.5px solid rgba(23,5,61,.35);border-radius:10px 8px 11px 7px;padding:16px;box-shadow:2px 3px 0 rgba(23,5,61,.06)}.analytics-card header{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:12px}.analytics-card header b,.analytics-card>b{display:block;font:700 .65rem Space Mono;text-transform:uppercase;letter-spacing:.05em}.analytics-card header small{display:block;color:var(--muted);font-size:.58rem;margin-top:2px}
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.kpi-grid article{min-height:102px;padding:13px 14px;border:1.5px solid rgba(23,5,61,.38);border-radius:9px 12px 8px 10px;background:rgba(255,250,240,.6);display:grid;grid-template-columns:42px 1fr;column-gap:9px;transform:rotate(var(--kpi-tilt,0deg))}.kpi-grid article:nth-child(1){--kpi-tilt:-.25deg}.kpi-grid article:nth-child(2){--kpi-tilt:.2deg}.kpi-grid article:nth-child(3){--kpi-tilt:-.1deg}.kpi-grid article:nth-child(4){--kpi-tilt:.3deg}.kpi-glyph{grid-row:1/4;width:40px;height:40px;border:2px solid #238e83;border-radius:50%;display:grid;place-items:center;color:#238e83;font:700 1.1rem Lexend}.kpi-glyph.violet{border-color:#7950ae;color:#7950ae}.kpi-glyph.blue{border-color:#397dae;color:#397dae}.kpi-glyph.pink{border-color:#b7477d;color:#b7477d}.kpi-grid small{font:700 .5rem Space Mono;text-transform:uppercase}.kpi-grid strong{font:600 1.65rem Lexend;line-height:1}.kpi-grid em{font-style:normal;color:#52505b;font-size:.55rem}
.overview-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:12px;margin-bottom:12px}.trend-card{min-height:360px}.mini-legend{display:flex;gap:12px;color:#665e6b;font-size:.54rem}.mini-legend span:before{content:"";display:inline-block;width:18px;margin-right:5px;border-top:2px solid #239f92;vertical-align:middle}.mini-legend .previous:before{border-color:#8b60ba;border-style:dashed}.trend-chart{width:100%;height:285px;overflow:visible}.chart-grid path{fill:none;stroke:#c8c1b8;stroke-width:1;stroke-dasharray:3 5}.trend-area{fill:rgba(62,184,169,.14)}.trend-current,.trend-previous{fill:none;stroke:#299e91;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.trend-previous{stroke:#8b60ba;stroke-width:2.5;stroke-dasharray:8 8}.trend-chart>circle{fill:#299e91;stroke:#fff6e5;stroke-width:3}.axis-labels text,.trend-note text{font:10px Space Mono;fill:#635c67}.trend-note rect{fill:#fff9ee;stroke:#26998c;stroke-width:1.5}
.changing-card{min-width:0}.changing-card .signal-list{gap:5px}.changing-card .signal-card{padding:11px 8px;border:0;border-bottom:1px solid rgba(23,5,61,.16);border-radius:0;background:transparent;color:var(--ink);grid-template-columns:27px 1fr auto;gap:8px}.changing-card .signal-card:hover,.changing-card .signal-card[aria-pressed="true"]{background:rgba(155,93,229,.09);border-color:var(--aqua);transform:translateX(3px)}.changing-card .signal-icon{width:25px;height:25px;font-size:.5rem;border-color:#2f8e86;color:#2f776f}.changing-card .signal-card h3{font-size:.7rem}.changing-card .signal-card p{display:none}.changing-card .signal-meta strong{font-size:.9rem}.changing-card .signal-meta span{color:#6f6872;font-size:.48rem}
.analytics-shell .validation-panel{padding:18px;background:rgba(255,250,240,.72);border:1.5px solid rgba(23,5,61,.35);box-shadow:none}.validation-detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.analytics-shell .validation-heading{margin:12px 0 7px}.analytics-shell .validation-heading strong{font-size:1.7rem}.analytics-shell .validation-panel h3{font-size:1.25rem}.analytics-shell .validation-story>p{font-size:.72rem;margin:7px 0}.analytics-shell .validation-beam{margin:10px 0;align-self:center}.validation-boundaries{display:grid;grid-template-columns:1fr 1fr;gap:9px}.analytics-shell .interpretation,.analytics-shell .boundary{margin:7px 0;background:rgba(255,255,255,.55)}.analytics-shell .primary{padding:10px 15px;margin-top:5px}
.journey-analytics-grid{display:grid;grid-template-columns:1fr 210px;gap:12px;margin-bottom:12px}.funnel-card{min-height:390px}.segment-chips{display:flex;gap:5px;flex-wrap:wrap}.segment-chips span,.map-toggle span{border:1px solid rgba(23,5,61,.3);border-radius:20px;padding:4px 8px;font:600 .55rem Space Mono}.segment-chips span:first-child,.map-toggle span:first-child{background:#d8f1e8;border-color:#65ad9f}.funnel-stages{height:285px;display:grid;grid-template-columns:1fr 35px 1fr 35px 1fr 35px 1fr;gap:4px;align-items:end;padding:15px 8px}.funnel-stages>div{height:100%;display:flex;flex-direction:column;justify-content:end;align-items:center}.funnel-stages small{font:700 .52rem Space Mono;text-transform:uppercase;text-align:center;min-height:32px}.funnel-stages i{display:block;width:78%;height:var(--stage);max-height:170px;background:var(--tone);border:2px solid #4d4356;border-radius:4px 7px 2px 5px;box-shadow:3px 4px 0 rgba(23,5,61,.09)}.funnel-stages strong{font:700 1rem Lexend}.funnel-stages span{font-size:.54rem;color:var(--muted)}.funnel-stages>b{align-self:center;color:#c84f8b;font:700 .58rem Space Mono;text-align:center}.validation-rail dl,.geo-validation dl{display:grid;gap:18px;margin-top:24px}.validation-rail dl div,.geo-validation dl div{padding-bottom:12px;border-bottom:1px solid rgba(23,5,61,.18)}.validation-rail dt,.geo-validation dt{font:700 .55rem Space Mono;text-transform:uppercase}.validation-rail dd,.geo-validation dd{margin:4px 0 0;color:#665f69;font-size:.67rem}.journey-trend{margin-bottom:12px}.journey-trend svg{width:100%;height:230px}.journey-trend .line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.line.teal{stroke:#2aa496}.line.violet{stroke:#8e62ba}.line.pink{stroke:#c8588d}.line.blue{stroke:#477eb6}.compact-boundaries{display:grid;grid-template-columns:1fr 1fr;gap:10px}.compact-boundaries .interpretation,.compact-boundaries .boundary{background:rgba(255,250,240,.7);margin:0}
.geo-grid{display:grid;grid-template-columns:1fr 220px;gap:12px;margin-bottom:12px}.geo-map-card{min-height:540px}.geo-map-card img{display:block;width:100%;height:470px;object-fit:contain;mix-blend-mode:multiply}.map-toggle{display:flex;gap:4px}.geo-legend ul{list-style:none;padding:0;margin:20px 0;display:grid;gap:14px}.geo-legend li{display:flex;align-items:center;gap:8px;font-size:.66rem}.geo-legend li i{width:13px;height:13px;border:1.5px solid var(--space);border-radius:50%}.teal-dot{background:#58c8b7}.violet-dot{background:#a17ac7}.pink-dot{background:#df78a8}.blue-dot{background:#70a8dd}.sage-dot{background:#91b77e}.intensity{margin-top:35px;font:700 .53rem Space Mono;text-transform:uppercase}.intensity>i{display:block;height:13px;margin:7px 0;background:linear-gradient(90deg,#eee9df,#8b858e);border:1px solid #625b66}.intensity small{display:flex;justify-content:space-between}.geo-lower-grid{display:grid;grid-template-columns:1.25fr .8fr .65fr;gap:12px;margin-bottom:12px}.segment-table table{width:100%;border-collapse:collapse;font-size:.62rem}.segment-table th,.segment-table td{text-align:left;padding:8px;border-bottom:1px solid rgba(23,5,61,.13)}.segment-table th{font:700 .5rem Space Mono;text-transform:uppercase}.segment-table td:nth-child(2){color:#248f84;font-size:1rem;letter-spacing:-.2em}.bubble-mix{height:170px;position:relative}.bubble-mix i{position:absolute;border:1.5px solid var(--space);border-radius:50%;display:grid;place-items:center;font:700 .72rem Lexend;font-style:normal}.b1{width:105px;height:105px;left:12%;top:28px;background:rgba(81,195,179,.72)}.b2{width:78px;height:78px;left:48%;top:12px;background:rgba(155,108,199,.7)}.b3{width:64px;height:64px;left:58%;top:91px;background:rgba(218,105,154,.72)}.b4{width:58px;height:58px;left:32%;top:105px;background:rgba(91,154,214,.72)}.b5{width:43px;height:43px;left:43%;top:73px;background:rgba(137,181,119,.8)}
@media(max-width:1000px){.overview-grid,.journey-analytics-grid,.geo-grid{grid-template-columns:1fr}.validation-rail,.geo-legend{display:none}.geo-lower-grid{grid-template-columns:1fr 1fr}.geo-validation{grid-column:1/-1}.validation-detail-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.controls{position:relative}.analytics-shell{padding:12px}.analytics-topline span:last-child{display:none}.analytics-tabs{overflow-x:auto}.analytics-tabs button{white-space:nowrap;padding:9px}.kpi-grid,.validation-boundaries,.compact-boundaries,.geo-lower-grid{grid-template-columns:1fr}.overview-grid{display:block}.trend-card{margin-bottom:10px;min-height:300px}.trend-chart{height:225px}.funnel-stages{grid-template-columns:1fr 22px 1fr 22px 1fr 22px 1fr;padding:8px 0}.funnel-stages i{width:90%}.geo-map-card{min-height:400px}.geo-map-card img{height:330px}.geo-validation{grid-column:auto}.analytics-shell .signal-card{grid-template-columns:27px 1fr auto}.analytics-shell .signal-meta{grid-column:auto;text-align:right;display:block}.bubble-card{min-height:240px}}
