:root{--bg0:#0e0f10;--bg1:#1c2022;--bg2:#34393b;--text:#f6efe3;--muted:rgba(246,239,227,.56);--glass:rgba(255,255,255,.10);--glass2:rgba(255,255,255,.045);--line:rgba(255,255,255,.16);--gold:#d1b174;--gold2:#a67d3e;--dark:#151718;--danger:#d99b96;--green:#aac794}html[data-theme=light]{--bg0:#e7e2d8;--bg1:#c8c7c1;--bg2:#757b7d;--text:#202326;--muted:rgba(32,35,38,.62);--glass:rgba(255,255,255,.42);--glass2:rgba(255,255,255,.24);--line:rgba(255,255,255,.52);--dark:#303436}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:radial-gradient(circle at 18% 10%,rgba(225,204,168,.22),transparent 24%),radial-gradient(circle at 78% 16%,rgba(255,255,255,.10),transparent 20%),linear-gradient(135deg,var(--bg2),var(--bg1) 46%,var(--bg0));overflow-x:hidden}.bg-orb{position:fixed;border-radius:50%;filter:blur(12px);opacity:.55;pointer-events:none}.orb-a{width:460px;height:460px;background:rgba(218,184,119,.18);left:-130px;top:-160px}.orb-b{width:520px;height:520px;background:rgba(8,9,10,.50);right:-190px;bottom:-150px}.orb-c{width:280px;height:280px;background:rgba(255,255,255,.09);right:220px;top:35px}.glass{border:1px solid var(--line);background:linear-gradient(135deg,var(--glass),var(--glass2));backdrop-filter:blur(28px);box-shadow:0 26px 68px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.16)}.app-shell{min-height:100vh;padding:24px;display:grid;grid-template-columns:280px 1fr;gap:18px}.sidebar{border-radius:32px;padding:26px 22px;position:sticky;top:24px;height:calc(100vh - 48px);background:linear-gradient(180deg,rgba(21,23,24,.84),rgba(18,19,20,.62))}.brand,.mini-brand{display:flex;align-items:center;gap:12px}.brand{margin-bottom:34px}.brand-mark,.mini-brand span{width:54px;height:54px;border-radius:20px;border:1px solid rgba(211,176,112,.40);background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.035));display:grid;place-items:center;color:#e7d0a4;font-weight:800}.brand b,.mini-brand b{letter-spacing:.22em}.brand small,.mini-brand small{display:block;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);font-size:10px}.side-nav{display:grid;gap:9px}.side-nav button{height:46px;border:0;border-radius:16px;text-align:left;padding:0 15px;background:transparent;color:var(--muted);font:inherit}.side-nav button.active{background:rgba(255,255,255,.10);border:1px solid rgba(211,176,112,.30);color:#fff1d5}.sidebar-foot{position:absolute;bottom:28px;color:rgba(244,239,230,.42);font-size:12px;line-height:1.6}.main{min-width:0;display:grid;grid-template-rows:auto 1fr;gap:18px}.topbar{border-radius:32px;padding:22px 26px;display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.kicker{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:800}.topbar h1{margin:7px 0 0;font-size:42px;line-height:1;letter-spacing:-.05em}.topbar p{margin:9px 0 0;color:var(--muted);font-size:14px}.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.theme-toggle{height:44px;border-radius:999px;background:rgba(8,9,10,.30);border:1px solid var(--line);display:flex;align-items:center;padding:4px;gap:4px;cursor:pointer}.theme-toggle span{height:34px;padding:0 13px;border-radius:999px;display:flex;align-items:center;color:var(--muted);font-size:12px;font-weight:800}.theme-toggle .on{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#211e18}.mode-switch,.small-pill{height:42px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.08);color:var(--text);padding:0 14px;font-weight:700}.avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#ead2a2,#9c7536);display:grid;place-items:center;font-weight:800;color:#24211c}.view{display:none}.view.active{display:block}.mobile-frame-wrap{display:grid;grid-template-columns:480px 1fr;gap:24px;align-items:center}.phone-frame{width:430px;height:820px;border-radius:54px;padding:14px;background:linear-gradient(145deg,#0b0c0d,#383d3f);box-shadow:0 42px 120px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.16);justify-self:center}.phone-screen{height:100%;border-radius:42px;overflow:hidden;background:linear-gradient(160deg,rgba(246,241,232,.92),rgba(204,203,197,.82) 48%,rgba(78,83,85,.74));position:relative;color:#25282a}.notch{position:absolute;top:13px;left:50%;transform:translateX(-50%);width:120px;height:30px;border-radius:99px;background:#090a0b;z-index:3}.patient-app{height:100%;padding:58px 22px 18px;display:grid;grid-template-rows:auto auto 1fr auto;gap:14px}.patient-head{display:flex;justify-content:space-between;align-items:center}.mini-brand span{width:42px;height:42px;border-radius:15px;background:rgba(37,40,42,.88)}.patient-hero{border-radius:30px;background:linear-gradient(145deg,rgba(33,36,38,.88),rgba(33,36,38,.64));border:1px solid rgba(255,255,255,.22);box-shadow:0 24px 50px rgba(20,22,23,.20);padding:21px;color:#f8f2e8}.patient-hero h2{margin:7px 0 8px;font-size:29px;line-height:1.03;letter-spacing:-.05em}.patient-hero p{margin:0;color:rgba(248,242,232,.72);font-size:13px;line-height:1.4}.gold-btn,.admin-actions button{border:0;border-radius:16px;background:linear-gradient(135deg,var(--gold),var(--gold2));font-weight:800;color:#24211b;box-shadow:0 12px 26px rgba(0,0,0,.18);cursor:pointer}.gold-btn{height:48px;width:100%;margin-top:16px}.gold-btn.mini{height:42px;margin-top:10px}.patient-tab-content{display:none;overflow:hidden}.patient-tab-content.active{display:grid;gap:11px}.patient-card{border-radius:24px;background:rgba(255,255,255,.38);border:1px solid rgba(255,255,255,.54);backdrop-filter:blur(22px);box-shadow:inset 0 1px 0 rgba(255,255,255,.64);padding:15px;color:#2b2e30}.card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.card-title h3{margin:0;font-size:16px}.card-title span{font-size:11px;border-radius:999px;padding:5px 8px;background:rgba(37,40,42,.08);color:#6d542c;font-weight:800}.service-row{display:flex;gap:11px;align-items:center}.service-row i{width:42px;height:42px;border-radius:15px;background:rgba(38,41,43,.88);display:grid;place-items:center;color:#d7bb83;font-weight:800;font-style:normal}.service-row b{display:block;font-size:14px}.service-row small{display:block;font-size:12px;color:rgba(42,45,47,.58);margin-top:4px;line-height:1.3}.form-card label{display:grid;gap:6px;margin-top:10px;font-size:12px;color:rgba(42,45,47,.66);font-weight:700}.form-card select{height:40px;border-radius:13px;border:1px solid rgba(40,43,45,.12);padding:0 10px;background:rgba(255,255,255,.55)}.progress{height:7px;background:rgba(38,41,43,.12);border-radius:99px;overflow:hidden;margin-top:12px}.progress i{display:block;width:66%;height:100%;background:linear-gradient(90deg,#b88c42,#dfc48d)}.bottom-nav{height:64px;border-radius:24px;background:rgba(35,38,40,.84);border:1px solid rgba(255,255,255,.16);display:grid;grid-template-columns:repeat(4,1fr);align-items:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.14);overflow:hidden}.bottom-nav button{background:transparent;border:0;color:rgba(248,242,232,.60);font-size:11px}.bottom-nav b{display:block;font-size:19px;margin-bottom:4px}.bottom-nav button.active{color:#e8c98f}.patient-info{border-radius:34px;padding:34px}.patient-info h2{font-size:48px;margin:10px 0 10px;letter-spacing:-.06em;line-height:1}.patient-info p{color:var(--muted);font-size:15px;line-height:1.55;max-width:680px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:26px}.feature-grid div{border-radius:22px;background:rgba(255,255,255,.07);border:1px solid var(--line);padding:18px}.feature-grid b{display:block;color:var(--gold);margin-bottom:8px}.feature-grid span{font-size:14px}.metrics-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metric{border-radius:25px;padding:20px;position:relative}.metric span{position:absolute;right:16px;top:16px;color:var(--gold);font-size:11px}.metric b{display:block;font-size:38px;letter-spacing:-.05em}.metric small{color:var(--muted)}.admin-workspace{display:grid;grid-template-columns:370px 1fr 310px;gap:16px}.panel{border-radius:28px;overflow:hidden}.panel-head{height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 20px}.panel-head span{color:var(--muted);font-size:12px}.request-tabs{display:flex;gap:8px;padding:14px 14px 4px}.request-tabs button{height:32px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--muted);padding:0 12px}.request-tabs .active{background:rgba(211,176,112,.16);color:#e8cd98}.request-item{margin:12px 14px;border:1px solid var(--line);border-radius:20px;padding:14px;background:rgba(255,255,255,.055)}.request-item.hot{background:linear-gradient(135deg,rgba(211,176,112,.17),rgba(255,255,255,.06));border-color:rgba(211,176,112,.34)}.request-item div{display:flex;justify-content:space-between}.request-item small{color:var(--gold);font-family:ui-monospace,monospace}.request-item em{font-style:normal;font-size:11px;color:#e2c894}.request-item em.green{color:var(--green)}.request-item em.red{color:var(--danger)}.request-item p{color:var(--muted);font-size:13px;line-height:1.35}.detail-card{padding:22px}.patient-line{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid rgba(211,176,112,.45);padding-bottom:15px}.patient-line h2{margin:0 0 7px;font-size:29px;letter-spacing:-.04em}.patient-line p{margin:0;color:var(--muted);font-size:13px}.patient-line span{color:#e2c894;font-size:11px}.admin-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0}.admin-fields div{border-radius:17px;border:1px solid var(--line);background:rgba(255,255,255,.06);padding:12px}.admin-fields small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:7px}.dialog-box{border-radius:22px;background:rgba(8,9,10,.25);border:1px solid var(--line);padding:14px}.dialog-box small{color:var(--muted);font-size:11px}.dialog-box p{border-radius:15px;background:rgba(255,255,255,.06);padding:10px 12px;color:rgba(255,255,255,.78);font-size:13px;line-height:1.35}.dialog-box p.bot{background:rgba(211,176,112,.11)}.admin-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:13px}.admin-actions button{height:42px}.admin-actions .soft{background:rgba(255,255,255,.08);border:1px solid var(--line);color:var(--text)}.admin-actions .danger{background:rgba(161,77,74,.16);border:1px solid rgba(161,77,74,.25);color:var(--danger)}.side-panel{padding-bottom:14px}.slot{margin:12px 14px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.055);padding:13px;font-weight:700}.slot small{display:block;color:var(--muted);margin-top:5px;font-weight:500}.slot.hot{background:linear-gradient(135deg,rgba(211,176,112,.14),rgba(255,255,255,.06));border-color:rgba(211,176,112,.28)}.crm-box{margin:14px;border-radius:22px;border:1px solid var(--line);background:rgba(8,9,10,.22);padding:15px}.crm-box p{display:flex;justify-content:space-between;color:var(--muted);font-size:13px}.crm-box i{font-style:normal;color:var(--text)}body.role-patient .admin-only{display:none}body.role-patient .app-shell{grid-template-columns:1fr}body.role-admin .patient-view{display:none}body.role-admin .admin-view.active{display:block}@media(max-width:1100px){.app-shell{padding:12px;display:block}.sidebar{display:none}.topbar{border-radius:24px;display:block}.top-actions{margin-top:14px;justify-content:flex-start}.topbar h1{font-size:32px}.mobile-frame-wrap{grid-template-columns:1fr}.patient-info{margin-top:14px}.phone-frame{width:min(430px,100%);height:780px}.admin-workspace{grid-template-columns:1fr}.metrics-row{grid-template-columns:repeat(2,1fr)}.admin-fields{grid-template-columns:1fr 1fr}.side-panel{display:block}.feature-grid{grid-template-columns:1fr 1fr}.mode-switch{display:inline-flex}}@media(max-width:620px){.topbar{padding:18px}.theme-toggle span{padding:0 10px}.mode-switch{height:38px;font-size:12px}.avatar{display:none}.phone-frame{height:calc(100vh - 150px);min-height:650px;border-radius:0;padding:0;background:transparent;border:0;box-shadow:none}.phone-screen{border-radius:26px}.patient-info{display:none}.metrics-row{grid-template-columns:1fr 1fr}.admin-fields{grid-template-columns:1fr}.admin-actions{grid-template-columns:1fr 1fr}.patient-line{display:block}.feature-grid{grid-template-columns:1fr}}

/* mobile production fix: real Mini App, not phone-in-phone mockup */
@media(max-width:620px){
  body{overflow-x:hidden;}
  .app-shell{padding:10px;}
  .main{display:block;}
  .topbar{width:100%; margin-bottom:12px; overflow:hidden;}
  .top-actions{display:flex; gap:8px; flex-wrap:wrap;}
  .theme-toggle{height:38px;}
  .theme-toggle span{height:28px; font-size:11px;}
  .mode-switch{height:38px; max-width:160px; white-space:nowrap;}
  .mobile-frame-wrap{display:block;}
  .phone-frame{width:100%; height:auto; min-height:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none;}
  .phone-screen{height:auto; min-height:0; overflow:visible; border-radius:24px; background:linear-gradient(160deg,rgba(246,241,232,.94),rgba(204,203,197,.86) 50%,rgba(78,83,85,.78));}
  .notch{display:none;}
  .patient-app{height:auto; min-height:0; display:block; padding:18px;}
  .patient-head{margin-bottom:14px;}
  .patient-hero{margin-bottom:14px;}
  .patient-tab-content.active{display:grid; gap:12px; margin-bottom:14px;}
  .bottom-nav{position:sticky; bottom:10px; z-index:10; margin-top:12px;}
  .patient-info{display:none;}
}


/* mobile edge safety */
@media(max-width:620px){
  .phone-screen{width:100%; max-width:100%; overflow:hidden;}
  .patient-app{overflow:hidden; padding-left:18px; padding-right:18px;}
  .patient-head{gap:12px;}
  .small-pill{min-width:42px; flex:0 0 auto;}
  .card-title{gap:8px;}
  .card-title span{flex:0 0 auto; max-width:76px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
  .patient-card{overflow:hidden;}
}


/* interaction/UI polish v5 */
.role-toggle{height:44px;border-radius:999px;background:rgba(8,9,10,.30);border:1px solid var(--line);display:flex;align-items:center;padding:4px;gap:4px}
.role-toggle button{height:34px;border:0;border-radius:999px;background:transparent;color:var(--muted);padding:0 14px;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;line-height:1;cursor:pointer;white-space:nowrap}
.role-toggle button.on{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#211e18;box-shadow:0 10px 22px rgba(166,126,62,.18)}
button,.gold-btn,.admin-actions button,.bottom-nav button,.side-nav button,.request-tabs button{display:inline-flex;align-items:center;justify-content:center;line-height:1.05;vertical-align:middle;-webkit-tap-highlight-color:transparent}
.side-nav button{justify-content:flex-start}.bottom-nav button{flex-direction:column}.gold-btn{gap:8px}.admin-actions button{font-size:13px;white-space:nowrap}.admin-actions button.done{background:linear-gradient(135deg,#9fbd8b,#6f925e);color:#151914}.admin-actions button.call{background:linear-gradient(135deg,#d7c08e,#a38148);color:#211e18}.request-item{cursor:pointer;transition:.16s ease}.request-item:hover,.request-item.selected{transform:translateY(-1px);border-color:rgba(211,176,112,.48);background:linear-gradient(135deg,rgba(211,176,112,.17),rgba(255,255,255,.07))}.request-item.selected:after{content:'выбрана';float:right;margin-top:8px;color:var(--gold);font-size:11px;font-weight:800}.admin-tab-panels{margin-top:16px}.admin-tab-panel{display:none;border-radius:22px;padding:16px 18px;color:var(--muted);font-size:14px}.admin-tab-panel.active{display:block}.float-open-app{position:fixed;right:22px;bottom:92px;z-index:25;height:48px;border:0;border-radius:999px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#211e18;font-weight:900;padding:0 18px;box-shadow:0 18px 36px rgba(0,0,0,.30);cursor:pointer}.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(20px);opacity:0;z-index:1000;max-width:min(520px,calc(100vw - 32px));border-radius:18px;background:rgba(15,17,18,.88);border:1px solid rgba(211,176,112,.28);backdrop-filter:blur(18px);box-shadow:0 20px 50px rgba(0,0,0,.32);padding:13px 16px;color:#fff3df;font-size:14px;transition:.2s ease}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:620px){.role-toggle{height:38px}.role-toggle button{height:28px;padding:0 10px;font-size:11px}.float-open-app{right:18px;bottom:86px;height:44px;padding:0 15px;font-size:13px}.top-actions{align-items:center}.patient-tab-content{scroll-margin-top:12px}.admin-actions button{font-size:12px;min-width:0}.admin-tab-panels{display:none}}


/* address map modal v6 */
.address-card{cursor:pointer;transition:.16s ease}.address-card:hover{transform:translateY(-1px);border-color:rgba(211,176,112,.42)}
.map-modal{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:18px}.map-modal.open{display:flex}.map-backdrop{position:absolute;inset:0;background:rgba(5,6,7,.62);backdrop-filter:blur(10px)}.map-window{position:relative;width:min(720px,calc(100vw - 28px));border-radius:28px;padding:16px}.map-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px}.map-head b{display:block;font-size:18px;color:var(--text)}.map-head small{display:block;color:var(--muted);font-size:13px;margin-top:4px}.map-close{width:38px;height:38px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.08);color:var(--text);font-size:24px;line-height:1;cursor:pointer}.map-box{position:relative;height:420px;border-radius:22px;overflow:hidden;border:1px solid var(--line);background:rgba(0,0,0,.18)}.map-box iframe{width:100%;height:100%;border:0;display:block;pointer-events:none;filter:saturate(.88) contrast(.96)}.map-box.unlocked iframe{pointer-events:auto}.map-lock{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px;background:linear-gradient(135deg,rgba(20,22,24,.42),rgba(20,22,24,.18));backdrop-filter:blur(2px);color:#fff4e3;cursor:pointer}.map-lock b{font-size:20px;margin-bottom:8px}.map-lock span{max-width:360px;color:rgba(255,244,227,.78);font-size:14px;line-height:1.35}.map-box.unlocked .map-lock{display:none}.map-route{display:flex;align-items:center;justify-content:center;height:46px;margin-top:12px;border-radius:16px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#211e18;text-decoration:none;font-weight:900}.map-window.map-pulse{animation:mapPulse .38s ease}@keyframes mapPulse{0%{transform:scale(.98)}100%{transform:scale(1)}}
@media(max-width:620px){.map-modal{padding:10px;align-items:flex-end}.map-window{width:100%;border-radius:24px;padding:14px}.map-box{height:58vh;min-height:360px}.map-head b{font-size:16px}.map-lock b{font-size:18px}.map-lock span{font-size:13px}}


/* client AI tester v7 */
.ai-card{display:grid;gap:10px}.ai-hint{margin:0;color:rgba(42,45,47,.62);font-size:12px;line-height:1.35}.ai-input-row{display:grid;grid-template-columns:1fr auto;gap:8px}.ai-input-row input{min-width:0;height:40px;border-radius:14px;border:1px solid rgba(40,43,45,.14);background:rgba(255,255,255,.55);padding:0 11px;color:#24272a;font:inherit;font-size:12px}.ai-input-row button,.quick-ai button{border:0;border-radius:14px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#211e18;font-weight:900;padding:0 12px;cursor:pointer}.quick-ai{display:flex;gap:7px;flex-wrap:wrap}.quick-ai button{height:30px;font-size:11px;background:rgba(38,41,43,.88);color:#e8cd98;border:1px solid rgba(211,176,112,.24)}.ai-answer{border-radius:17px;background:rgba(38,41,43,.12);border:1px solid rgba(38,41,43,.10);padding:12px;color:#25282a;font-size:13px;line-height:1.42;min-height:56px;white-space:pre-wrap}.ai-answer.loading{opacity:.72}.ai-answer.safe{border-color:rgba(211,176,112,.28);background:rgba(211,176,112,.12)}
@media(max-width:620px){.ai-input-row{grid-template-columns:1fr}.ai-input-row button{height:38px}.quick-ai button{height:32px}.ai-card{margin-bottom:6px}}


/* light theme readability + Telegram MainButton fix v8 */
html[data-theme=light]{
  --gold:#8f651e;
  --gold2:#6f4f18;
  --danger:#9f3038;
  --green:#2f7a37;
  --muted:rgba(18,21,23,.72);
  --line:rgba(255,255,255,.64);
}
html[data-theme=light] .request-item small,
html[data-theme=light] .request-item em,
html[data-theme=light] .request-tabs button.active,
html[data-theme=light] .metric span,
html[data-theme=light] .card-title span,
html[data-theme=light] .crm-box i,
html[data-theme=light] .request-item.selected:after{
  color:#7b5316 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.55);
}
html[data-theme=light] .request-item em.green{color:#236f31 !important;}
html[data-theme=light] .request-item em.red{color:#a02632 !important;}
html[data-theme=light] .request-item.hot,
html[data-theme=light] .request-item.selected{
  border-color:rgba(143,101,30,.45) !important;
  background:linear-gradient(135deg,rgba(143,101,30,.13),rgba(255,255,255,.22)) !important;
}
html[data-theme=light] .request-tabs button.active{
  border-color:rgba(143,101,30,.45) !important;
  background:rgba(143,101,30,.10) !important;
}
html[data-theme=light] .glass{
  box-shadow:0 22px 54px rgba(30,34,35,.20),inset 0 1px 0 rgba(255,255,255,.42);
}
html[data-theme=light] .admin-view,
html[data-theme=light] .request-list,
html[data-theme=light] .detail-card,
html[data-theme=light] .side-panel{
  color:#181b1e;
}
html[data-theme=light] .request-item p{color:rgba(18,21,23,.72);}
html[data-theme=light] .admin-actions button,
html[data-theme=light] .gold-btn,
html[data-theme=light] .role-toggle button.on,
html[data-theme=light] .float-open-app,
html[data-theme=light] .map-route,
html[data-theme=light] .ai-input-row button{
  background:linear-gradient(135deg,#b88932,#745016) !important;
  color:#fff8ea !important;
}
.request-list.pulse-focus{animation:requestPulse .9s ease 1;}
@keyframes requestPulse{0%{box-shadow:0 0 0 0 rgba(184,137,50,.55)}100%{box-shadow:0 0 0 18px rgba(184,137,50,0)}}

/* site-aligned cleanup v9 */
.float-open-app{display:none!important}
html[data-theme=light] body{background:radial-gradient(circle at 14% 9%,rgba(238,247,246,.9),transparent 31%),radial-gradient(circle at 92% 4%,rgba(248,230,198,.76),transparent 28%),linear-gradient(145deg,#fff 0%,#f7f9f8 46%,#fbf6f0 100%);}
html[data-theme=light] .brand-mark,html[data-theme=light] .mini-brand span{background:linear-gradient(145deg,#d7b472,#8f7346);color:#fff;border-color:rgba(143,115,70,.36)}
html[data-theme=light] .sidebar{background:rgba(255,255,255,.55);color:#211f1d}
html[data-theme=light] .sidebar-foot{color:#514d47}
.map-box iframe{filter:saturate(1.02) contrast(.98)}
.map-lock{background:linear-gradient(135deg,rgba(33,31,29,.50),rgba(33,31,29,.18));}


/* admin real interactions v10 */
.metric{border:1px solid var(--line);text-align:left;cursor:pointer;appearance:none;-webkit-appearance:none;transition:.16s ease;min-height:104px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:18px;border-radius:24px;color:var(--text)}
.metric:hover,.metric.active{transform:translateY(-2px);border-color:rgba(211,176,112,.55);background:linear-gradient(135deg,rgba(211,176,112,.18),rgba(255,255,255,.07));}
.request-tabs button{cursor:pointer}.request-tabs button.active{border-color:rgba(211,176,112,.48);background:rgba(211,176,112,.12);color:var(--gold)}
.request-item.hidden-by-filter{display:none}.request-expanded{display:none;margin-top:12px;padding:12px;border-radius:16px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.10)}.request-item.expanded .request-expanded{display:block}.request-expanded dl{display:grid;gap:8px;margin:0}.request-expanded dl div{display:grid;grid-template-columns:86px 1fr;gap:8px}.request-expanded dt{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--gold);font-weight:900}.request-expanded dd{margin:0;color:var(--text);font-size:12px;line-height:1.35}.request-expanded button{margin-top:10px;height:34px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#211e18;font-weight:900;padding:0 12px}
.admin-actions .primary-action{background:linear-gradient(135deg,#d8b263,#9a6a20)!important;color:#21190d!important;border-color:rgba(255,218,142,.45)!important;box-shadow:0 12px 24px rgba(154,106,32,.22)}.admin-actions .primary-action:hover{filter:brightness(1.08)}html[data-theme=light] .admin-actions .primary-action{background:linear-gradient(135deg,#b88932,#745016)!important;color:#fff8ea!important}
.side-panel{cursor:pointer;transition:.16s ease}.side-panel:hover{transform:translateY(-2px);border-color:rgba(211,176,112,.52)}.schedule-modal{position:fixed;inset:0;z-index:2100;display:none;align-items:center;justify-content:center;padding:18px}.schedule-modal.open{display:flex}.schedule-backdrop{position:absolute;inset:0;background:rgba(5,6,7,.62);backdrop-filter:blur(10px)}.schedule-window{position:relative;width:min(680px,calc(100vw - 28px));border-radius:28px;padding:18px}.schedule-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.schedule-head b{display:block;font-size:20px}.schedule-head small{display:block;color:var(--muted);margin-top:4px}.timeline-demo{display:grid;gap:10px}.time-row{display:grid;grid-template-columns:64px 14px 1fr auto;gap:12px;align-items:center;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10)}.time-row span{color:var(--gold);font-weight:900}.time-row i{width:12px;height:12px;border-radius:50%;background:#9fbd8b;box-shadow:0 0 0 5px rgba(159,189,139,.12)}.time-row i.busy{background:#d8b263}.time-row i.hot{background:#d99b96}.time-row b{font-size:14px}.time-row small{color:var(--muted)}.time-row.recommended{border-color:rgba(211,176,112,.50);background:linear-gradient(135deg,rgba(211,176,112,.18),rgba(255,255,255,.07))}
@media(max-width:760px){.time-row{grid-template-columns:54px 12px 1fr}.time-row small{grid-column:3}.request-expanded dl div{grid-template-columns:1fr}.metric{min-height:82px}}

.request-detail-row{display:grid;grid-template-columns:86px 1fr;gap:8px;margin-bottom:7px}.request-detail-row span,.request-detail-note span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--gold);font-weight:900}.request-detail-row b{font-size:12px;color:var(--text)}.request-detail-note p{margin:4px 0 0;color:var(--text);font-size:12px;line-height:1.35}


/* no visible role switcher in production v12 */
.role-toggle{display:none!important}
.top-actions{gap:10px}


/* mobile admin overflow emergency fix v13 */
.admin-view,.admin-grid,.admin-workspace,.request-list,.request-item,.request-expanded,.detail-card,.side-panel{max-width:100%;overflow-wrap:anywhere;word-break:normal;}
.request-expanded{overflow:hidden!important;display:none!important;}
.request-item.expanded .request-expanded{display:block!important;}
.request-expanded dl{display:block!important;margin:0!important;}
.request-detail-row{display:grid!important;grid-template-columns:minmax(72px,86px) minmax(0,1fr)!important;align-items:start!important;gap:8px!important;margin:0 0 8px!important;max-width:100%!important;}
.request-detail-row span,.request-detail-note span{min-width:0!important;white-space:normal!important;line-height:1.15!important;}
.request-detail-row b,.request-detail-note p{min-width:0!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.25!important;}
.request-detail-note{display:block!important;max-width:100%!important;}
.request-expanded button{width:100%;max-width:260px;}
@media(max-width:760px){
  .app-shell{padding:8px!important;}
  .admin-grid{gap:12px!important;}
  .metrics-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  .metric{min-height:76px!important;padding:12px!important;border-radius:18px!important;}
  .metric b{font-size:24px!important;}
  .admin-workspace{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;}
  .request-list,.detail-card,.side-panel{border-radius:24px!important;padding:14px!important;}
  .request-item{padding:14px!important;border-radius:20px!important;margin-bottom:10px!important;}
  .request-item p{font-size:14px!important;line-height:1.35!important;}
  .request-expanded{padding:10px!important;border-radius:16px!important;margin-top:10px!important;}
  .request-detail-row{grid-template-columns:1fr!important;gap:3px!important;padding:0 0 8px!important;border-bottom:1px solid rgba(255,255,255,.08);}
  .request-detail-row:last-of-type{border-bottom:0;}
  .request-detail-row b{font-size:14px!important;}
  .request-detail-note p{font-size:13px!important;}
  .patient-line h2{font-size:34px!important;}
  .admin-fields{grid-template-columns:1fr!important;}
}


/* mobile admin edge cleanup v14 */
.request-item.selected:after{content:none!important;display:none!important;}
.request-item>div:first-child{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:8px!important;min-width:0!important;max-width:100%!important;}
.request-item small{min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important;}
.request-item em{flex:0 1 auto!important;max-width:42%!important;text-align:right!important;white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.15!important;}
.admin-view{overflow-x:hidden!important;}
.admin-workspace,.request-list,.request-item,.detail-card{min-width:0!important;width:100%!important;}
@media(max-width:760px){
  .request-item>div:first-child{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;}
  .request-item em{max-width:112px!important;font-size:13px!important;}
  .request-item b{display:block!important;max-width:100%!important;overflow-wrap:anywhere!important;}
  .request-item{overflow:hidden!important;}
  .admin-grid{overflow:hidden!important;}
  .main{overflow:hidden!important;}
}


/* mobile admin status wrap v15 */
@media(max-width:760px){
  .request-item>div:first-child{display:block!important;}
  .request-item small{display:block!important;margin-bottom:3px!important;max-width:100%!important;}
  .request-item b{display:block!important;max-width:100%!important;}
  .request-item em{display:inline-block!important;margin-top:8px!important;max-width:100%!important;text-align:left!important;font-size:12px!important;padding:4px 8px!important;border-radius:999px!important;background:rgba(255,255,255,.06)!important;}
  .request-item p{max-width:100%!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;}
  .admin-view,.admin-grid,.main{max-width:100vw!important;}
}


/* full page background + mobile Telegram viewport safety v16 */
html,body{min-height:100%;background:#111516!important;overflow-x:hidden!important;}
body::before{content:'';position:fixed;inset:0;z-index:-2;background:radial-gradient(circle at 20% 0%,rgba(216,178,99,.16),transparent 34%),linear-gradient(135deg,#232726,#111516 62%,#080a0b)!important;}
#app,.app-shell,.main,.admin-view{background:transparent!important;}
@media(max-width:760px){
  html,body{width:100%!important;max-width:100vw!important;min-height:100vh!important;background:#111516!important;}
  .app-shell{width:100%!important;max-width:100vw!important;min-height:100vh!important;overflow-x:hidden!important;}
  .main{width:100%!important;max-width:100vw!important;overflow-x:hidden!important;}
  .admin-view{width:100%!important;max-width:100%!important;overflow-x:hidden!important;padding-bottom:28px!important;}
  .admin-grid{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  .request-list{width:100%!important;max-width:100%!important;overflow:hidden!important;}
  .request-item{box-sizing:border-box!important;width:100%!important;max-width:100%!important;overflow:hidden!important;}
  .request-item p,.request-item b,.request-item small,.request-item em{max-width:100%!important;overflow-wrap:anywhere!important;}
}


/* services + chat + no noisy highlights v17 */
.request-item:hover,.request-item.selected{transform:none!important;border-color:var(--line)!important;background:var(--glass2)!important;box-shadow:none!important;}
.request-item.hot,.slot.hot{background:var(--glass2)!important;border-color:var(--line)!important;box-shadow:none!important;}
.metric:hover,.metric.active{transform:none!important;background:var(--glass2)!important;border-color:var(--line)!important;box-shadow:none!important;}
.admin-actions .primary-action{background:rgba(255,255,255,.075)!important;color:var(--text)!important;border-color:var(--line)!important;box-shadow:none!important;}
html[data-theme=light] .admin-actions .primary-action{background:rgba(255,255,255,.52)!important;color:#202326!important;border-color:rgba(32,35,38,.14)!important;}
.admin-actions .primary-action:hover,.admin-actions .soft:hover{filter:none!important;background:rgba(255,255,255,.11)!important;}
.services-card{cursor:pointer;transition:.16s ease}.services-card:hover{transform:translateY(-1px);border-color:rgba(211,176,112,.35)}
.services-modal{position:fixed;inset:0;z-index:2200;display:none;align-items:center;justify-content:center;padding:18px}.services-modal.open{display:flex}.services-backdrop{position:absolute;inset:0;background:rgba(5,6,7,.62);backdrop-filter:blur(10px)}.services-window{position:relative;width:min(720px,calc(100vw - 28px));max-height:min(78vh,760px);border-radius:28px;padding:16px;display:grid;grid-template-rows:auto 1fr;gap:12px}.services-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.services-head b{display:block;font-size:19px}.services-head small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.services-head button{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.08);color:var(--text);font-size:22px}.services-list{overflow:auto;display:grid;gap:8px;padding-right:2px}.service-list-row{display:grid;grid-template-columns:46px 1fr;gap:12px;align-items:center;padding:12px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);cursor:pointer}.service-list-row i{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:rgba(211,176,112,.14);color:var(--gold);font-style:normal;font-weight:900}.service-list-row b{font-size:15px}.service-list-row small{display:block;color:var(--muted);font-size:12px;margin-top:3px;line-height:1.25}.chat-card .card-title span{display:none}.ai-chat{min-height:156px;max-height:300px;overflow:auto;display:grid;gap:9px;padding:10px;border-radius:18px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12)}.chat-bubble{width:fit-content;max-width:88%;padding:10px 12px;border-radius:16px;font-size:13px;line-height:1.35;white-space:pre-wrap}.chat-bubble.bot{justify-self:start;background:rgba(255,255,255,.10);color:var(--text)}.chat-bubble.user{justify-self:end;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#21190d;font-weight:700}.chat-bubble.loading{opacity:.72}.quick-ai{display:none!important}.ai-answer{display:none!important}
@media(max-width:760px){.services-modal{align-items:flex-end;padding:10px}.services-window{width:100%;max-height:82vh;border-radius:24px}.service-list-row{grid-template-columns:42px 1fr;padding:11px}.ai-chat{max-height:260px}.chat-bubble{font-size:14px;max-width:92%}.admin-actions .primary-action{background:rgba(255,255,255,.075)!important;color:var(--text)!important}}
