/* ===== DESKTOP LAYOUT (768px+) ===== */
@media(min-width:768px){
body{background:var(--bg)}

/* Shell */
.desktop-shell{display:flex;height:100vh;width:100%}

/* Sidebar */
.desktop-sidebar{width:240px;background:var(--card);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;height:100vh;position:relative}
.desktop-sidebar-logo{padding:24px 24px 28px;font-size:22px;font-weight:700;cursor:pointer;letter-spacing:-.3px}
.desktop-sidebar-logo span{color:var(--accent)}
.desktop-sidebar-nav{flex:1;padding:0 12px}
.desktop-nav-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;cursor:pointer;color:var(--navy-muted);font-size:14px;font-weight:500;transition:all .15s;margin-bottom:2px}
.desktop-nav-item:hover{background:var(--bg);color:var(--navy)}
.desktop-nav-item.on{background:var(--accent-light);color:var(--accent);font-weight:600}
.desktop-nav-item svg{width:18px;height:18px;flex-shrink:0}
.desktop-sidebar-user{padding:14px 16px;border-top:1px solid var(--border);display:flex;align-items:center;gap:10px;cursor:pointer;transition:background .15s;border-radius:0}
.desktop-sidebar-user:hover{background:var(--bg)}
.desktop-sidebar-user .avatar{width:34px;height:34px;font-size:12px}
.desktop-sidebar-user-info{flex:1;min-width:0}
.desktop-sidebar-user-info p{font-size:13px;font-weight:500;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.desktop-sidebar-user-info small{font-size:11px;color:var(--navy-muted)}
.desktop-sidebar-user-chevron{color:var(--navy-muted);transition:transform .2s}
.desktop-sidebar-user-chevron.flipped{transform:rotate(180deg)}

/* Profile popup */
.desktop-profile-popup{position:absolute;bottom:64px;left:12px;right:12px;background:var(--card);border-radius:12px;box-shadow:0 4px 24px rgba(27,42,74,.12),0 1px 4px rgba(27,42,74,.08);padding:0;z-index:50;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .2s ease,transform .2s ease;overflow:hidden}
.desktop-profile-popup.open{opacity:1;transform:translateY(0);pointer-events:auto}
.dpp-header{display:flex;align-items:center;gap:12px;padding:16px}
.dpp-name{font-size:14px;font-weight:600;margin:0}
.dpp-email{font-size:12px;color:var(--navy-muted);margin:2px 0 0}
.dpp-stats{padding:0 16px 12px}
.dpp-stat-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:12px}
.dpp-stat-label{color:var(--navy-muted)}
.dpp-stat-value{font-weight:500;font-size:12px}
.dpp-usage-bar{width:60px;height:4px;border-radius:2px;background:var(--border);overflow:hidden;display:inline-block;vertical-align:middle;margin-right:6px}
.dpp-usage-fill{height:100%;border-radius:2px;background:var(--green);width:0%}
.dpp-divider{height:1px;background:var(--border)}
.dpp-menu-item{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;font-size:13px;font-weight:500;color:var(--navy-muted);transition:background .15s}
.dpp-menu-item:hover{background:var(--bg);color:var(--navy)}
.dpp-signout{color:var(--red)}
.dpp-signout:hover{background:var(--red-light);color:var(--red)}

/* Main content area */
.app{max-width:none;flex:1;min-width:0;border:none;position:relative;overflow-y:auto;height:100vh;background:var(--bg)}
.app-header{display:none!important}
.bottom-nav{display:none!important}

/* ── Home: two-column ── */
#v-home{padding:32px}
.desktop-home-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px;max-width:960px;align-items:center;min-height:calc(100vh - 120px)}
.desktop-home-left{display:flex;flex-direction:column;gap:20px}
.desktop-home-right{display:flex;flex-direction:column;align-items:center;justify-content:center}
.desktop-home-right .rec-wrap{padding:0;gap:20px}
.desktop-home-right .rec-btn{width:120px;height:120px}
.desktop-home-right .rec-btn .rec-inner{width:28px;height:28px}

