:root{--brand:#2e3192;--green:var(--brand);--coral:#ef4136;--ink:#20213d;--muted:#66677d;--line:#e4e4f0;--pale:#f0f0fb;--red:#b72820;--radius:20px;--shadow:0 12px 38px #26266b08}
*{box-sizing:border-box}body{margin:0;background:#f8f8fc;color:var(--ink);font:14px/1.65 'Avenir Next','Segoe UI',Tahoma,system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--coral);outline-offset:4px}button,a,input,select,textarea{touch-action:manipulation}button{transition:background .16s,box-shadow .16s,transform .16s}a:hover{text-decoration:underline;text-underline-offset:4px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--brand);color:#fff;padding:12px 20px;z-index:200}.skip-link:focus{top:12px}
.topbar{min-height:100px;padding:20px max(5%,calc((100vw - 1340px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:22px;flex-shrink:0}.brand:hover{text-decoration:none}.brand-logo{display:block;width:150px;height:auto}.brand-product{border-inline-start:1px solid #dcdcec;padding-inline-start:22px;color:var(--brand);font-size:23px;font-weight:700;line-height:1.2;letter-spacing:-.8px}.brand-product>span{display:block;font-size:8px;font-weight:650;letter-spacing:2px;margin-top:6px;color:var(--muted)}nav{display:flex;align-items:center;gap:14px;font-size:12px}.owner-link{display:inline-flex;align-items:center;gap:8px;border:1px solid #dcdcf0;border-radius:10px;padding:10px 16px;color:var(--brand);font-weight:650;background:#f6f6fd}.owner-link:before{content:'↗';font-size:17px;color:var(--coral)}.owner-link:hover,.owner-link[aria-current=page]{background:var(--brand);color:#fff;text-decoration:none}.subtle{border:1px solid var(--line);background:white;padding:10px 14px;border-radius:10px;color:var(--brand);font-weight:600}.subtle:hover{background:var(--pale)}
main{max-width:1280px;margin:auto;padding:52px 36px 70px;min-height:calc(100vh - 185px)}.booking-hero{position:relative;padding-inline-start:22px;max-width:800px}.booking-hero:before{content:'';position:absolute;inset-inline-start:0;top:7px;width:4px;height:45px;background:var(--coral);border-radius:4px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--brand);font-weight:700;text-transform:uppercase}h1{font-size:clamp(32px,4vw,51px);font-weight:700;line-height:1.17;letter-spacing:-2px;margin:13px 0 18px;color:var(--brand)}h2{font-weight:700;font-size:22px;letter-spacing:-.6px;line-height:1.35}h3{font-size:15px;font-weight:700}.lead{color:var(--muted);font-size:14px;max-width:610px;line-height:1.9;margin-bottom:0}.booking-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:32px;margin-top:36px}.host-card{background:var(--brand);color:white;border-radius:var(--radius);padding:32px 28px;align-self:start;position:sticky;top:25px;overflow:hidden;box-shadow:0 14px 32px #2e31921c}.host-card:after{content:'';position:absolute;width:140px;height:140px;border:25px solid #ffffff08;border-radius:50%;inset-inline-end:-65px;top:-60px;pointer-events:none}.host-avatar{height:72px;width:84px;display:grid;place-items:center;background:#fff;border-radius:16px;margin-bottom:28px;box-shadow:0 4px 14px #1111290a}.host-avatar img{width:58px;height:48px;object-fit:contain}.host-card .eyebrow{color:#d1d2ff;font-size:9px;letter-spacing:2.5px}.host-card h2{font-size:24px;margin:10px 0 12px;color:#fff}.host-card p{font-size:12px;color:#e0e0fa;line-height:1.9}.facts{display:grid;gap:17px;margin:26px 0;padding:24px 0;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25;font-size:12px;color:white}.facts>span{display:flex;gap:12px;align-items:center}.fact-icon{width:30px;height:30px;flex-shrink:0;display:grid;place-items:center;background:#ffffff15;border-radius:9px;color:#fff;font-size:17px;font-style:normal}.small-note{font-size:11px!important;color:#d2d3ff!important}.step-row{display:flex;gap:22px;margin:0 0 19px;color:#74758a;font-size:11px}.step-row>span{display:flex;align-items:center}.step-row .active{color:var(--brand);font-weight:700}.step-row b{display:inline-grid;place-items:center;border:1px solid #dcdced;background:#fff;border-radius:50%;height:27px;width:27px;font-weight:600;margin-inline-end:8px}.step-row .active b{background:var(--coral);border-color:var(--coral);color:#fff;box-shadow:0 3px 9px #ef413624}.booking-panel{border:1px solid var(--line);border-radius:var(--radius);background:white;box-shadow:var(--shadow);padding:30px;min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.panel-heading h2{margin:0;color:var(--brand)}.timezone{font-size:10px;background:var(--pale);border:1px solid #e1e1f5;padding:6px 11px;border-radius:8px;color:var(--brand);white-space:nowrap}.calendar-time{display:grid;grid-template-columns:minmax(240px,1fr) 165px;gap:24px;margin-top:30px}.month-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;font-size:14px;font-weight:700;color:var(--ink)}.arrows{display:flex;gap:7px}.arrows button{background:white;border:1px solid var(--line);border-radius:8px;width:32px;height:32px;color:var(--brand);font-size:20px}.arrows button:hover{background:var(--pale)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}.weekday{font-size:10px;color:#75768c;margin-bottom:9px}.day{width:100%;height:44px;min-height:40px;border:0;background:#fff;border-radius:10px;color:var(--brand);font-size:12px;font-weight:600}.day:hover:enabled{background:var(--pale)}.day.selected{background:var(--brand);color:#fff;box-shadow:0 4px 10px #2e319225}.day.today:not(.selected){box-shadow:inset 0 0 0 1px var(--coral);color:#c33027}.day:disabled{color:#8e8e9e;opacity:.6}.time-list{display:grid;gap:8px;max-height:330px;overflow:auto;align-content:start;padding:3px}.time-date{font-size:11px;font-weight:650;margin:0 0 12px;color:var(--brand)}.time-button{padding:11px 8px;background:white;border:1px solid #dcdcf0;border-radius:9px;color:var(--brand);font-size:12px;font-weight:600}.time-button:hover{background:var(--pale);border-color:var(--brand)}.time-button.selected{background:var(--brand);color:white;border-color:var(--brand)}.empty{font-size:12px;line-height:1.9;color:var(--muted);padding:17px;background:#f6f6fc;border:1px dashed #ddddef;border-radius:12px;margin:0}.panel-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.panel-footer small{font-size:11px;color:var(--muted)}.primary,.secondary,.danger{border:1px solid transparent;padding:12px 19px;border-radius:10px;font-size:12px;font-weight:650;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px}.primary{background:var(--brand);color:#fff;box-shadow:0 4px 12px #2e31921c}.primary:hover:enabled{background:#212473;box-shadow:0 6px 18px #2e319229}.secondary{background:var(--pale);color:var(--brand);border-color:#e2e2f3}.secondary:hover{background:#e4e4f9}.danger{color:var(--red);background:#fff0ef;border-color:#f9dcd9}.primary:hover,.secondary:hover,.danger:hover{text-decoration:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.full{grid-column:1/-1}label{display:block;font-size:12px;font-weight:650}input:not([type=checkbox]),select,textarea{display:block;margin-top:8px;width:100%;padding:12px 13px;border:1px solid #dcdcea;border-radius:10px;background:#fcfcff;color:var(--ink);font-size:13px;min-height:46px}input:hover,select:hover,textarea:hover{border-color:#b6b7dc}input::placeholder,textarea::placeholder{color:#848498}textarea{min-height:90px;resize:vertical}.form-note{font-size:11px;color:var(--muted);font-weight:400;margin:6px 0}.check-label{display:flex;gap:10px;align-items:flex-start;font-size:11px;font-weight:400;color:var(--muted);line-height:1.9}.check-label input{accent-color:var(--brand);margin-top:4px;width:17px;height:17px;flex-shrink:0}.error{color:var(--red);font-size:12px;white-space:pre-line}.error:empty{display:none}.summary-pill{background:var(--pale);color:var(--brand);padding:15px 18px;border-radius:10px;margin:22px 0;font-size:12px;border-inline-start:3px solid var(--coral)}.success{text-align:center;padding:30px 15px}.success-icon{width:64px;height:64px;border-radius:50%;background:var(--pale);color:var(--brand);font-size:28px;display:grid;place-items:center;margin:auto}.success p{font-size:13px;color:var(--muted);line-height:1.9}.success a{margin-top:10px}
.owner-page{background:radial-gradient(ellipse at 50% 5%,#eaeafb 0,transparent 55%),#f8f8fc}.login-card{max-width:480px;margin:20px auto;background:white;padding:38px;border:1px solid var(--line);border-top:4px solid var(--coral);border-radius:var(--radius);box-shadow:0 20px 60px #2e319210}.account-mark{width:70px;height:55px;object-fit:contain;margin-bottom:26px}.login-card h1{font-size:36px;letter-spacing:-1.3px}.login-card>.note{margin-bottom:26px}.login-card form{display:grid;gap:20px}.login-card form>.primary{margin-top:4px}.account-back{display:block;text-align:center;font-size:12px;color:var(--muted);margin-top:24px}.admin-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-header h1{font-size:38px}.admin-nav{display:flex;gap:8px;border-bottom:1px solid var(--line);padding:12px 0 18px;margin-bottom:26px;overflow:auto}.admin-nav button{background:transparent;border:1px solid transparent;padding:11px 18px;border-radius:10px;font-size:12px;white-space:nowrap;color:var(--muted);min-height:44px}.admin-nav button.active{background:var(--brand);color:#fff;font-weight:650;box-shadow:0 4px 12px #2e31921a}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.stat{background:white;border:1px solid var(--line);border-radius:16px;padding:23px 25px;box-shadow:var(--shadow);position:relative;overflow:hidden}.stat:before{content:'';position:absolute;top:0;inset-inline-start:0;height:100%;width:3px;background:var(--brand)}.stat:nth-child(2):before{background:var(--coral)}.stat strong{font-weight:700;font-size:36px;display:block;color:var(--brand);line-height:1.4}.stat span{font-size:12px;color:var(--muted)}.admin-card{padding:28px;background:white;border:1px solid var(--line);border-radius:16px;margin-bottom:24px;box-shadow:var(--shadow)}.admin-card>h2{color:var(--brand);margin-top:0}.booking-row{padding:22px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:14px}.booking-row h3{margin:0;font-size:14px}.booking-row p{font-size:12px;color:var(--muted);margin:6px 0;overflow-wrap:anywhere}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.actions>*{font-size:11px;padding:9px 12px}.badge{font-size:10px;font-weight:650;border-radius:6px;padding:4px 9px;background:#ededf4;color:#5e5e73;display:inline-block;margin-inline-start:8px}.badge.pending{background:#fff1ec;color:#9d3227}.badge.approved{background:#ececfc;color:var(--brand)}.weekly-row{display:grid;grid-template-columns:145px 1fr 1fr;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}.weekly-row input{margin:0}.weekly-row label{display:flex;gap:10px;align-items:center}.weekly-row input[type=checkbox]{accent-color:var(--brand);width:16px;height:16px}.schedule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.schedule-grid label{font-size:12px}.preview{background:var(--pale);padding:24px;border:1px solid #d7d7ef;border-inline-start:4px solid var(--coral);border-radius:12px;margin:22px 0}.preview pre{white-space:pre-wrap;font-size:12px;max-height:300px;overflow:auto;color:var(--brand)}.event-row{padding:14px 0;border-top:1px solid var(--line);font-size:12px;display:flex;justify-content:space-between;gap:20px}.event-row time{font-size:11px;color:var(--muted)}.note{font-size:12px;line-height:1.9;color:var(--muted)}footer{max-width:1208px;margin:auto;border-top:1px solid var(--line);padding:25px 0;display:flex;justify-content:space-between;gap:15px;font-size:11px;color:var(--muted)}footer>span:first-child{font-weight:700;color:var(--brand)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--brand);color:white;box-shadow:0 8px 30px #2e319230;padding:15px 24px;border-radius:12px;max-width:90vw;opacity:0;pointer-events:none;font-size:12px;transition:opacity .2s;z-index:100}#toast.visible{opacity:1}.loading{padding:70px;text-align:center;color:var(--muted)}
.room-layout{display:grid;grid-template-columns:1fr 290px;gap:22px}.stage{min-height:430px;background:#202154;border:1px solid #36377a;border-radius:var(--radius);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.stage>video{width:100%;height:430px;object-fit:contain}.stage .local-video{position:absolute;bottom:15px;right:15px;width:160px;height:110px;object-fit:cover;border:3px solid white;border-radius:12px;background:#33346f}.stage-placeholder{position:absolute;text-align:center;color:#e5e5fc;pointer-events:none}.stage-placeholder .host-avatar{margin:0 auto 18px;width:90px;height:80px}.controls{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;padding:20px}.chat{background:white;border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;padding:22px;min-height:430px}.chat h3{color:var(--brand)}.messages{flex:1;overflow:auto;max-height:350px;font-size:12px;display:flex;flex-direction:column;gap:10px;overflow-wrap:anywhere}.messages p{background:var(--pale);padding:12px;border-radius:10px;margin:0;white-space:pre-wrap}.chat form{display:flex;gap:7px;margin-top:15px}.chat input{margin:0;min-width:0}.chat button{padding:8px}.status-line{font-size:12px;color:var(--muted);margin:15px 0}.hidden{display:none!important}[dir=rtl] h1,[dir=rtl] .eyebrow{letter-spacing:0}[dir=rtl] .brand{direction:ltr}[dir=rtl] .calendar-grid{direction:rtl}[dir=rtl] .brand-product{border-inline-start:1px solid #dcdcec}
@media(max-width:1050px){.booking-layout{grid-template-columns:240px minmax(0,1fr);gap:24px}.booking-panel{padding:24px}.calendar-time{grid-template-columns:1fr;gap:20px}.time-list{grid-template-columns:repeat(3,1fr);max-height:200px}.time-list .empty{grid-column:1/-1}.host-card{padding:27px 23px}.room-layout{grid-template-columns:1fr}.chat{min-height:250px}.messages{min-height:130px}.weekly-row{grid-template-columns:120px 1fr 1fr}footer{margin:0 36px}.brand-logo{width:145px}.brand-product{font-size:21px}}
@media(max-width:650px){.topbar{min-height:88px;padding:16px 18px;gap:12px;flex-wrap:wrap}.brand{gap:12px}.brand-logo{width:125px}.brand-product{font-size:18px;padding-inline-start:12px}.brand-product>span{font-size:6px;letter-spacing:1px}nav{gap:8px;font-size:11px}.owner-link{padding:8px 10px}.owner-link:before{display:none}.subtle{padding:8px 10px;font-size:11px}main{padding:30px 18px 42px}h1{font-size:35px;letter-spacing:-1.3px}.booking-hero{padding-inline-start:17px}.eyebrow{font-size:9px;letter-spacing:1.5px}.lead{font-size:13px}.booking-layout{grid-template-columns:1fr;gap:25px;margin-top:28px}.host-card{position:relative;padding:23px}.host-card .host-avatar{width:64px;height:58px;float:inline-start;margin:0;margin-inline-end:16px}.host-card .host-avatar img{width:46px;height:38px}.host-card h2{font-size:21px;margin:4px 0}.host-card>p{margin:8px 0}.host-card>.eyebrow{padding-top:5px}.facts{clear:both;grid-template-columns:1fr 1fr;gap:13px;margin:22px 0 0;padding:18px 0 0;border-bottom:0}.facts>span{font-size:10px;gap:8px}.fact-icon{width:25px;height:25px;font-size:15px}.small-note{display:none}.booking-panel{padding:23px 18px}.panel-heading{gap:8px}.panel-heading h2{font-size:19px}.timezone{font-size:9px;padding:5px 8px}.form-grid{grid-template-columns:1fr}.calendar-time{margin-top:24px}.day{aspect-ratio:1.2}.time-list{grid-template-columns:repeat(3,1fr)}.step-row{gap:12px;font-size:10px}.step-row b{width:24px;height:24px;margin-inline-end:6px}.stats{gap:10px}.stat{padding:17px 14px}.stat strong{font-size:27px}.stat span{font-size:10px}.booking-row{grid-template-columns:1fr}.schedule-grid{grid-template-columns:1fr 1fr}.weekly-row{grid-template-columns:90px 1fr 1fr;gap:9px}.weekly-row label{font-size:11px}.weekly-row input{font-size:12px;padding:9px 5px}.admin-card{padding:22px 17px}.admin-header h1{font-size:29px}.admin-nav{gap:3px}.admin-nav button{padding:10px 12px;font-size:11px}.event-row{font-size:11px}.login-card{padding:28px 23px;margin:8px auto}.login-card h1{font-size:33px}.account-mark{margin-bottom:20px}.room-layout{display:block}.stage,.stage>video{min-height:300px;height:300px}.stage .local-video{width:100px;height:75px}.controls{padding:15px 0;gap:7px}.controls button{padding:10px;font-size:11px}footer{padding:22px 0;margin:0 18px;flex-wrap:wrap;font-size:10px}footer span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
