@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');

/* TalkMed — patient-first visual theme. */
:root{--font-body:'DM Sans',system-ui,sans-serif;--font-heading:'Manrope',system-ui,sans-serif;--font-heading-weight:700;--color-bg:#f4f8fb;--color-surface:#ffffff;--color-text:#19334a;--color-accent:#137b85;--color-accent-100:#edf9f8;--color-accent-200:#ddf2ef;--color-accent-300:#b8ddd9;--color-accent-400:#83c4c0;--color-accent-500:#399eaa;--color-accent-600:#21838c;--color-accent-700:#176d78;--color-accent-800:#165766;--color-accent-900:#173d52;--color-divider:#e3ecf1;--body-muted:#607586;--shadow-sm:0 4px 18px #24496106;--shadow-md:0 12px 34px #204d6810;--shadow-lg:0 24px 70px #204d681c;--radius-sm:8px;--radius-md:14px;--radius-lg:24px}
body{background:radial-gradient(ellipse at 94% 7%,#dcf2ef70,transparent 37%),var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-weight:400}h1,h2,h3,h4,h5{font-family:var(--font-heading);letter-spacing:-.035em;font-weight:700}h1{font-size:clamp(1.9rem,2.7vw,2.6rem);line-height:1.25}h2{font-size:1.35rem;line-height:1.4}h3{font-size:1.2rem;line-height:1.4}.eyebrow{font-family:var(--font-body);font-size:.75rem;font-weight:600;letter-spacing:.12em;color:var(--color-accent-700)}button{font-family:var(--font-body)}svg{stroke-width:1.7}::selection{background:var(--color-accent-200)}.blueprint{border-radius:var(--radius-lg);border-color:var(--color-divider)}.blueprint>.corner{display:none}
.topbar{height:88px;border-bottom:1px solid #e0e9ef95;background:#ffffffad;backdrop-filter:blur(18px);padding:0 38px;position:relative;z-index:10}.brand{font-family:var(--font-heading);font-weight:800;font-size:1.6rem;letter-spacing:-.055em;gap:12px}.brand-mark{border:0;color:white;background:linear-gradient(140deg,#218890,#165a71);width:44px;height:44px;border-radius:14px;box-shadow:0 5px 12px #17798828;transition:transform .22s}.brand:hover .brand-mark{transform:rotate(-6deg)}.brand small{font-family:var(--font-body);letter-spacing:.12em;font-size:.75rem;color:var(--body-muted);font-weight:500;line-height:1.5;margin-top:1px}.role-switch{border:0;background:#e9f0f4;border-radius:30px;padding:5px;gap:3px}.role-switch button{min-height:36px;padding:7px 18px;border-radius:24px;color:var(--body-muted);font-weight:500;transition:background .2s,box-shadow .2s,color .2s}.role-switch button[aria-pressed=true]{background:white;box-shadow:0 3px 10px #2b557919;color:var(--color-accent-800)}.role-switch button:hover{background:#ffffff9c;color:var(--color-accent-800)}.demo-button{border-color:#dce8ed;border-radius:8px;background:#ffffff8c;min-height:32px;color:var(--body-muted)}.demo-button:hover{background:white;border-color:var(--color-accent-300)}
.workspace{grid-template-columns:226px minmax(0,1fr)}.sidebar{border-right:1px solid #e2eaf09e;background:#ffffff85;padding:36px 17px 26px;gap:34px}.identity{padding:0 10px;gap:12px}.identity strong{font-size:.9375rem;font-weight:600}.identity small{font-size:.8125rem}.sidebar nav{gap:9px}.nav-button{border-radius:12px;gap:13px;padding:14px;color:#5f7384;transition:background .2s,transform .2s}.nav-button.active{background:linear-gradient(115deg,#d9eeed,#e6f2f3);color:#17636e;box-shadow:none;font-weight:600}.nav-button:hover{transform:translateX(3px);background:#e8f3f4}.sidebar-foot{border:0;border-radius:18px;background:linear-gradient(130deg,#e9f5f3,#e8f0f8);padding:20px 17px;color:#5b7587;font-size:.8125rem;line-height:1.65}.sidebar-foot>svg{display:block;width:25px;height:25px;color:var(--color-accent);margin-bottom:10px}.sidebar-foot strong{font-family:var(--font-heading);font-size:.875rem;font-weight:700;line-height:1.5;margin-bottom:6px}.sidebar-foot .text-link{font-size:.8125rem}#main{padding:34px clamp(26px,3.4vw,54px) 48px;max-width:1440px}.page-heading{margin-bottom:26px;gap:14px}.page-heading h1{margin-top:8px}.page-heading p{font-size:1rem;margin-top:8px}.greeting-actions{display:flex;align-items:center;gap:14px}.greeting-actions>.avatar{width:52px;height:52px;border:3px solid white;box-shadow:var(--shadow-md)}.icon-button{border-color:var(--color-divider);background:white;border-radius:14px;color:#315b72;transition:transform .2s,box-shadow .2s,background .2s;flex:none}.icon-button:hover{background:var(--color-accent-100);box-shadow:0 5px 16px #204d6812;transform:translateY(-2px)}.unread{width:7px;height:7px;top:9px;right:9px;background:#df9a60;border:1px solid white}
.avatar{position:relative;overflow:hidden;border:2px solid #fff;background:#e0eff5;color:#2e697a;font-family:var(--font-heading);font-size:.95rem;font-weight:700;width:46px;height:46px;box-shadow:0 2px 7px #24566f10}.avatar>span{grid-area:1/1;line-height:1}.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 36%;margin:0}.avatar.large{width:86px;height:86px;font-size:1.6rem;border-width:3px}.avatar-rp{background:#e9edf9;color:#5b6595}.avatar-ek{background:#f5e9e2;color:#986d55}.avatar-mo{background:#e4f1eb;color:#467567}.avatar-jk{background:#e4edf8;color:#4977a3}.avatar-mt{background:#f5eadd;color:#9c7444}
.panel{border:1px solid #e7eef3;background:white;border-radius:24px;padding:26px;gap:20px;box-shadow:var(--shadow-sm)}.btn{border-radius:13px;font-family:var(--font-body);font-weight:600;min-height:46px;font-size:.9375rem;padding:12px 18px;transition:transform .2s,box-shadow .2s,background .2s;border-width:1px}.btn-primary{background:linear-gradient(120deg,#19888e,#177385);border-color:transparent;color:white;box-shadow:0 5px 12px #147a8820}.btn-primary:hover{background:linear-gradient(120deg,#167a82,#155f73);transform:translateY(-2px);box-shadow:0 8px 20px #147a8833}.btn-primary:active,.btn-secondary:active{transform:translateY(1px) scale(.985)}.btn-secondary{background:#f8fbfd;border-color:#dfe9ef;color:#2e586f}.btn-secondary:hover{background:#edf7f6;border-color:#b8d8db;transform:translateY(-1px)}.btn svg{transition:transform .2s}.btn:hover>svg:last-child{transform:translateX(3px)}.tag{border-radius:8px;padding:5px 10px;font-size:.75rem;line-height:1.45;font-weight:500}.tag-outline{border:1px solid #dbe8ee;background:#f7fafc;color:#577182}.tag-accent{background:#e5f4f0;color:#276f65;border:none}.text-link{font-size:.875rem;font-weight:600;color:#187681;text-decoration:none;display:inline-flex;align-items:center;gap:7px;transition:color .2s}.text-link svg{width:15px;height:15px;transition:transform .2s}.text-link:hover{color:#154e61;text-decoration:underline;text-underline-offset:4px}.text-link:hover svg{transform:translateX(3px)}.back{font-weight:500;gap:9px;margin-bottom:22px}.back:hover{color:var(--color-accent-900)}.back svg{transition:transform .2s}.back:hover svg{transform:translateX(-3px)}
.home-top,.home-lower{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:26px}.home-top{margin-bottom:26px;align-items:stretch}.case-panel{border:0;position:relative;overflow:hidden;background:radial-gradient(ellipse at 96% 0,#388f98ad,transparent 65%),linear-gradient(140deg,#234c65,#153c53);color:#fff;padding:31px 32px;gap:22px;justify-content:space-between;box-shadow:0 14px 30px #1b5b7124}.case-kicker{display:flex;align-items:center;gap:8px;font-size:.875rem;font-weight:500;color:#e6f4f5}.case-kicker svg{width:19px;height:19px}.case-top .tag{color:#dceef3;background:#ffffff13;border:1px solid #ffffff23;font-size:.75rem}.case-panel h2{font-family:var(--font-heading);font-size:clamp(1.6rem,2.25vw,2.25rem);line-height:1.3;letter-spacing:-.035em;font-weight:600;margin:0 0 12px}.case-panel .diagnosis-meta{margin:0;font-size:.9375rem;color:#b9e4e5}.case-panel>p{color:#d5e5ed;font-size:.9375rem;max-width:470px;line-height:1.7}.case-panel .btn{margin:0;background:#fff;color:#1b5869;box-shadow:0 5px 16px #061e3320;justify-content:space-between;border:0;min-width:260px}.case-panel .btn:hover{background:#eaf6f3;box-shadow:0 7px 20px #061e3333}.case-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.case-document-link{border:0;padding:0;background:none;color:#d1e6ed;display:flex;align-items:center;gap:8px;font-size:.8125rem;text-align:left}.case-document-link svg{width:16px;height:16px}.case-document-link:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.doctor-spotlight{border-radius:24px;overflow:hidden;background:white;border:1px solid #e1ebef;box-shadow:var(--shadow-md);display:flex;flex-direction:column;min-width:0}.spotlight-photo{position:relative;height:220px;overflow:hidden;background:#e3f1ef;flex:auto}.spotlight-photo>img{width:100%;height:100%;min-height:220px;object-fit:cover;object-position:50% 34%;transition:transform 1s cubic-bezier(.22,1,.36,1)}.doctor-spotlight:hover .spotlight-photo>img{transform:scale(1.04)}.portrait-caption{position:absolute;top:13px;right:13px;background:#ffffffd9;color:#4c6c73;backdrop-filter:blur(6px);border-radius:20px;padding:4px 9px;font-size:.75rem}.spotlight-body{padding:20px 23px 23px;position:relative;z-index:1;background:white;flex:none}.spotlight-body .eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:6px}.spotlight-body h2{font-size:1.32rem;letter-spacing:-.035em;margin:0 0 4px}.spotlight-body p{font-size:.875rem;color:var(--body-muted);margin:0 0 15px}.spotlight-actions{display:flex;gap:10px}.spotlight-actions .btn{flex:1;min-width:0}.spotlight-actions .icon-button{width:46px;height:46px}
.home-lower{align-items:start}.home-lower>.stack{gap:25px}.quick-grid{gap:16px}.quick{border:1px solid #e3edf2;border-radius:18px;background:#fff;box-shadow:var(--shadow-sm);display:flex;flex-direction:row;align-items:center;padding:18px 15px;gap:12px;position:relative;transition:transform .22s,box-shadow .22s,border-color .22s;min-width:0}.quick:hover{transform:translateY(-4px);border-color:#b8d8dc;background:white;box-shadow:var(--shadow-md)}.quick>svg{width:16px;height:16px;color:#7a94a6;margin:0 0 0 auto}.quick-symbol{width:45px;height:45px;border-radius:14px;background:#e7f2fa;color:#3f7caa;display:grid;place-items:center;flex:none}.quick-symbol svg{width:24px;height:24px;margin:0;color:inherit}.quick-prescriptions .quick-symbol{background:#fbefe4;color:#b9854f}.quick-content{display:flex;flex-direction:column;gap:5px;min-width:0}.quick strong{font-family:var(--font-body);font-weight:600;font-size:.9375rem;line-height:1.45}.quick small{font-size:.8125rem;color:var(--body-muted);line-height:1.4}.section-title{margin:0 0 15px;gap:12px}.section-title h2{font-size:1.12rem;line-height:1.5}.appointment-empty{display:flex;align-items:center;gap:20px;background:#ecf4f9;border:1px solid #e0eaf1;border-radius:20px;padding:25px}.appointment-symbol{width:55px;height:55px;display:grid;place-items:center;border-radius:18px;background:#fff;box-shadow:0 5px 15px #426d8c0b;color:#6890ad;flex:none}.appointment-symbol svg{width:28px;height:28px}.appointment-empty strong{font-size:.9375rem;font-weight:600;line-height:1.55}.appointment-empty p{font-size:.875rem;color:var(--body-muted);margin:6px 0 10px}.message-label{font-size:.8125rem;color:#738796}.message-home-body{width:100%;border:1px solid #e7eef3;border-radius:20px;padding:20px;background:white;display:flex;gap:14px;text-align:left;align-items:flex-start;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s}.message-home-body:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.message-home-body>.avatar{width:46px;height:46px}.message-home-body>.row-text strong{font-size:.9375rem;font-weight:600}.message-excerpt{display:block;margin-top:6px;color:#637b8c;font-size:.875rem;line-height:1.65}.message-home-body>svg{width:17px;height:17px;color:#7893a2;margin-top:14px}.journey-panel{padding:24px;gap:22px}.panel-head h2{font-size:1.12rem}.progress-fraction{color:var(--color-accent-700);font-family:var(--font-heading);font-weight:800;font-size:1.3rem;white-space:nowrap}.progress-fraction small{font-weight:500;font-size:.8125rem;color:var(--body-muted)}.journey-progress{height:6px;width:100%;background:#edf2f5;border-radius:10px;overflow:hidden;margin-top:-9px}.journey-progress>span{display:block;height:100%;border-radius:10px;background:linear-gradient(90deg,#1f8f92,#75b8a8);transition:width .55s ease}.steps{gap:0}.steps li{padding-bottom:27px;gap:13px}.steps li:not(:last-child):before{left:16px;top:38px;bottom:7px;background:#e4edf0}.step-number{width:34px;height:34px;border-radius:50%;border:1px solid #e4ebf0;background:#f3f7fa;font-size:.8125rem;color:#8498a6;font-weight:600}.step-number.done{color:#368476;background:#e4f3ed;border-color:transparent}.step-number.current{color:white;background:var(--color-accent);border-color:transparent;box-shadow:0 0 0 5px #eaf5f2}.steps strong{font-size:.875rem;font-weight:600;line-height:1.5;margin-top:3px}.steps small{font-size:.8125rem;line-height:1.6;margin-top:4px}.steps .text-link{font-size:.8125rem;margin-top:9px}.bottom-note{font-size:.8125rem;color:#6d8291;line-height:1.65;margin-top:24px}
/* Specialist directory and detail pages */
.search{border-radius:15px;min-height:54px;background:#fff;box-shadow:var(--shadow-sm);border-color:#e0eaf0;max-width:680px}.search:focus-within{border-color:#72b4b7;box-shadow:0 0 0 3px #16839210}.search input{font-size:1rem}.filters{gap:9px;margin-bottom:26px}.filter{border:1px solid #e0eaf0;background:white;border-radius:22px;min-height:38px;font-size:.875rem;padding:8px 16px;transition:all .2s}.filter.active{background:#236879;border-color:#236879;box-shadow:0 4px 12px #1d758519;color:white}.filter:hover{transform:translateY(-1px)}.doctor-grid{gap:24px}.doctor-card{padding:0;gap:0;border:1px solid #e2ebf1;background:#fff;border-radius:22px;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s,border-color .25s}.doctor-card:hover{background:#fff;transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:#b9d8da}.doctor-card-visual{width:100%;display:flex;gap:15px;align-items:center;min-height:130px;padding:22px 24px;background:linear-gradient(115deg,#edf6f5,#e5f1f7);position:relative}.doctor-patel .doctor-card-visual{background:linear-gradient(115deg,#ecf0fa,#f2f5fd)}.doctor-kovac .doctor-card-visual{background:linear-gradient(115deg,#f8efe9,#f9f4ef)}.doctor-osei .doctor-card-visual{background:linear-gradient(115deg,#e9f5ef,#eff8f4)}.doctor-card-visual>.avatar{width:90px;height:90px;border:3px solid #fff;box-shadow:0 7px 20px #1e4e6220;z-index:1}.doctor-card-visual>.tag{margin-left:auto;max-width:145px;align-self:center;z-index:1}.specialty-symbol{position:absolute;top:15px;right:15px;color:#266e7c0e;transform:rotate(-13deg)}.specialty-symbol svg{width:95px;height:95px;stroke-width:1}.doctor-card-info{padding:22px 25px 18px;display:flex;flex-direction:column;gap:6px}.doctor-name{font-family:var(--font-heading);font-size:1.22rem;font-weight:700;letter-spacing:-.03em}.doctor-card-info>.muted{font-size:.9375rem}.doctor-experience{font-size:.8125rem;color:#7d8e9c;margin-top:4px}.doctor-card .card-footer{margin:0 24px 20px;padding-top:16px;border-top:1px solid #edf1f5;min-width:0;font-size:.8125rem;color:#5a7488}.card-footer>.inline{gap:8px;min-width:0}.card-footer>.inline svg{width:16px;height:16px}.card-footer .doctor-arrow{height:32px;width:32px;border-radius:50%;display:grid;place-items:center;background:#eef7f5;flex:none;color:#337e85}.doctor-card:hover .doctor-arrow{transform:translateX(2px);background:#e1f2ec}.specialist-detail .profile-head{gap:18px}.profile-head h2{font-size:1.55rem;line-height:1.35}.profile-head p{font-size:.9375rem}.specialist-detail .profile-head .avatar{width:105px;height:105px}.profile-head>.avatar{box-shadow:0 8px 24px #27667b12}.case-note{border-color:#68aaa7;background:#f3faf8;border-radius:0 14px 14px 0;padding:17px 20px}.slot{border-radius:13px;background:#f8fbfd;min-height:76px;text-align:left;font-size:.875rem}.slot strong{font-size:1.08rem;display:inline-block;margin-top:3px}.slot:hover{border-color:#86bebd}.detail-grid>.panel>h2{font-size:1.35rem}.booking-detail{border-color:var(--color-divider);background:#f2f8f9;border-radius:16px;border:0;padding:24px}.booking-detail strong{font-family:var(--font-heading);margin-bottom:5px}.success-panel{padding:38px;box-shadow:var(--shadow-lg)}.success-panel h1{font-size:2rem;line-height:1.35}.success-icon{width:74px;height:74px;border:0;background:#e4f4ed;border-radius:50%;color:#3b947c;box-shadow:0 0 0 9px #f1f9f5}.success-panel>.eyebrow{margin-top:9px}
/* Doctor workspace and shared records */
.stats{gap:20px}.stat{border:0;background:linear-gradient(140deg,#fff,#f5fafc);padding:23px 25px;box-shadow:var(--shadow-sm)}.stat:nth-child(2){background:linear-gradient(130deg,#edf8f3,#e2f2ec)}.stat:nth-child(3){background:linear-gradient(130deg,#fdf5eb,#f8eee1)}.count{font-family:var(--font-heading);font-size:2.1rem;font-weight:700;color:#246879}.stat:nth-child(2) .count{color:#438870}.stat:nth-child(3) .count{color:#a27e4b}.stat p{font-size:.875rem}.availability{background:#edf5f3;padding:10px 14px;border-radius:14px;color:#437469;max-width:270px}.availability input{width:18px;height:18px;flex:none}.rows:has(>.queue-row){gap:13px}.queue-row{border:1px solid #e6edf2!important;background:white!important;border-radius:19px;padding:22px 25px;box-shadow:var(--shadow-sm);align-items:center;transition:box-shadow .2s,transform .2s}.queue-row:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:#bbd7dc!important}.queue-row .avatar{width:48px;height:48px}.queue-row .row-text strong{font-weight:600}.queue-row .row-text strong small{display:block;font-size:.8125rem;margin-top:5px}.queue-row .row-text p{font-size:.875rem;margin-top:7px;line-height:1.55}.queue-row>.tag{font-size:.75rem}.row-icon{border:0;border-radius:12px;background:#edf5fb;width:44px;height:50px;color:#4c83ad}.row{border-color:#eaf0f4}.row-text strong{font-weight:600;font-size:.9375rem}.row-text p{font-size:.875rem}.empty{border:1px solid #e3edf2;background:#fff;border-radius:22px;gap:12px;padding:40px 26px;box-shadow:var(--shadow-sm)}.empty>svg{width:38px;height:38px;background:#eef6f9;padding:9px;box-sizing:content-box;border-radius:18px}.empty>strong{font-family:var(--font-heading);font-size:1.1rem;font-weight:600}.profile-menu .rows{background:#fff;border:1px solid #e7edf2;border-radius:22px;padding:8px 22px;box-shadow:var(--shadow-sm)}.profile-menu .row>svg{color:#4e8293;width:20px;height:20px}.profile-menu .row-text{font-size:.9375rem}.notices{padding:5px 22px;border:1px solid #e4ecf2;border-radius:22px;background:#fff;box-shadow:var(--shadow-sm)}.notification.unseen{border-left:0;background:linear-gradient(90deg,#eff8f4,transparent);border-radius:14px;padding-left:14px}.notification>svg{color:#468d96}.notices .row.clickable{padding:20px 0}.notices .row.clickable:hover{background:#f7fbfc}.notices .row.clickable p{line-height:1.65}
/* Conversation: stable portraits and animated message arrival. */
.conversation{border:1px solid #e1ebf1;background:white;border-radius:24px;box-shadow:var(--shadow-md);max-width:900px;overflow:hidden;min-height:550px}.conversation-head{border-bottom:1px solid #e9eff3;padding:20px 24px;background:white}.conversation-head .row-text strong{font-family:var(--font-heading);font-size:1.1rem;font-weight:700}.conversation-head .row-text small{font-size:.8125rem}.conversation-head .avatar{width:50px;height:50px}.chat-log{background:radial-gradient(ellipse at 15% 15%,#e9f4f555,transparent 65%),#f6f9fc;padding:28px;min-height:330px;gap:20px;max-height:49vh}.bubble{border:1px solid #e7edf1;box-shadow:0 3px 8px #214d6605;border-radius:17px 17px 17px 4px;background:white;padding:14px 18px;max-width:80%;font-size:.9375rem;line-height:1.7}.mine .bubble{background:linear-gradient(130deg,#277f88,#22687b);border-color:transparent;border-radius:17px 17px 4px 17px;box-shadow:0 5px 12px #185f7820;color:white}.bubble-wrap>small{font-size:.75rem;color:#7a8f9d;margin:0 4px}.composer{border-color:#e8eff4;background:#fff;padding:17px;align-items:end}.composer textarea{border-radius:14px;background:#f4f8fb;border:1px solid #e3ecf2;padding:13px 15px;min-height:48px;font-size:.9375rem}.composer textarea:focus{background:white}.composer .btn{border-radius:14px;min-height:48px}.chat-hint{background:white;color:#738795;font-size:.75rem;padding:0 20px 15px}.conversation .chat-log>.empty{background:transparent;border:0;box-shadow:none}
/* Video remains an explicitly labelled simulation. */
.call{position:relative;isolation:isolate;min-height:620px;max-width:900px;padding:26px;justify-content:space-between;border-radius:26px;overflow:hidden;background:#173d52;box-shadow:var(--shadow-lg);gap:190px}.call-backdrop{position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 50% 35%,#32677b,#102c41);display:grid;place-items:center}.call-backdrop>img{width:100%;height:100%;object-fit:cover;object-position:50% 27%;opacity:.92;transition:opacity .25s}.call:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#09273566,transparent 26%,#102a3b22 40%,#0b253bec 89%);z-index:-1}.call-topline{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px}.call-demo{background:#173b5299;backdrop-filter:blur(12px);color:white;padding:8px 13px;border-radius:22px;display:flex;align-items:center;gap:8px;font-size:.8125rem}.call-demo svg{width:17px;height:17px}.call-topline>.tag{color:white;background:#173b5280;backdrop-filter:blur(12px)}.call-caption{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.call h1{font-family:var(--font-heading);font-size:2rem;line-height:1.35;color:white;margin:0}.call p{font-size:.9375rem;color:#d6e6ef}.call-controls{margin:10px 0 3px;gap:14px}.call-controls button{background:#ffffff20;border:1px solid #ffffff38;backdrop-filter:blur(10px);position:relative;transition:transform .2s,background .2s}.call-controls button:hover{transform:translateY(-3px);background:#ffffff38}.call-controls button[aria-pressed=true]{background:#ffffffdf;color:#345267;border-color:transparent}.call-controls .hangup{background:#d05b59;border:0;width:72px;border-radius:30px}.call-controls .hangup:hover{background:#bc4649}.control-slash{height:25px;width:2px;background:currentColor;position:absolute;transform:rotate(-42deg);box-shadow:0 0 0 1px #335868}.call small{color:#c4d9e6;font-size:.75rem;line-height:1.55}.call.camera-off .call-backdrop .avatar{width:110px;height:110px;position:absolute;top:120px}.call.camera-off .avatar img{display:none}.call.camera-off .avatar>span{font-size:1.7rem}.login{background:white;padding:36px;box-shadow:var(--shadow-md)}.login .brand-mark{border-radius:19px}.login h1{font-size:2.5rem}
/* Transitions describe actions; no continuous flashing or artificial activity. */
@keyframes enter-page{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes enter-card{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes grow-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes message-arrive{from{opacity:.2;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes check-arrive{from{transform:scale(.75);opacity:.2}to{transform:scale(1);opacity:1}}
.page-enter>.page-heading,.page-enter>.back{animation:enter-page .4s cubic-bezier(.22,1,.36,1) both}.page-enter .home-top>.case-panel{animation:enter-card .55s cubic-bezier(.22,1,.36,1) both}.page-enter .doctor-spotlight{animation:enter-card .65s .08s cubic-bezier(.22,1,.36,1) both}.page-enter .home-lower{animation:enter-page .65s .12s cubic-bezier(.22,1,.36,1) both}.page-enter .journey-progress>span{transform-origin:left;animation:grow-line .85s .3s cubic-bezier(.22,1,.36,1) both}.page-enter .doctor-card{animation:enter-card .5s cubic-bezier(.22,1,.36,1) both}.page-enter .doctor-card:nth-child(2){animation-delay:70ms}.page-enter .doctor-card:nth-child(3){animation-delay:120ms}.page-enter .doctor-card:nth-child(4){animation-delay:170ms}.bubble-wrap:last-of-type{animation:message-arrive .24s ease-out}.page-enter .success-icon{animation:check-arrive .45s cubic-bezier(.2,1.5,.5,1) both}.page-enter .stats,.page-enter .queue-row{animation:enter-card .5s ease-out both}dialog{background:white;border:1px solid #e2edf0;border-radius:24px;box-shadow:0 28px 100px #06263640;padding:28px}dialog::backdrop{background:#14334d7a;backdrop-filter:blur(5px)}dialog[open]{animation:enter-card .24s ease-out}dialog h2{font-size:1.45rem}#toast{border-radius:15px;background:#204e62;box-shadow:0 12px 35px #0d324b26;padding:14px 22px;font-size:.875rem}
@media(min-width:1550px){.workspace{grid-template-columns:246px 1fr}#main{padding-top:44px}.home-top,.home-lower{gap:30px}.spotlight-photo{height:245px}.case-panel{padding:34px 38px;gap:25px}}
@media(max-width:1200px){.workspace{grid-template-columns:194px 1fr}.sidebar{padding-inline:13px}#main{padding-inline:27px}.home-top,.home-lower{grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr);gap:22px}.case-panel{padding:26px;gap:20px}.case-panel h2{font-size:1.7rem}.case-top{flex-wrap:wrap;gap:10px}.case-panel .btn{min-width:0;width:100%;font-size:.875rem}.case-actions{align-items:stretch}.spotlight-photo{height:240px}.spotlight-body{padding:19px}.quick-grid{gap:13px}.quick{padding:16px 13px;gap:10px;flex-wrap:wrap;align-items:flex-start}.quick-symbol{width:40px;height:40px}.quick-content{flex:1;min-width:110px}.quick>svg{display:none}.journey-panel{padding:22px 19px}.journey-panel .panel-head h2{font-size:1.08rem}.appointment-empty{padding:22px 19px;gap:15px}.appointment-empty strong{font-size:.875rem}.doctor-card .card-footer span:last-child{max-width:none}}
@media(min-width:741px) and (max-width:960px){.home-top{grid-template-columns:1fr}.doctor-spotlight{display:grid;grid-template-columns:180px 1fr}.spotlight-photo{height:220px}.spotlight-body{align-self:center}.home-lower{grid-template-columns:1fr}.journey-panel{max-width:none}.case-panel h2{font-size:1.9rem}.desktop-break{display:none}.doctor-grid{grid-template-columns:1fr}.page-heading h1{font-size:2rem}.stats{gap:12px}.stat{padding:20px 15px}.availability{font-size:.8125rem;padding:10px;max-width:175px}.call{min-height:560px}}
@media(max-width:740px){.topbar{min-height:79px;height:auto;padding:16px 21px;gap:13px;background:#ffffffd9}.brand{font-size:1.45rem;gap:9px}.brand-mark{width:39px;height:39px;border-radius:13px}.brand small{display:none}.top-right{gap:8px}.role-switch{padding:4px}.role-switch button{padding:6px 12px;min-height:32px;font-size:.8125rem}.demo-button{font-size:.75rem;min-height:29px;padding:4px 7px}.workspace{display:block}.sidebar{display:none}#main{padding:26px 20px 118px}.page-heading{margin-bottom:23px;gap:12px}.page-heading h1{font-size:1.95rem;line-height:1.3;margin-top:6px}.page-heading p{font-size:.875rem;line-height:1.5;margin-top:7px}.page-heading .eyebrow{font-size:.75rem;letter-spacing:.12em}.greeting-actions{gap:8px}.greeting-actions>.avatar{display:none}.icon-button{width:41px;height:41px;border-radius:13px}.home-top,.home-lower{grid-template-columns:1fr;gap:20px}.home-top{margin-bottom:20px}.case-panel{padding:25px;gap:20px;border-radius:24px}.case-panel h2{font-size:1.77rem;line-height:1.35}.case-top{flex-wrap:nowrap;gap:9px}.case-kicker{font-size:.8125rem}.case-top .tag{font-size:.75rem;padding:4px 7px}.case-panel>p{font-size:.9375rem;line-height:1.7}.case-panel .diagnosis-meta{font-size:.875rem}.case-panel .btn{font-size:.9375rem;width:100%;min-height:48px}.case-actions{gap:14px}.case-document-link{font-size:.8125rem}.desktop-break{display:none}.doctor-spotlight{display:grid;grid-template-columns:36% 1fr;border-radius:21px;min-height:194px}.spotlight-photo{height:100%;min-height:194px}.spotlight-photo>img{height:100%;min-height:194px;object-position:50% 30%}.portrait-caption{font-size:.75rem;top:auto;bottom:10px;right:7px;left:7px;text-align:center;padding:3px 5px}.spotlight-body{padding:20px 17px;align-self:center}.spotlight-body .eyebrow{font-size:.75rem;letter-spacing:.07em}.spotlight-body h2{font-size:1.08rem;margin-bottom:6px;line-height:1.35}.spotlight-body p{font-size:.8125rem;margin-bottom:12px;line-height:1.5}.spotlight-actions{gap:7px}.spotlight-actions .btn{font-size:.8125rem;padding:9px 10px;min-height:40px;gap:6px}.spotlight-actions .btn svg{width:16px;height:16px}.spotlight-actions .icon-button{width:38px;height:40px;border-radius:12px}.home-lower>.stack{gap:24px}.quick-grid{gap:12px}.quick{padding:17px 15px;display:flex;flex-direction:column;gap:12px;align-items:flex-start;flex-wrap:nowrap;border-radius:18px}.quick-symbol{width:42px;height:42px;border-radius:13px}.quick-symbol svg{width:23px;height:23px}.quick-content{min-width:0;gap:5px}.quick strong{font-size:.875rem;line-height:1.5}.quick small{font-size:.75rem}.section-title h2{font-size:1.05rem;line-height:1.5}.section-title .text-link{font-size:.8125rem;flex:none}.appointment-empty{padding:22px 19px;gap:15px;align-items:flex-start}.appointment-symbol{width:43px;height:47px;border-radius:14px}.appointment-symbol svg{width:24px;height:24px}.appointment-empty strong{font-size:.875rem}.appointment-empty p{font-size:.8125rem;line-height:1.6}.appointment-empty .text-link{font-size:.8125rem}.message-home-body{padding:18px 16px;gap:11px}.message-home-body>.avatar{width:40px;height:40px}.message-home-body>.row-text strong{font-size:.875rem}.message-excerpt{font-size:.8125rem;line-height:1.7}.message-home-body>svg{width:14px}.journey-panel{padding:24px 23px;gap:23px}.journey-panel .panel-head h2{font-size:1.12rem}.steps strong{font-size:.9375rem}.steps small{font-size:.8125rem}.bottom-note{font-size:.75rem;line-height:1.65}.mobile-nav{left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));background:#ffffffed;backdrop-filter:blur(20px);border:1px solid #e0eaf0;box-shadow:0 6px 35px #1f506422;border-radius:23px;padding:7px 5px;gap:2px}.mobile-nav button{padding:8px 4px;min-height:56px;border-radius:16px;font-size:.75rem;gap:5px;transition:background .2s;color:#78909e;min-width:0}.mobile-nav button.active{background:#e6f4f1;color:#247682;font-weight:600}.mobile-nav button svg{width:21px;height:21px}.mobile-nav button.active svg{stroke-width:2}.mobile-nav button:active{transform:scale(.96)}.doctor-grid{gap:20px}.doctor-card{padding:0;border-radius:21px}.doctor-card-visual{padding:20px 23px;min-height:120px}.doctor-card-visual>.avatar{width:82px;height:82px}.doctor-card-info{padding:19px 23px 17px}.doctor-name{font-size:1.18rem}.doctor-card .card-footer{margin:0 23px 19px}.doctor-card .card-footer>.inline{font-size:.8125rem}.doctor-card .card-footer .doctor-arrow{max-width:none}.doctor-card-visual>.tag{font-size:.75rem;max-width:140px}.profile-head h2{font-size:1.3rem}.specialist-detail .profile-head .avatar{width:75px;height:75px}.specialist-detail .profile-head{gap:14px}.profile-head p{font-size:.875rem}.panel{padding:23px;border-radius:21px}.case-panel{padding:25px}.queue-row{padding:20px!important;gap:13px;grid-template-columns:43px 1fr;border-radius:18px}.queue-row .avatar{width:43px;height:43px}.queue-row>.tag{grid-column:2;justify-self:start}.queue-row .row-text strong{font-size:.9375rem}.stats{gap:11px}.stat{padding:17px 14px;border-radius:17px;gap:10px}.stat p{font-size:.75rem;line-height:1.4}.count{font-size:1.8rem}.page-heading:has(.availability){flex-wrap:wrap}.page-heading .availability{max-width:none;font-size:.8125rem;margin-top:4px;padding:9px 12px}.case-note{padding:16px;font-size:.9375rem}.success-panel{padding:31px 24px}.success-panel h1{font-size:1.8rem}.success-icon{width:65px;height:65px;margin-bottom:4px}.conversation{min-height:calc(100dvh - 255px);border-radius:21px}.conversation-head{padding:17px 15px;gap:10px}.conversation-head .avatar{width:42px;height:42px}.conversation-head .row-text strong{font-size:.9375rem}.conversation-head .row-text small{font-size:.75rem}.chat-log{padding:20px 15px;min-height:270px;max-height:49vh}.bubble{max-width:93%;font-size:.9375rem;padding:12px 15px}.composer{padding:13px;gap:8px}.composer textarea{font-size:.9375rem;padding:12px;min-height:48px}.composer .btn{padding:12px;min-width:46px}.chat-hint{font-size:.75rem;padding:0 14px 14px}.notices{padding:4px 16px}.notices .row.clickable{gap:10px}.notices .row>.meta{font-size:.75rem}.profile-menu .rows{padding:8px 18px}.call{min-height:540px;padding:19px;gap:170px;border-radius:23px}.call-topline{gap:7px}.call-demo{font-size:.75rem;padding:7px 10px;gap:6px}.call-demo svg{width:15px;height:15px}.call-topline>.tag{font-size:.75rem;padding:5px 8px}.call h1{font-size:1.65rem}.call p{font-size:.875rem}.call small{font-size:.75rem}.call-controls{gap:14px;margin-top:10px}.call-controls button{width:52px;height:52px}.call-controls .hangup{width:68px}.call-backdrop>img{object-position:50% 20%}.call.camera-off .call-backdrop .avatar{top:110px}.login{padding:32px 24px}dialog{padding:24px;border-radius:23px}dialog h2{font-size:1.3rem}#toast{bottom:104px;font-size:.875rem;padding:13px 19px}}
@media(max-width:380px){.topbar{padding-inline:16px;gap:8px}.brand{font-size:1.3rem;gap:7px}.brand-mark{width:34px;height:34px;border-radius:11px}.brand-mark svg{width:23px;height:23px}.role-switch button{padding:6px 9px;font-size:.75rem}.role-switch{padding:3px}.top-right{gap:6px}.demo-button{font-size:.75rem;padding:3px 6px}#main{padding-inline:17px}.page-heading h1{font-size:1.8rem}.case-panel{padding:22px}.case-panel h2{font-size:1.58rem}.case-top .tag{font-size:.75rem}.case-kicker{font-size:.75rem}.spotlight-body{padding:17px 13px}.spotlight-body h2{font-size:1rem}.spotlight-body p{font-size:.75rem}.spotlight-body .eyebrow{font-size:.75rem}.spotlight-actions .icon-button{width:32px}.spotlight-actions .btn{padding:8px 7px;font-size:.75rem}.quick{padding:15px 13px}.quick strong{font-size:.8125rem}.quick small{font-size:.75rem}.section-title h2{font-size:.9375rem}.section-title .text-link{font-size:.75rem}.appointment-empty{padding:19px 16px;gap:13px}.call-topline>.tag{font-size:.75rem}.call-demo{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.doctor-card:hover,.quick:hover,.message-home-body:hover,.btn:hover,.icon-button:hover,.nav-button:hover{transform:none}.doctor-spotlight:hover .spotlight-photo>img{transform:none}}
