@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Manrope:wght@500;600;700;800&display=swap');
:root{--bg:#07101f;--panel:#0e1a2f;--panel2:#14223a;--text:#f6f8ff;--muted:#98a8c4;--line:#223656;--primary:#7c6cff;--accent:#19d3ad;--danger:#ff6577;--warning:#ffca58;--shadow:0 18px 60px rgba(0,0,0,.28);--radius:22px}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,sans-serif;background:radial-gradient(circle at 8% 0%,#14254b 0,transparent 30%),var(--bg);color:var(--text)}body{min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}
.logo{display:flex;align-items:center;gap:12px;font-family:Manrope,sans-serif;font-weight:800;font-size:20px}.logo-mark{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),#9b5cff);box-shadow:0 10px 28px rgba(124,108,255,.35);font-size:19px}.muted{color:var(--muted)}.small{font-size:12px}.hidden{display:none!important}
.btn{border:0;border-radius:14px;padding:12px 16px;font-weight:750;background:#1a2943;color:white;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px}.btn:hover{filter:brightness(1.08)}.btn-primary{background:linear-gradient(135deg,var(--primary),#8c56ee);box-shadow:0 9px 24px rgba(124,108,255,.22)}.btn-accent{background:linear-gradient(135deg,#13bb98,var(--accent));color:#032b25}.btn-danger{background:#40202b;color:#ff98a5;border:1px solid #6e2b39}.btn-ghost{background:transparent;border:1px solid var(--line)}.btn-sm{min-height:36px;padding:8px 11px;border-radius:11px;font-size:13px}.btn-block{width:100%}
.input,.textarea,.select{width:100%;background:#0a1528;border:1px solid var(--line);color:white;border-radius:14px;padding:12px 14px;outline:none}.textarea{min-height:110px;resize:vertical}.input:focus,.textarea:focus,.select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(124,108,255,.14)}label{display:grid;gap:7px;color:#d6deef;font-size:13px;font-weight:650}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .span-2{grid-column:1/-1}
.card{background:linear-gradient(180deg,rgba(20,34,58,.95),rgba(13,25,45,.95));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:20px}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:#0b1629;padding:7px 10px;border-radius:999px;color:#cbd6e8;font-size:12px}.dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.dot.green{background:var(--accent);box-shadow:0 0 0 4px rgba(25,211,173,.1)}.dot.yellow{background:var(--warning)}.dot.red{background:var(--danger)}
.toast-wrap{position:fixed;right:16px;bottom:16px;display:grid;gap:10px;z-index:9999}.toast{background:#12213a;border:1px solid var(--line);padding:12px 15px;border-radius:14px;box-shadow:var(--shadow);max-width:360px}.toast.error{border-color:#6a2d3d}.toast.ok{border-color:#1e6f5d}
.public-nav{max-width:1180px;margin:auto;padding:20px;display:flex;align-items:center;justify-content:space-between}.hero{max-width:1180px;margin:0 auto;padding:68px 20px 90px;display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(42px,6vw,78px);line-height:.98;margin:18px 0;letter-spacing:-.055em}.gradient-text{background:linear-gradient(120deg,#fff 25%,#b9adff 60%,#75f0d4);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{font-size:18px;line-height:1.7;color:#b8c5db;max-width:650px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.mock-phone{min-height:520px;border-radius:36px;background:linear-gradient(145deg,#0d1730,#17284a);border:1px solid #2c4775;padding:14px;box-shadow:0 35px 90px rgba(0,0,0,.4);transform:rotate(2deg)}.mock-screen{height:100%;min-height:490px;border-radius:26px;background:linear-gradient(160deg,#f8f7ff,#e9edff);color:#10152a;padding:24px;display:grid;grid-template-rows:auto 1fr auto;gap:18px}.mock-status{display:flex;justify-content:space-between;align-items:center}.mock-slide{background:linear-gradient(135deg,#1d1b48,#5848cd);color:#fff;border-radius:24px;padding:30px;display:flex;flex-direction:column;justify-content:center}.mock-slide h3{font-size:34px;margin:0 0 12px}.mock-controls{display:flex;gap:10px;justify-content:center}.mock-controls span{background:#111b34;color:white;padding:10px 18px;border-radius:12px}
.features{max-width:1180px;margin:0 auto 80px;padding:0 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature{padding:24px}.feature-icon{font-size:28px}.feature h3{font-family:Manrope;margin:14px 0 7px}.feature p{color:var(--muted);line-height:1.6}
.auth-page{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-shell{width:min(980px,100%);display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.auth-brand{padding:44px;background:linear-gradient(145deg,#1b2c55,#392d7d);display:flex;flex-direction:column;justify-content:space-between;min-height:600px}.auth-brand h1{font-family:Manrope;font-size:42px;line-height:1.05}.auth-card{padding:44px;background:#0d192e}.auth-card h2{font-family:Manrope;font-size:30px;margin:20px 0 8px}.auth-form{display:grid;gap:14px;margin-top:24px}
.app-shell{min-height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr)}.sidebar{border-right:1px solid var(--line);background:rgba(6,14,27,.9);backdrop-filter:blur(16px);padding:20px 14px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.sidebar .logo{padding:4px 8px 22px}.nav-list{display:grid;gap:6px}.nav-btn{width:100%;border:0;background:transparent;color:#aebbd0;border-radius:13px;padding:11px 12px;text-align:left;font-weight:650}.nav-btn.active,.nav-btn:hover{background:#15243e;color:white}.sidebar-footer{margin-top:auto;padding:12px 8px;display:grid;gap:10px}.main{min-width:0}.topbar{height:74px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 26px;position:sticky;top:0;background:rgba(7,16,31,.84);backdrop-filter:blur(18px);z-index:20}.main-content{padding:26px;max-width:1500px;margin:auto}.page-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.page-title h1{font-family:Manrope;font-size:30px;margin:0}.page-title p{margin:7px 0 0;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{padding:19px}.stat .n{font-family:Manrope;font-size:34px;font-weight:800;margin-top:8px}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.section{margin-top:22px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-head h2{font-family:Manrope;font-size:20px;margin:0}.presentation-card{overflow:hidden}.presentation-cover{aspect-ratio:16/9;background:linear-gradient(135deg,#302b78,#7b5feb);padding:24px;display:flex;flex-direction:column;justify-content:flex-end}.presentation-cover h3{font-family:Manrope;font-size:24px;margin:0}.presentation-meta{padding:15px}.presentation-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:720px}.table th,.table td{text-align:left;padding:13px;border-bottom:1px solid var(--line);font-size:13px}.table th{color:#8396b4;text-transform:uppercase;font-size:11px;letter-spacing:.06em}.status{font-size:11px;padding:6px 9px;border-radius:999px;background:#162640;border:1px solid var(--line);display:inline-flex;align-items:center;gap:6px}.status.live{color:#64efcf;border-color:#246b5c}.status.ended{color:#aab6c9}.empty{padding:50px 20px;text-align:center;color:var(--muted)}
.modal-backdrop{position:fixed;inset:0;background:rgba(1,5,12,.72);display:grid;place-items:center;padding:18px;z-index:100}.modal{width:min(660px,100%);max-height:90vh;overflow:auto;padding:24px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.modal-head h2{margin:0;font-family:Manrope}.icon-btn{width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:#12203a;color:white}
.editor-layout{display:grid;grid-template-columns:240px minmax(0,1fr) 320px;gap:14px;min-height:calc(100vh - 128px)}.slides-rail,.inspector{padding:14px;max-height:calc(100vh - 130px);overflow:auto}.slide-thumb{aspect-ratio:16/9;border:2px solid transparent;background:#172643;border-radius:12px;padding:10px;margin-bottom:10px;cursor:pointer;overflow:hidden}.slide-thumb.active{border-color:var(--primary)}.slide-thumb h4{font-size:12px;margin:0}.slide-stage-wrap{display:grid;place-items:center;min-height:550px}.slide-stage{width:min(100%,960px);aspect-ratio:16/9;border-radius:22px;background:linear-gradient(135deg,#25205e,#7657e8);padding:clamp(24px,5vw,60px);box-shadow:0 25px 80px rgba(0,0,0,.45);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.slide-stage.vertical{aspect-ratio:9/16;max-height:72vh;width:auto}.slide-kicker{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#c6bdff}.slide-stage h1{font-family:Manrope;font-size:clamp(32px,5vw,64px);line-height:1.04;margin:12px 0}.slide-stage p{font-size:clamp(16px,2vw,24px);line-height:1.45;color:#e3e2fb}.slide-stage ul{font-size:clamp(15px,1.6vw,21px);line-height:1.65}.inspector-form{display:grid;gap:13px}.template-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.template-btn{border:1px solid var(--line);background:#0d1930;color:#ced8e8;border-radius:12px;padding:11px;text-align:left;font-size:12px}
.live-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:#030815}.live-top{padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #17253e;background:#081225}.live-stage-area{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 310px;min-height:0}.live-stage-wrap{display:grid;place-items:center;padding:20px;overflow:hidden}.live-stage{width:min(1100px,100%);aspect-ratio:16/9;border-radius:24px;background:linear-gradient(135deg,#25205e,#7657e8);position:relative;overflow:hidden;padding:clamp(28px,5vw,65px);display:flex;flex-direction:column;justify-content:center;box-shadow:0 25px 90px rgba(0,0,0,.45)}.live-stage h1{font-family:Manrope;font-size:clamp(34px,5.6vw,72px);line-height:1;margin:10px 0}.live-stage p,.live-stage li{font-size:clamp(17px,2vw,25px);line-height:1.55}.live-side{border-left:1px solid #17253e;padding:14px;background:#071022;overflow:auto}.live-bottom{padding:12px 16px;border-top:1px solid #17253e;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;background:#081225}.tool-btn{border:1px solid #223658;background:#0f1c32;color:white;border-radius:12px;min-width:46px;height:44px;padding:0 12px;font-weight:700}.tool-btn.primary{background:var(--primary);border-color:transparent}.tool-btn.danger{background:#3a1822;border-color:#6b2b3a}.viewer-row{padding:10px;border:1px solid #1c2d4a;border-radius:12px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}.chat-box{display:flex;flex-direction:column;height:310px}.chat-messages{flex:1;overflow:auto;display:grid;align-content:start;gap:8px;padding:6px}.chat-msg{padding:8px 10px;border-radius:11px;background:#12213b;font-size:12px}.chat-send{display:flex;gap:6px}.chat-send input{min-width:0}.pointer{position:absolute;width:22px;height:22px;border:3px solid #ffda52;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 0 6px rgba(255,218,82,.16);z-index:12}.annotation-layer{position:absolute;inset:0;pointer-events:none}.screen-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;z-index:15}.screen-badge{position:absolute;top:14px;left:14px;z-index:18;background:#000b;padding:8px 10px;border-radius:10px}
.viewer-page{min-height:100vh;background:#020611}.invite-screen{min-height:100vh;display:grid;place-items:center;padding:20px}.invite-card{width:min(600px,100%);padding:30px;text-align:center}.invite-avatar{width:74px;height:74px;border-radius:25px;margin:0 auto 18px;background:linear-gradient(135deg,var(--primary),#aa62ef);display:grid;place-items:center;font-size:30px}.invite-card h1{font-family:Manrope;font-size:34px}.consent{background:#0b172b;border:1px solid var(--line);padding:14px;border-radius:14px;text-align:left;font-size:12px;color:#aebbd0;line-height:1.55}.viewer-live{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto}.viewer-header{height:58px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;background:#071024;border-bottom:1px solid #17263f}.viewer-stage-wrap{display:grid;place-items:center;padding:12px;min-height:0}.viewer-stage{width:min(1200px,100%);aspect-ratio:16/9;border-radius:20px;background:linear-gradient(135deg,#25205e,#7657e8);position:relative;overflow:hidden;padding:clamp(22px,6vw,70px);display:flex;flex-direction:column;justify-content:center}.viewer-stage h1{font-family:Manrope;font-size:clamp(34px,7vw,76px);line-height:1.02;margin:10px 0}.viewer-stage p,.viewer-stage li{font-size:clamp(16px,3vw,26px);line-height:1.55}.viewer-footer{padding:10px 14px;background:#071024;border-top:1px solid #17263f;display:flex;justify-content:space-between;align-items:center;gap:8px}.read-only-nav{display:flex;gap:8px}.ended-banner{background:#16283f;color:#d5e1f1;padding:8px 12px;border-radius:12px;font-size:12px}.viewer-chat-drawer{position:fixed;right:12px;bottom:74px;width:min(360px,calc(100vw - 24px));height:380px;z-index:30;padding:12px}.connection-badge{font-size:11px;display:flex;align-items:center;gap:7px}
@media(max-width:1050px){.editor-layout{grid-template-columns:190px minmax(0,1fr)}.inspector{grid-column:1/-1;max-height:none}.live-stage-area{grid-template-columns:1fr}.live-side{display:none}.stats{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.hero{grid-template-columns:1fr;padding-top:38px}.mock-phone{min-height:410px;transform:none}.mock-screen{min-height:380px}.features{grid-template-columns:1fr}.auth-shell{grid-template-columns:1fr}.auth-brand{display:none}.auth-card{padding:28px 20px}.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:0;right:0;bottom:0;top:auto;height:66px;z-index:50;border-right:0;border-top:1px solid var(--line);padding:8px;display:block}.sidebar .logo,.sidebar-footer{display:none}.nav-list{grid-template-columns:repeat(5,1fr);gap:3px}.nav-btn{font-size:11px;text-align:center;padding:8px 3px;white-space:nowrap;overflow:hidden}.main-content{padding:18px 14px 90px}.topbar{height:62px;padding:0 14px}.page-title{align-items:center}.page-title h1{font-size:24px}.page-title p{display:none}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:14px}.stat .n{font-size:28px}.grid-2,.grid-3{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.editor-layout{display:block}.slides-rail{display:flex;gap:8px;overflow:auto;max-height:none}.slide-thumb{min-width:140px;margin:0}.slide-stage-wrap{min-height:430px;padding:8px 0}.inspector{margin-top:12px}.live-top{padding:9px}.live-top .logo span:last-child{display:none}.live-stage-wrap{padding:8px}.live-stage{border-radius:16px}.live-bottom{padding:8px;gap:5px}.tool-btn{min-width:42px;padding:0 9px;font-size:12px}.viewer-stage-wrap{padding:6px}.viewer-stage{border-radius:14px}.viewer-footer{padding:8px}.public-nav{padding:16px}.hero h1{font-size:48px}}
