@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#101b2d;--ink:#18263b;--muted:#7d8999;--line:#e8edf2;--paper:#fff;--bg:#f5f7fa;--teal:#3d9e91;--teal-dark:#267c72;--soft:#eaf5f3}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:"DM Sans",sans-serif}button,input{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.welcome-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;padding:28px;background:radial-gradient(circle at 15% 15%,#203752 0,transparent 38%),radial-gradient(circle at 85% 90%,#1d5360 0,transparent 34%),var(--navy)}
.welcome-card{width:min(100%,440px);padding:48px 46px 38px;background:#fff;border-radius:22px;box-shadow:0 24px 80px #07111e66;text-align:center}.brand-mark{width:54px;height:54px;border-radius:17px;background:var(--navy);color:#fff;display:grid;place-items:center;font:800 26px Manrope;margin:0 auto 27px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--teal-dark);margin:0 0 12px}.welcome-card h1{font:800 38px Manrope;letter-spacing:-1.7px;margin:0}.welcome-card h1 span{color:var(--teal)}.welcome-copy{color:var(--muted);font-size:14px;margin:12px 0 30px}.welcome-card label{display:block;text-align:left;font-size:12px;font-weight:700;margin:0 0 8px}.welcome-card input{width:100%;height:48px;border:1px solid #dce4eb;border-radius:10px;padding:0 14px;outline:none}.welcome-card input:focus,.chat-form input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #3d9e911c}.primary-btn{width:100%;height:49px;border:0;border-radius:10px;background:var(--teal);color:white;font-weight:700;margin-top:14px;display:flex;align-items:center;justify-content:center;gap:18px;transition:.2s}.primary-btn:hover{background:var(--teal-dark);transform:translateY(-1px)}.privacy-note{font-size:10px;color:#8d98a6;margin:22px 0 0}.lock-icon{font-size:15px;margin-right:5px}.welcome-footer{position:absolute;bottom:24px;color:#ffffff70;font-size:9px;letter-spacing:2px}.welcome-footer span{padding:0 9px;color:#69b9ad}
.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);font:700 16px Manrope}.brand b{color:var(--teal)}.brand-mark.small{width:34px;height:34px;border-radius:11px;font-size:17px;margin:0}.room-status{font-size:12px;color:#69788a}.room-status i,.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#42b59e;margin-right:7px}.divider{padding:0 9px;color:#c5cbd2}.top-actions{display:flex;align-items:center;gap:14px}.icon-btn{border:1px solid var(--line);background:white;border-radius:9px;width:36px;height:36px;color:#637185;font-size:18px}.avatar{width:34px;height:34px;border-radius:50%;background:#d9eee9;color:#27786e;display:grid;place-items:center;font-weight:700;font-size:13px}.workspace{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 72px)}.sidebar{background:#fff;border-right:1px solid var(--line);padding:29px 16px;display:flex;flex-direction:column}.side-label,.card-kicker{font-size:9px;letter-spacing:1.6px;color:#91a0ae;font-weight:700}.side-label{padding:0 12px;margin:0 0 15px}.nav-item{height:43px;border:0;background:transparent;text-align:left;border-radius:8px;padding:0 12px;color:#758295;font-size:12px;margin-bottom:5px}.nav-item span{font-size:16px;margin-right:10px}.nav-item.active{background:var(--soft);color:var(--teal-dark);font-weight:700}.sidebar-bottom{margin-top:auto}.help-card{padding:15px;background:#f7f9fb;border:1px solid #edf1f4;border-radius:12px}.help-icon{color:var(--teal);font-size:18px;margin-bottom:10px}.help-card b{font-size:11px}.help-card p{font-size:10px;color:#8290a0;line-height:1.6;margin:6px 0 0}.sidebar-foot{text-align:center;font-size:8px;letter-spacing:1.4px;color:#a1acb8;margin-top:22px}.sidebar-foot span{color:var(--teal)}
.main-area{padding:31px 34px 50px;max-width:1600px;width:100%;margin:0 auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:25px}.page-heading h2{font:700 27px Manrope;letter-spacing:-.8px;margin:0}.subheading{font-size:12px;color:#8793a1;margin:7px 0 0}.lesson-date{font-size:11px;color:#8995a3;padding-bottom:4px}.room-grid{display:grid;grid-template-columns:minmax(330px,.9fr) minmax(420px,1.1fr);gap:18px;align-items:stretch}.meeting-card,.canvas-card,.chat-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.meeting-card,.canvas-card{padding:20px}.card-heading,.canvas-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:17px}.card-heading h3,.canvas-heading h3,.chat-title h3{font:700 16px Manrope;margin:6px 0 0}.secure-pill{font-size:9px;color:var(--teal-dark);background:var(--soft);padding:6px 9px;border-radius:20px}.video-stage{height:265px;background:linear-gradient(145deg,#182b42,#203d52);border-radius:10px;position:relative;display:grid;place-items:center;overflow:hidden}.video-placeholder{text-align:center;color:#dce7ee}.camera-symbol{width:48px;height:48px;border-radius:15px;background:#ffffff14;display:grid;place-items:center;margin:0 auto 13px;font-size:21px}.video-placeholder b{font-size:12px}.video-placeholder p{font-size:10px;color:#aabac7;margin-top:7px}.participant-chip,.waiting-chip{position:absolute;bottom:12px;display:flex;align-items:center;gap:7px;border-radius:7px;background:#0b1727aa;color:white;font-size:10px;padding:6px 8px}.participant-chip{left:12px}.waiting-chip{right:12px;color:#c7d7df}.waiting-chip i{width:6px;height:6px;border-radius:50%;background:#e8bb67}.avatar.mini{width:21px;height:21px;font-size:9px}.call-controls{display:flex;justify-content:center;gap:13px;padding:15px 0 2px}.call-control{border:0;background:transparent;color:#68778a;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:16px}.call-control small{font-size:9px}.call-control.off{color:#d56b6b}.call-control.end-call span{background:#fcebea;color:#c85c58;border-radius:50%;width:34px;height:34px;display:grid;place-items:center}.integration-note{font-size:9px;color:#a0aab5;text-align:center;margin:13px 0 0}.saved-label{font-size:9px;color:#78928d}.saved-label i{display:inline-block;width:6px;height:6px;background:#4aa58f;border-radius:50%;margin-right:5px}.canvas-toolbar{height:39px;border:1px solid #e9edf1;border-radius:8px 8px 0 0;display:flex;align-items:center;gap:5px;padding:0 9px;background:#fbfcfd}.canvas-toolbar button{height:26px;min-width:27px;border:0;background:transparent;border-radius:5px;color:#657487;font-size:11px}.canvas-toolbar button:hover{background:#eaf5f3;color:var(--teal-dark)}.toolbar-separator{height:17px;width:1px;background:#e0e6eb;margin:0 4px}.canvas-toolbar #clearBtn{margin-left:auto;color:#9a6570}.canvas-paper{height:258px;overflow:auto;border:1px solid #e9edf1;border-top:0;border-radius:0 0 8px 8px;padding:17px 20px;outline:none;font-size:12px;line-height:1.7;color:#526174}.canvas-paper:focus{box-shadow:inset 0 0 0 1px #80c5b8}.canvas-paper h2{font:700 18px Manrope;color:#24364b;margin:0 0 9px}.canvas-paper h3{font:700 12px Manrope;color:#34475c;margin:17px 0 5px}.canvas-paper p{margin:6px 0}.canvas-paper ul{padding-left:19px}.canvas-footer{display:flex;justify-content:space-between;font-size:9px;color:#a0aab5;padding-top:12px}.chat-card{margin-top:18px;padding:18px 20px}.chat-title{display:flex;justify-content:space-between;align-items:center}.chat-caption{font-size:9px;color:#a2acb6}.chat-messages{min-height:45px;max-height:130px;overflow:auto;padding:13px 0}.empty-chat{font-size:10px;color:#a0aab5}.chat-form{display:flex;gap:9px}.chat-form input{flex:1;border:1px solid #e3e9ee;border-radius:8px;padding:0 12px;height:39px;outline:none;font-size:11px}.chat-form button{width:39px;border:0;border-radius:8px;background:var(--teal);color:white;font-size:18px}.chat-bubble{font-size:11px;padding:7px 10px;background:#edf6f4;border-radius:8px;margin:4px 0;max-width:80%;width:fit-content}.chat-bubble b{font-size:9px;color:var(--teal-dark);display:block;margin-bottom:3px}.notes-box{max-width:650px;margin:60px auto;background:white;border:1px solid var(--line);border-radius:15px;padding:40px;text-align:center}.notes-icon{font-size:25px;color:var(--teal)}.notes-box h3{font:700 20px Manrope}.notes-box p{font-size:12px;line-height:1.8;color:#8491a0}.notes-box .primary-btn{max-width:220px;margin:22px auto 0}
@media(max-width:1050px){.workspace{grid-template-columns:175px 1fr}.room-grid{grid-template-columns:1fr}.video-stage{height:300px}.canvas-paper{height:280px}}
@media(max-width:700px){.topbar{height:60px;padding:0 15px}.room-status{display:none}.workspace{display:block;min-height:calc(100vh - 60px)}.sidebar{display:none}.main-area{padding:22px 13px 35px}.page-heading{align-items:flex-start}.page-heading h2{font-size:23px}.lesson-date{display:none}.room-grid{display:flex;flex-direction:column}.meeting-card,.canvas-card{padding:15px}.video-stage{height:225px}.canvas-paper{height:260px}.chat-card{padding:15px}.welcome-card{padding:38px 25px}.welcome-card h1{font-size:34px}.canvas-footer span:last-child{max-width:45%;text-align:right}.brand{font-size:14px}}
