:root{color:#18201d;font-synthesis:none;text-rendering:optimizelegibility;background:#eef2ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100dvh;margin:0;overflow:hidden}button,input{font:inherit}a{color:inherit;text-decoration:none}.publicShell,.adminShell{background:linear-gradient(#f8faf8f0,#eef2effa),radial-gradient(circle at 25% 0,#d8efe5 0,#0000 42%),radial-gradient(circle at 80% 15%,#f7e6b8 0,#0000 34%);min-height:100dvh;overflow:auto}.publicTopBar,.adminTopBar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f8faf8eb;border-bottom:1px solid #ccd7d1;justify-content:space-between;align-items:center;gap:18px;min-height:66px;padding:0 22px;display:flex}.publicBrand{align-items:center;gap:10px;font-weight:820;display:flex}.publicBrand svg{color:#226a54;width:22px;height:22px}.publicIdentity{align-items:center;gap:9px;min-width:0;display:flex}.publicIdentity span,.publicIdentity strong{font-size:13px}.publicIdentity span{color:#46554e}.publicIdentity strong{color:#17231f;background:#edf3f0;border-radius:8px;padding:6px 8px;font-weight:800}.textButton svg,.primaryAction svg,.secondaryAction svg{width:17px;height:17px}.textButton{align-items:center;gap:7px;text-decoration:none;display:inline-flex}.textButton.ghost{background:#f4f7f5}.publicHome,.adminWorkspace{width:min(1180px,100% - 32px);margin:0 auto;padding:46px 0}.publicHero,.adminHero{grid-template-columns:minmax(0,1fr) minmax(340px,.74fr);align-items:center;gap:28px;display:grid}.heroCopy,.adminHero{min-width:0}.productSignal{color:#1d604d;background:#e2f2eb;border-radius:8px;width:fit-content;margin-bottom:16px;padding:7px 9px;font-size:13px;font-weight:800;display:inline-flex}.heroCopy h1,.adminHero h1{color:#16231e;letter-spacing:0;max-width:720px;margin:0;font-size:56px;line-height:1}.heroCopy p,.adminHero p{color:#4c5e55;max-width:660px;margin:18px 0 0;font-size:18px;line-height:1.55}.heroActions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.primaryAction,.secondaryAction{cursor:pointer;border:1px solid #226a54;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 16px;font-weight:800;display:inline-flex}.primaryAction{color:#fff;background:#226a54}.primaryAction:disabled{cursor:not-allowed;background:#9aac9f;border-color:#9aac9f}.primaryAction.compact,.secondaryAction.compact{min-height:38px;padding:0 12px;font-size:13px}.primaryAction.active{background:#6e4639;border-color:#6e4639}.secondaryAction{color:#22332c;background:#fff}.heroPreview{background:#fff;border:1px solid #c9d4ce;border-radius:8px;grid-template-rows:minmax(0,1fr) auto;gap:12px;min-height:360px;padding:12px;display:grid;box-shadow:0 24px 80px #21352d1f}.previewVideo{color:#f6faf7;background:linear-gradient(135deg,#142524eb,#233d37eb),repeating-linear-gradient(90deg,#243836 0 12px,#20312f 12px 24px);border-radius:8px;align-content:center;place-items:center;gap:10px;min-height:250px;display:grid}.previewVideo svg{width:54px;height:54px}.previewPeer{border:1px solid #dce6e1;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.previewPeer svg{color:#d58c34;width:20px;height:20px}.previewPeer span{color:#5f7067;font-size:13px}.previewPeer strong{color:#17231f;font-size:13px}.publicStats,.adminGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px;display:grid}.metricBlock,.adminCard{background:#ffffffdb;border:1px solid #cbd7d1;border-radius:8px;min-width:0;padding:14px}.metricBlock span,.adminCard span{color:#687a72;font-size:12px;font-weight:750}.metricBlock strong,.adminCard strong{color:#17231f;overflow-wrap:anywhere;margin-top:6px;font-size:18px;display:block}.publicRoom{grid-template-rows:auto minmax(0,1fr);gap:14px;height:calc(100dvh - 66px);min-height:0;padding:16px;display:grid}.roomHeader{background:#fff;border:1px solid #c9d4ce;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex}.roomHeader div{gap:3px;display:grid}.roomHeader span{color:#687a72;font-size:12px;font-weight:750}.roomHeader strong{color:#17231f}.publicCallGrid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;min-height:0;display:grid}.publicVideoPane{background:#17221f;border:1px solid #b9c6c0;border-radius:8px;min-width:0;min-height:0;position:relative;overflow:hidden}.publicVideoPane video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.peerPane{background:linear-gradient(135deg,#101b1fcc,#1c2f2bcc),repeating-linear-gradient(90deg,#243836 0 12px,#20312f 12px 24px)}.publicEmptyVideo,.peerMock{color:#edf5f1;text-align:center;align-content:center;place-items:center;gap:10px;display:grid;position:absolute;inset:0}.publicEmptyVideo svg,.peerMock svg{width:48px;height:48px}.peerMock strong{color:#b8c9c1;font-size:13px}.publicVideoLabel,.publicStatus{color:#1c2823;background:#f8faf8eb;border-radius:8px;padding:7px 10px;font-size:13px;font-weight:750;position:absolute;left:12px}.publicVideoLabel{bottom:12px}.publicStatus{top:12px}.publicStatus.danger{color:#842c1f;background:#fbe4df}.publicReactionStack{gap:8px;width:min(220px,100% - 24px);display:grid;position:absolute;top:12px;right:12px}.reactionChip{background:#fff6d9eb;border:1px solid #e5d6af;border-radius:8px;gap:2px;padding:9px;display:grid}.reactionChip span{color:#6a5a2d;font-size:12px}.reactionChip strong{color:#1f261f;font-size:13px}.reactionChip.steady{background:#eaf7efeb;border-color:#bad8c8}.reactionChip.settling{background:#e6f1f8eb;border-color:#b7ccdc}.dialogBackdrop{z-index:20;background:#08120f70;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.registerDialog{background:#fff;border:1px solid #d1ddd6;border-radius:8px;gap:14px;width:min(420px,100%);padding:18px;display:grid}.registerDialog h2{margin:0;font-size:24px}.registerDialog p{color:#5f7067;margin:7px 0 0;line-height:1.45}.registerDialog label{color:#46554e;gap:6px;font-size:13px;font-weight:750;display:grid}.registerDialog input{border:1px solid #b8c7bf;border-radius:8px;height:40px;padding:0 10px}.dialogActions{justify-content:flex-end;gap:10px;display:flex}.adminNav{gap:10px;display:flex}.adminNav a{background:#fff;border:1px solid #bdcbc4;border-radius:8px;padding:8px 10px;font-size:13px;font-weight:750}.adminHero{background:#fff;border:1px solid #c9d4ce;border-radius:8px;grid-template-columns:1fr;padding:22px}.adminHero .primaryAction{width:fit-content;margin-top:18px}.adminGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.adminCardIcon{color:#226a54;background:#e6f2ed;border-radius:8px;place-items:center;width:40px;height:40px;display:grid}.adminCardIcon svg{width:21px;height:21px}.adminCard p{color:#5f7067;margin:8px 0 0;font-size:13px;line-height:1.35}.appShell{grid-template-rows:auto minmax(0,1fr);height:100dvh;display:grid;overflow:hidden}.topBar{background:#f8faf8;border-bottom:1px solid #ccd7d1;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:0 20px;display:flex}.brand,.panelHeader,.toolbar,.consentPill,.meterLabel,.composer{align-items:center;display:flex}.brand{letter-spacing:0;gap:10px;font-weight:720}.brand svg,.panelHeader svg,.consentPill svg{width:20px;height:20px}.toolbar{gap:10px}.iconButton{color:#23302a;cursor:pointer;background:#fff;border:1px solid #b8c7bf;border-radius:8px;place-items:center;width:42px;height:42px;display:inline-grid}.iconButton:hover:not(:disabled){background:#eaf4ee}.iconButton:disabled{color:#96a49d;cursor:not-allowed}.iconButton.small{width:36px;height:36px}.iconButton.primary{color:#fff;background:#226a54;border-color:#226a54}.iconButton svg{width:19px;height:19px}.textButton{color:#23302a;cursor:pointer;background:#fff;border:1px solid #b8c7bf;border-radius:8px;min-height:34px;padding:0 10px;font-size:13px;font-weight:700}.textButton:hover{background:#eaf4ee}.consentPill{white-space:nowrap;background:#fff;border:1px solid #b8c7bf;border-radius:8px;gap:8px;min-height:42px;padding:0 12px}.consentPill label{align-items:center;gap:7px;font-size:14px;display:flex}.workspace{grid-template-columns:minmax(0,1fr) 360px;min-height:0;display:grid;overflow:hidden}.callGrid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-content:start;align-items:start;gap:14px;min-height:0;padding:16px;display:grid;overflow:hidden}.videoPane{aspect-ratio:16/9;background:#1b2421;border:1px solid #b9c6c0;border-radius:8px;justify-self:center;width:100%;min-width:0;max-width:calc(177.778dvh - 170.667px);height:auto;min-height:0;max-height:calc(100dvh - 96px);position:relative;overflow:hidden}.videoPane video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.roiBox{pointer-events:none;border:2px solid #f2c14e;border-radius:8px;transition:opacity .2s;position:absolute;box-shadow:0 0 0 999px #0000001a}.emptyState,.botStage{color:#e9f0ed;place-items:center;display:grid;position:absolute;inset:0}.emptyState{align-content:center;gap:12px}.emptyState svg{width:44px;height:44px}.videoLabel,.statusBadge{color:#1c2823;background:#f8faf8eb;border-radius:8px;padding:7px 10px;font-size:13px;font-weight:650;position:absolute;left:12px}.videoLabel{bottom:12px}.statusBadge{top:12px}.statusBadge.danger{color:#842c1f;background:#fbe4df}.reactionBadge{--badge-accent:#7da494;--badge-bg:#f7faf8;border:1px solid color-mix(in srgb, var(--badge-accent) 55%, #fff);background:var(--badge-bg);color:#17231f;border-radius:8px;place-items:center;gap:6px;min-width:82px;min-height:82px;padding:10px;display:grid;box-shadow:0 12px 32px #00000029}.reactionBadge.compact{z-index:2;background:color-mix(in srgb, var(--badge-bg) 88%, transparent);min-width:58px;min-height:58px;padding:7px;position:absolute;top:12px;right:12px}.reactionBadge.static{--badge-accent:#8f9b96;--badge-bg:#eef2ef}.reactionBadge.tuning{--badge-accent:#d2aa3a;--badge-bg:#fff6d9}.reactionBadge.steady{--badge-accent:#3f8069;--badge-bg:#eaf7ef}.reactionBadge.soft_lift{--badge-accent:#d58c34;--badge-bg:#fff0d7}.reactionBadge.quick_lift,.reactionBadge.surge{--badge-accent:#cc6f3b;--badge-bg:#ffeadc}.reactionBadge.peak{--badge-accent:#b95342;--badge-bg:#fde7e1}.reactionBadge.settling,.reactionBadge.cooldown{--badge-accent:#4f7fa4;--badge-bg:#e6f1f8}.badgeSymbol{letter-spacing:0;text-align:center;min-width:34px;font-size:30px;font-weight:820;line-height:1;display:block}.compact .badgeSymbol{min-width:26px;font-size:22px}.badgeDots{justify-content:center;gap:4px;display:flex}.badgeDots span{background:color-mix(in srgb, var(--badge-accent) 22%, #fff);border-radius:999px;width:6px;height:6px}.badgeDots span.on{background:var(--badge-accent)}.botPane{background:linear-gradient(135deg,#101b1fcc,#1c2f2bcc),repeating-linear-gradient(90deg,#243836 0 12px,#20312f 12px 24px)}.botStage{align-content:center;gap:24px}.botAvatar{color:#226a54;background:#f8faf8;border-radius:8px;place-items:center;width:118px;height:118px;display:grid;box-shadow:0 18px 50px #00000038}.botAvatar svg{width:58px;height:58px}.botPulse{opacity:.95;background:linear-gradient(90deg,#0000 0 4%,#83d6bd 4% 7%,#0000 7% 17%,#f2c14e 17% 22%,#0000 22% 100%) 0 0/150px 100%,linear-gradient(#36514c 49%,#89b7aa 50%,#36514c 51%) 0 0/100% 100%;width:min(340px,70%);height:80px;animation:1.8s linear infinite pulseLine}@keyframes pulseLine{0%{background-position:0 0,0 0}to{background-position:150px 0,0 0}}.sidePanel{border-left:1px solid #ccd7d1;grid-template-rows:auto minmax(0,1fr);gap:14px;min-height:0;padding:16px 16px 16px 0;display:grid;overflow:auto}.metricPanel,.chatPanel{background:#fff;border:1px solid #c9d4ce;border-radius:8px;padding:14px}.chatPanel{grid-template-rows:auto minmax(0,1fr) auto;gap:12px;min-height:0;display:grid}.panelHeader{gap:8px;font-weight:700}.badgePanel{align-items:center;gap:12px;margin-top:14px;display:flex}.badgeMeta{gap:3px;min-width:0;display:grid}.badgeMeta span{color:#697a72;font-size:12px}.badgeMeta strong{color:#18231e;overflow-wrap:anywhere;font-size:14px}.readiness{border-radius:8px;width:fit-content;margin-top:14px;padding:6px 9px;font-size:13px;font-weight:700}.readiness.good{color:#146244;background:#dff5e9}.readiness.warming{color:#765400;background:#fff0c8}.readiness.blocked{color:#842c1f;background:#f7ded9}.bpmReadout{letter-spacing:0;margin-top:12px;font-size:58px;font-weight:800;line-height:1}.bpmReadout.empty{color:#53635b;font-size:28px;line-height:1.15}.bpmUnit{color:#63736b;margin-top:4px;font-size:13px}.trendCard{background:#f8faf8;border:1px solid #d1ddd6;border-radius:8px;margin-top:14px;padding:10px}.trendCard.stable{background:#f3fbf6;border-color:#bcdcca}.trendCard.active{background:#fff8df;border-color:#edcb72}.trendCard.blocked{background:#fff1ee;border-color:#edc2ba}.trendLabel{color:#20312b;align-items:center;gap:7px;font-size:13px;font-weight:760;display:flex}.trendLabel svg{width:17px;height:17px}.trendGrid{grid-template-columns:repeat(auto-fit,minmax(58px,1fr));gap:8px;margin-top:10px;display:grid}.miniMetric{gap:2px;min-width:0;display:grid}.miniMetric span{color:#697a72;font-size:11px}.miniMetric strong{color:#18231e;font-size:16px;line-height:1.1}.meterRows{gap:12px;margin-top:18px;display:grid}.diagnosticPanel,.oscilloscopePanel{background:#fbfcfb;border:1px solid #d1ddd6;border-radius:8px;margin-top:12px;padding:10px}.diagnosticTitle{color:#26332e;align-items:center;gap:7px;font-size:13px;font-weight:750;display:flex}.diagnosticTitle svg{width:16px;height:16px}.historyStrip{flex-wrap:wrap;gap:5px;min-height:30px;margin-top:9px;display:flex}.historyStrip span,.historyEmpty{color:#26332e;text-align:center;background:#eaf1ed;border-radius:7px;min-width:28px;padding:5px 6px;font-size:12px;font-weight:700}.historyEmpty{color:#63736b;min-width:64px;font-weight:650}.methodRows{gap:6px;margin-top:9px;display:grid}.methodRow{color:#34443d;grid-template-columns:54px 42px minmax(0,1fr);align-items:center;gap:8px;font-size:12px;display:grid}.regionAgreement{border-top:1px solid #dbe5df;margin-top:10px;padding-top:10px}.regionAgreementHeader{color:#34443d;justify-content:space-between;align-items:center;gap:8px;font-size:12px;font-weight:750;display:flex}.regionAgreementHeader strong{color:#63736b;overflow-wrap:anywhere;text-align:right;min-width:0;font-size:12px}.regionRow{color:#34443d;grid-template-columns:68px 42px minmax(0,1fr);align-items:center;gap:8px;font-size:12px;display:grid}.methodRow strong,.regionRow strong{color:#18231e;font-size:14px}.methodRow small,.regionRow small{overflow-wrap:anywhere;color:#63736b;min-width:0}.methodEmpty,.selectionReason{color:#63736b;font-size:12px}.selectionReason{margin-top:9px;line-height:1.35}.groundTruthControls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin-top:10px;display:grid}.groundTruthControls label{color:#63736b;gap:5px;min-width:0;font-size:12px;display:grid}.groundTruthControls input{color:#17221e;background:#fff;border:1px solid #b8c7bf;border-radius:8px;width:100%;height:34px;padding:0 9px}.methodScopes{gap:7px;margin-top:10px;display:grid}.scopeButton{cursor:pointer;text-align:left;background:#fff;border:1px solid #d4ded9;border-radius:8px;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:8px;width:100%;min-width:0;padding:7px;display:grid}.scopeButton:hover{background:#f4faf6;border-color:#96b9a9}.scopeButton.selected{border-color:#226a54;box-shadow:inset 0 0 0 1px #226a54}.scopeButton.closest{background:#f3fbf6}.scopeMeta{gap:1px;min-width:0;display:grid}.scopeMeta span{color:#63736b;font-size:11px;font-weight:800}.scopeMeta strong{color:#18231e;font-size:17px;line-height:1.1}.scopeMeta small{overflow-wrap:anywhere;color:#63736b;font-size:11px}.scopeGraph{width:100%;height:42px;display:block;overflow:visible}.scopeGraph line{stroke:#e0e8e4;stroke-width:1px}.scopeGraph path{fill:none;stroke:#226a54;stroke-width:2px;vector-effect:non-scaling-stroke}.scopeButton.chrom .scopeGraph path{stroke:#805b19}.scopeButton.pos .scopeGraph path{stroke:#315f99}.scopeGraph text{fill:#87958e;text-anchor:middle;font-size:11px}.roiSource{color:#63736b;margin-top:12px;font-size:12px}.meter{gap:6px;display:grid}.meterLabel{color:#46554e;justify-content:space-between;font-size:13px}.meterTrack{background:#e5ebe8;border-radius:8px;height:8px;overflow:hidden}.meterTrack div{border-radius:inherit;background:#226a54;height:100%}.reasonList{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.reasonList span{color:#52615a;background:#eef2ef;border-radius:7px;padding:5px 7px;font-size:12px}.debugLogPanel{background:#fbfcfb;border:1px solid #d1ddd6;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding:10px;display:flex}.debugLogPanel>div:first-child{gap:3px;min-width:0;display:grid}.debugLogPanel span,.debugLogPanel small{color:#63736b;font-size:12px}.debugLogPanel strong{color:#18231e;font-size:14px}.debugLogPanel small{overflow-wrap:anywhere}.debugLogActions{flex-shrink:0;align-items:center;gap:7px;display:flex}.messages{flex-direction:column;gap:8px;min-height:0;padding-right:2px;display:flex;overflow:auto}.message{border-radius:8px;max-width:86%;padding:9px 10px;font-size:14px;line-height:1.35}.message.you{color:#fff;background:#226a54;align-self:flex-end}.message.bot{color:#24302b;background:#eef2ef;align-self:flex-start}.composer{gap:8px}.composer input{color:#17221e;border:1px solid #bac7c1;border-radius:8px;flex:1;min-width:0;height:38px;padding:0 11px}@media (width<=980px){body{overflow:auto}.publicTopBar,.adminTopBar{flex-direction:column;align-items:flex-start;padding:12px 16px}.publicIdentity,.adminNav{flex-wrap:wrap;width:100%}.publicHero,.adminHero{grid-template-columns:1fr}.heroCopy h1,.adminHero h1{font-size:42px}.publicStats,.adminGrid,.publicCallGrid{grid-template-columns:1fr}.publicRoom{height:auto;min-height:calc(100dvh - 66px)}.publicVideoPane{min-height:min(62dvh,420px)}.appShell{height:auto;min-height:100dvh;overflow:visible}.workspace{grid-template-columns:1fr;overflow:visible}.callGrid{overflow:visible}.sidePanel{border-left:0;grid-template-columns:1fr;padding:0 16px 16px;overflow:visible}}@media (width<=760px){.topBar{flex-direction:column;align-items:flex-start;height:auto;min-height:64px;padding:12px}.toolbar{justify-content:space-between;width:100%}.callGrid{grid-template-columns:1fr;padding:12px}.videoPane{max-width:100%;height:auto;min-height:0;max-height:42dvh}.reactionBadge.compact{min-width:50px;min-height:50px}.compact .badgeSymbol{font-size:19px}.consentPill{flex:1;justify-content:center}}
