/* Version 5: same visual language as the webinar, human-first preparation. */
.app-v5 .page-content {max-width:1320px;padding-top:38px;}
.app-v5 .app-header {padding-inline:max(28px,calc((100vw - 1320px)/2));}
.app-v5 .page-back {margin:0 0 22px;}
.prep-hero {position:relative;isolation:isolate;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:32px;padding:34px 38px 38px;border:1px solid #304274;border-radius:10px;background:linear-gradient(110deg,#111729 18%,#111b52 76%,#16269b);min-height:230px;}
.prep-hero-copy {position:relative;z-index:1;max-width:70%;}
.prep-hero h1 {font:500 clamp(32px,4vw,49px)/1.12 Oswald,sans-serif;text-transform:uppercase;margin:18px 0 12px;overflow-wrap:anywhere;}
.prep-hero p {font-size:14px;line-height:1.6;color:#b7c7e2;}
.prep-hero .eyebrow {color:#91a8f8;}
.prep-hero-actions {position:relative;z-index:1;display:flex;flex-direction:column;align-items:stretch;gap:10px;flex-shrink:0;}
.prep-hero-actions .primary {min-height:49px;padding-inline:22px;gap:24px;}
.prep-hero-actions .ghost {color:#bdccf3;font-size:12px;}
.prep-hero-actions small {color:#94a8d5;font-size:10px;text-align:center;}
.prep-facts {display:flex;gap:24px;flex-wrap:wrap;margin-top:24px;}
.prep-facts span {display:flex;gap:9px;align-items:center;color:#b1c1df;font-size:11px;}
.prep-facts .icon {width:16px;height:16px;color:#799cfb;}
.prep-hero-grid {pointer-events:none;position:absolute;z-index:0;inset:45% -20% -65%;transform:perspective(300px) rotateX(50deg);background-image:linear-gradient(#617dff24 1px,transparent 1px),linear-gradient(90deg,#617dff24 1px,transparent 1px);background-size:40px 30px;mask-image:linear-gradient(transparent,#000 40%);}
.prep-content {display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:24px;margin-top:28px;align-items:start;}
.prep-video-panel {background:#10141e;border:1px solid #2a344b;border-radius:10px;padding:28px 26px;}
.prep-video-panel>header {display:flex;justify-content:space-between;gap:20px;align-items:center;}
.prep-video-panel h2 {font:500 27px Oswald;text-transform:uppercase;margin:7px 0 0;}
.prep-count {white-space:nowrap;color:#98aac8;font-size:11px;}
.prep-count strong {font-size:22px;color:#fff;font-weight:500;}
.prep-intro {font-size:12px;color:#91a4c6;line-height:1.6;margin:15px 0 25px;max-width:500px;}
.prep-aside {display:grid;gap:18px;}
.prep-invite-card {padding:24px;border:1px solid #30406a;background:linear-gradient(145deg,#142242,#101629);border-radius:10px;}
.prep-aside-icon {display:grid;width:43px;height:43px;place-items:center;background:#223c87;color:#bbceff;border:1px solid #4160ad;border-radius:7px;margin-bottom:22px;}
.prep-aside h2 {font:500 22px Oswald;text-transform:uppercase;line-height:1.3;}
.prep-aside p {font-size:12px;line-height:1.7;color:#9eb1d2;margin:12px 0 18px;}
.prep-invite-card .secondary {width:100%;justify-content:center;gap:12px;background:#17294d;border-color:#3c5080;font-size:12px;}
.prep-prototype-note {padding:0 7px;color:#7f94b6;font-size:10px;line-height:1.6;}
.prep-prototype-note p {font-size:10px;}
.modal [data-form=gathering] {display:grid;gap:22px;}
.sr-only {position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.review-room .app-header {height:68px;padding:0 22px;}
.call-header-brand {display:flex;align-items:center;gap:24px;}
.call-header-brand>.ghost {border-left:1px solid #28334b;border-radius:0;padding-left:20px;}
.review-room .header-right {gap:13px;}
.review-room .room-body {min-height:0;display:grid;grid-template-columns:minmax(0,1fr);position:relative;}
.review-room .room-body.has-call-panel {grid-template-columns:minmax(0,1fr) 324px;gap:0;}
.review-room .media-toolbar {display:flex;justify-content:space-between;gap:20px;min-height:86px;flex:none;padding:12px 22px 9px;background:#0d111a;border-top:1px solid #2b3549;}
.call-controls {display:flex;justify-content:center;align-items:center;gap:12px;}
.review-room .media-toolbar .call-control {border:0;background:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:0;width:55px;max-width:none;padding:0;border-radius:0;color:#8fa6cc;font-size:9px;}
.call-control-icon {display:grid;place-items:center;width:43px;height:40px;background:#1a273d;border:1px solid #374968;border-radius:7px;}
.review-room .media-toolbar .call-control.on .call-control-icon {background:#253e80;border-color:#5d7cdd;color:#c2d4ff;}
.review-room .media-toolbar .call-control:hover .call-control-icon {border-color:#819fe8;}
.review-room .media-toolbar .call-control .icon {width:21px;height:21px;}
.review-room .media-toolbar .call-control.call-leave {color:#d88e97;}
.call-leave .call-control-icon {background:#39212b;border-color:#61333f;}
.call-connection {display:flex;align-items:center;gap:9px;color:#92a7ce;font-size:11px;min-width:150px;}
.call-connection>i {width:6px;height:6px;background:#5978ff;border-radius:50%;}
.call-connection small {display:block;margin-top:4px;color:#647da8;font-size:9px;}
.call-footer-note {min-width:150px;text-align:right;font-size:10px;color:#6c80a5;}
.call-panel {min-height:0;display:flex;flex-direction:column;border:1px solid #303c54;background:#10151e;border-radius:8px;margin:12px 14px 12px 0;overflow:hidden;}
.call-panel-tabs {display:flex;align-items:stretch;border-bottom:1px solid #2b364d;min-height:49px;flex:none;}
.call-panel-tabs button {font-size:11px;padding:9px 10px;display:flex;justify-content:center;align-items:center;gap:5px;flex:1;border:0;background:transparent;border-radius:0;color:#8fa5c8;}
.call-panel-tabs button.active {background:#1d2b4b;box-shadow:inset 0 -2px #4163ff;color:#b8cbff;}
.call-panel-tabs button>span {font-size:9px;background:#273b69;padding:2px 4px;border-radius:3px;}
.call-panel-tabs button:last-child {flex:0 0 34px;padding:6px;}
.call-panel-tabs .icon {width:16px;height:16px;}
.call-panel-body {min-height:0;flex:1;overflow:auto;padding:21px 18px;}
.call-panel h2 {font:600 14px Onest;margin:0 0 20px;}
.call-panel-title {display:flex;justify-content:space-between;gap:10px;}
.call-panel-title>span {font-size:10px;color:#728db9;}
.call-person {display:flex;gap:10px;align-items:center;padding:18px 0;border-bottom:1px solid #29334a;}
.call-person>.avatar {border-radius:6px;width:32px;height:34px;font-size:10px;background:#263552;flex:none;}
.call-person>div {flex:1;min-width:0;}
.call-person strong {font-size:11px;font-weight:500;line-height:1.5;display:block;overflow-wrap:anywhere;}
.call-person small {font-size:9px;color:#768aab;display:block;margin-top:4px;}
.call-person>.icon {width:15px;height:15px;color:#8498bc;flex:none;}
.call-person>.ghost {padding:0;min-height:30px;width:19px;}
.call-raised {color:#86a6ff;}
.call-panel footer {padding:15px 18px;font-size:9px;color:#7e94b9;border-top:1px solid #29334a;}
.call-panel-empty {display:grid;justify-items:center;text-align:center;gap:12px;padding:36px 12px;font-size:12px;color:#7f9ac7;}
.call-panel-empty>.icon {width:35px;height:35px;}
.call-messages article {background:#18243b;padding:13px 14px;border-radius:0 8px 8px;margin:12px 0;}
.call-messages article strong {font-size:10px;color:#9ab1d8;}
.call-messages article p {font-size:12px;line-height:1.6;margin-top:6px;white-space:pre-wrap;}
.call-chat-compose {padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:8px;border-top:1px solid #29334a;flex:none;background:#10151e;}
.call-chat-compose textarea {font-size:12px;min-height:60px;max-height:110px;resize:vertical;padding:10px;}
.call-chat-compose button {padding:8px;align-self:end;min-height:40px;}
.call-chat-compose small {grid-column:1/-1;font-size:9px;color:#7087ad;}
@media(max-width:1100px) {
 .prep-content {grid-template-columns:minmax(0,1fr) 250px;gap:18px;}
 .prep-hero {padding:28px;gap:24px;}
 .prep-video-panel {padding:23px 20px;}
 .call-footer-note {display:none;}
 .call-connection {min-width:130px;}
 .call-controls {gap:9px;}
 .review-room .room-body.has-call-panel {grid-template-columns:minmax(0,1fr) 285px;}
}
@media(max-width:800px) {
 .app-v5 .page-content {padding:28px 20px;}
 .prep-content {grid-template-columns:1fr;}
 .prep-aside {grid-template-columns:1fr 1fr;}
 .prep-prototype-note {grid-column:1/-1;}
 .prep-hero-copy {max-width:none;}
 .prep-hero {min-height:0;}
 .prep-hero-actions small {max-width:180px;line-height:1.5;}
 .review-room .room-body.has-call-panel {grid-template-columns:minmax(0,1fr);}
 .call-panel {position:absolute;z-index:12;inset:8px 9px;margin:0 0 0 auto;width:min(340px,calc(100% - 18px));box-shadow:-20px 0 50px #000b;}
 .call-connection {display:none;}
 .review-room .media-toolbar {justify-content:center;gap:0;}
 .review-room .app-header {height:59px;padding:0 12px;}
 .call-header-brand {gap:10px;}
 .call-header-brand>.ghost {padding-left:12px;min-height:32px;}
 .review-room .prototype-label {display:none!important;}
 .review-room .header-person {display:none;}
}
@media(max-width:520px) {
 .app-v5 .app-header {padding-inline:16px;}
 .app-v5 .app-header .header-right {gap:6px;}
 .app-v5 .page-content {padding:25px 16px;}
 .prep-hero {padding:25px 23px 24px;display:block;}
 .prep-hero h1 {font-size:35px;line-height:1.18;}
 .prep-hero p {font-size:12px;max-width:260px;}
 .prep-facts {gap:13px;margin-top:20px;}
 .prep-facts span {font-size:10px;}
 .prep-hero-actions {margin-top:26px;display:grid;grid-template-columns:1fr;}
 .prep-hero-actions .primary {min-height:47px;}
 .prep-hero-actions .ghost {min-height:35px;}
 .prep-hero-actions small {max-width:none;font-size:9px;}
 .prep-video-panel {padding:22px 16px;}
 .prep-video-panel h2 {font-size:24px;}
 .prep-count {font-size:9px;}
 .prep-count strong {font-size:19px;}
 .prep-intro {font-size:11px;margin-bottom:20px;}
 .prep-aside {grid-template-columns:1fr;}
 .prep-invite-card {padding:22px;}
 .prep-invite-card .prep-aside-icon {margin-bottom:16px;}
 .review-room .app-header {height:56px;}
 .review-room .app-header .brand-wordmark {width:119px;height:21px;}
 .review-room .app-header .brand-mark {width:29px;height:29px;}
 .review-room .app-header .brand small {font-size:5px;}
 .review-room .header-right {gap:0;}
 .review-room .header-right>.ghost {padding:7px;min-height:32px;}
 .review-room .media-toolbar {min-height:78px;padding:10px 4px 9px;}
 .call-controls {gap:3px;width:100%;justify-content:space-around;}
 .review-room .media-toolbar .call-control {width:42px;flex:0 0 42px;font-size:7px;gap:6px;}
 .call-control-icon {width:36px;height:36px;border-radius:6px;}
 .review-room .media-toolbar .call-control .icon {width:18px;height:18px;}
 .review-room .media-toolbar .toolbar-label {display:block;}
 .call-panel-body {padding:18px 15px;}
 .call-chat-compose textarea {font-size:16px;}
}