/* ── History: table layout ── */
#v-history{padding:0}
#v-history > div:first-child{padding:20px 32px;position:sticky;top:0;z-index:5;background:var(--card);border-bottom:1px solid var(--border)}
#v-history > div:nth-child(2){padding:12px 32px;background:var(--card)}
.history-table-header{display:grid;grid-template-columns:1fr 100px 80px 140px 90px 36px;gap:12px;padding:8px 32px;border-bottom:1px solid var(--border);background:var(--bg);font-size:11px;font-weight:600;color:var(--navy-muted);text-transform:uppercase;letter-spacing:.5px}
.note-row.desktop-row{display:grid!important;grid-template-columns:1fr 100px 80px 140px 90px 36px;gap:12px;padding:14px 32px!important;align-items:center}
.note-row.desktop-row .nr-patient{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.note-row.desktop-row .nr-meta{font-size:13px;color:var(--navy-muted)}
.note-row.desktop-row .nr-mono{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--navy-muted)}

/* ── Review ── */
#v-review{padding:0}
#v-review .review-card-header{padding:20px 32px}
.review-tab-bar{display:flex;border-bottom:1px solid var(--border);background:var(--card)}
#reviewNoteContent{padding:24px 32px}
#reviewTranscriptContent{padding:0}
.review-actions{position:sticky;bottom:0;background:var(--card);padding:16px 32px;border-top:1px solid var(--border);display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.review-actions .btn{width:auto}
.review-actions .review-text-links{display:flex;gap:16px;margin-left:auto}

/* ── Prefs ── */
#v-prefs > div:first-child{padding:20px 32px}
#v-prefs > div:first-child .back-btn{display:none}
#prefsScrollArea{max-width:640px;padding:24px 32px}

/* ── Login ── */
#v-login{max-width:480px;margin:0 auto;padding:60px 20px;justify-content:center}
#v-processing{max-width:560px;margin:0 auto}

/* ── Onboarding: proper desktop card ── */
#v-onboard1,#v-onboard2,#v-onboard3{
  max-width:640px;margin:0 auto;padding:40px 0;
  justify-content:center;align-items:center;
}
#v-onboard1 > div:first-child,#v-onboard2 > div:first-child,#v-onboard3 > div:first-child{
  flex:none!important;
  padding:36px 44px!important;
  background:var(--card);border-radius:16px;box-shadow:var(--shadow);
  width:100%;
}
#v-onboard1 .app-footer,#v-onboard2 .app-footer,#v-onboard3 .app-footer{
  flex:none!important;width:100%;max-width:640px;
  padding:16px 44px;margin-top:16px;
  background:transparent;border:none;
}

/* Toast: bottom-right on desktop */
.toast{bottom:32px;left:auto;right:32px;transform:none}

/* Regen drawer */
.regen-drawer{max-width:560px}
}

/* ── Side-by-side review at 1200px+ ── */
@media(min-width:1200px){
.review-body{display:grid;grid-template-columns:1fr 1fr;flex:1;min-height:0}
.review-col-note{border-right:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto}
.review-col-transcript{display:flex;flex-direction:column;overflow-y:auto}
.review-col-note::before,.review-col-transcript::before{content:attr(data-label);display:block;padding:10px 24px;font-size:11px;font-weight:600;color:var(--navy-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);background:var(--card);position:sticky;top:0;z-index:2}
.review-tab-bar{display:none!important}
#reviewNoteContent{display:block!important;flex:1;overflow-y:auto;padding:24px 32px}
#reviewTranscriptContent{display:flex!important;flex:1;flex-direction:column}
}

/* ── Mobile: undo all desktop ── */
@media(max-width:767px){
.desktop-shell{display:contents}
.desktop-sidebar{display:none}
.desktop-home-layout{display:contents}
.desktop-home-left,.desktop-home-right{display:contents}
.history-table-header{display:none}
.review-body{display:contents}
.review-col-note,.review-col-transcript{display:contents}
.review-actions{display:none}
.review-tab-bar{display:flex;border-bottom:1px solid var(--border);background:var(--card)}
.mobile-review-actions{display:block}
}

@media(min-width:768px){
.mobile-review-actions{display:none!important}
}

/* ===== EHR COMING SOON ===== */
.ehr-opt.coming-soon{opacity:.5;pointer-events:none;cursor:default}
.ehr-opt.coming-soon .badge{background:var(--bg)!important;color:var(--navy-muted)!important}
