:root{
  color-scheme:light;
  --bg:#f7f8fb;--surface:#fff;--surface-2:#f1f4f8;--ink:#111827;--muted:#667085;
  --line:#e4e7ec;--accent:#0f766e;--accent-2:#115e59;--accent-soft:#e6f4f1;
  --danger:#b42318;--warning:#b54708;--shadow:0 18px 50px rgba(16,24,40,.10);
  --radius:18px;--max:1180px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.55}
button,input,textarea{font:inherit}button,a{touch-action:manipulation}a{color:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:999;background:#fff;padding:.8rem 1rem;border-radius:10px}.skip-link:focus{top:1rem}
.site-header{height:72px;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100vw - var(--max))/2));background:rgba(247,248,251,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(228,231,236,.8)}
.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;font-weight:760;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#101828;color:#fff;font-size:.76rem}
.top-nav{display:flex;gap:.25rem;align-items:center}.top-nav a,.nav-account{border:0;background:transparent;text-decoration:none;color:#475467;padding:.55rem .75rem;border-radius:10px;cursor:pointer}.top-nav a:hover,.nav-account:hover{background:#fff;color:#101828}
main{min-height:calc(100vh - 72px)}.shell{width:min(var(--max),calc(100% - 40px));margin:0 auto}.hero{padding:88px 0 56px;display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:.45rem;color:var(--accent);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.09em}.dot-live{width:8px;height:8px;background:#12b76a;border-radius:99px;box-shadow:0 0 0 5px rgba(18,183,106,.12)}
h1,h2,h3{letter-spacing:-.04em;line-height:1.08;margin:0}h1{font-size:clamp(3rem,7vw,6rem);max-width:12ch;margin-top:1rem}h2{font-size:clamp(2rem,4vw,3.2rem)}h3{font-size:1.15rem}.lede{font-size:1.17rem;max-width:60ch;color:#475467;margin:1.35rem 0 0}.hero-actions{display:flex;gap:.8rem;margin-top:1.8rem;flex-wrap:wrap}.btn{appearance:none;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:12px;padding:.82rem 1.08rem;font-weight:700;text-decoration:none;cursor:pointer;transition:.15s ease;min-height:46px}.btn-primary{background:#101828;color:#fff}.btn-primary:hover{background:#1d2939;transform:translateY(-1px)}.btn-secondary{background:#fff;border-color:var(--line);color:#344054}.btn-secondary:hover{border-color:#cfd4dc;background:#fcfcfd}.btn-quiet{background:transparent;color:#475467}.btn-danger{background:#fff;color:var(--danger);border-color:#fecdca}.btn-small{min-height:38px;padding:.55rem .75rem;font-size:.9rem}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.hero-card{background:#101828;border-radius:28px;padding:22px;box-shadow:0 30px 70px rgba(16,24,40,.23);color:#fff;overflow:hidden}.mock-top{display:flex;justify-content:space-between;align-items:center;color:#d0d5dd;font-size:.88rem}.mock-timer{font-size:3rem;font-variant-numeric:tabular-nums;font-weight:760;letter-spacing:-.05em;margin:28px 0}.mock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.mock-person{aspect-ratio:4/3;border-radius:14px;background:linear-gradient(145deg,#344054,#1d2939);position:relative;overflow:hidden}.mock-person:before{content:"";position:absolute;width:34%;aspect-ratio:1;border-radius:50%;background:#667085;left:33%;top:20%}.mock-person:after{content:"";position:absolute;width:58%;height:48%;border-radius:50% 50% 18% 18%;background:#475467;left:21%;bottom:-15%}.mock-bottom{display:flex;gap:8px;margin-top:14px}.mock-pill{background:#1d2939;color:#d0d5dd;border-radius:999px;padding:.5rem .7rem;font-size:.8rem}
.stats-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:24px 0 72px}.stat{background:#fff;padding:24px}.stat strong{display:block;font-size:1.5rem;letter-spacing:-.03em}.stat span{color:var(--muted);font-size:.9rem}.section{padding:56px 0}.section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:24px}.section-head p{color:var(--muted);max-width:56ch;margin:.6rem 0 0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature-card,.room-card,.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px}.feature-icon{width:42px;height:42px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:800;margin-bottom:20px}.feature-card p,.room-card p{color:var(--muted);margin:.6rem 0 0}
.rooms-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.room-card{display:flex;flex-direction:column;gap:18px;min-height:220px}.room-meta{display:flex;align-items:center;justify-content:space-between;color:#667085;font-size:.9rem}.room-badge{display:inline-flex;border:1px solid var(--line);background:var(--surface-2);border-radius:999px;padding:.28rem .55rem}.room-card .btn{margin-top:auto;align-self:flex-start}.online{display:inline-flex;gap:.4rem;align-items:center}.online:before{content:"";width:7px;height:7px;background:#12b76a;border-radius:50%}
.page-head{padding:54px 0 24px}.page-head p{color:var(--muted);margin:.7rem 0 0}.auth-wrap{max-width:460px;margin:64px auto}.auth-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow)}.form-grid{display:grid;gap:16px;margin-top:22px}.field{display:grid;gap:7px}.field label{font-size:.9rem;font-weight:650;color:#344054}.field input,.field textarea{width:100%;border:1px solid #d0d5dd;background:#fff;border-radius:11px;padding:.75rem .82rem;outline:none;color:#101828}.field input:focus,.field textarea:focus{border-color:#5aa69e;box-shadow:0 0 0 4px rgba(15,118,110,.1)}.field small{color:#667085}.auth-switch{margin-top:18px;color:#667085;text-align:center}.error-box{background:#fef3f2;color:#b42318;border:1px solid #fecdca;padding:.75rem .9rem;border-radius:10px;margin-top:14px;display:none}.error-box.show{display:block}
.join-layout{display:grid;grid-template-columns:1fr 370px;gap:24px;padding-bottom:70px}.join-sidebar{position:sticky;top:94px;align-self:start}.choice-list{display:grid;gap:10px}.choice{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);background:#fff;padding:14px;border-radius:13px;cursor:pointer}.choice:hover{border-color:#98a2b3}.choice.selected{border-color:var(--accent);box-shadow:0 0 0 3px rgba(15,118,110,.08)}.choice input{accent-color:var(--accent)}
.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.metric{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}.metric .value{font-size:2rem;font-weight:760;letter-spacing:-.05em}.metric .label{color:#667085}.dashboard-main{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;margin-top:18px}.task-list{display:grid;gap:8px;margin-top:14px}.task-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f0f1f3}.task-row:last-child{border:0}.task-row.done .task-title{text-decoration:line-through;color:#98a2b3}.task-row input{accent-color:var(--accent);width:18px;height:18px}.task-title{flex:1}.task-add{display:flex;gap:8px}.task-add input{flex:1;border:1px solid var(--line);border-radius:10px;padding:.65rem .75rem}
.room-shell{width:min(1500px,calc(100% - 28px));margin:0 auto;padding:16px 0 22px}.room-topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin-bottom:14px}.room-title-wrap{display:flex;align-items:center;gap:10px}.room-title-wrap h1{font-size:1.1rem;margin:0}.room-status{font-size:.85rem;color:#667085}.timer-display{font-variant-numeric:tabular-nums;font-size:2rem;font-weight:760;letter-spacing:-.05em;text-align:center}.room-actions{justify-self:end;display:flex;gap:8px}.room-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px}.video-stage{background:#0c111d;border-radius:20px;min-height:calc(100vh - 178px);padding:12px;display:flex;flex-direction:column;overflow:hidden}.video-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;align-content:start;flex:1}.video-card{position:relative;aspect-ratio:4/3;background:#1d2939;border-radius:13px;overflow:hidden;color:#fff;min-width:0}.video-card video{width:100%;height:100%;object-fit:cover;display:block;transform:scaleX(-1)}.video-card.remote video{transform:none}.video-placeholder{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#344054,#1d2939 65%)}.avatar-initials{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#475467;font-weight:800}.video-info{position:absolute;left:8px;right:8px;bottom:8px;display:flex;justify-content:space-between;gap:8px;align-items:end}.video-label{background:rgba(16,24,40,.76);backdrop-filter:blur(7px);border-radius:8px;padding:.3rem .46rem;font-size:.78rem;max-width:80%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.goal-chip{position:absolute;left:8px;top:8px;background:rgba(16,24,40,.7);backdrop-filter:blur(6px);border-radius:8px;padding:.28rem .45rem;font-size:.72rem;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage-footer{display:flex;align-items:center;justify-content:center;gap:8px;padding-top:11px;flex-wrap:wrap}.control{width:44px;height:44px;border:1px solid #344054;background:#1d2939;color:#fff;border-radius:12px;cursor:pointer}.control.active{background:#fff;color:#101828}.control.leave{width:auto;padding:0 15px;background:#7a271a;border-color:#912018}.focus-goal{color:#d0d5dd;font-size:.82rem;margin-right:auto;padding-left:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40%}
.side-stack{display:grid;grid-template-rows:auto 1fr;gap:12px;min-height:calc(100vh - 178px)}.focus-panel,.chat-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;min-height:0}.focus-panel h3,.chat-panel h3{font-size:1rem}.focus-task{font-size:.95rem;color:#475467;margin:.6rem 0}.progress-track{height:8px;background:#eef2f6;border-radius:99px;overflow:hidden}.progress-bar{height:100%;background:var(--accent);width:0}.chat-panel{display:flex;flex-direction:column}.chat-messages{overflow:auto;display:flex;flex-direction:column;gap:10px;min-height:120px;flex:1;margin:12px -4px;padding:0 4px}.chat-message{font-size:.88rem}.chat-message .who{font-weight:700;color:#344054;margin-right:.3rem}.chat-message .when{font-size:.72rem;color:#98a2b3}.chat-message p{margin:.2rem 0 0;color:#475467;overflow-wrap:anywhere}.chat-compose{display:flex;gap:7px}.chat-compose input{min-width:0;flex:1;border:1px solid var(--line);border-radius:10px;padding:.62rem .7rem}.chat-compose button{border:0;border-radius:10px;background:#101828;color:#fff;padding:0 .8rem;cursor:pointer}
.room-loading{display:grid;place-items:center;min-height:60vh;text-align:center}.spinner{width:34px;height:34px;border:3px solid #e4e7ec;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 14px}@keyframes spin{to{transform:rotate(360deg)}}.network-banner{background:#fffaeb;border:1px solid #fedf89;color:#93370d;padding:.65rem .8rem;border-radius:11px;margin-bottom:10px;display:none}.network-banner.show{display:block}
.modal-backdrop{position:fixed;inset:0;background:rgba(16,24,40,.45);backdrop-filter:blur(4px);z-index:100;display:grid;place-items:center;padding:20px}.modal{width:min(420px,100%);background:#fff;border-radius:20px;padding:24px;box-shadow:var(--shadow)}.modal-actions{display:grid;gap:8px;margin-top:18px}.toast-region{position:fixed;right:18px;bottom:18px;z-index:200;display:grid;gap:8px}.toast{background:#101828;color:#fff;padding:.7rem .85rem;border-radius:10px;box-shadow:var(--shadow);max-width:320px;font-size:.9rem}
.empty{text-align:center;color:#667085;padding:28px}.muted{color:#667085}.inline{display:flex;gap:8px;align-items:center}.spacer{height:24px}.privacy-note{font-size:.82rem;color:#667085}.kicker{font-weight:700;color:#344054}.divider{height:1px;background:var(--line);margin:18px 0}
@media(max-width:1050px){.hero{grid-template-columns:1fr}.hero-card{max-width:720px}.feature-grid{grid-template-columns:1fr 1fr}.room-layout{grid-template-columns:1fr}.side-stack{min-height:auto;grid-template-columns:1fr 1fr;grid-template-rows:auto}.video-stage{min-height:62vh}.video-grid{grid-template-columns:repeat(3,1fr)}.join-layout,.dashboard-main{grid-template-columns:1fr}.join-sidebar{position:static}.join-layout .join-sidebar{order:-1}}
@media(max-width:700px){.site-header{height:64px;padding:0 14px}.brand span:last-child{display:none}.top-nav a{display:none}main{min-height:calc(100vh - 64px)}.shell{width:min(100% - 24px,var(--max))}.hero{padding:52px 0 38px;gap:34px}h1{font-size:clamp(2.8rem,16vw,4.4rem)}.stats-strip,.feature-grid,.rooms-grid,.dashboard-grid{grid-template-columns:1fr}.section{padding:38px 0}.page-head{padding:38px 0 18px}.auth-wrap{margin:28px auto}.room-shell{width:calc(100% - 12px);padding:8px 0}.room-topbar{grid-template-columns:1fr auto}.room-title-wrap{grid-column:1}.timer-display{grid-column:2}.room-actions{display:none}.video-stage{min-height:calc(100svh - 170px);border-radius:16px;padding:7px}.video-grid{grid-template-columns:repeat(2,1fr);gap:6px}.video-card{border-radius:10px}.side-stack{grid-template-columns:1fr}.chat-panel{min-height:300px}.focus-goal{display:none}.stage-footer{position:sticky;bottom:0}.room-layout{gap:8px}.top-nav{gap:0}.section-head{align-items:start;flex-direction:column}.join-layout{padding-bottom:35px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

.chat-panel > summary { cursor: pointer; font-weight: 700; list-style: none; display:flex; justify-content:space-between; align-items:center; }
.chat-panel > summary::-webkit-details-marker { display:none; }
.chat-panel[open] > summary { margin-bottom: .85rem; }

.participant-actions{position:absolute;right:8px;top:8px;display:flex;gap:5px;opacity:0;transition:opacity .15s ease}.video-card:hover .participant-actions,.video-card:focus-within .participant-actions{opacity:1}.participant-actions button{border:1px solid rgba(255,255,255,.24);background:rgba(16,24,40,.78);color:#fff;border-radius:7px;padding:.25rem .42rem;font-size:.68rem;cursor:pointer;backdrop-filter:blur(6px)}.participant-actions button:hover,.participant-actions button:focus-visible{background:#fff;color:#101828}.participant-actions button:disabled{opacity:.55;cursor:wait}@media(pointer:coarse){.participant-actions{opacity:1}}
