:root{--bg:#00151d;--panel:#00212d;--line:#34505b;--text:#e6e9ed;--muted:#9baeb8;--accent:#32999c;--danger:#f4a5a5}
body{font-family:"Segoe UI",Arial,sans-serif;line-height:1.45;background:var(--bg)}
button{font-family:inherit;border-radius:4px;background:var(--accent);color:#fff;font-weight:600}
input,textarea{border-radius:4px;background:#00212d;border-color:#54707b;padding:10px;font-size:14px}
label{font-weight:500;color:#aabac3}
input:focus,textarea:focus{outline:1px solid #55b9bc;outline-offset:1px}
.card{border-radius:4px;border-color:var(--line);background:var(--panel)}
.notice{border-radius:4px;background:#073440;border-color:#30616c}
.guestPage{min-height:65vh}.guestCard{background:#00212d}.guestCard label{text-align:left}.sessionCode{text-align:left;color:#e5ecef}
.brand span{color:#5cc7c6}.codeInput{font-family:"Segoe UI",Arial,sans-serif;letter-spacing:9px}
.loginLink{border-radius:4px;color:#7cdddd}.previewNotice{font-size:12px;text-align:center}
.signedIn{overflow:hidden;background:#0f0f0f}
.signedIn>header{display:none}
.signedIn main{max-width:none!important;padding:0;margin:0;height:100vh}
.signedIn #dashboard{margin-left:74px;height:calc(100vh - 28px);position:relative}
.signedIn footer{display:none}
.signedIn #previewNotice,.signedIn #pilotNotice{position:fixed;bottom:0;left:74px;right:0;height:28px;z-index:20;padding:6px 12px;border:0;border-radius:0;margin:0;font-size:11px;line-height:16px;background:#07343b;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.signedIn.previewMode #pilotNotice{display:none}
.signedIn #message{position:fixed;bottom:32px;left:90px;right:20px;margin:0;min-height:0;z-index:30;font-size:13px;padding:0;background:#222b}
.signedIn #message:empty{display:none}
.signedIn #message:not(:empty){padding:10px 14px}
.signedIn .heading{display:none}
.signedIn[data-panel=users] .heading,.signedIn[data-panel=account] .heading,.signedIn[data-panel=audit] .heading{display:flex;margin:0;padding:14px 28px;background:#00151d;height:74px}
.signedIn .heading h1{font-size:24px;margin:0}
.signedIn #admin,.signedIn #accountPanel,.signedIn #auditPanel{margin:25px;max-width:1100px;max-height:calc(100vh - 145px);overflow:auto}
.appRail{position:fixed;left:0;top:0;bottom:0;width:74px;display:flex;flex-direction:column;gap:0;flex-wrap:nowrap;background:#000;z-index:25;margin:0;overflow-y:auto}
.railBrand{height:60px;display:flex;align-items:center;justify-content:center;background:#00232c;color:#fff;flex:0 0 60px}
.railBrand svg{width:42px;height:42px}
.appRail .tab{width:74px;min-height:78px;border:0;border-left:4px solid transparent;border-radius:0;padding:11px 5px;display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;background:#000;color:#b5b5b5;font-size:11px;font-weight:500;line-height:1.1}
.appRail .tab.active{background:#032c33;color:#36bcbd;border-left-color:#32999c}
.appRail .tab:disabled{opacity:.65;cursor:default}
.railGlyph{font-size:25px;line-height:1;height:27px}
.railGlyph svg{width:25px;height:25px}
.railBottom{margin-top:auto;padding:10px 0;display:flex;align-items:center;flex-direction:column;gap:5px;background:#001f28;border-radius:30px 30px 0 0}
.railBottom .tab{height:32px;min-height:32px;background:transparent;font-size:23px;padding:0;border:0}
#railAvatar{background:#349c9e;width:31px;height:31px;line-height:31px;border-radius:50%;text-align:center;color:#fff;font-size:15px}
.signedIn #dashboard .workspace{display:grid;grid-template-columns:clamp(250px,22vw,420px) minmax(340px,1fr) clamp(430px,31vw,680px);height:100%;gap:0;direction:ltr;align-items:stretch}
.workspace>section,.workspace>aside{direction:ltr;min-height:0;min-width:0;overflow:auto}
.signedIn .supportSidebar{background:linear-gradient(#00212b,#00151b);border:0;border-radius:0;padding:0 30px;margin:0;height:100%}
.supportSidebar h2{height:60px;margin:0 -30px;padding:9px 28px;font-size:30px;font-weight:400;background:#001a21}
.supportIntro{font-size:14px;color:#e5ebee;line-height:1.5;margin:18px 0 23px}
.supportSidebar .createButton{display:block;width:100%;margin:0 0 30px;padding:10px;font-size:14px}
.supportSidebar .groupButton{display:flex;justify-content:space-between;align-items:center;width:100%;border:0;text-align:left;padding:13px 15px;background:transparent;margin:8px 0;color:#d8e2e7;border-radius:4px;font-size:13px}
.supportSidebar .groupButton.active{background:#0d4149;color:white}
.supportSidebar .archiveGroup{color:#8eabb5;font-weight:400}
.sessionList{background:#101010}
.sessionToolbar{height:60px;background:#001217;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 20px;direction:ltr}
.sessionToolbar h2{font-size:19px;font-weight:400;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.toolbarActions{display:flex;align-items:center;gap:2px;flex-shrink:0}
.toolbarActions>button,.toolbarActions summary{background:transparent;border:0;border-radius:0;color:#dedede;font-size:13px;font-weight:400;padding:10px 7px;display:flex;align-items:center;gap:5px;white-space:nowrap;cursor:pointer}
.toolbarActions button svg{width:18px;height:18px}
.toolbarActions>button:disabled{opacity:.45;cursor:default}
.toolbarActions details{position:relative}
.toolbarActions details[open]{background:#10343c}
.toolbarActions details>button{position:absolute;z-index:15;right:0;top:100%;width:135px;border-radius:0;background:#193c45;font-size:12px;text-align:left}
.toolbarActions details>button+button{top:calc(100% + 37px)}
.toolbarActions summary{list-style:none}
.listToolbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;height:56px;background:#111;border:0;border-bottom:1px solid #292929;border-radius:0;padding:8px 16px;margin:0}
.listToolbar label{margin:0;font-size:0;width:260px;max-width:85%}
.listToolbar input{margin:0;border-radius:20px;font-size:13px;padding:8px 13px;background:#222;color:#eee;border-color:#737373;height:34px}
#compactCreate{display:none;font-size:12px;padding:7px 12px}
.workspace .sessionGrid{display:block;margin:0;overflow:auto}
.workspace .sessionRow{display:grid;grid-template-columns:22px minmax(90px,1fr) minmax(130px,43%);gap:12px;align-items:center;border:0;border-bottom:1px solid #000;border-radius:0;margin:0;padding:12px 17px;min-height:82px;background:#101010;cursor:pointer;direction:ltr}
.workspace .sessionRow.selected{background:#3c3c3c;border:0;border-bottom:1px solid #000}
.sessionRow input[type=checkbox]{appearance:none;display:block;width:16px;height:16px;padding:0;margin:0;border:1px solid #747474;border-radius:2px;background:transparent}
.sessionRow input[type=checkbox]:checked{background:#426268;border-color:#5f9ba2}
.sessionName{display:block;background:transparent;color:#f0f0f0;border:0;border-radius:0;padding:0;text-align:left;font-size:17px;font-weight:400;line-height:1.3;white-space:nowrap;max-width:100%;text-overflow:ellipsis;overflow:hidden}
.sessionRowText{min-width:0}
.sessionRow .hostLine{font-size:11px;color:#ececec;margin:3px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sessionRowStatus{min-width:0}
.peerStatus{border:0;gap:10px;padding:0;direction:ltr}
.peerSide{grid-template-columns:22px minmax(0,1fr);grid-template-rows:16px 6px;column-gap:8px;row-gap:0;flex:1;color:#a0a0a0;min-width:0}
.peerSide.connected{color:#37cf47}
.peerIcon{grid-row:1/3;height:24px;width:21px;align-self:center}
.peerIcon:before{width:9px;height:9px;left:6px;top:1px}
.peerIcon:after{width:19px;height:10px;left:1px;bottom:1px}
.peerIcon.expert{height:24px}
.peerIcon.expert:before{left:4px}
.peerIcon.expert:after{left:0}
.peerSide small{grid-column:2;grid-row:1;color:#dedede;align-self:end;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.peerLine{grid-column:2;grid-row:2;height:4px;margin:1px 0;border-radius:4px;background:currentColor}
.joinPending{font-size:10px!important;text-align:right;margin:4px 0 0!important;color:#f3d290;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.signedIn .detailPanel{padding:0;border:0;border-radius:0;background:#00212d;height:100%;margin:0;overflow:auto}
.detailHeading{height:60px;background:#00212d;padding:16px 18px}
.detailHeading h2{font-size:18px;margin:0;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.detailActions{display:none}
.detailShell{display:grid;grid-template-columns:52px minmax(0,1fr)!important;gap:0!important;direction:ltr;margin:0;min-height:calc(100% - 60px)}
.detailShell>*{direction:ltr}
.detailNav{display:flex;flex-direction:column;gap:0;background:#090c0e;align-items:stretch}
.detailNav button{height:48px;width:52px;padding:11px 12px;background:transparent;border:0;border-radius:0;color:#b7b9bc;font-size:12px;text-align:center;border-left:3px solid transparent}
.detailNav button.active{background:#06303b;color:#30b5b5;border-left-color:#30a6aa}
.detailNav button svg{width:24px;height:24px}
.srOnly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#detailContent{padding:22px 25px;min-width:0}
#detailContent h3{font-size:15px;color:#a8bdc8;margin:23px 0 12px;font-weight:600}
#detailContent label{font-size:13px;margin-bottom:19px;color:#aabfc9}
#detailContent input[type=text]{height:37px;font-size:14px;border-radius:4px}
#detailContent form>button[type=submit]{font-size:12px;padding:7px 12px}
#detailContent form>.muted{font-size:11px;color:#859eaa;line-height:1.5}
.checkLabel{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:400}
.checkLabel input[type=checkbox]{appearance:none;border:0;position:relative;background:#45606b;border-radius:20px;width:39px;height:21px;padding:0;margin:0;flex:0 0 39px;cursor:pointer}
.checkLabel input[type=checkbox]:before{content:'';display:block;width:17px;height:17px;border-radius:50%;background:#91a7b1;position:absolute;left:2px;top:2px;transition:left .12s}
.checkLabel input[type=checkbox]:checked{background:#0b606a}
.checkLabel input[type=checkbox]:checked:before{left:20px;background:#8fc1c5}
.inviteTabs{display:flex;justify-content:center;gap:4px;margin:20px 0 0;direction:ltr}
.inviteTabs button{background:transparent;border:0;border-radius:0;padding:7px 9px;color:#e6edf1;font-size:14px;font-weight:400}
.inviteTabs button.active{color:#36b4b6;border-bottom:3px solid #36a5a7}
.inviteBox{padding:25px 20px;background:#202020;border:1px solid #67757b;border-radius:0;min-height:165px}
.inviteBox .uuid{font-family:inherit;font-size:15px;color:#eef0f2;margin:7px 0 20px;text-align:center;direction:ltr}
.inviteBox .sessionCode{font-size:23px;letter-spacing:1px;text-align:center;border:1px solid #727272;border-radius:4px;background:#222;padding:7px;margin:0 0 12px;color:#f2f2f2}
.inviteBox button{font-size:12px}
.guestSummary{margin-top:35px}.guestSummary h3{color:#e5e8ed!important;font-size:17px!important;font-weight:400!important}.guestSummary p{font-style:italic;font-size:12px;line-height:1.6;color:#8ea5b0}
.facts{direction:ltr;grid-template-columns:minmax(105px,1fr) minmax(0,1.15fr);gap:10px 15px;font-size:12px}
.facts dt{font-weight:600;color:#a5bbc5}.facts dd{direction:ltr;color:#e2e7eb}
.emptyState{background:transparent;border:0;border-radius:0;padding:30px 0;font-size:14px;color:#95afb9;text-align:center;line-height:1.7}
.timelineEvent{border-right:0;border-left:2px solid #32999c;padding:8px 14px}
.note{border-color:#48616d}
#admin{background:#00212d}.inline{gap:20px}.inline label{margin-bottom:0}.row{direction:ltr}
dialog{background:#00212d;border-color:#62808b;border-radius:5px;font-family:inherit}dialog::backdrop{background:#000b}
.dialogHeading h2{font-weight:400}.joinStep{border-radius:4px;border-color:#5b6c75}
@media(max-width:1400px){.signedIn #dashboard .workspace{grid-template-columns:260px minmax(300px,1fr) 430px}.sessionToolbar{padding:0 12px}.sessionToolbar h2{font-size:16px}.toolbarActions>button,.toolbarActions summary{font-size:12px;padding:9px 5px}.workspace .sessionRow{gap:8px;padding:12px}.sessionName{font-size:15px}.supportSidebar h2{font-size:27px}.signedIn .supportSidebar{padding:0 20px}.supportSidebar h2{margin:0 -20px;padding-left:20px}}
@media(max-width:1100px){.signedIn #dashboard .workspace{grid-template-columns:minmax(280px,1fr) minmax(370px,45%)}.supportSidebar{display:none}.sessionList{grid-column:1}.detailPanel{grid-column:2!important}.signedIn #dashboard{margin-left:58px}.appRail,.appRail .tab{width:58px}.railBrand svg{width:34px}.appRail .tab{min-height:70px;font-size:10px}.signedIn #previewNotice,.signedIn #pilotNotice{left:58px}#compactCreate{display:block}.listToolbar{justify-content:space-between}.listToolbar label{width:200px}.toolbarActions>button svg{display:none}.toolbarActions{gap:0}#detailContent{padding:18px}.sessionToolbar h2{font-size:14px}.workspace .sessionRow{grid-template-columns:15px minmax(75px,1fr) minmax(120px,42%);gap:7px}.peerStatus{gap:6px}.peerSide{grid-template-columns:18px minmax(0,1fr);column-gap:5px}.peerSide small{font-size:8px}.sessionRow .hostLine{font-size:10px}}
@media(max-width:740px){.signedIn{overflow:auto}.signedIn #dashboard{height:auto;min-height:calc(100vh - 28px);padding-bottom:28px}.signedIn #dashboard .workspace{display:grid;grid-template-columns:minmax(0,1fr);height:auto}.sessionList{grid-column:1;height:auto;min-height:260px}.detailPanel{grid-column:1!important;min-height:600px}.detailShell{grid-template-columns:46px minmax(0,1fr)!important}.detailNav{flex-direction:column}.detailNav button{width:46px;height:46px;flex:none}.workspace .sessionRow{grid-template-columns:20px minmax(110px,1fr) minmax(140px,42%)}.peerSide small{font-size:9px}.sessionToolbar h2{font-size:16px}.toolbarActions button svg{display:block}.signedIn #admin,.signedIn #accountPanel,.signedIn #auditPanel{margin:15px}.signedIn .heading{padding:12px 15px!important}.signedIn .heading h1{font-size:20px}.signedIn #message{left:70px}.inviteBox{padding:20px 15px}}
.publicBackdrop{position:fixed;left:0;right:0;top:54px;bottom:0;width:100%;height:calc(100vh - 54px);object-fit:cover;z-index:0}.publicShade{position:fixed;inset:54px 0 0;background:#00000010;z-index:1;pointer-events:none}.signedIn .publicBackdrop,.signedIn .publicShade{display:none}.publicPage{min-height:100vh;overflow:hidden;background:#001c27}.publicPage[data-preset=night]{background:repeating-linear-gradient(0deg,transparent,transparent 69px,#ffffff05 70px),repeating-linear-gradient(90deg,transparent,transparent 69px,#ffffff05 70px),radial-gradient(ellipse at 65% 40%,#134951,#00111b 80%)}.publicPage[data-preset=teal]{background:linear-gradient(140deg,#002735,#164953 55%,#001c26)}.publicPage header{position:relative;z-index:3;height:54px;max-width:none;margin:0;padding:0 18px;background:#00222d;display:flex;align-items:center}.publicPage .brand{font-family:"Segoe UI",Arial,sans-serif;font-size:31px;font-weight:400;letter-spacing:0;display:flex;align-items:center;gap:10px;line-height:1;text-decoration:none}.publicPage .brand svg{width:38px;height:38px;color:#fff}.publicPage .brand span{color:#f4f7f8}.publicPage .loginLink{font-size:13px;border:0;color:#bfcbd1;padding:6px;background:transparent}.publicPage main{position:relative;z-index:2;padding:0;max-width:none;height:calc(100vh - 54px);margin:0}.publicPage .guestPage{height:100%;min-height:0;display:flex;align-items:center;justify-content:center;padding:25px;transform:translateY(-6vh)}.publicPage .guestCard{width:310px;max-width:calc(100vw - 35px);padding:17px 20px;background:#282828;border:0;border-top:4px solid #369d9f;border-radius:5px;text-align:left;box-shadow:0 5px 17px #0005;margin:0}.publicPage .guestCard h1{font-size:20px;font-weight:400;color:#349da0;margin:0 0 9px;white-space:nowrap;line-height:1.3}.publicPage .guestCard h1 strong{font-size:30px;font-weight:600}.publicPage .guestCard h1 span{font-size:19px}.publicPage #joinForm{display:flex;align-items:center;gap:8px}.publicPage .guestCard .codeInput{height:49px;margin:0;padding:7px 10px;width:100%;font-size:23px;letter-spacing:4px;background:#222;border:1px solid #767676;border-radius:4px}.publicPage .guestCard #joinForm button{height:42px;width:42px;min-width:42px;padding:0;border-radius:50%;font-size:27px;background:#606060;color:#ddd;font-weight:400}.publicPage #joinResult{font-size:11px;color:#d2dfdf;margin:8px 0 0}.publicPage #joinResult:empty{display:none}.publicPage #message{position:absolute;top:15px;left:20px;right:20px;background:#181818b0;padding:8px 12px;color:#ffb5b5;font-size:13px;text-align:center;margin:0;min-height:0;z-index:4}.publicPage #message:empty{display:none}.publicPage footer{display:none}.publicPage #previewNotice{position:fixed;left:0;right:0;bottom:0;z-index:10;height:25px;padding:5px 10px;margin:0;background:#061c24dd;border:0;border-radius:0;font-size:10px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.publicPage .loginCard{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:400px;max-width:calc(100vw - 40px);margin:0;border-radius:5px;background:#252525;border:0;border-top:4px solid #369d9f;padding:30px}.publicPage .loginCard input{background:#222;border-color:#6d6d6d}.publicPage .loginCard h1{font-size:26px;color:#eee}.publicPage .loginCard .eyebrow{display:none}.signedIn[data-panel=branding] .heading{display:flex;margin:0;padding:14px 28px;background:#00151d;height:74px}.signedIn #brandingPanel{margin:25px;max-width:1000px;max-height:calc(100vh - 145px);overflow:auto;padding:30px}#brandingPanel form{max-width:600px;margin-bottom:28px}#brandingPanel h3{margin:30px 0 14px;font-size:18px}select{display:block;width:100%;margin-top:8px;padding:11px;background:#00212d;color:var(--text);border:1px solid #54707b;border-radius:4px;font:inherit}.brandingPreview{margin:20px 0;background:#091b23;border:1px solid var(--line);max-width:600px}.brandingPreview img{display:block;width:100%;max-height:300px;object-fit:cover}.brandingPreview p{font-size:12px;padding:12px;margin:0;color:var(--muted)}#backgroundFile{font-size:12px}@media(max-width:620px){.publicPage .brand{font-size:24px}.publicPage .brand svg{width:30px;height:30px}.signedIn #brandingPanel{margin:15px;padding:20px}.publicPage .loginCard{padding:25px}}
.publicPage .brand #publicCompanyLogo{height:39px;max-width:150px;width:auto;object-fit:contain}.companyInitial{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:2px solid #ccd9df;font-size:25px!important;font-weight:600;color:#f4f7f8;flex:0 0 38px}#railCompanyLogo{width:48px;max-height:45px;object-fit:contain}#railLogoFallback{font-size:28px;font-weight:600;color:#eaf1f4}#logoPreview{max-width:220px;max-height:110px;object-fit:contain;margin:20px 0;padding:15px;border:1px solid var(--line);background:#09303c}
.publicPage .guestCard #joinForm button.ready{background:#329d9f;color:#f5ffff;opacity:1}.publicPage .guestCard #joinForm button:disabled{background:#606060;color:#c1c1c1;opacity:.8;cursor:default}
