/* Video consultation pages (/book-consultation, /meet/…). Standalone: no React. */
:root{--navy:#0C4A6E;--navy2:#075985;--blue:#0369A1;--sky:#38BDF8;--sky-l:#E0F5FF;--ink:#0C2C3D;--slate:#4B6273;--muted:#4A5F70;--line:#DCEEF9;--bg:#F3FAFF;--ok:#1C7C4C;--err:#B42318;--r:14px}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55;font-size:16px}
a{color:var(--blue)}
h1,h2,h3{font-family:"Fraunces",Georgia,serif;color:var(--navy);line-height:1.2;margin:0 0 .5em}
h1{font-size:clamp(1.6rem,3.4vw,2.3rem)}
h2{font-size:1.25rem}
.mt-top{background:#fff;border-bottom:1px solid var(--line)}
.mt-top .in{max-width:1100px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;gap:16px;justify-content:space-between}
.mt-top img{height:42px;width:auto;display:block}
.mt-top .links{display:flex;gap:10px;align-items:center;font-size:.92rem}
.mt-top .links a{text-decoration:none;font-weight:600}
.mt-wrap{max-width:1100px;margin:0 auto;padding:28px 16px 60px}
.mt-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-template-areas:'intro card' 'why card';grid-template-rows:auto 1fr;column-gap:32px;row-gap:6px;align-items:start}
.mt-intro{grid-area:intro}.mt-why{grid-area:why}.mt-hero>#bk{grid-area:card}
.mt-hero>*{min-width:0}
@media(max-width:860px){.mt-hero{grid-template-columns:1fr;grid-template-areas:'intro' 'card' 'why';row-gap:18px}}
@media(max-width:900px){.preview{aspect-ratio:4/3;max-height:42vh}}
.mt-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;box-shadow:0 2px 10px rgba(10,37,64,.06)}
.mt-lead{color:var(--slate);font-size:1.05rem;margin:0 0 18px}
.mt-points{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px}
.mt-points li{display:flex;gap:10px;align-items:flex-start;color:var(--slate)}
.mt-points svg{flex:0 0 22px;color:var(--ok);margin-top:2px}
.mt-steps{display:flex;gap:6px;margin:0 0 18px}
.mt-steps span{flex:1;height:5px;border-radius:9px;background:var(--line)}
.mt-steps span.on{background:var(--navy)}
label{display:block;font-weight:600;font-size:.88rem;margin:0 0 6px;color:var(--ink)}
input,select,textarea{width:100%;font:inherit;padding:11px 12px;border:1px solid #c9dcea;border-radius:10px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:2px solid var(--sky);outline-offset:1px;border-color:var(--sky)}
.fld{margin:0 0 14px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:560px){.row2{grid-template-columns:1fr}}
.err{color:var(--err);font-size:.82rem;margin-top:4px;display:none}
.has-err .err{display:block}
.has-err input,.has-err select{border-color:var(--err)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:700;border:0;border-radius:10px;padding:12px 20px;cursor:pointer;text-decoration:none;line-height:1.2}
.btn-p{background:var(--navy);color:#fff}
.btn-p:hover{background:var(--navy2)}
.btn-p[disabled]{opacity:.55;cursor:not-allowed}
.btn-l{background:var(--sky-l);color:var(--navy)}
.btn-g{background:none;color:var(--slate);text-decoration:underline;padding:8px}
.btn-w{background:#25D366;color:#fff}
.btn-d{background:#fff;color:var(--err);border:1px solid #f1c4c0}
.days{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x mandatory}
.day{flex:0 0 74px;scroll-snap-align:start;border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 4px;text-align:center;cursor:pointer;font:inherit;color:var(--ink)}
.day b{display:block;font-size:1.3rem;font-family:"Fraunces",Georgia,serif;color:var(--navy)}
.day small{display:block;color:var(--muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.04em}
.day.on{background:var(--navy);border-color:var(--navy);color:#fff}
.day.on b,.day.on small{color:#fff}
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;margin:6px 0 4px}
.slot{border:1px solid #bfe3f7;background:#fff;color:var(--navy);border-radius:10px;padding:10px 4px;font:inherit;font-weight:600;cursor:pointer}
.slot.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.mt-note{font-size:.82rem;color:var(--muted)}
.mt-empty{padding:16px;background:var(--bg);border-radius:10px;color:var(--slate);font-size:.92rem}
.chk{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.86rem;color:var(--slate)}
.chk input{width:auto;margin-top:3px}
.mt-sum{background:var(--sky-l);border-radius:12px;padding:14px 16px;margin:0 0 16px;font-size:.95rem}
.mt-sum b{color:var(--navy)}
.notice{padding:12px 14px;border-radius:10px;margin:0 0 16px;font-size:.92rem}
.notice.ok{background:#e7f6ee;color:#14532d}
.notice.err{background:#fdecea;color:#7a1d14;display:block}
.notice[hidden]{display:none}
.notice.info{background:var(--sky-l);color:var(--navy)}
dl.mt-dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 18px;margin:0 0 18px}
dl.mt-dl dt{color:var(--muted);font-size:.88rem}
dl.mt-dl dd{margin:0;font-weight:600}
.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
/* Room */
.room-shell{max-width:1200px;margin:0 auto;padding:18px 16px 40px}
.room-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px}
@media(max-width:900px){.room-grid{grid-template-columns:1fr}}
.preview{position:relative;background:#0b1f2c;border-radius:16px;aspect-ratio:16/10;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#cfe0f2}
.preview video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}
.preview .ph{position:absolute;text-align:center;padding:20px}
.dev{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.dev .btn{padding:10px 14px}
.dev .btn.off{background:#fdecea;color:var(--err)}
.meter{height:6px;background:#e2edf5;border-radius:9px;overflow:hidden;margin-top:10px}
.meter i{display:block;height:100%;width:0;background:var(--ok);transition:width .1s}
#jitsi{width:100%;height:calc(100vh - 140px);min-height:520px;border-radius:16px;overflow:hidden;background:#0b1f2c}
.wait{display:flex;gap:14px;align-items:center}
.spin{width:22px;height:22px;border:3px solid var(--line);border-top-color:var(--navy);border-radius:50%;animation:sp 1s linear infinite;flex:0 0 22px}
@keyframes sp{to{transform:rotate(360deg)}}
.stars{display:flex;gap:6px;font-size:2rem}
.stars button{background:none;border:0;cursor:pointer;color:#cbd5e1;font-size:inherit;padding:0 2px;line-height:1}
.stars button.on{color:#f59e0b}
.mt-foot{text-align:center;color:var(--muted);font-size:.82rem;padding:20px 16px 40px}
