
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900&family=JetBrains+Mono:wght@500;600;700;900&display=swap');
*{box-sizing:border-box;margin:0;padding:0;}
@keyframes cardIn{
  from{opacity:0;transform:translateY(-6px);}
  to  {opacity:1;transform:translateY(0);}
}
@keyframes expandIn{
  from{opacity:0;transform:scaleY(.95);transform-origin:top;}
  to  {opacity:1;transform:scaleY(1);}
}
@keyframes spin{
  from{transform:rotate(0deg);}
  to  {transform:rotate(360deg);}
}
@keyframes fadeIn{
  from{opacity:0;}
  to  {opacity:1;}
}
@keyframes fadeTab{
  from{opacity:0;transform:translateY(4px);}
  to  {opacity:1;transform:translateY(0);}
}
@keyframes editPulse{
  0%{box-shadow:0 0 0 0 rgba(245,158,11,.5),0 0 0 4px rgba(245,158,11,.2);}
  60%{box-shadow:0 0 0 6px rgba(245,158,11,.15),0 0 0 12px rgba(245,158,11,.05);}
  100%{box-shadow:0 0 0 0 rgba(245,158,11,0),0 0 0 0 rgba(245,158,11,0);}
}
@keyframes badgePulse{
  0%  {transform:scale(1);}
  40% {transform:scale(1.18);}
  100%{transform:scale(1);}
}
@keyframes slideUpIn{
  from{opacity:0;transform:translateX(-50%) translateY(16px);}
  to  {opacity:1;transform:translateX(-50%) translateY(0);}
}
@keyframes countUp{
  from{opacity:.4;transform:translateY(4px);}
  to  {opacity:1;transform:translateY(0);}
}
@keyframes panelReveal{
  from{opacity:0;transform:translateY(8px) scale(.985);}
  to{opacity:1;transform:translateY(0) scale(1);}
}
@keyframes cardFreshGlow{
  0%{box-shadow:0 0 0 0 rgba(14,165,233,.0),0 0 0 0 rgba(14,165,233,.0),var(--nf-shadow-soft);}
  18%{box-shadow:0 0 0 3px rgba(14,165,233,.18),0 16px 32px rgba(14,165,233,.12),var(--nf-shadow-card);}
  100%{box-shadow:var(--nf-shadow-card);}
}
@keyframes syncPulse{
  0%{transform:scale(.96);opacity:.7;}
  50%{transform:scale(1);opacity:1;}
  100%{transform:scale(.96);opacity:.78;}
}
@keyframes pickerLift{
  from{opacity:0;transform:translateY(-6px) scale(.985);}
  to{opacity:1;transform:translateY(0) scale(1);}
}
:root{
  --nf-font-sans:'Plus Jakarta Sans',ui-sans-serif,system-ui,sans-serif;
  --nf-font-serif:'Plus Jakarta Sans',ui-sans-serif,system-ui,sans-serif;
  --nf-font-mono:'JetBrains Mono',ui-monospace,monospace;
  --nf-space-1:4px;
  --nf-space-2:8px;
  --nf-space-3:12px;
  --nf-space-4:16px;
  --nf-space-5:20px;
  --nf-space-6:24px;
  --nf-radius-sm:8px;
  --nf-radius-md:12px;
  --nf-radius-lg:16px;
  --nf-radius-xl:24px;
  --nf-radius-2xl:32px;
  --nf-bg:#eef2f6;
  --nf-bg-soft:#f8fafc;
  --nf-surface:#ffffff;
  --nf-surface-elevated:rgba(255,255,255,.94);
  --nf-surface-glass:rgba(255,255,255,.82);
  --nf-border:#dde6f0;
  --nf-border-subtle:#ebf0f6;
  --nf-border-strong:#c8d5e4;
  --nf-text:#14253e;
  --nf-text-strong:#0f1f36;
  --nf-text-muted:#5f738d;
  --nf-text-soft:#8c9db0;
  --nf-accent:#0f4c8a;
  --nf-accent-strong:#0c2746;
  --nf-accent-soft:#edf5fe;
  --nf-accent-cyan:#1497d4;
  --nf-success:#147a52;
  --nf-warning:#9a5a05;
  --nf-danger:#b42318;
  --nf-shadow-xs:0 1px 2px rgba(15,39,68,.035);
  --nf-shadow-soft:0 10px 24px rgba(15,39,68,.05),0 1px 0 rgba(255,255,255,.92) inset;
  --nf-shadow-card:0 18px 34px rgba(15,39,68,.06),0 1px 0 rgba(255,255,255,.94) inset;
  --nf-shadow-medium:0 22px 44px rgba(15,39,68,.085),0 1px 0 rgba(255,255,255,.92) inset;
  --nf-shadow-modal:0 28px 72px rgba(15,23,42,.14),0 12px 30px rgba(15,23,42,.06);
  --nf-shadow-floating:0 20px 44px rgba(15,39,68,.1),0 8px 24px rgba(15,39,68,.06);
  --nf-shadow-fab:0 14px 34px rgba(15,39,68,.28);
  --nf-ease-standard:cubic-bezier(.22,1,.36,1);
  --nf-ease-swift:cubic-bezier(.4,0,.2,1);
  --nf-dur-fast:.16s;
  --nf-dur-med:.24s;
  --nf-dur-slow:.34s;
  --nf-z-dock:300;
  --nf-z-fab:80;
  --nf-z-scroll-top:150;
  --nf-z-overlay:9000;
  --nf-z-overlay-top:9999;
  --nf-dock-offset:calc(env(safe-area-inset-bottom,0px) + 14px);
  --nf-dock-rail:calc(env(safe-area-inset-bottom,20px) + 108px);
}
html{background:var(--nf-bg-soft);}
body{
  background:
    radial-gradient(circle at top left,rgba(191,219,254,.16),transparent 22%),
    radial-gradient(circle at top right,rgba(14,165,233,.05),transparent 24%),
    linear-gradient(180deg,#f1f4f8 0%,var(--nf-bg) 100%);
  color:var(--nf-text);
  font-family:var(--nf-font-sans);
  font-size:13px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important;
  }
}
.shell{display:grid;grid-template-columns:minmax(320px,408px) minmax(0,1fr);width:100%;height:100vh;overflow:hidden;position:relative;}
@media(min-width:1024px){
  .shell{
    display:grid;
    grid-template-columns:420px minmax(0,1fr) 332px;
    width:100vw;
    height:100vh;
    overflow:hidden;
  }
  .shell.right-rail-collapsed{
    grid-template-columns:420px minmax(0,1fr) 56px;
  }
  .builder-shell-host{
    display:block;
    grid-column:1 / span 2;
    grid-row:1;
    min-width:0;
    width:auto;
    height:100vh;
    overflow:hidden;
  }
  .mob-viewport{
    display:block;
    min-width:0;
    min-height:0;
    overflow:hidden;
    width:100%;
    height:100vh;
  }
  .mob-slider{
    display:grid;
    grid-template-columns:420px minmax(0,1fr);
    width:100%;
    height:100vh;
    min-width:0;
    min-height:0;
    transform:none!important;
    transition:none!important;
    overflow:hidden;
  }
  .mob-slider .sb{
    position:relative;
    left:auto;
    top:auto;
    width:auto;
    height:100vh;
    min-width:0;
    z-index:2;
  }
  .mob-slider .main{
    position:relative;
    left:auto;
    top:auto;
    width:auto;
    height:100vh;
    min-width:0;
    z-index:1;
  }
  .billing-panel{
    display:flex!important;
    grid-column:3;
    grid-row:1;
    position:fixed;
    top:0;
    right:0;
    width:332px;
    height:100vh;
    overflow:visible!important;
    z-index:3;
    transition:width .18s ease,box-shadow .18s ease,background .18s ease;
  }
  .billing-panel.is-collapsed{
    width:56px;
    overflow:hidden;
    box-shadow:-10px 0 28px rgba(15,39,68,.06);
  }
  .billing-panel.is-collapsed .bp-hd,
  .billing-panel.is-collapsed .bp-body{
    display:none!important;
  }
  .tabs{display:none!important;} /* billing panel replaces tab nav at wide widths */
  .main{border-right:1px solid #dde3ec;}
}
.main,.billing-panel{min-width:0;}
.billing-panel{display:none;flex-direction:column;height:100vh;min-height:0;overflow:hidden;background:#f6f8fb;border-left:1px solid #dde3ec;}
.billing-rail-toggle{position:absolute;top:50%;left:-22px;z-index:6;display:flex;align-items:center;justify-content:center;gap:6px;width:40px;height:auto;min-height:120px;padding:12px 0;flex-direction:column;border-radius:18px;border:1.5px solid rgba(255,255,255,.12);background:linear-gradient(180deg,#10233f 0%,#153153 100%);color:#fff;font:inherit;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:0 18px 34px rgba(15,39,68,.18),inset 0 1px 0 rgba(255,255,255,.12);transform:translateY(-50%);transition:transform .14s ease,box-shadow .14s ease,background .14s ease,color .14s ease;}
.billing-rail-toggle:hover{transform:translateY(calc(-50% - 1px));box-shadow:0 20px 38px rgba(15,39,68,.22),inset 0 1px 0 rgba(255,255,255,.14);background:linear-gradient(180deg,#123057 0%,#173a64 100%);}
.billing-rail-toggle:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(147,197,253,.4),0 14px 28px rgba(15,39,68,.16);}
.billing-rail-toggle-icon{font-size:17px;line-height:1;transform:translateY(-1px);}
.billing-rail-toggle-label{line-height:1;white-space:nowrap;writing-mode:vertical-rl;text-orientation:mixed;letter-spacing:.12em;}
.billing-panel:not(.is-collapsed) .billing-rail-toggle{left:-22px;min-height:104px;background:rgba(15,39,68,.92);border-color:rgba(255,255,255,.14);box-shadow:0 16px 32px rgba(7,20,39,.18),inset 0 1px 0 rgba(255,255,255,.12);}
.billing-panel:not(.is-collapsed) .billing-rail-toggle:hover{background:rgba(21,49,83,.96);}
.bp-hd{padding:10px 10px 9px;background:linear-gradient(180deg,#10233f 0%,#153153 100%);color:#fff;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.08);}
.bp-tab-switch{display:flex;gap:8px;padding:5px;border-radius:20px;background:rgba(255,255,255,.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.05);min-width:0;overflow:hidden;}
.bp-tab{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px 8px 9px;border:none;border-radius:15px;background:transparent;color:rgba(255,255,255,.72);cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease,font-weight .16s ease;font-family:'Plus Jakarta Sans',sans-serif;text-align:center;}
.bp-tab:hover{background:rgba(255,255,255,.06);color:#fff;}
.bp-tab.on{background:rgba(255,255,255,.14);color:#fff;box-shadow:0 10px 18px rgba(7,20,39,.14);}
.bp-tab-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:rgba(255,255,255,.12);color:rgba(255,255,255,.92);flex-shrink:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.15);}
.bp-tab.on .bp-tab-icon{background:rgba(255,255,255,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 4px 10px rgba(7,20,39,.12);}
.bp-tab-label{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.15;min-width:0;}
.bp-body{flex:1 1 auto;min-width:0;min-height:0;height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:10px 10px 20px;display:flex;flex-direction:column;gap:10px;background:linear-gradient(180deg,#f4f7fb 0%,#f7f9fc 100%);}
.bp-pane{min-height:0;min-width:0;}
.assistant-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:5px;border-radius:14px;background:rgba(15,39,68,.08);margin-bottom:8px;flex-shrink:0;}
.assistant-mode-btn{border:0;border-radius:10px;background:transparent;color:#64748b;font:inherit;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:8px 7px;cursor:pointer;transition:background .14s ease,color .14s ease,box-shadow .14s ease;}
.assistant-mode-btn.on{background:#fff;color:#0f2744;box-shadow:0 8px 18px rgba(15,39,68,.1),inset 0 1px 0 rgba(255,255,255,.9);}
.bp-pane-ai.assistant-mode-chat .assistant-mode-switch{background:rgba(255,255,255,.08);}
.bp-pane-ai.assistant-mode-chat .assistant-mode-btn{color:rgba(226,232,240,.72);}
.bp-pane-ai.assistant-mode-chat .assistant-mode-btn.on{background:rgba(255,255,255,.9);color:#0f2744;}
.assistant-coding-pane{display:flex;flex-direction:column;gap:10px;min-height:0;}
.bp-section{margin-bottom:0;background:linear-gradient(180deg,#ffffff 0%,#fbfcfe 100%);border:1px solid #e4ebf3;border-radius:18px;padding:12px 12px 11px;box-shadow:var(--nf-shadow-card);}
.bp-section-hd{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#7b8da8;margin-bottom:10px;}
.bp-copy-btn{margin-top:12px;width:100%;justify-content:center;background:#f8fbff;border-color:#bfd3f6;color:#1d4ed8;}
.handoff-shell{padding:18px 20px 20px;background:
  radial-gradient(circle at top right,rgba(191,219,254,.42),transparent 32%),
  linear-gradient(180deg,#f9fbff 0%,#f4f8fd 100%);}
.handoff-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid #e8edf5;}
.handoff-kicker{font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#64748b;margin-bottom:6px;}
.handoff-title{font-size:22px;font-weight:900;color:#0f172a;letter-spacing:-.03em;}
.handoff-subtitle{font-size:12px;color:#64748b;line-height:1.55;max-width:620px;margin-top:6px;}
.handoff-close{border:none;background:none;color:#94a3b8;font-size:24px;cursor:pointer;line-height:1;padding:2px 4px;}
.handoff-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 0 12px;}
.handoff-tabs,.handoff-mode-toggle{display:flex;gap:8px;flex-wrap:wrap;}
.handoff-tab,.handoff-mode-btn{border:1.5px solid #dbe5f1;background:rgba(255,255,255,.76);color:#64748b;font-size:11px;font-weight:800;padding:8px 12px;border-radius:999px;cursor:pointer;transition:all .14s ease;}
.handoff-tab.on,.handoff-mode-btn.on{background:#0f2744;border-color:#0f2744;color:#fff;box-shadow:0 10px 20px rgba(15,39,68,.14);}
.handoff-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;}
.handoff-summary-card{background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);border:1.5px solid #e6ebf3;border-radius:16px;padding:12px 14px;box-shadow:0 10px 24px rgba(15,39,68,.05);}
.handoff-summary-label{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#7b8da8;margin-bottom:6px;}
.handoff-summary-value{font-size:18px;font-weight:900;color:#0f2744;}
.handoff-summary-meta{font-size:10.5px;color:#6b7b91;line-height:1.4;margin-top:6px;}
.handoff-pane{display:flex;flex-direction:column;gap:12px;}
.handoff-actions{display:flex;justify-content:flex-end;gap:8px;}
.handoff-textarea{width:100%;min-height:320px;box-sizing:border-box;border:1.5px solid #dbe5f1;border-radius:16px;background:#fff;padding:14px 15px;font:12.5px/1.65 "JetBrains Mono",monospace;color:#0f172a;resize:vertical;box-shadow:0 10px 26px rgba(15,39,68,.05);}
.handoff-textarea-section{min-height:180px;}
.handoff-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.handoff-check-item{font-size:12px;color:#334155;line-height:1.6;padding:6px 0;border-top:1px solid #eef2f7;}
.handoff-check-item:first-of-type{border-top:none;padding-top:0;}
.handoff-section-list{display:flex;flex-direction:column;gap:12px;}
.handoff-empty{font-size:12px;color:#64748b;line-height:1.6;padding:10px 0;}
.bp-empty{margin-top:24px;padding:26px 18px;border:1px dashed #d5deeb;border-radius:18px;background:rgba(255,255,255,.72);text-align:center;color:#8a99af;font-size:12px;line-height:1.8;}
.bp-empty-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:#eef4ff;color:#1d4ed8;font-size:18px;font-weight:900;margin-bottom:10px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8);}
.sb{background:#f7f9fc;border-right:1px solid #e4eaf3;overflow-y:auto;overflow-x:visible;box-shadow:2px 0 16px rgba(15,39,68,.05);transform:none;isolation:auto;position:relative;z-index:20;}
.sb-hd{border-bottom:1px solid rgba(255,255,255,.08);position:sticky;top:0;background:linear-gradient(160deg,#10223c 0%,#12365d 100%);z-index:30;padding:10px 14px 9px;display:flex;flex-direction:column;gap:10px;overflow:visible;box-shadow:0 10px 24px rgba(15,39,68,.08);}
.sb-brand{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1 1 auto;}
.sb-brand-row{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-width:0;padding-right:184px;}
.h1{font-size:14px;font-weight:900;color:#fff;letter-spacing:-.035em;line-height:1;}
.h1-pack-wrap{position:relative;overflow:visible;}
.h1-pack-trigger{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.1);color:rgba(255,255,255,.96);font:inherit;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 4px 10px rgba(7,17,33,.06);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;flex-shrink:0;}
.h1-pack-trigger:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 8px 18px rgba(7,17,33,.1);}
.h1-pack-trigger:focus-visible{outline:none;border-color:rgba(125,211,252,.8);box-shadow:0 0 0 3px rgba(56,189,248,.22),inset 0 1px 0 rgba(255,255,255,.08);}
.h1-pack-label{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;line-height:1;}
.h1-pack-caret{font-size:10px;opacity:.76;line-height:1;}
.pack-menu{position:absolute;left:0;right:auto;top:calc(100% + 9px);z-index:260;min-width:236px;max-width:min(280px,calc(100vw - 24px));padding:8px;background:rgba(255,255,255,.98);border:1px solid #dbe4ef;border-radius:18px;box-shadow:0 22px 48px rgba(15,39,68,.2),0 1px 0 rgba(255,255,255,.92) inset;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
.pack-menu-item{position:relative;display:grid;grid-template-columns:1fr;gap:3px;width:100%;padding:11px 38px 11px 13px;background:transparent;border:none;border-radius:13px;text-align:left;color:#334155;cursor:pointer;transition:background .14s ease,color .14s ease,box-shadow .14s ease;}
.pack-menu-item:hover{background:#f7fbff;color:#0f2744;box-shadow:inset 0 0 0 1px rgba(191,219,254,.5);}
.pack-menu-item:focus-visible{outline:none;background:#f0f7ff;box-shadow:0 0 0 2px rgba(59,130,246,.18) inset;}
.pack-menu-item.on{background:linear-gradient(180deg,#16365c 0%,#0f2744 100%);color:#fff;box-shadow:0 10px 22px rgba(15,39,68,.16);}
.pack-menu-item-label{font-size:12px;font-weight:850;letter-spacing:.01em;}
.pack-menu-item-sub{font-size:11px;color:inherit;opacity:.58;line-height:1.35;text-transform:uppercase;letter-spacing:.1em;}
.pack-menu-item-check{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:12px;font-weight:900;}
.sub{font-size:10px;color:rgba(255,255,255,.45);letter-spacing:.1em;text-transform:uppercase;font-weight:600;}
.reset-btn,.hd-btn,.hd-icon-btn{box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 8px 18px rgba(7,17,33,.08);}
.reset-btn{padding:7px 12px;border-radius:11px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:rgba(255,255,255,.88);font-weight:800;font-size:11px;cursor:pointer;white-space:nowrap;transition:all .15s;letter-spacing:.01em;}
.reset-btn:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.28);}
.hd-btn{min-height:36px;padding:0 13px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.09);color:rgba(255,255,255,.9);font-weight:800;font-size:10.5px;cursor:pointer;white-space:nowrap;transition:all .14s;letter-spacing:.01em;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;}
.hd-btn:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.28);transform:translateY(-1px);}
.hd-btn-synced{background:rgba(52,211,153,.15);border-color:rgba(52,211,153,.35);color:#6ee7b7;}
.hd-btn-synced:hover{background:rgba(52,211,153,.22);}
.hd-icon-btn{width:36px;height:36px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);color:rgba(255,255,255,.78);font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .14s;flex-shrink:0;font-family:inherit;}
.hd-icon-btn:hover{background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.28);transform:translateY(-1px);}
.hd-meta-row{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:8px;}
.hd-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex:0 0 auto;max-width:100%;flex-wrap:nowrap;position:absolute;top:10px;right:14px;}
.hd-user-row{display:flex;align-items:center;gap:6px;min-width:0;overflow:visible;padding:0 0 0 2px;max-width:100%;width:100%;}
.hd-user-row .sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.hd-account-wrap{position:relative;min-width:0;max-width:100%;flex:1 1 auto;width:100%;}
.hd-account-btn{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:7px;width:100%;padding:7px 10px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.075);color:#fff;cursor:pointer;text-align:left;transition:background .14s ease,border-color .14s ease,transform .14s ease;min-width:0;}
.hd-account-btn:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);transform:translateY(-1px);}
.hd-account-btn.synced{background:rgba(52,211,153,.12);border-color:rgba(52,211,153,.24);}
.hd-account-dot{width:10px;height:10px;border-radius:999px;background:#94a3b8;box-shadow:0 0 0 4px rgba(148,163,184,.12);}
.hd-account-btn.synced .hd-account-dot{background:#34d399;box-shadow:0 0 0 4px rgba(52,211,153,.14);}
.hd-account-name{min-width:0;font-size:11px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.hd-account-status{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.82);white-space:nowrap;padding:3px 6px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);}
.hd-account-btn.synced .hd-account-status{color:#86efac;background:rgba(52,211,153,.12);border-color:rgba(52,211,153,.2);}
.hd-account-status.syncing{color:#bae6fd;background:rgba(14,165,233,.14);border-color:rgba(125,211,252,.28);animation:syncPulse 1.1s ease-in-out infinite;}
.hd-account-status.error{color:#fecaca;background:rgba(239,68,68,.14);border-color:rgba(252,165,165,.28);}
.hd-account-status.synced{box-shadow:0 0 0 1px rgba(52,211,153,.06) inset;}
.hd-account-caret{font-size:10px;color:rgba(255,255,255,.72);}
.hd-kbd-btn{min-height:30px;padding:0 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.08);color:rgba(255,255,255,.82);font:inherit;font-size:10px;font-weight:800;letter-spacing:.06em;cursor:pointer;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease;}
.hd-kbd-btn:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.22);color:#fff;transform:translateY(-1px);}
.hd-kbd-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:rgba(255,255,255,.08);color:inherit;}
.hd-kbd-label{line-height:1;}
.hd-icon-btn-subtle{width:32px;height:32px;border-radius:11px;}
.hd-file-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:260;background:rgba(255,255,255,.98);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 16px 34px rgba(15,39,68,.16);min-width:174px;overflow:hidden;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
.hd-file-menu-head{padding:12px 14px 10px;background:linear-gradient(180deg,#f8fbff 0%,#f4f8fd 100%);border-bottom:1px solid #e2e8f0;}
.hd-file-menu-title{font-size:12px;font-weight:800;color:#0f172a;line-height:1.25;}
.hd-file-menu-sub{margin-top:2px;font-size:10px;font-weight:700;letter-spacing:.04em;color:#64748b;line-height:1.35;word-break:break-word;}
.hd-file-menu-item{display:block;width:100%;text-align:left;padding:10px 14px;font-size:12px;font-weight:700;background:none;border:none;cursor:pointer;color:#334155;}
.hd-file-menu-item:hover{background:#f8fafc;}
.hd-file-menu-item + .hd-file-menu-item{border-top:1px solid #f1f5f9;}
.hd-file-menu-item.teal{color:#0f766e;}
.hd-file-menu-item.purple{color:#7c3aed;}
.hd-file-menu-item.danger{color:#b91c1c;}
.sb-body{padding:10px 12px 22px;}
.sec{margin-top:12px;}
.sec:first-child{margin-top:10px;}
.coding-consult-shell,.coding-consult-results,.coding-consult-empty{align-self:stretch;}
.coding-consult-shell .coding-consult-subtitle,.coding-consult-results .coding-consult-subtitle{line-height:1.65;}
.coding-consult-action-deck{border-top:1px solid #f2d7a6;padding-top:10px;}
.coding-consult-source-row{display:flex;flex-wrap:wrap;gap:8px;}
.assistant-coding-pane .coding-consult-shell,
.assistant-coding-pane .coding-consult-results,
.assistant-coding-pane .coding-consult-empty{scroll-margin-top:10px;}
.lbl{font-size:11px;color:#94a3b8;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin:0 0 8px 1px;display:flex;align-items:center;gap:6px;}
.lbl-dot{display:none;}
.search-wrap{position:relative;margin-bottom:10px;}
.search-icon{position:absolute;left:9px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:13px;pointer-events:none;display:inline-flex;align-items:center;justify-content:center;}
.search-inp{padding:7px 10px 7px 28px;background:#fff;border:1px solid #dde3ec;border-radius:8px;color:#1e293b;font-size:12px;outline:none;width:100%;box-shadow:0 1px 3px rgba(0,0,0,.04);}
.search-inp:focus{border-color:#0284c7;box-shadow:0 0 0 3px rgba(2,132,199,.1);}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.followup-row{display:grid;grid-template-columns:auto minmax(150px,180px) auto;gap:8px;align-items:center;}
.followup-label{white-space:nowrap;}
.followup-select{min-width:0;width:100%;}
.followup-meta{white-space:nowrap;}
.inp,.sel,.txt{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#1a2740;padding:7px 10px;font-size:12px;outline:none;width:100%;transition:all .14s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px rgba(0,0,0,.04);}
.inp:focus,.sel:focus,.txt:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.12);}
.chips{display:flex;flex-wrap:wrap;gap:6px;}
.chip{padding:5px 10px;border-radius:7px;border:1.5px solid #e2e8f0;background:#fff;color:#64748b;font-size:11.5px;font-weight:600;cursor:pointer;user-select:none;transition:all .13s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px rgba(0,0,0,.04);}
.chip:hover{border-color:#93c5fd;color:#1d4ed8;background:#f0f9ff;transform:translateY(-1px);}
.chip.on,.chip.tors-on,.chip.mod-on,.chip.mod62-on{position:relative;border-width:2px;padding-left:24px;}
.chip.on::before,.chip.tors-on::before,.chip.mod-on::before,.chip.mod62-on::before{content:"✓";position:absolute;left:8px;top:50%;transform:translateY(-50%);font-size:10px;font-weight:900;line-height:1;}
button:focus-visible,
[role="button"]:focus-visible,
.chip:focus-visible,
.proc-chip:focus-visible,
.cfg-chip:focus-visible,
.bp-tab:focus-visible,
.tab:focus-visible,
.mob-note-tab:focus-visible,
.mob-nav-btn-primary:focus-visible{
  outline:none;
  box-shadow:0 0 0 4px rgba(147,197,253,.38),0 8px 22px rgba(15,39,68,.12)!important;
}
button:disabled:focus-visible{box-shadow:none!important;}
.chip.on{background:#dbeafe;border-color:#3b82f6;color:#1d4ed8;font-weight:700;}
.chip.tors-on{background:#ede9fe;border-color:#7c3aed;color:#5b21b6;font-weight:700;}
.chip.mod-on{background:#fff7ed;border-color:#f97316;color:#c2410c;font-weight:700;}
.chip.mod62-on{background:#f0fdf4;border-color:#22c55e;color:#065f46;font-weight:700;}
.proc-chip{padding:7px 14px;border-radius:9px;border:1.5px solid #e2e8f0;background:#fff;color:#374151;font-size:11.5px;font-weight:600;cursor:pointer;user-select:none;transition:background .14s cubic-bezier(.4,0,.2,1),border-color .14s cubic-bezier(.4,0,.2,1),box-shadow .14s cubic-bezier(.4,0,.2,1),color .14s cubic-bezier(.4,0,.2,1);line-height:1.3;box-shadow:0 1px 2px rgba(15,39,68,.05);}
.proc-chip:hover{border-color:#b8cbe4;color:#1d4ed8;background:#f7fbff;box-shadow:0 4px 10px rgba(15,39,68,.06);}
.proc-chip.on{background:linear-gradient(140deg,#0c2040 0%,#0c4278 100%);border-color:#0d3d6b;color:#fff;font-weight:700;box-shadow:0 0 0 2px rgba(14,165,233,.28),0 2px 10px rgba(12,34,64,.24),0 1px 3px rgba(12,34,64,.12);}
.proc-chip.on:hover{background:linear-gradient(140deg,#103059 0%,#0f4d89 100%);border-color:#0f4c8a;box-shadow:0 3px 12px rgba(12,34,64,.26),0 1px 4px rgba(12,34,64,.14);}
.proc-chip.tors-on{background:linear-gradient(135deg,#3b0764,#4c1d95);border-color:#4c1d95;color:#fff;font-weight:700;box-shadow:0 2px 8px rgba(76,29,149,.3);}
.proc-chip.tors-on:hover{background:linear-gradient(135deg,#4c1d95,#5b21b6);border-color:#5b21b6;}
.hr{height:1px;background:#e2e8f0;margin:14px 0;}
.flagRow{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;}
.flag{padding:6px 14px;border-radius:999px;border:1.5px solid #e2e8f0;background:#f8fafc;color:#64748b;font-size:11px;font-weight:700;text-transform:uppercase;cursor:pointer;}
.flag.on{background:#fef2f2;border-color:#ef4444;color:#dc2626;border-width:2px;box-shadow:inset 0 0 0 1px rgba(220,38,38,.18);}
.card{border:1px solid #dde3ec;background:#fff;border-radius:11px;padding:12px;margin-top:9px;box-shadow:0 1px 4px rgba(0,0,0,.05);animation:cardIn 180ms ease-out both;}
/* Builder section tabs */
.sb-section-tabs{position:sticky;top:0;z-index:10;background:#f8fafc;padding:8px 12px 6px;margin:0 -12px 2px;border-bottom:1px solid #e2e8f0;}
.proc-section-tabs-shell{position:relative;margin-bottom:12px;border:1px solid #dde5ef;border-radius:14px;background:linear-gradient(180deg,#f5f8fc 0%,#eef3f9 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 1px 2px rgba(15,39,68,.05);overflow:hidden;}
.proc-section-tabs-shell::before,.proc-section-tabs-shell::after{content:"";position:absolute;top:0;bottom:0;width:28px;z-index:2;pointer-events:none;}
.proc-section-tabs-shell::before{left:0;background:linear-gradient(90deg,#f5f8fc 0%,rgba(245,248,252,.72) 46%,rgba(245,248,252,0) 100%);}
.proc-section-tabs-shell::after{right:0;background:linear-gradient(270deg,#eef3f9 0%,rgba(238,243,249,.76) 46%,rgba(238,243,249,0) 100%);}
.proc-section-tabs{display:flex;gap:6px;padding:5px 24px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;}
.proc-section-tabs::-webkit-scrollbar{display:none;}
.proc-section-tabs-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:20px;height:30px;border:none;border-radius:999px;background:rgba(15,39,68,.16);color:#42526a;font-size:18px;font-weight:900;line-height:1;box-shadow:inset 0 0 0 1px rgba(15,39,68,.08);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.72;transition:transform .14s ease,background .14s ease,opacity .14s ease,color .14s ease;}
.proc-section-tabs-arrow:hover{background:rgba(15,39,68,.26);color:#0f2744;opacity:1;transform:translateY(-50%) scale(1.03);}
.proc-section-tabs-arrow.left{left:4px;}
.proc-section-tabs-arrow.right{right:4px;}
/* Dense mode for desktop builder */
@media(min-width:768px){
  .card{padding:9px 10px;margin-top:7px;}
  .cardHd{margin-bottom:4px;}
  .cb-sec-hd{margin:12px 0 5px 1px;font-size:10px;}
  .cb-add-btn{padding:7px 10px;font-size:11px;}
  .chips{gap:4px;}
  .proc-chip,.cfg-chip{padding:4px 9px;font-size:11px;}
  .inp{padding:6px 8px;font-size:12px;}
  .sel{padding:5px 7px;font-size:12px;}
  .small{font-size:11px;}
  .req-field{margin-top:6px;}
  .card .row2{gap:6px;}
}
@media(max-width:1080px){
  .sb-brand{padding-right:0;}
  .sb-brand-row{justify-content:space-between;}
  .hd-actions{position:static;justify-content:flex-start;flex-wrap:wrap;}
}
.cardHd{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.cardTitle{font-size:12px;font-weight:800;color:#0f172a;}
.iconBtn{border:1.5px solid #e2e8f0;background:#f8fafc;color:#475569;border-radius:7px;padding:4px 9px;cursor:pointer;font-weight:700;font-size:11px;transition:all .12s;}
.iconBtn:hover{border-color:#ef4444;color:#dc2626;background:#fff5f5;}
.iconBtn.add:hover{border-color:#22c55e;color:#15803d;background:#f0fdf4;}
.small{font-size:11px;color:#94a3b8;line-height:1.5;}
.req-badge{display:inline-block;background:#fee2e2;color:#dc2626;font-size:9px;font-weight:900;padding:1px 6px;border-radius:4px;margin-left:6px;letter-spacing:.05em;}
.req-field{margin-top:8px;}
.req-label{font-size:11px;font-weight:700;color:#374151;margin-bottom:4px;}
.chk-row{display:flex;align-items:center;gap:7px;margin-top:5px;cursor:pointer;}
.chk-box{width:14px;height:14px;border-radius:3px;border:1.5px solid #d1d5db;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:9px;}
.chk-box.checked{background:#0284c7;border-color:#0284c7;color:#fff;}
.chk-txt{font-size:11.5px;color:#374151;}
/* Suggestion cards */
.sug-card{border-radius:9px;padding:9px 12px;margin-top:7px;border-left:4px solid;}
.sug-card.c22{background:#fffbeb;border-color:#f59e0b;}
.sug-card.c59{background:#eff6ff;border-color:#3b82f6;}
.sug-card.c51{background:#f5f3ff;border-color:#8b5cf6;}
.sug-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;}
.sug-mod{font-size:11px;font-weight:900;padding:2px 7px;border-radius:6px;white-space:nowrap;}
.sug-text{font-size:11px;color:#374151;line-height:1.5;flex:1;}
.sug-btn{font-size:10px;font-weight:800;padding:3px 8px;border-radius:6px;border:1.5px solid;cursor:pointer;white-space:nowrap;}
/* Mod assign chips in CPT table */
.mod-assign-chip{font-size:10px;font-weight:800;padding:3px 8px;border-radius:6px;border:1.5px solid;cursor:pointer;user-select:none;}
.mod-assign-row{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px;padding-top:6px;border-top:1px dashed #e2e8f0;}
/* Accordion headers */
.acc-hd{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:8px 10px;border-radius:8px;background:#fff;border:1px solid #e8ecf2;transition:background .12s;}
.acc-hd:hover{background:#f0f6ff;border-color:#c7d9f0;}
/* Main panel */
.main{display:flex;flex-direction:column;height:100vh;overflow:hidden;}
.tabs{display:flex;border-bottom:1px solid var(--nf-border-subtle);background:var(--nf-surface-elevated);align-items:center;box-shadow:0 1px 4px rgba(0,0,0,.05);}
.tab{padding:11px 14px;border:none;background:none;color:var(--nf-text-muted);font-weight:700;letter-spacing:.05em;text-transform:uppercase;font-size:11px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .14s cubic-bezier(.4,0,.2,1);white-space:nowrap;}
.tab.on{color:var(--nf-accent);border-bottom-color:var(--nf-accent);background:transparent;}
.tab:hover:not(.on){color:#475569;}
.pill{margin-left:auto;margin-right:14px;padding:5px 14px;border-radius:999px;background:linear-gradient(135deg,#0f2744,#0d3d6b);color:#fff;font-family:monospace;font-weight:900;font-size:13px;transition:transform .2s;box-shadow:0 2px 8px rgba(13,61,107,.25);}
.pill:hover{transform:scale(1.05);box-shadow:0 3px 16px rgba(13,61,107,.4);}
@keyframes rvu-pop{0%{transform:scale(1.12) translateY(-1px);box-shadow:0 4px 16px rgba(34,197,94,.5);}100%{transform:scale(1);box-shadow:none;}}
.pill.popped{animation:rvu-pop .45s ease-out;}
.out{flex:1;overflow-y:auto;overflow-x:hidden;padding:0 18px 32px;background:#fafbfd;display:flex;flex-direction:column;}
.note-pane-wrap{position:relative;flex:1;display:flex;flex-direction:column;min-height:0;}
.note-pane-wrap.has-mini-metrics{padding-top:0;}
.note-pane-wrap.has-mini-metrics::before{
  content:"";
  position:absolute;
  top:0;
  left:10px;
  right:10px;
  height:30px;
  pointer-events:none;
  z-index:12;
  border-top-left-radius:20px;
  border-top-right-radius:20px;
  background:linear-gradient(180deg,rgba(238,242,247,.58) 0%,rgba(244,247,251,.24) 52%,rgba(250,251,253,0) 100%);
}
.note-mini-metrics{
  position:absolute;
  top:6px;
  left:0;
  right:0;
  z-index:45;
  display:flex;
  justify-content:center;
  gap:10px;
  padding:0 12px 0;
  pointer-events:none;
}
.note-mini-metrics.cpt-mini-nav{justify-content:flex-end;}
.note-mini-pill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:9px 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.62);
  background:rgba(255,255,255,.72);
  color:#24344d;
  box-shadow:0 14px 32px rgba(15,39,68,.12), inset 0 1px 0 rgba(255,255,255,.82);
  backdrop-filter:blur(16px) saturate(1.08);
  -webkit-backdrop-filter:blur(16px) saturate(1.08);
  pointer-events:auto;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease;
}
.note-mini-pill:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 36px rgba(15,39,68,.14), inset 0 1px 0 rgba(255,255,255,.88);
}
.note-mini-pill:disabled{cursor:default;}
.note-mini-label{
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#7b8ca4;
}
.note-mini-value{
  font-size:12px;
  font-weight:900;
  letter-spacing:-.02em;
  color:#13243f;
}
.note-mini-pill.tone-rvu .note-mini-value{color:#1d4ed8;}
.note-mini-pill.risk-low .note-mini-value{color:#15803d;}
.note-mini-pill.risk-medium .note-mini-value{color:#92400e;}
.note-mini-pill.risk-high .note-mini-value{color:#b91c1c;}
.note-mini-pill.tone-revenue .note-mini-value{color:#6d28d9;}
.note-mini-pill.tone-noteback .note-mini-value{color:#0f2744;}
.note-mini-pill.is-actionable{cursor:pointer;}
.note-fab{position:absolute;right:20px;bottom:20px;left:auto;transform:translateY(0) scale(.98);display:flex;align-items:center;gap:8px;padding:8px 10px;background:rgba(15,23,42,.78);backdrop-filter:blur(16px) saturate(1.05);-webkit-backdrop-filter:blur(16px) saturate(1.05);border:1px solid rgba(255,255,255,.12);border-radius:999px;box-shadow:0 12px 30px rgba(15,23,42,.18),0 2px 10px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.12);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .24s cubic-bezier(.22,1,.36,1),box-shadow .18s ease;z-index:var(--nf-z-fab);}
.note-pane-wrap:hover .note-fab{opacity:1;pointer-events:auto;transform:translateY(0) scale(1);}
.note-fab.note-fab-visible{opacity:1;pointer-events:auto;transform:translateY(0) scale(1);}
.note-fab.note-fab-hidden{opacity:0;pointer-events:none;transform:translateY(14px) scale(.96);}
.note-fab.desktop-dock{right:24px;bottom:24px;width:260px;height:260px;opacity:1;pointer-events:auto;transform:translateY(0) scale(1);padding:0;background:transparent;border:none;box-shadow:none;overflow:visible;display:block;backdrop-filter:none;-webkit-backdrop-filter:none;}
.note-fab.desktop-dock:hover{box-shadow:none;}
.note-fab-btn{display:flex;align-items:center;gap:5px;padding:8px 12px;border-radius:999px;border:none;background:transparent;color:#e2e8f0;font-size:12px;font-weight:800;letter-spacing:.01em;cursor:pointer;transition:background .14s ease,transform .14s ease,color .14s ease;}
.note-fab-btn:hover{background:rgba(255,255,255,.14);transform:translateY(-1px);}
.note-fab-btn.accent{background:rgba(124,58,237,.18);color:#ede9fe;box-shadow:inset 0 0 0 1px rgba(196,181,253,.14);}
.note-fab-btn.accent:hover{background:rgba(124,58,237,.28);color:#fff;}
.note-fab-divider{width:1px;height:18px;background:rgba(255,255,255,.18);flex-shrink:0;}
.note-fab-trigger,.note-fab-menu,.note-fab-backdrop{display:none;}
.desktop-dock-orbit{position:absolute;inset:0;pointer-events:none;}
.desktop-dock-trigger{position:absolute;right:0;bottom:0;z-index:2;display:grid;place-items:center;width:64px;height:64px;border:none;border-radius:999px;background:radial-gradient(circle at 30% 30%,#1d4ed8 0%,#153f8f 42%,#0f2744 100%);color:#fff;box-shadow:0 20px 38px rgba(15,39,68,.28),0 6px 16px rgba(15,39,68,.18),inset 0 1px 0 rgba(255,255,255,.2);cursor:pointer;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease,filter .22s ease;}
.desktop-dock-trigger::after{display:none;}
.desktop-dock:hover .desktop-dock-trigger::after,.desktop-dock:focus-within .desktop-dock-trigger::after,.desktop-dock.pinned .desktop-dock-trigger::after{opacity:1;color:#0f2744;transform:translateY(-50%) translateX(-2px);}
.desktop-dock-trigger:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 24px 46px rgba(15,39,68,.34),0 8px 20px rgba(15,39,68,.22),inset 0 1px 0 rgba(255,255,255,.24);}
.desktop-dock-trigger:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(147,197,253,.4),0 24px 46px rgba(15,39,68,.34),0 8px 20px rgba(15,39,68,.22),inset 0 1px 0 rgba(255,255,255,.24);}
.desktop-dock-trigger-core{display:grid;place-items:center;width:42px;height:42px;border-radius:999px;background:rgba(255,255,255,.12);font-size:24px;line-height:1;transform:translateY(-1px);transition:transform .24s cubic-bezier(.22,1,.36,1),background .18s ease;}
.desktop-dock:hover .desktop-dock-trigger-core,.desktop-dock:focus-within .desktop-dock-trigger-core{transform:translateY(-1px) scale(.92) rotate(12deg);background:rgba(255,255,255,.18);}
.desktop-dock.pinned .desktop-dock-trigger-core{transform:translateY(-1px) scale(.92) rotate(12deg);background:rgba(255,255,255,.18);}
.desktop-orbit-btn{position:absolute;right:8px;bottom:8px;display:flex;align-items:center;gap:8px;min-width:118px;padding:10px 15px 10px 12px;border:none;border-radius:999px;background:rgba(255,255,255,.94);color:#153052;box-shadow:0 14px 28px rgba(15,23,42,.14),0 4px 12px rgba(15,23,42,.1),inset 0 1px 0 rgba(255,255,255,.78);backdrop-filter:blur(10px) saturate(1.04);-webkit-backdrop-filter:blur(10px) saturate(1.04);font-size:13px;font-weight:800;letter-spacing:.005em;cursor:pointer;opacity:0;pointer-events:none;transform:translate(0,0) scale(.86);transform-origin:100% 100%;transition:transform .26s cubic-bezier(.22,1,.36,1),opacity .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease;transition-delay:0s;will-change:transform,opacity;}
.desktop-orbit-btn:hover{background:#fff;box-shadow:0 18px 34px rgba(15,23,42,.18),0 6px 16px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.84);}
.desktop-orbit-btn:focus-visible{outline:none;opacity:1;pointer-events:auto;box-shadow:0 0 0 4px rgba(147,197,253,.38),0 18px 34px rgba(15,23,42,.18),0 6px 16px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.84);}
.desktop-orbit-ico{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:linear-gradient(180deg,rgba(15,39,68,.08) 0%,rgba(15,39,68,.05) 100%);color:#304867;flex-shrink:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.66);}
.desktop-orbit-label{white-space:nowrap;line-height:1;}
.desktop-orbit-btn.accent{background:linear-gradient(135deg,rgba(239,233,255,.97),rgba(250,245,255,.96));color:#5b21b6;}
.desktop-orbit-btn.accent .desktop-orbit-ico{background:linear-gradient(180deg,rgba(124,58,237,.14) 0%,rgba(124,58,237,.08) 100%);}
.desktop-dock:hover .desktop-orbit-btn,.desktop-dock:focus-within .desktop-orbit-btn{opacity:1;pointer-events:auto;transition-delay:.2s;}
.desktop-dock.pinned .desktop-orbit-btn{opacity:1;pointer-events:auto;}
.desktop-dock:hover .orbit-copy,.desktop-dock:focus-within .orbit-copy{transform:translate(-132px,-10px) scale(1);transition-delay:.22s;}
.desktop-dock:hover .orbit-checks,.desktop-dock:focus-within .orbit-checks{transform:translate(-72px,-138px) scale(1);transition-delay:.265s;}
.desktop-dock:hover .orbit-history,.desktop-dock:focus-within .orbit-history{transform:translate(-68px,-72px) scale(1);transition-delay:.235s;}
.desktop-dock:hover .orbit-email,.desktop-dock:focus-within .orbit-email{transform:translate(-204px,-76px) scale(1);transition-delay:.25s;}
.desktop-dock:hover .orbit-pdf,.desktop-dock:focus-within .orbit-pdf{transform:translate(-188px,-150px) scale(1);transition-delay:.28s;}
.desktop-dock:hover .orbit-edit,.desktop-dock:focus-within .orbit-edit{transform:translate(-96px,-208px) scale(1);transition-delay:.31s;}
.desktop-dock.pinned .orbit-copy{transform:translate(-132px,-10px) scale(1);transition-delay:.02s;}
.desktop-dock.pinned .orbit-checks{transform:translate(-72px,-138px) scale(1);transition-delay:.065s;}
.desktop-dock.pinned .orbit-history{transform:translate(-68px,-72px) scale(1);transition-delay:.035s;}
.desktop-dock.pinned .orbit-email{transform:translate(-204px,-76px) scale(1);transition-delay:.05s;}
.desktop-dock.pinned .orbit-pdf{transform:translate(-188px,-150px) scale(1);transition-delay:.08s;}
.desktop-dock.pinned .orbit-edit{transform:translate(-96px,-208px) scale(1);transition-delay:.11s;}
.desktop-dock.blank-nav-up{bottom:76px;}
.box{border:1px solid #e8edf5;background:#fff;border-radius:14px;padding:20px;box-shadow:var(--nf-shadow-soft);}
.ai-note-rewritten{animation:aiNoteRewrite 1.8s ease-out forwards!important;}
@keyframes aiNoteRewrite{0%{box-shadow:0 0 0 3px rgba(34,197,94,.5),0 0 24px rgba(34,197,94,.15)!important;}60%{box-shadow:0 0 0 2px rgba(34,197,94,.2)!important;}100%{box-shadow:0 2px 12px rgba(15,39,68,.06)!important;}}
.outHd{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.outTitle{font-size:15px;font-weight:900;color:#0f172a;letter-spacing:-.2px;}
.copy-btn{border:1.5px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:8px;padding:7px 14px;font-weight:800;cursor:pointer;font-size:12px;transition:all .15s;}
.note-hd-extras{display:none!important;}
.copy-btn:hover{background:#dbeafe;box-shadow:0 2px 6px rgba(29,78,216,.15);}
.pre{white-space:pre-wrap;line-height:1.92;font-size:14px;color:#1e293b;font-family:'Plus Jakarta Sans',ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;overflow-wrap:break-word;word-break:break-word;letter-spacing:-.01em;}
.pre strong{color:#0f172a;font-size:13.5px;display:inline-block;margin-top:6px;}
.tbl{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed;}
.tbl th{background:#f8fafc;color:#72829a;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:900;text-align:left;padding:11px 12px;border-bottom:1px solid #e6ebf3;}
.tbl td{padding:12px 12px;border-bottom:1px solid #eef2f7;vertical-align:top;color:#1f2d44;}
.code{font-family:monospace;color:#0369a1;font-weight:900;}
.rv{font-family:monospace;color:#0891b2;font-weight:900;text-align:right;}
.tbl th:nth-child(1),.tbl td:nth-child(1){width:116px;}
.tbl th:nth-child(3),.tbl td:nth-child(3){width:64px;}
.tbl th:nth-child(2),.tbl td:nth-child(2){overflow-wrap:anywhere;word-break:break-word;}
.badge{display:inline-block;margin-left:5px;font-size:10px;font-weight:800;padding:2px 7px;border-radius:999px;background:#dbeafe;border:1px solid #bfdbfe;color:#1d4ed8;}
.badge.auto{background:#fef3c7;border-color:#fde68a;color:#92400e;}
.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;color:#64748b;font-style:normal;padding:40px 18px;text-align:center;line-height:1.55;background:linear-gradient(180deg,#fbfcfe 0%,#f7faff 100%);border:1px dashed #d7e1ef;border-radius:18px;min-height:160px;}
.empty-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:999px;background:linear-gradient(180deg,#eef6ff 0%,#e5effb 100%);color:#0f2744;box-shadow:inset 0 1px 0 rgba(255,255,255,.86);}
.empty-icon .nf-icon,.empty-icon .nf-icon svg{width:20px;height:20px;}
.empty-title{font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#6d819a;}
.empty-body{max-width:420px;font-size:13px;color:#718199;}
.billing-zone{margin:16px 0 8px;padding:13px 14px;border-radius:16px;border:1.5px solid #e2e8f0;background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(246,250,254,.96) 100%);box-shadow:0 10px 24px rgba(15,39,68,.05);}
.billing-zone.revenue{border-color:#86efac;background:linear-gradient(180deg,#f7fff9 0%,#effcf3 100%);}
.billing-zone.modifiers{border-color:#fde68a;background:linear-gradient(180deg,#fffdf5 0%,#fff8df 100%);}
.billing-zone.icd{border-color:#dbeafe;background:linear-gradient(180deg,#fbfdff 0%,#f3f8ff 100%);}
.billing-zone-title{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;color:#475569;}
.billing-zone-title strong{font:inherit;color:inherit;}
.billing-zone-title.revenue{color:#15803d;}
.billing-zone-title.modifiers{color:#92400e;}
.billing-zone-title.icd{color:#1e40af;}
.billing-zone-meta{font-size:10.5px;color:#64748b;margin-bottom:10px;}
.billing-zone-card{display:flex;flex-direction:column;gap:6px;padding:10px 11px;margin-bottom:8px;border-radius:13px;background:#fff;border:1.5px solid #e2e8f0;box-shadow:0 6px 14px rgba(15,39,68,.045);}
.billing-zone-card.revenue{border-color:#bbf7d0;background:#f8fffb;}
.billing-zone-card.modifier{border-color:#fcd34d;background:#fffef7;}
.billing-zone-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.billing-zone-card-stack{display:flex;flex-direction:column;gap:4px;min-width:0;}
.billing-zone-meta-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.billing-zone-mini-tag{display:inline-flex;align-items:center;justify-content:center;padding:2px 7px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;border:1px solid transparent;}
.billing-zone-mini-tag.high{background:#fee2e2;color:#b91c1c;border-color:#fecaca;}
.billing-zone-mini-tag.medium{background:#fef3c7;color:#92400e;border-color:#fde68a;}
.billing-zone-mini-tag.low{background:#f1f5f9;color:#475569;border-color:#e2e8f0;}
.billing-zone-mini-tag.neutral{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe;}
.billing-zone-copy{font-size:10.5px;color:#374151;line-height:1.48;}
.billing-zone-action{flex-shrink:0;padding:6px 12px;border-radius:9px;border:1px solid #0f766e;background:#0f766e;color:#fff;font-weight:800;font-size:11px;cursor:pointer;white-space:nowrap;transition:transform .14s ease,box-shadow .14s ease,background .14s ease,border-color .14s ease;}
.billing-zone-action:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,118,110,.18);}
.billing-zone-action:disabled{border-color:#c7d2e3;background:#f8fafc;color:#94a3b8;cursor:default;box-shadow:none;transform:none;}
.billing-zone-action.modifier{background:#d97706;border-color:#d97706;}
.billing-zone-action.modifier:hover{box-shadow:0 8px 18px rgba(217,119,6,.18);}
.billing-zone-chip{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:11px;}
.billing-zone-chip-code{padding:2px 7px;border-radius:7px;background:#eef2ff;color:#6d28d9;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:900;}
.billing-zone-chip-tag{padding:2px 7px;border-radius:999px;background:#fff3d2;color:#a16207;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;}
.billing-mobile-summary{display:none;}
.billing-mobile-summary-card{display:flex;flex-direction:column;gap:4px;padding:11px 12px;border-radius:12px;border:1px solid #dbe7f5;background:#f8fbff;box-shadow:0 4px 12px rgba(15,39,68,.05);}
.billing-mobile-summary-card.primary{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff 0%,#f8fbff 100%);}
.billing-mobile-summary-label{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#64748b;}
.billing-mobile-summary-value{font-family:'JetBrains Mono',monospace;font-size:19px;font-weight:900;line-height:1;color:#0369a1;}
.billing-mobile-summary-value.subdued{color:#64748b;}
.billing-mobile-sticky-summary{display:none;}
.billing-mobile-sticky-chip{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid #dbe5f1;background:rgba(255,255,255,.9);box-shadow:0 10px 24px rgba(15,39,68,.08);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);}
.billing-mobile-sticky-chip.primary{border-color:#bfdbfe;background:rgba(239,246,255,.96);}
.billing-mobile-sticky-label{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#64748b;}
.billing-mobile-sticky-value{font-family:'JetBrains Mono',monospace;font-size:14px;font-weight:900;color:#0f2744;}
.billing-mobile-sticky-value.subdued{color:#64748b;}
.billing-icd-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #e2e8f0;}
.billing-icd-row:last-child{border-bottom:none;}
.billing-icd-code{font-family:'JetBrains Mono',monospace;font-weight:900;font-size:11.5px;color:#1d4ed8;background:#eff6ff;padding:3px 8px;border-radius:7px;white-space:nowrap;flex-shrink:0;}
.billing-icd-desc{flex:1;font-size:12px;color:#374151;line-height:1.42;}
.billing-icd-cat{font-size:10px;font-weight:800;padding:3px 8px;border-radius:999px;white-space:nowrap;flex-shrink:0;}
.billing-icd-action{flex-shrink:0;padding:5px 11px;border-radius:9px;border:1.5px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;font-weight:800;font-size:11px;cursor:pointer;white-space:nowrap;transition:all .14s ease;}
.billing-icd-action:hover{background:#dbeafe;transform:translateY(-1px);}
.billing-icd-action.on{border-color:#86efac;background:#f0fdf4;color:#15803d;border-width:2px;box-shadow:inset 0 0 0 1px rgba(34,197,94,.16);}
.warn-box{background:#fef2f2;border:1.5px solid #fca5a5;border-radius:10px;padding:11px 14px;margin-bottom:12px;font-size:12px;color:#b91c1c;}
.warn-title{font-weight:900;margin-bottom:4px;}
.btn{width:100%;padding:12px;border-radius:10px;border:none;background:linear-gradient(135deg,#0f2744,#0d3d6b);color:#fff;font-weight:900;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;font-size:13px;box-shadow:0 4px 14px rgba(13,61,107,.3);transition:opacity .15s;}
.btn:hover:not(:disabled){opacity:.9;}
.btn:disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed;box-shadow:none;}
.srch-cat{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#94a3b8;margin:10px 0 4px 2px;}
.srch-row{display:flex;align-items:flex-start;gap:8px;padding:7px 9px;border-radius:8px;border:1px solid #e8ecf2;background:#fff;margin-bottom:4px;transition:all .12s;}
.srch-row:hover{border-color:#0284c7;background:#f0f9ff;}
.srch-row.added{border-color:#22c55e;background:#f0fdf4;}
.srch-row.selected{border-color:#60a5fa;background:#eff6ff;box-shadow:0 0 0 2px rgba(96,165,250,.12);}
.search-more-toggle{width:100%;margin:6px 0 0;padding:7px 10px;border:1px dashed #bfdbfe;border-radius:9px;background:#f8fbff;color:#2563eb;font-size:11px;font-weight:850;cursor:pointer;}
.search-more-toggle:hover{background:#eff6ff;border-color:#93c5fd;}
.srch-code{font-family:monospace;font-weight:900;color:#0369a1;font-size:11.5px;min-width:52px;padding-top:1px;}
.srch-desc{font-size:11.5px;color:#334155;line-height:1.4;flex:1;}
.srch-meta{display:flex;flex-direction:column;align-items:flex-end;gap:3px;flex-shrink:0;}
.srch-rvu{font-family:monospace;font-size:10px;color:#0891b2;font-weight:700;}
.srch-chip-tag,.srch-ext-tag{display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;padding:2px 6px;border-radius:999px;letter-spacing:.05em;white-space:nowrap;}
.srch-chip-tag{background:#f3f8ff;color:#3659c9;border:1px solid #d7e5ff;}
.srch-ext-tag{background:#fbfcfe;color:#73839a;border:1px solid #e2e8f2;}
.builder-search-provenance{font-size:10px;font-weight:700;color:#94a3b8;white-space:nowrap;}
.srch-note{font-size:10px;color:#92400e;margin-top:2px;line-height:1.4;}
.srch-add{font-size:10px;font-weight:800;padding:3px 9px;border-radius:6px;border:1.5px solid;cursor:pointer;white-space:nowrap;}
.srch-add.add{border-color:#22c55e;color:#15803d;background:#f0fdf4;}
.srch-add.add:hover{background:#dcfce7;}
.srch-add.rem{border-color:#fca5a5;color:#dc2626;background:#fff5f5;}
.srch-add.rem:hover{background:#fee2e2;}
.ai-btn{font-size:10px;font-weight:800;padding:3px 9px;border-radius:6px;border:1.5px solid #a855f7;color:#7c3aed;background:#faf5ff;cursor:pointer;white-space:nowrap;}
.ai-btn:hover{background:#ede9fe;}
.ai-btn.loading{color:#94a3b8;border-color:#e2e8f0;cursor:default;}
.haiku-btn{font-size:11px;font-weight:800;padding:4px 12px;border-radius:7px;border:1.5px solid #7c3aed;color:#7c3aed;background:#faf5ff;cursor:pointer;white-space:nowrap;}
.haiku-btn:hover{background:#ede9fe;}
.nf-overlay{position:fixed;inset:0;background:rgba(6,16,34,.42);z-index:var(--nf-z-overlay);display:flex;align-items:center;justify-content:center;padding:var(--nf-space-4);backdrop-filter:blur(10px) saturate(1.02);-webkit-backdrop-filter:blur(10px) saturate(1.02);animation:nfOverlayIn .18s ease both;}
.nf-overlay-sheet{align-items:flex-end;}
.nf-card{background:#fff;box-shadow:var(--nf-shadow-modal);overflow:hidden;animation:cardIn 220ms cubic-bezier(.22,1,.36,1) both;}
.nf-modal-card{border-radius:var(--nf-radius-lg);width:min(94vw,520px);max-height:min(88vh,calc(var(--app-height,100dvh) - 24px));display:flex;flex-direction:column;}
.surgeon-settings-modal{width:min(1040px,96vw)!important;max-height:92vh!important;overflow-y:auto!important;border-radius:16px!important;}
.surgeon-settings-body{padding:20px 28px!important;display:flex!important;flex-direction:column!important;gap:0!important;}
.surgeon-style-section{order:60!important;}
@media(max-width:767px){.surgeon-settings-modal{width:min(96vw,520px)!important;max-height:90vh!important;}.surgeon-settings-body{padding:18px 20px!important;}}
.nf-sheet-card{border-radius:26px 26px 18px 18px;width:min(100%,480px);max-height:min(80vh,calc(var(--app-height,100dvh) - 24px));display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.72);box-shadow:0 -18px 48px rgba(15,23,42,.18),0 -4px 14px rgba(15,23,42,.08);animation:sheetIn 240ms cubic-bezier(.22,1,.36,1) both;}
.nf-sheet-handle-wrap{padding:12px 0 0;flex-shrink:0;}
.nf-sheet-handle{width:40px;height:4px;border-radius:999px;background:#e2e8f0;margin:0 auto 12px;}
.nf-popover-scrim{position:fixed;inset:0;z-index:calc(var(--nf-z-overlay) - 1);}
.nf-popover-card{background:#fff;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.18);border:1.5px solid #e2e8f0;z-index:var(--nf-z-overlay);min-width:200px;overflow:hidden;}
.nf-sticky-row{position:sticky;top:0;z-index:56;background:#fff;}
.nf-toast-stack{position:fixed;right:20px;bottom:24px;display:flex;flex-direction:column;gap:10px;z-index:calc(var(--nf-z-overlay) + 4);pointer-events:none;}
.nf-toast{min-width:220px;max-width:320px;padding:12px 14px;border-radius:16px;background:rgba(15,23,42,.92);color:#e2e8f0;box-shadow:0 18px 38px rgba(15,23,42,.22);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);animation:toastIn .22s cubic-bezier(.22,1,.36,1) both;}
.nf-toast.tone-success{background:rgba(13,88,71,.94);}
.nf-toast.tone-info{background:rgba(15,39,68,.94);}
.nf-toast.tone-warning{background:rgba(146,64,14,.94);}
.nf-toast.tone-error{background:rgba(153,27,27,.94);}
.nf-toast-title{font-size:12px;font-weight:900;letter-spacing:.02em;}
.nf-toast-message{font-size:11px;line-height:1.5;color:rgba(255,255,255,.82);margin-top:3px;}
.box .pre,.box .fill-mode-pre{font-size:14.5px;line-height:1.82;color:#17263f;}
.box .pre strong,.box .fill-mode-pre strong{display:inline-block;margin-top:10px;font-size:14.5px;color:#0f2744;letter-spacing:-.01em;}
.box .pre hr,.box .fill-mode-pre hr{margin:18px 0 14px;}
.note-workspace{width:100%;max-width:1120px;margin:0 auto 18px;display:flex;flex-direction:column;flex:1;min-height:100%;}
.note-workspace > .note-card-wrap{display:block;flex:none;min-height:0;}
.note-workspace > .note-edit-shell{flex:1;display:flex;flex-direction:column;}
.note-edit-shell{max-width:940px;margin:0 auto;border-radius:18px;overflow:hidden;box-shadow:0 12px 38px rgba(15,39,68,.08);}
.note-edit-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;background:linear-gradient(180deg,#fff8e8 0%,#fff5d9 100%);border:1.5px solid #f5c56f;border-bottom:none;border-radius:18px 18px 0 0;}
.note-edit-badge{background:#f59e0b;color:#fff;font-size:10.5px;font-weight:900;letter-spacing:.1em;padding:4px 9px;border-radius:999px;text-transform:uppercase;box-shadow:inset 0 1px 0 rgba(255,255,255,.18);}
.note-edit-copy{font-size:11px;color:#9a5a06;font-weight:700;}
.note-edit-textarea{font-family:'JetBrains Mono',monospace!important;line-height:1.75!important;border:1.5px solid #f5c56f!important;border-top:none!important;border-radius:0 0 18px 18px!important;background:#fffef8!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8);}
.note-edit-textarea:focus{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 0 4px rgba(245,158,11,.12)!important;}
.note-edit-shell.coding-insert-active{animation:codingInsertLift 2.2s cubic-bezier(.22,1,.36,1) both;}
.note-edit-textarea.coding-insert-glow{animation:codingInsertGlow 2.2s ease-out both!important;}
.note-edit-textarea.note-edit-insert-target{animation:noteInsertTextareaPulse 3.2s ease-out both!important;}
.note-insert-highlight{display:inline;border-radius:6px;padding:1px 3px;background:linear-gradient(180deg,rgba(254,240,138,.88),rgba(187,247,208,.74));box-shadow:0 0 0 1px rgba(20,184,166,.22),0 0 0 rgba(20,184,166,0);color:inherit;}
.note-insert-highlight-pulse{animation:noteInsertTargetPulse 3.4s ease-out both;}
.note-section-target{position:relative;border-radius:8px;padding:2px 5px;margin-left:-5px;background:rgba(254,240,138,.42);}
.note-section-target-pulse{animation:noteSectionTargetPulse 3.4s ease-out both;}
.coding-insert-overlay{position:absolute;top:14px;right:16px;z-index:3;max-width:min(360px,calc(100% - 32px));padding:11px 13px;border-radius:14px;background:linear-gradient(180deg,#ecfdf5 0%,#f0fdfa 100%);border:1.5px solid #5eead4;box-shadow:0 18px 40px rgba(13,148,136,.18),0 4px 14px rgba(15,39,68,.08);animation:codingInsertOverlay 2.15s ease-out both;pointer-events:none;}
.coding-insert-kicker{font-size:9.5px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#0f766e;margin-bottom:3px;}
.coding-insert-preview{font-size:12px;font-weight:850;color:#0f2744;line-height:1.35;}
@keyframes codingInsertLift{0%{transform:translateY(18px) scale(.985);}18%{transform:translateY(-4px) scale(1.006);}72%{transform:translateY(-4px) scale(1.006);}100%{transform:translateY(0) scale(1);}}
@keyframes codingInsertGlow{0%{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 0 0 rgba(20,184,166,0)!important;}18%{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 0 5px rgba(20,184,166,.18),0 0 44px rgba(20,184,166,.24)!important;}72%{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 0 5px rgba(20,184,166,.14),0 0 34px rgba(20,184,166,.18)!important;}100%{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 0 4px rgba(245,158,11,.12)!important;}}
@keyframes codingInsertOverlay{0%{opacity:0;transform:translateY(-10px) scale(.96);}15%{opacity:1;transform:translateY(0) scale(1);}78%{opacity:1;transform:translateY(0) scale(1);}100%{opacity:0;transform:translateY(-8px) scale(.98);}}
@keyframes noteInsertTargetPulse{0%{background:rgba(254,240,138,.98);box-shadow:0 0 0 0 rgba(20,184,166,.5),0 0 0 rgba(20,184,166,0);}18%{background:rgba(187,247,208,.92);box-shadow:0 0 0 6px rgba(20,184,166,.16),0 14px 34px rgba(20,184,166,.18);}72%{background:rgba(254,240,138,.64);box-shadow:0 0 0 4px rgba(20,184,166,.1),0 8px 22px rgba(20,184,166,.12);}100%{background:rgba(254,249,195,.56);box-shadow:0 0 0 1px rgba(20,184,166,.18),0 0 0 rgba(20,184,166,0);}}
@keyframes noteSectionTargetPulse{0%{background:rgba(254,240,138,.96);box-shadow:0 0 0 0 rgba(20,184,166,.46),0 0 0 rgba(20,184,166,0);}20%{background:rgba(187,247,208,.9);box-shadow:0 0 0 8px rgba(20,184,166,.14),0 16px 34px rgba(20,184,166,.16);}72%{background:rgba(254,240,138,.5);box-shadow:0 0 0 5px rgba(20,184,166,.1),0 8px 20px rgba(20,184,166,.12);}100%{background:rgba(254,249,195,.38);box-shadow:0 0 0 1px rgba(20,184,166,.14),0 0 0 rgba(20,184,166,0);}}
@keyframes noteInsertTextareaPulse{0%{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 0 0 rgba(20,184,166,0)!important;}18%{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 0 6px rgba(20,184,166,.18),0 0 46px rgba(20,184,166,.24)!important;}72%{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 0 5px rgba(20,184,166,.12),0 0 30px rgba(20,184,166,.15)!important;}100%{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 0 4px rgba(245,158,11,.12)!important;}}
@keyframes nfOverlayIn{from{opacity:0;}to{opacity:1;}}
@keyframes sheetIn{from{opacity:0;transform:translateY(24px) scale(.985);}to{opacity:1;transform:translateY(0) scale(1);}}
@keyframes toastIn{from{opacity:0;transform:translateY(14px) scale(.96);}to{opacity:1;transform:translateY(0) scale(1);}}
.nf-stat-card{border-radius:16px;padding:20px;border:1.5px solid #e2e8f0;background:#fff;box-shadow:var(--nf-shadow-soft);}
.nf-stat-label{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;margin-bottom:8px;}
.nf-stat-value{font-size:20px;font-weight:900;color:#0f172a;line-height:1.1;}
.nf-stat-detail{font-size:12px;color:#64748b;margin-top:6px;}
.nf-settings-modal{padding:24px 24px 20px;}
.nf-settings-body{display:flex;flex-direction:column;gap:12px;}
.nf-settings-title{font-size:15px;font-weight:900;color:#0f2744;}
.nf-settings-sub{font-size:12px;color:#64748b;line-height:1.6;}
.nf-settings-actions{display:flex;gap:8px;}
.nf-inline-link{color:#0369a1;margin-left:4px;}
.nf-doc-sheet{width:min(100%,520px);}
.nf-doc-sheet-hd{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px 12px;border-bottom:1px solid #f1f5f9;flex-shrink:0;}
.nf-doc-sheet-title{font-weight:900;font-size:13px;color:#0f2744;}
.nf-doc-sheet-sub{font-size:11px;color:#94a3b8;margin-top:2px;}
.nf-doc-sheet-body{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:10px;min-height:0;}
.nf-doc-msg{display:flex;flex-direction:column;}
.nf-doc-msg.user{align-items:flex-end;}
.nf-doc-msg.assistant{align-items:flex-start;}
.nf-doc-msg-bubble{max-width:90%;padding:9px 13px;border-radius:12px 12px 12px 3px;background:#f8fafc;color:#1a2740;font-size:12px;line-height:1.6;font-weight:500;border:1px solid #e8edf5;}
.nf-doc-msg.user .nf-doc-msg-bubble{border:none;border-radius:12px 12px 3px 12px;background:#0f2744;color:#fff;}
.nf-doc-msg-bubble.generated{font-style:italic;}
.nf-doc-insert-btn{margin-top:6px;padding:6px 14px;border-radius:8px;border:none;background:#0f2744;color:#fff;font-size:11px;font-weight:800;cursor:pointer;transition:all .13s;}
.nf-doc-loading{display:flex;gap:4px;padding:8px 12px;background:#f8fafc;border-radius:10px;width:fit-content;}
.nf-doc-loading-dot{width:6px;height:6px;border-radius:50%;background:#94a3b8;animation:badgePulse 1.2s ease-in-out infinite;}
.nf-doc-error{padding:8px 12px;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;font-size:11px;color:#dc2626;}
.nf-doc-sheet-ft{padding:10px 12px 16px;border-top:1px solid #f1f5f9;display:flex;gap:8px;align-items:flex-end;flex-shrink:0;}
.nf-doc-input{flex:1;padding:8px 12px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:12px;font-family:inherit;resize:none;outline:none;line-height:1.5;}
.nf-doc-send{width:40px;height:40px;border-radius:10px;border:none;background:#0f2744;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .14s;}
.nf-doc-send:disabled{background:#e2e8f0;color:#94a3b8;cursor:default;}
.nf-diff-modal{width:min(700px,96vw);}
.nf-diff-hd{padding:16px 20px;border-bottom:1.5px solid #f1f5f9;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-shrink:0;}
.nf-diff-title{font-weight:900;font-size:15px;color:#0f172a;}
.nf-diff-sub{font-size:11px;color:#64748b;margin-top:2px;}
.nf-diff-body{flex:1;overflow-y:auto;padding:16px 20px;font-family:'JetBrains Mono',monospace;font-size:11.5px;line-height:1.7;}
.nf-diff-line{padding:1px 8px;white-space:pre-wrap;word-break:break-word;display:flex;gap:8px;}
.nf-diff-line.add{background:#dcfce7;color:#15803d;border-left:3px solid #22c55e;}
.nf-diff-line.del{background:#fee2e2;color:#b91c1c;border-left:3px solid #ef4444;}
.nf-diff-glyph{opacity:.5;user-select:none;flex-shrink:0;}
.nf-diff-text{flex:1;}
.nf-diff-ft{padding:14px 20px;border-top:1.5px solid #f1f5f9;display:flex;gap:10px;flex-shrink:0;}
.haiku-modal,.pm-modal,.auth-overlay{}
/* ── PRESET MANAGER MODAL ── */
.pm-box{background:#fff;border-radius:16px;width:min(480px,100%);max-width:calc(100vw - 48px);max-height:75vh;display:flex;flex-direction:column;box-shadow:var(--nf-shadow-modal);overflow:hidden;animation:cardIn 200ms cubic-bezier(.34,1.3,.64,1) both;margin:0 auto;}
.pm-hd{padding:18px 20px 14px;border-bottom:1.5px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;}
.pm-title{font-size:15px;font-weight:900;color:#0f172a;}
.pm-close{background:none;border:none;font-size:18px;cursor:pointer;color:#94a3b8;padding:2px 6px;line-height:1;}
.pm-body{overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1;padding:14px 20px;}
.pm-section-label{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#94a3b8;margin:12px 0 7px;}
.pm-row{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:9px;border:1.5px solid #e2e8f0;background:#f8fafc;margin-bottom:6px;}
.pm-row-emoji{font-size:16px;cursor:pointer;user-select:none;min-width:22px;text-align:center;}
.pm-row-name{flex:1;font-size:12.5px;font-weight:700;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pm-row-name-input{flex:1;font-size:12.5px;font-weight:700;color:#1e293b;border:1.5px solid #0ea5e9;border-radius:6px;padding:3px 7px;outline:none;}
.pm-row-actions{display:flex;gap:5px;flex-shrink:0;}
.pm-btn{font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:6px;cursor:pointer;border:1.5px solid #e2e8f0;background:#fff;color:#374151;}
.pm-btn.danger{border-color:#fca5a5;color:#dc2626;background:#fef2f2;}
.pm-btn.primary{border-color:#0ea5e9;color:#0369a1;background:#f0f9ff;}
.pm-btn.save{border-color:#86efac;color:#15803d;background:#f0fdf4;}
.pm-ft{padding:12px 20px;border-top:1.5px solid #e2e8f0;display:flex;gap:8px;}
.pm-save-input{flex:1;font-size:12.5px;padding:7px 11px;border:1.5px solid #e2e8f0;border-radius:8px;outline:none;color:#1e293b;}
.pm-save-input:focus{border-color:#0ea5e9;}
.pm-emoji-grid{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;}
.pm-emoji-opt{font-size:16px;cursor:pointer;padding:4px;border-radius:6px;border:1.5px solid transparent;line-height:1;}
.pm-emoji-opt:hover,.pm-emoji-opt.sel{border-color:#0ea5e9;background:#f0f9ff;}
@media(max-width:767px){
  .pm-box{width:min(100%,480px);max-width:100%;max-height:min(78vh,calc(var(--app-height,100dvh) - 24px));border-radius:24px 24px 18px 18px;}
  .pm-hd{padding:16px 16px 12px;}
  .pm-body{padding:12px 16px;}
  .pm-ft{padding:12px 16px 16px;flex-wrap:wrap;}
  .pm-save-input{min-width:0;}
  .nf-overlay{padding:12px 12px calc(env(safe-area-inset-bottom,12px) + 12px);}
  .nf-overlay:not(.nf-overlay-sheet){align-items:center;}
}
.haiku-box{background:#fff;border-radius:14px;padding:22px;max-width:520px;width:100%;box-shadow:0 12px 48px rgba(0,0,0,.2);}
.haiku-title{font-size:15px;font-weight:900;color:#1e293b;margin-bottom:4px;}
.haiku-sub{font-size:11.5px;color:#64748b;line-height:1.5;margin-bottom:12px;}
.haiku-steps{font-size:11.5px;color:#374151;line-height:1.8;}
.haiku-steps b{color:#0369a1;}
.haiku-code{font-family:monospace;font-size:11px;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:8px 10px;margin:8px 0;word-break:break-all;white-space:pre-wrap;max-height:120px;overflow-y:auto;}
.haiku-close{font-size:11px;font-weight:800;padding:5px 14px;border-radius:7px;border:1.5px solid #cbd5e1;color:#64748b;background:#fff;cursor:pointer;margin-top:10px;}
.haiku-close:hover{background:#f8fafc;}
.field-err{border-color:#f97316 !important;box-shadow:0 0 0 2px rgba(249,115,22,.18) !important;}
.err-tag{display:inline-block;font-size:10px;font-weight:900;color:#c2410c;background:#fff7ed;border:1px solid #fed7aa;border-radius:4px;padding:1px 5px;margin-left:6px;vertical-align:middle;}
.val-section{border:1.5px solid #fdba74 !important;background:#fff7ed !important;}
.val-header{color:#dc2626 !important;}
.ai-note-box{margin-top:7px;padding:8px 10px;background:#fdf4ff;border:1px solid #e9d5ff;border-radius:8px;font-size:11px;color:#374151;line-height:1.6;white-space:pre-wrap;}
/* ── Billing Health Strip ── */
/* ── Billing Dashboard ── */
.dash{background:#fff;border:1px solid #dde3ec;border-radius:14px;padding:16px 18px;margin-bottom:12px;box-shadow:0 2px 8px rgba(0,0,0,.06);}
.dash-drawer{background:
  radial-gradient(circle at top left,rgba(191,219,254,.28),transparent 30%),
  linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);border-bottom:1px solid #e6ebf3;padding:12px 18px 10px;overflow:hidden;max-height:800px;transition:max-height .3s cubic-bezier(.4,0,.2,1), padding .3s ease, opacity .25s ease;}
.dash-drawer.dash-collapsed{max-height:0;padding-top:0;padding-bottom:0;opacity:0;pointer-events:none;}
.dash-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:10px;}
.dash-tile{border-radius:18px;padding:12px 14px;transition:all .15s;position:relative;overflow:hidden;}
.nf-stat-card.dash-tile{padding:12px 14px;min-height:118px;}
.dash-tile::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:rgba(255,255,255,.65);}
.dash-tile .nf-stat-value{font-size:19px;letter-spacing:-.6px;font-family:'JetBrains Mono',monospace;line-height:1.03;}
.dash-tile .nf-stat-detail{font-size:10.5px;font-weight:650;margin-top:7px;opacity:.92;line-height:1.35;}
.dash-tile-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#94a3b8;margin-bottom:6px;}
.dash-tile-val{font-size:24px;font-weight:900;letter-spacing:-.8px;line-height:1;font-family:'JetBrains Mono',monospace;}
.dash-tile-sub{font-size:10px;font-weight:600;margin-top:5px;opacity:.85;}
.dash-tile.rvu{background:#eff6ff;border:1px solid #bfdbfe;}
.dash-tile.rvu .dash-tile-val,.dash-tile.tone-rvu .nf-stat-value{color:#1d4ed8;}
.dash-tile.rvu .dash-tile-sub,.dash-tile.tone-rvu .nf-stat-detail{color:#3b82f6;}
.dash-tile.risk-low{background:#f0fdf4;border:1px solid #86efac;}
.dash-tile.risk-low .dash-tile-val,.dash-tile.risk-low .nf-stat-value{color:#15803d;font-size:17px;}
.dash-tile.risk-medium{background:#fffbeb;border:1px solid #fcd34d;}
.dash-tile.risk-medium .dash-tile-val,.dash-tile.risk-medium .nf-stat-value{color:#92400e;font-size:17px;}
.dash-tile.risk-high{background:#fef2f2;border:1px solid #fca5a5;}
.dash-tile.risk-high .dash-tile-val,.dash-tile.risk-high .nf-stat-value{color:#b91c1c;font-size:17px;}
.dash-tile.revenue{background:#f5f3ff;border:1px solid #c4b5fd;}
.dash-tile.tone-ready{background:#f8fafc;border:1px solid #cbd5e1;}
.dash-tile.tone-ready .nf-stat-value{color:#0f172a;font-size:17px;}
.dash-tile.tone-ready .nf-stat-detail{color:#475569;}
.dash-tile.clickable:hover{filter:brightness(.97);transform:translateY(-1px);transition:all .12s;}
.missed-panel{background:#faf7ff;border:1px solid #ddd6fe;border-radius:16px;padding:12px 14px;margin-top:2px;animation:picker-in .15s ease-out;box-shadow:inset 0 1px 0 rgba(255,255,255,.7);}
.missed-panel-hd{font-size:10px;font-weight:900;color:#6d28d9;text-transform:uppercase;letter-spacing:.16em;margin-bottom:10px;}
.missed-row{display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-top:1px solid #ede9fe;}
.missed-row:first-of-type{border-top:none;padding-top:0;}
.missed-row-left{flex:1;min-width:0;}
.missed-cpt{font-size:12px;font-weight:800;color:#5b21b6;margin-right:5px;}
.missed-conf{font-size:10px;font-weight:700;padding:1px 5px;border-radius:4px;margin-right:5px;text-transform:uppercase;letter-spacing:.03em;}
.missed-rvu{font-size:11px;font-weight:700;color:#0f766e;}
.missed-reason{font-size:11px;color:#4b5563;margin-top:3px;line-height:1.5;}
.missed-add-btn{flex-shrink:0;font-size:11px;font-weight:700;padding:5px 11px;border-radius:7px;border:1.5px solid #6d28d9;background:#6d28d9;color:#fff;cursor:pointer;white-space:nowrap;transition:all .12s;}
.missed-add-btn:hover:not(:disabled){background:#5b21b6;border-color:#5b21b6;}
.missed-add-btn.added{background:#f0fdf4;border-color:#86efac;color:#15803d;cursor:default;}
.missed-add-btn:disabled:not(.added){opacity:.4;cursor:default;background:transparent;color:#6d28d9;}
.dash-tile.revenue .dash-tile-val,.dash-tile.revenue .nf-stat-value{color:#5b21b6;font-size:17px;}
.dash-tile.revenue .dash-tile-sub,.dash-tile.revenue .nf-stat-detail{color:#7c3aed;}
.dash-divider{height:1px;background:#edf2f8;margin:0 -18px 12px;}
.dash-coverage-hd{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;margin-bottom:10px;}
.dash-cov-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.dash-cov-item{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:10px;border:1px solid #edf2f7;background:#fbfcfe;}
.dash-cov-item.ok{background:#f0fdf4;border-color:#86efac;}
.dash-cov-item.warn{background:#fffbeb;border-color:#fcd34d;}
.dash-cov-icon{font-size:10px;font-weight:900;letter-spacing:.08em;flex-shrink:0;line-height:1.2;min-width:20px;height:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(15,39,68,.08);color:#44556f;}
.dash-cov-text{font-size:10.5px;font-weight:700;color:#374151;line-height:1.3;}
.dash-cov-detail{font-size:11px;font-weight:500;color:#6b7280;margin-top:1px;}
.coding-checks-summary{width:100%;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:9px;margin-bottom:8px;padding:10px 12px;border-radius:12px;border:1.5px solid #dbeafe;background:linear-gradient(180deg,#f8fbff 0%,#fff 100%);box-shadow:0 8px 18px rgba(15,39,68,.04);cursor:pointer;text-align:left;color:#17233a;font:inherit;}
.coding-checks-summary:hover{background:#eff6ff;border-color:#bfdbfe;}
.coding-checks-summary-kicker{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#64748b;}
.coding-checks-summary-main{font-size:11px;font-weight:900;color:#0f172a;white-space:nowrap;}
.coding-checks-summary-hint{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.8px;font-weight:650;color:#64748b;}
.coding-checks-summary-chevron{font-size:13px;font-weight:900;color:#64748b;text-align:right;}
.coding-pearl-grid{display:flex;flex-direction:column;gap:7px;}
.coding-pearl-card{border-radius:12px;border:1.5px solid #dbeafe;background:linear-gradient(180deg,#f8fbff 0%,#fff 100%);box-shadow:0 8px 18px rgba(15,39,68,.04);overflow:hidden;}
.coding-pearl-card.open{box-shadow:0 12px 24px rgba(15,39,68,.06);}
.coding-pearl-toggle{width:100%;min-height:48px;display:grid;grid-template-columns:auto minmax(160px,.8fr) minmax(0,1.4fr) auto;gap:9px;align-items:center;padding:9px 11px;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit;}
.coding-pearl-toggle:hover{background:#f8fbff;}
.coding-pearl-code{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:900;color:#075985;background:#e0f2fe;border:1px solid #bae6fd;border-radius:7px;padding:2px 5px;flex-shrink:0;}
.coding-pearl-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:900;color:#17233a;}
.coding-pearl-summary{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.8px;font-weight:650;color:#64748b;}
.coding-pearl-chevron{font-size:13px;font-weight:900;color:#64748b;text-align:right;}
.coding-pearl-detail{padding:0 11px 11px;border-top:1px solid #e8eef7;}
.coding-pearl-list{margin:0;padding-left:17px;color:#334155;font-size:10.8px;line-height:1.35;}
.coding-pearl-list li+li{margin-top:2px;}
.coding-pearl-field{margin-top:7px;padding:7px 8px;border-radius:9px;background:#f8fafc;border:1px solid #e8eef7;}
.coding-pearl-field.warning{background:#fffbeb;border-color:#fde68a;}
.coding-pearl-field span{display:block;margin-bottom:3px;font-size:9.5px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#64748b;}
.coding-pearl-field.warning span{color:#92400e;}
.coding-pearl-field p{margin:0;font-size:10.5px;line-height:1.38;color:#334155;}
.coding-pearl-offer{margin-top:7px;padding-top:7px;border-top:1px dashed #dbeafe;color:#64748b;font-size:10.5px;line-height:1.35;font-weight:700;}
.coding-pearl-action{margin-top:8px;width:100%;border:1.5px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:9px;padding:7px 9px;font-size:10.5px;font-weight:900;cursor:pointer;}
.coding-pearl-action:hover{background:#dbeafe;border-color:#93c5fd;}
.coder-dashboard-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) auto;gap:7px;align-items:stretch;margin:0 0 10px;padding:8px;border-radius:12px;border:1px solid #dbeafe;background:#fff;}
.coder-dashboard-metric{min-width:0;padding:7px 8px;border-radius:9px;background:#f8fafc;border:1px solid #eef2f7;}
.coder-dashboard-metric span{display:block;margin-bottom:2px;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.coder-dashboard-metric strong{display:block;font-size:12px;font-weight:900;color:#0f2744;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.coder-dashboard-readiness{display:flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:9px;font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;}
.coder-dashboard-readiness.ready{background:#dcfce7;color:#15803d;border:1px solid #86efac;}
.coder-dashboard-readiness.watch{background:#fffbeb;color:#92400e;border:1px solid #fde68a;}
.coder-dashboard-readiness.needs_review{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;}
.health-strip{display:flex;align-items:center;gap:6px;padding:7px 16px;background:#fff;border-bottom:1px solid #e8edf5;flex-wrap:nowrap;overflow:visible;position:relative;z-index:10;}
.hs-actions button{transition:all .14s ease;}
.hs-actions button:hover{border-color:#cbd5e1;background:#fff;}
/* ── PRESETS ── */
.preset-section{padding:10px 12px 8px;border:1px solid #dfe8f4;border-radius:18px;background:linear-gradient(180deg,#f7fbff 0%,#edf4fc 100%);box-shadow:0 10px 26px rgba(15,39,68,.06);margin-bottom:12px;}
.profile-incomplete-banner{margin:10px 0 12px;padding:12px 13px;border-radius:16px;border:1.5px solid #fbbf24;background:linear-gradient(180deg,#fffbeb 0%,#fff7ed 100%);box-shadow:0 10px 22px rgba(146,64,14,.08);}
.profile-incomplete-title{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#92400e;margin-bottom:4px;}
.profile-incomplete-copy{font-size:11.5px;font-weight:700;line-height:1.45;color:#7c2d12;margin-bottom:9px;}
.profile-incomplete-action{border:1px solid #f59e0b;background:#fff;color:#92400e;border-radius:10px;padding:7px 10px;font-size:11px;font-weight:900;cursor:pointer;}
.preset-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;}
.preset-label{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#6c80a0;margin-bottom:4px;}
.preset-hover-hint{font-size:10px;color:#72839e;margin-top:4px;font-weight:600;letter-spacing:.02em;}
.starter-recipes-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:8px 0 10px;border-top:1px solid rgba(159,181,214,.28);border-bottom:1px solid rgba(159,181,214,.28);margin-bottom:8px;}
.starter-recipes-copy{min-width:0;max-width:190px;}
.starter-recipes-label{font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#35557e;margin-bottom:4px;}
.starter-recipes-sub{font-size:11px;line-height:1.45;color:#6d7f99;}
.starter-recipes-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;flex:1;}
.preset-manage{font-size:10px;padding:4px 10px;border-radius:999px;border:1.5px solid rgba(159,181,214,.5);background:rgba(244,248,255,.9);color:#35557e;cursor:pointer;font-weight:800;white-space:nowrap;}
.preset-chips{display:flex;flex-wrap:wrap;gap:5px;}
.preset-chip{padding:6px 11px;border-radius:20px;border:1.5px solid rgba(191,219,254,.38);background:rgba(255,255,255,.14);color:rgba(255,255,255,.95);font-size:11px;font-weight:850;cursor:pointer;transition:all .12s;letter-spacing:.02em;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.08);}
.preset-chip:hover{background:rgba(255,255,255,.22);border-color:rgba(191,219,254,.62);transform:translateY(-1px);}
.preset-chip.starter{background:rgba(219,234,254,.94);border-color:#bfdbfe;color:#163b68;box-shadow:0 8px 18px rgba(15,39,68,.12);}
.preset-chip-user{background:rgba(250,210,100,.24);border-color:rgba(252,211,77,.65);color:#fff7d6;}
.preset-chip-user:hover{background:rgba(250,210,100,.32);border-color:rgba(252,211,77,.82);}
.preset-chip-save{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.38);border-style:dashed;color:rgba(255,255,255,.78);}
.preset-chip-save:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.58);}
.preset-active-bar{margin-top:8px;background:rgba(255,255,255,.82);border:1.5px solid rgba(159,181,214,.32);border-radius:12px;padding:7px 10px;display:flex;align-items:center;gap:7px;color:#35557e;}
@media(min-width:768px){
  .preset-section.desktop-hover-presets{padding:8px 10px;transition:padding .18s ease,box-shadow .18s ease,transform .18s ease;border-radius:14px;margin-bottom:8px;}
  .preset-section.desktop-hover-presets .preset-head{margin-bottom:0;}
  .preset-section.desktop-hover-presets .preset-label{font-size:8.5px;letter-spacing:.16em;color:#6c80a0;margin-bottom:0;}
  .preset-section.desktop-hover-presets .starter-recipes-row{padding:6px 0 8px;margin-bottom:6px;}
  .preset-section.desktop-hover-presets .starter-recipes-copy{max-width:160px;}
  .preset-section.desktop-hover-presets .starter-recipes-label{font-size:11px;}
  .preset-section.desktop-hover-presets .starter-recipes-sub{font-size:11px;}
  .preset-section.desktop-hover-presets .preset-manage{font-size:11px;padding:3px 8px;border-radius:11px;}
  .preset-section.desktop-hover-presets .preset-chips{
    max-height:0;
    opacity:0;
    overflow:hidden;
    pointer-events:none;
    transform:translateY(-4px);
    margin-top:0;
    transition:max-height .22s cubic-bezier(.22,1,.36,1),opacity .16s ease,transform .18s ease,margin-top .18s ease;
  }
  .preset-section.desktop-hover-presets:hover .preset-chips,
  .preset-section.desktop-hover-presets:focus-within .preset-chips{
    max-height:140px;
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
    margin-top:6px;
  }
  .preset-section.desktop-hover-presets:hover,
  .preset-section.desktop-hover-presets:focus-within{
    box-shadow:0 10px 22px rgba(15,39,68,.14);
  }
  .preset-section.desktop-hover-presets .preset-active-bar{margin-top:6px;padding:6px 9px;border-radius:11px;}
}
.builder-nudge-mobile{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;padding:10px 12px;border-radius:12px;background:linear-gradient(180deg,#fdfaff 0%,#faf5ff 100%);border:1.5px solid #e9d5ff;}
.builder-nudge-mobile-copy{min-width:0;flex:1;}
.builder-nudge-mobile-eyebrow{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#7c3aed;margin-bottom:3px;}
.builder-nudge-mobile-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:2px;}
.builder-nudge-mobile-title{font-size:12px;font-weight:800;color:#5b21b6;}
.builder-nudge-mobile-tag{font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:999px;background:#ede9fe;color:#6d28d9;}
.builder-nudge-mobile-sub{font-size:11px;line-height:1.35;color:#6b7280;}
.builder-nudge-mobile-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0;}
.builder-nudge-mobile-btn{padding:6px 9px;border-radius:8px;border:1px solid #ddd6fe;background:#fff;color:#8b5cf6;font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap;}
.builder-nudge-mobile-btn.add{border-color:#c4b5fd;color:#6d28d9;}
/* ── INLINE STICKY CASE SUMMARY (replaces dark top bar) ── */
.note-summary-bar{position:sticky;top:0;z-index:40;background:#fff;border-bottom:2px solid #e2e8f0;padding:8px 24px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;box-shadow:0 2px 8px rgba(0,0,0,.07);}
.note-summary-bar .nsb-pill{display:none;}
.nsb-procedures{font-size:12.5px;font-weight:700;color:#0f2744;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.nsb-empty{font-size:11.5px;color:#94a3b8;font-style:italic;}
.nsb-rvu{display:none;font-size:12.5px;font-weight:900;color:#1d4ed8;white-space:nowrap;padding:3px 9px;background:#eff6ff;border-radius:7px;border:1.5px solid #bfdbfe;cursor:pointer;transition:opacity .1s;}
.nsb-rvu:hover{opacity:.75;}
.nsb-pill{font-size:10.5px;font-weight:800;padding:2px 8px;border-radius:10px;white-space:nowrap;cursor:pointer;transition:opacity .1s;}
.nsb-pill:hover{opacity:.75;}
.nsb-pill.green{background:#f0fdf4;color:#15803d;border:1.5px solid #86efac;}
.nsb-pill.yellow{background:#fffbeb;color:#92400e;border:1.5px solid #fcd34d;}
.nsb-pill.red{background:#fef2f2;color:#b91c1c;border:1.5px solid #fca5a5;}
/* ── SCROLL TO TOP BUTTON ── */
.scroll-top-btn{position:fixed;bottom:28px;right:28px;z-index:var(--nf-z-scroll-top);width:42px;height:42px;border-radius:50%;border:none;background:#0f2744;color:#fff;font-size:15px;font-weight:900;cursor:pointer;box-shadow:0 10px 24px rgba(15,39,68,.22);display:flex;align-items:center;justify-content:center;transition:opacity .2s,transform .2s,box-shadow .2s;opacity:0;pointer-events:none;transform:translateY(8px);}
.scroll-top-btn.visible{opacity:1;pointer-events:auto;transform:translateY(0);}
.scroll-top-btn:hover{background:#0d3d6b;box-shadow:0 14px 28px rgba(15,39,68,.28);}

.hs-tile{display:flex;align-items:center;gap:5px;padding:4px 10px;border-radius:7px;font-size:11px;font-weight:800;cursor:pointer;border:1.5px solid transparent;transition:opacity .12s;white-space:nowrap;}
.hs-tile:hover{opacity:.8;}
.hs-tile.clean{background:#f0fdf4;border-color:#86efac;color:#15803d;cursor:default;}
.hs-tile.rvu{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;cursor:default;margin-right:4px;}
.hs-tile.deny{background:#fef2f2;border-color:#fca5a5;color:#b91c1c;}
.hs-tile.doc{background:#fffbeb;border-color:#fcd34d;color:#92400e;}
.hs-tile.mod{background:#faf5ff;border-color:#d8b4fe;color:#7c3aed;}
.hs-tile.rev{background:#f0fdf4;border-color:#86efac;color:#15803d;}
.hs-sep{width:1px;height:16px;background:#e2e8f0;flex-shrink:0;}
/* ── Case Summary Card ── */
.case-summary{margin:14px 18px 0;padding:10px 14px;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.cs-text{font-size:12px;color:#334155;line-height:1.5;flex:1;min-width:0;}
.cs-btns{display:flex;gap:7px;flex-shrink:0;}
.cs-btn{font-size:11px;font-weight:800;padding:5px 11px;border-radius:7px;border:1.5px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;cursor:pointer;white-space:nowrap;}
.cs-btn:hover{background:#dbeafe;}
.cs-btn.biller{border-color:#bbf7d0;background:#f0fdf4;color:#15803d;}
.cs-btn.biller:hover{background:#dcfce7;}
/* ── Accordion ── */
.acc-hd{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:6px 0 6px;-webkit-tap-highlight-color:transparent;user-select:none;}
.acc-arrow{font-size:10px;color:#94a3b8;margin-left:4px;transition:transform .18s;display:inline-block;flex-shrink:0;}
.sec.closed>.acc-hd{margin-bottom:0;}
.sec.closed>*:not(.acc-hd){display:none!important;}
.sec:not(.closed)>*:not(.acc-hd){animation:expandIn 160ms ease-out both;}
/* ── Mobile layout ── */
/* ── iPhone / small screen ─────────────────────────────────────────── */
/* Desktop/mobile wrappers */
.mob-viewport,.mob-slider{min-width:0;min-height:0;}

@media(max-width:767px){
  .note-mini-metrics{display:none;}
  html,body{background:#fff!important;}
  /* ── Core layout ── */
  html,body{height:100%;min-height:100%;overflow:hidden;}
  .shell{
    position:fixed;
    top:0;
    left:0;
    right:0;
    bottom:auto;
    display:flex!important;
    flex-direction:column!important;
    grid-template-columns:unset!important;
    width:100%;
    height:var(--app-height,100dvh);
    min-height:var(--app-height,100dvh);
    overflow:visible;
    background:#fff;
  }
  .builder-shell-host{
    flex:1 1 0;
    min-height:0;
    width:100%;
    overflow:hidden;
  }

  /* mob-viewport: fills remaining height below mob-nav */
  .mob-viewport{
    flex:1 1 0;
    min-height:0;
    height:var(--app-height,100dvh);
    width:100vw;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    box-sizing:border-box;
    background:#fff;
  }
  /* mob-slider: 200vw wide track */
  .mob-slider{
    flex:1 1 0;
    min-height:var(--app-height,100dvh);
    height:var(--app-height,100dvh);
    display:flex;
    flex-direction:row;
    width:200vw;
    will-change:transform;
  }
  /* Each panel fills exactly 100vw */
  .mob-slider .sb,
  .mob-slider .main{
    width:100vw;
    flex-shrink:0;
    align-self:stretch;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    min-height:0;
    height:var(--app-height,100dvh);
    background:#fff;
  }
  /* Match sb empty-space color to shell background so no grey bar is visible */
  .mob-slider .sb{background:transparent;}
  /* sb internals */
  .sb{border-right:none;border-bottom:none;}
  .sb-hd{padding-top:max(10px,calc(env(safe-area-inset-top,0px) + 6px));}
  .sb-body{
    flex:1 1 0;
    min-height:0;
    overflow-y:auto;
    overflow-x:visible;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    padding-bottom:calc(env(safe-area-inset-bottom,8px) + 72px);
    background:#eef1f6;
  }
  /* main/note internals */
  .main{display:flex;flex-direction:column;min-height:0;}
  .out{
    flex:1 1 0;
    min-height:0;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    padding-top:max(14px,calc(env(safe-area-inset-top,0px) + 8px));
  }
  /* Keep mob-hide for non-slider elements that still need hiding */
  .mob-hide{display:none!important;}
  .mob-show{display:block!important;}
  body{font-size:15px;}

  /* Touch-safe tap targets — 44px minimum */
  .chip{padding:10px 16px;font-size:14px;min-height:44px;display:inline-flex;align-items:center;border-radius:10px;}
  .proc-chip{padding:11px 16px;font-size:13px;min-height:48px;display:inline-flex;align-items:center;border-radius:10px;}
  .cfg-chip{padding:11px 14px;font-size:13px;min-height:48px;border-radius:10px;}
  .inp,.sel{padding:12px 14px;font-size:16px;border-radius:10px;} /* 16px prevents iOS zoom */
  .btn{padding:15px;font-size:15px;letter-spacing:.05em;min-height:48px;}
  .cb-add-btn{padding:13px 14px;min-height:48px;font-size:13px;}
  /* On mobile the section tile already opens/closes the picker — hide the redundant + Add button */
  .cb-add-btn{display:none!important;}
  .cb-plus{width:26px;height:26px;font-size:17px;}
  .reset-btn{min-height:36px;padding:7px 14px;}

  /* Sidebar & header */
  .sb-hd{padding:7px 12px 8px;padding-top:max(10px,calc(env(safe-area-inset-top,0px) + 6px));}
  .h1{font-size:15px;}
  .hd-meta-row{margin-top:5px;gap:8px;}
  .hd-kbd-btn{min-height:28px;padding:0 9px;font-size:11px;}
  .hd-status-btn{min-height:28px;padding:0 10px;font-size:11px;}
  .hd-icon-btn,.hd-icon-btn-subtle{width:38px;height:38px;}
  .sb-hd,
  .preset-section{
    transition:padding .22s ease,margin .22s ease,border-radius .22s ease,box-shadow .22s ease,transform .22s ease,opacity .18s ease;
  }
  .sb-hd.mobile-condensed{
    padding:4px 10px 5px;
    padding-top:max(6px,calc(env(safe-area-inset-top,0px) + 2px));
    gap:4px;
    box-shadow:0 10px 24px rgba(12,34,64,.14);
  }
  .sb-hd.mobile-condensed .h1{font-size:12.5px;}
  .sb-hd.mobile-condensed .sb-brand{gap:3px;}
  .sb-hd.mobile-condensed .sb-brand-row{gap:7px;padding-right:0;}
  .sb-hd.mobile-condensed .h1-pack-trigger{padding:3px 8px;gap:5px;}
  .sb-hd.mobile-condensed .h1-pack-label{font-size:11px;}
  .sb-hd.mobile-condensed .hd-meta-row{margin-top:0;gap:6px;grid-template-columns:minmax(0,1fr) auto;}
  .sb-hd.mobile-condensed .hd-user-row{padding-left:0;width:auto;}
  .sb-hd.mobile-condensed .hd-account-wrap{width:auto;}
  .sb-hd.mobile-condensed .hd-account-btn{padding:4px 8px;border-radius:11px;gap:6px;min-height:0;min-width:0;}
  .sb-hd.mobile-condensed .hd-account-name{font-size:11px;letter-spacing:.03em;}
  .sb-hd.mobile-condensed .hd-account-status{display:none;}
  .sb-hd.mobile-condensed .hd-account-dot{width:9px;height:9px;box-shadow:0 0 0 3px rgba(52,211,153,.12);}
  .sb-hd.mobile-condensed .hd-actions{position:static;top:auto;right:auto;gap:4px;justify-content:flex-end;justify-self:end;}
  .sb-hd.mobile-condensed .hd-kbd-btn{min-height:24px;padding:0 7px;font-size:0;border-radius:999px;}
  .sb-hd.mobile-condensed .hd-kbd-icon{margin:0;}
  .sb-hd.mobile-condensed .hd-kbd-label{display:none;}
  .sb-hd.mobile-condensed .hd-icon-btn,
  .sb-hd.mobile-condensed .hd-icon-btn-subtle{width:30px;height:30px;border-radius:10px;}
  .preset-section.mobile-condensed{
    padding:5px 10px 4px;
    border-radius:12px;
    margin-bottom:6px;
    box-shadow:0 6px 14px rgba(12,34,64,.08);
  }
  .preset-section.mobile-condensed .preset-head{margin-bottom:3px;}
  .preset-section.mobile-condensed .preset-label{font-size:7.5px;letter-spacing:.16em;}
  .preset-section.mobile-condensed .preset-manage{padding:4px 8px;font-size:10px;}
  .preset-section.mobile-condensed .starter-recipes-row{display:none;}
  .preset-section.mobile-condensed .preset-chips{padding-bottom:0;}
  .preset-section.mobile-condensed .starter-recipes-copy{display:none;}
  .preset-section.mobile-condensed .preset-chip{padding:6px 10px;font-size:10.5px;}
  .preset-section.mobile-condensed .preset-active-bar{padding:6px 8px;}

  /* Nav */
  .mob-nav{display:flex!important;}
  .mob-assist-pill{display:flex!important;}
  .mob-nav-btn{padding:13px 0;font-size:14px;min-height:48px;position:relative;z-index:1;}

  /* Generate bar */
  /* FAB — floating generate pill */
  .mob-fab{
    position:fixed;
    bottom:max(80px,calc(env(safe-area-inset-bottom,0px) + 80px));
    left:50%;
    transform:translateX(-50%) translateY(0);
    z-index:200;
    display:flex;
    align-items:center;
    gap:7px;
    padding:11px 18px;
    border-radius:24px;
    border:none;
    background:linear-gradient(135deg,#0369a1,#0c4a6e);
    color:#fff;
    font-size:13px;
    font-weight:800;
    letter-spacing:.03em;
    box-shadow:0 8px 20px rgba(3,105,161,.24);
    cursor:pointer;
    white-space:nowrap;
    transition:transform .28s cubic-bezier(.4,0,.2,1), opacity .28s ease, box-shadow .15s;
  }
  .mob-fab.fab-visible{opacity:1;transform:translateX(-50%) translateY(0);}
  .mob-fab.fab-hidden{opacity:0;transform:translateX(-50%) translateY(80px);pointer-events:none;}
  .mob-fab.fab-disabled{background:#94a3b8;box-shadow:none;}
  .mob-fab:active:not(.fab-disabled){transform:translateX(-50%) translateY(2px);box-shadow:0 2px 10px rgba(3,105,161,.3);}
  /* Hide note FAB (copy/email/pdf) when keyboard is up to avoid overlap */
  .blank-nav-up.note-fab, .note-fab.blank-nav-up{display:none!important;}
  /* Also hide mob-fab (generate button) when a blank input is focused */
  .mob-fab.blank-nav-up{opacity:0!important;pointer-events:none!important;}
  .mob-output-btn{display:flex!important;}
  .sb-gen-inline{display:none!important;}

  /* CPT / billing table: scrollable horizontally */
  .tbl{font-size:11px;}
  .tbl th,.tbl td{padding:7px 8px;}
  .box{padding:12px 12px!important;}

  /* Billing dashboard tiles: 2-column on phone */
  .dash-grid{grid-template-columns:1fr 1fr;gap:8px;}
  .coding-checks-summary{grid-template-columns:auto minmax(0,1fr) auto;}
  .coding-checks-summary-main{grid-column:2 / 3;}
  .coding-checks-summary-hint{grid-column:2 / 3;font-size:10.5px;}
  .coding-checks-summary-chevron{grid-column:3;grid-row:1 / span 2;}
  .coding-pearl-toggle{grid-template-columns:auto minmax(0,1fr) auto;min-height:50px;}
  .coding-pearl-summary{grid-column:2 / 3;font-size:10.5px;}
  .coding-pearl-chevron{grid-column:3;grid-row:1 / span 2;}
  .coder-dashboard-strip{grid-template-columns:repeat(2,minmax(0,1fr));}
  .coder-dashboard-readiness{grid-column:1 / -1;}
  .dash-tile-val{font-size:18px;}

  /* Preop / Salvage row compact on mobile */
  .flagRow{margin-top:4px;}
  .flag{font-size:11px!important;padding:5px 10px!important;}

  /* Case builder section headers */
  .cb-sec-hd{font-size:10px;margin:14px 0 6px 1px;}
  /* Picker button bigger on mobile */
  .cb-add-btn{padding:14px 16px;font-size:14px;min-height:52px;border-radius:12px;}
  .cb-picker{padding:12px;border-radius:12px;}
  .chips{gap:8px;}

  /* Proc cards spacing */
  .cardBox{padding:10px 12px!important;}
  .cardTitle{font-size:13px!important;}

  /* Alert banners full-width readable */
  .nf-conflict-banner div{font-size:12px!important;}
  /* Tabs: compress so all 4 fit on phone */
  .tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-top:max(0px,env(safe-area-inset-top,0px));scrollbar-width:none;position:relative;}
  .tabs::-webkit-scrollbar{display:none;}
  .tab{padding:10px 12px;font-size:11px;letter-spacing:.04em;white-space:nowrap;flex-shrink:0;text-align:center;}
  /* Fade right edge to hint scrollability */
  .tabs::after{content:"";position:absolute;right:0;top:0;bottom:0;width:28px;background:linear-gradient(to right,transparent,#fff);pointer-events:none;}
  /* Hide old scroll tabs on mobile, show pill bar instead */
  .tabs.tabs-hide-wide{display:none!important;}
  /* Mobile note pill tab bar */
.mob-note-tabs{display:flex;gap:8px;background:rgba(252,253,255,.96);border-bottom:1px solid #eef1f7;flex-shrink:0;padding:max(4px,env(safe-area-inset-top,0px)) 10px 8px;position:sticky;top:0;z-index:50;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 10px 22px rgba(15,39,68,.04);}
  /* Note output: grey ground so card pops */
  .out{background:#fff;}
  /* Note .box: lift it as a document card */
  .out .box{margin:4px 0 8px;border-radius:16px;box-shadow:0 2px 8px rgba(0,0,0,.05),0 12px 32px rgba(15,39,68,.07);padding:16px 14px;}
  /* Mob note tab bar refinements */
.mob-note-tab{background:rgba(248,250,252,.98);border-radius:16px;box-shadow:inset 0 0 0 1px rgba(148,163,184,.12);}
.mob-note-tab.on{background:linear-gradient(180deg,#0f2744 0%,#17395f 100%);box-shadow:0 12px 24px rgba(15,39,68,.2),inset 0 1px 0 rgba(255,255,255,.12);}
  .mob-note-tab-label{color:var(--nf-text-muted);}
  .mob-note-tab.on .mob-note-tab-label{color:#fff;font-weight:900;}
.mob-note-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 4px 10px;border:none;cursor:pointer;position:relative;transition:all .13s cubic-bezier(.4,0,.2,1);}
  .mob-note-tab.on .mob-note-tab-label{color:#fff;}
  .mob-note-tab-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;background:linear-gradient(180deg,#eef3fa 0%,#e6edf7 100%);color:#62748e;flex-shrink:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.84);}
  .mob-note-tab.on .mob-note-tab-icon{background:rgba(255,255,255,.16);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.18);}
  .mob-note-tab-label{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--nf-text-muted);transition:color .13s;}
  .mob-note-tab.on .mob-note-tab-label{color:#fff;}
.mob-note-tab-badge{position:absolute;top:4px;right:calc(50% - 18px);min-width:16px;height:16px;border-radius:99px;background:#dbe4f3;color:#53657f;font-size:9px;font-weight:900;display:flex;align-items:center;justify-content:center;padding:0 4px;box-shadow:0 2px 6px rgba(15,39,68,.1);}
  .mob-note-tab-badge.on{background:#0ea5e9;color:#fff;}
  /* Mobile copy action bar */
  .mob-copy-bar{display:none!important;}
  .mob-copy-row{display:flex;align-items:center;gap:8px;padding:10px 14px;padding-bottom:max(12px,env(safe-area-inset-bottom,12px));}
  .mob-copy-cta{flex:1;padding:12px;border-radius:10px;border:none;background:linear-gradient(135deg,#0369a1,#0c4a6e);color:#fff;font-size:14px;font-weight:900;letter-spacing:.03em;cursor:pointer;transition:all .15s;}
  .mob-copy-cta.copied{background:linear-gradient(135deg,#15803d,#166534);}
  .mob-copy-cta:active{transform:scale(.97);}
  /* Hide desktop hs-actions on mobile */
  .mob-hs-actions{display:none!important;}
  /* Note summary bar: hide billing pills (shown in health strip above) */
  .nsb-rvu{display:none!important;}
  .nsb-pill{display:none!important;}
  /* Note summary bar: single line truncate */
  .note-summary-bar{flex-wrap:nowrap;padding:6px 14px;gap:6px;}
  .nsb-procedures{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;}
  /* Note output: full width */
  .out{padding:4px 12px calc(env(safe-area-inset-bottom,12px) + 102px);scroll-padding-top:56px;padding-top:2px;}
  .scroll-top-btn{width:30px;height:30px;bottom:calc(var(--nf-dock-rail) + 124px);right:22px;transition:bottom .15s ease,transform .15s ease,opacity .15s ease;background:rgba(15,39,68,.84);box-shadow:0 8px 16px rgba(15,39,68,.14);}
  .pre{font-size:14px;line-height:1.72;}
  /* Health strip stays desktop-only; mobile relies on the dock and panel tabs */
  .health-strip{display:none!important;}
  .mob-blank-nav{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 12px;border-radius:16px;background:rgba(255,251,235,.96);border:1.5px solid #fcd34d;box-shadow:0 10px 28px rgba(146,64,14,.08);}
  .mob-blank-nav.done{justify-content:center;font-size:12px;font-weight:800;color:#15803d;background:#f0fdf4;border-color:#86efac;}
  .mob-blank-nav-btn{width:36px;height:36px;border:none;border-radius:12px;background:#fff;color:#92400e;font-size:15px;font-weight:900;box-shadow:inset 0 0 0 1px #fcd34d;cursor:pointer;}
  .dash-drawer{padding:10px 14px 8px;background:linear-gradient(180deg,#f7faff 0%,#fff 100%);}
  .dash-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;}
  .dash-tile{border-radius:16px;}
  .dash-tile.revenue{grid-column:1/-1;}
  .dash-tile .nf-stat-label{font-size:8.5px;letter-spacing:.16em;margin-bottom:7px;}
  .dash-tile .nf-stat-value{font-size:21px;}
  .dash-tile.risk-low .nf-stat-value,
  .dash-tile.risk-medium .nf-stat-value,
  .dash-tile.risk-high .nf-stat-value,
  .dash-tile.revenue .nf-stat-value{font-size:18px;}
  .missed-panel{margin-top:4px;border-radius:14px;max-height:280px;overflow:auto;}
  .dash-coverage-hd{margin-bottom:8px;}
  .dash-cov-grid{grid-template-columns:1fr;gap:7px;}
  .coding-checks-summary{grid-template-columns:auto minmax(0,1fr) auto;}
  .coding-checks-summary-main{grid-column:2 / 3;}
  .coding-checks-summary-hint{grid-column:2 / 3;font-size:10.5px;}
  .coding-checks-summary-chevron{grid-column:3;grid-row:1 / span 2;}
  .coding-pearl-grid{gap:7px;}
  .coding-pearl-toggle{grid-template-columns:auto minmax(0,1fr) auto;min-height:50px;}
  .coding-pearl-summary{grid-column:2 / 3;font-size:10.5px;}
  .coding-pearl-chevron{grid-column:3;grid-row:1 / span 2;}
  .coder-dashboard-strip{grid-template-columns:repeat(2,minmax(0,1fr));}
  .coder-dashboard-readiness{grid-column:1 / -1;}
  body.nf-keyboard-open .mob-nav,
  body.nf-keyboard-open .mob-assist-pill{transform:translateY(10px);opacity:.94;}
  body.nf-keyboard-open .note-fab.mobile{bottom:calc(var(--nf-dock-rail) + 10px + min(var(--nf-keyboard-lift,0px), 18px));}
  body.nf-keyboard-open .scroll-top-btn{bottom:calc(var(--nf-dock-rail) + min(var(--nf-keyboard-lift,0px), 18px) + 124px);}
  body.nf-keyboard-open .mob-note-tabs{box-shadow:0 8px 22px rgba(15,39,68,.05), inset 0 -1px 0 #eef2f7;}
  .nf-toast-stack{right:14px;left:14px;bottom:calc(var(--nf-dock-rail) + 18px);}
  .nf-toast{min-width:0;max-width:none;}
}

/* ── iPad split-screen / narrow landscape (701–1023px) ──────────── */
@media(min-width:701px) and (max-width:1023px){
  /* Two-pane: builder left, note+billing right */
  .shell{display:block!important;width:100vw!important;height:100dvh!important;overflow:hidden!important;flex-direction:unset!important;}
  .builder-shell-host{display:block!important;width:100vw!important;height:100dvh!important;min-width:0!important;overflow:hidden!important;}
  .mob-viewport{display:block!important;width:100vw!important;height:100dvh!important;min-width:0!important;min-height:0!important;overflow:hidden!important;}
  .mob-slider{display:grid!important;grid-template-columns:340px minmax(0,1fr)!important;width:100vw!important;height:100dvh!important;min-width:0!important;min-height:0!important;transform:none!important;transition:none!important;overflow:hidden!important;}
  .mob-slider .sb{width:340px!important;min-width:0!important;height:100dvh!important;overflow-y:auto!important;overflow-x:visible!important;position:relative!important;left:auto!important;top:auto!important;transform:none!important;}
  .sb-hd{padding-top:max(10px,calc(env(safe-area-inset-top,0px) + 6px));}
  .mob-slider .main{width:auto!important;min-width:0!important;height:100dvh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;position:relative!important;left:auto!important;top:auto!important;transform:none!important;border-left:1px solid #dde3ec;}
  .main .tabs{display:flex!important;flex-shrink:0;overflow-x:auto;padding:0;}
  .mob-fab{display:none!important;}
  .mob-note-tabs{display:none!important;}
  .mob-copy-bar{display:none!important;}
  .mob-nav{display:none!important;}
  /* Slightly larger tap targets */
  .chip{padding:9px 15px;font-size:13px;min-height:42px;display:inline-flex;align-items:center;}
  .proc-chip{padding:9px 15px;font-size:12px;min-height:42px;display:inline-flex;align-items:center;}
  .cfg-chip{padding:7px 13px;font-size:12px;min-height:38px;}
  .inp,.sel{padding:11px 13px;font-size:15px;}
  .btn{min-height:46px;font-size:14px;}
  .cb-add-btn{min-height:46px;font-size:13px;}
  .dash-grid{grid-template-columns:1fr 1fr 1fr;}
  .dash-tile-val{font-size:20px;}
  /* Health strip wraps nicely */
  .health-strip{flex-wrap:wrap;gap:4px;}
}
.mob-output-btn{display:none;position:sticky;bottom:0;z-index:50;margin:0;padding:12px 16px;background:linear-gradient(135deg,#0f2744,#0d3d6b);border:none;color:#fff;font-size:14px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;align-items:center;justify-content:center;gap:8px;box-shadow:0 -4px 20px rgba(13,61,107,.35);width:100%;}
.mob-nav{display:none;position:fixed;left:0;right:0;bottom:calc(env(safe-area-inset-bottom,0px) * -1);background:rgba(255,255,255,.96);border-top:1px solid rgba(255,255,255,.72);padding:8px 12px 0;gap:0;flex-direction:column;z-index:var(--nf-z-dock);box-sizing:border-box;backdrop-filter:blur(20px) saturate(1.08);-webkit-backdrop-filter:blur(20px) saturate(1.08);box-shadow:0 -14px 36px rgba(15,39,68,.1),0 -1px 0 rgba(148,163,184,.16);transition:transform .18s ease,opacity .18s ease,box-shadow .18s ease;}
.mob-nav-btn-row{display:flex;flex-direction:row;gap:8px;flex:0 0 auto;}
.mob-nav-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 0 7px;border:none;background:rgba(255,255,255,.68);border-radius:16px;font-size:12px;font-weight:800;color:#8b9ab2;cursor:pointer;letter-spacing:.03em;text-transform:uppercase;transition:all .16s cubic-bezier(.22,1,.36,1);box-shadow:inset 0 0 0 1px rgba(148,163,184,.14);}
.mob-nav-btn:hover{transform:translateY(-1px);}
.mob-nav-btn.on{background:linear-gradient(180deg,#0f2744 0%,#16365c 100%);color:#fff;box-shadow:0 14px 30px rgba(15,39,68,.2), inset 0 0 0 1px rgba(255,255,255,.06);}
.mob-nav-btn-primary{flex:1 1 0;min-width:0;}
.mob-nav-btn-icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;background:linear-gradient(180deg,rgba(15,39,68,.06) 0%,rgba(15,39,68,.03) 100%);color:#64748b;box-shadow:inset 0 1px 0 rgba(255,255,255,.86);}
.mob-nav-btn.on .mob-nav-btn-icon-wrap{background:linear-gradient(180deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.12) 100%);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.14);}
.mob-nav-btn-label{display:block;line-height:1;}
.mob-assist-pill{display:none;position:fixed;right:18px;bottom:calc(var(--nf-dock-offset) + 74px);z-index:calc(var(--nf-z-dock) + 1);align-items:center;gap:8px;padding:10px 14px 10px 12px;border:none;border-radius:999px;background:rgba(255,255,255,.94);color:#7b8aa2;font:inherit;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;box-shadow:0 12px 28px rgba(15,39,68,.12),inset 0 0 0 1px rgba(148,163,184,.16);backdrop-filter:blur(18px) saturate(1.06);-webkit-backdrop-filter:blur(18px) saturate(1.06);transition:transform .16s cubic-bezier(.22,1,.36,1),background .16s ease,color .16s ease,box-shadow .16s ease,opacity .18s ease,left .18s ease,right .18s ease,bottom .18s ease;}
.mob-assist-pill:hover{transform:translateY(-1px);background:rgba(255,255,255,.98);color:#5d6e86;}
.mob-assist-pill.on{background:#edf6ff;color:#0f2744;box-shadow:0 10px 22px rgba(14,165,233,.12),inset 0 0 0 1px rgba(14,165,233,.16);}
.mob-assist-pill.note-peer{left:18px;right:auto;bottom:calc(var(--nf-dock-offset) + 86px);padding:9px 13px 9px 11px;box-shadow:0 10px 24px rgba(15,39,68,.1),inset 0 0 0 1px rgba(148,163,184,.14);}
.mob-assist-pill-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:linear-gradient(180deg,rgba(15,39,68,.06) 0%,rgba(15,39,68,.03) 100%);color:#64748b;box-shadow:inset 0 1px 0 rgba(255,255,255,.86);}
.mob-assist-pill.on .mob-assist-pill-icon{background:linear-gradient(180deg,rgba(14,165,233,.16) 0%,rgba(14,165,233,.08) 100%);color:#0369a1;box-shadow:inset 0 1px 0 rgba(255,255,255,.7);}
.mob-assist-pill-label{line-height:1;}
.mob-assist-pill-dot{width:6px;height:6px;border-radius:999px;background:#0ea5e9;box-shadow:0 0 0 3px rgba(14,165,233,.12);}
.mob-nav-footer{display:flex;align-items:center;justify-content:center;gap:6px;padding:3px 0 calc(env(safe-area-inset-bottom,6px) + 3px);pointer-events:none;}
.mob-nav-footer.has-rvu{pointer-events:auto;cursor:pointer;}
.mob-nav-footer-val{font-size:10.5px;font-weight:900;letter-spacing:.02em;color:#1d4ed8;font-family:'JetBrains Mono',monospace;line-height:1;}
.mob-nav-footer-label{font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#94a3b8;line-height:1;}
.mob-nav-footer-sep{width:3px;height:3px;border-radius:50%;background:#e2e8f0;flex-shrink:0;}
.nf-icon{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;line-height:0;}
.nf-icon svg{width:17px;height:17px;overflow:visible;shape-rendering:geometricPrecision;}
.mob-note-tab-icon .nf-icon,.mob-nav-btn-icon-wrap .nf-icon,.bp-tab-icon .nf-icon,.desktop-orbit-ico .nf-icon{width:17px;height:17px;}
.mob-note-tab-icon .nf-icon svg,.mob-nav-btn-icon-wrap .nf-icon svg,.bp-tab-icon .nf-icon svg,.desktop-orbit-ico .nf-icon svg{width:17px;height:17px;}
.desktop-orbit-btn.accent .desktop-orbit-ico{color:#6d28d9;}

@media(min-width:768px){.mob-fab{display:none!important;}.mob-note-tabs{display:none!important;}.mob-copy-bar{display:none!important;}.note-hd-extras{display:none!important;}} /* mobile-only elements */
@media(max-width:767px){
  .tabs{display:none!important;}
  .note-fab-backdrop{
    display:block;
    position:fixed;
    inset:0;
    z-index:78;
    border:none;
    background:radial-gradient(circle at calc(100% - 44px) calc(100% - 170px), rgba(15,39,68,.18), rgba(15,23,42,.04) 28%, rgba(15,23,42,.22) 100%);
    opacity:0;
    animation:noteFabBackdropIn .2s ease forwards;
  }
  .note-fab{
    position:fixed;
    left:auto;
    right:18px;
    bottom:calc(var(--nf-dock-rail) + 2px);
    transform:translateY(0) scale(1);
    padding:0;
    background:transparent;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
    box-shadow:none;
    border-radius:0;
    gap:0;
    z-index:calc(var(--nf-z-dock) - 1);
  }
  .note-fab.note-fab-visible{opacity:1!important;pointer-events:auto!important;transform:translateY(0) scale(1);}
  .note-fab.note-fab-hidden{opacity:0!important;pointer-events:none!important;transform:translateY(14px) scale(.96);}
  .note-fab.mobile .note-fab-menu{
    display:flex;
    position:absolute;
    right:0;
    bottom:64px;
    min-width:164px;
    padding:8px;
    flex-direction:column;
    gap:6px;
    border-radius:20px;
    background:rgba(15,23,42,.92);
    box-shadow:0 16px 40px rgba(15,23,42,.26);
    opacity:0;
    pointer-events:none;
    transform-origin:100% 100%;
    transform:translateY(14px) scale(.88);
    transition:opacity .2s ease,transform .28s cubic-bezier(.22,1.18,.32,1);
  }
  .note-fab.mobile.open .note-fab-menu{opacity:1;pointer-events:auto;transform:translateY(0) scale(1);}
  .note-fab.mobile .note-fab-btn{
    justify-content:flex-start;
    width:100%;
    padding:10px 12px;
    border-radius:14px;
    color:#e2e8f0;
    font-size:13px;
    background:rgba(255,255,255,.02);
    transition:transform .12s ease,background .12s ease,color .12s ease;
  }
  .note-fab.mobile .note-fab-btn:hover,
  .note-fab.mobile .note-fab-btn:active{background:rgba(255,255,255,.12);}
  .note-fab.mobile .note-fab-btn:active{transform:scale(.985);}
  .note-fab.mobile .note-fab-btn.accent{background:rgba(124,58,237,.18);color:#e9d5ff;}
  .note-fab-trigger{
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    border:none;
    border-radius:999px;
    background:linear-gradient(135deg,#0f2744,#0d3d6b);
    color:#fff;
    font-size:24px;
    font-weight:900;
    box-shadow:var(--nf-shadow-fab), inset 0 1px 0 rgba(255,255,255,.18);
    cursor:pointer;
    transition:transform .14s ease,box-shadow .14s ease,background .14s ease,filter .14s ease;
  }
  .note-fab-trigger:active{transform:scale(.9);filter:saturate(1.06);}
  .note-fab.mobile.open .note-fab-trigger{transform:scale(.92);box-shadow:0 8px 20px rgba(15,39,68,.2), inset 0 1px 0 rgba(255,255,255,.1);background:linear-gradient(135deg,#1e293b,#0f172a);}
}
 /* mobile note actions sit above dock as a single expandable trigger */
.mob-gen-only{display:none;}
@keyframes noteFabBackdropIn{from{opacity:0;}to{opacity:1;}}
/* ── Config / option chips (inside procedure cards) ── */
.cfg-chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;border:1.5px solid #e2e8f0;background:#fbfcfe;color:#64748b;font-size:11px;font-weight:600;cursor:pointer;user-select:none;transition:background .13s cubic-bezier(.4,0,.2,1),border-color .13s cubic-bezier(.4,0,.2,1),color .13s cubic-bezier(.4,0,.2,1),box-shadow .13s cubic-bezier(.4,0,.2,1);}
.cfg-chip:hover{border-color:#bcc8d8;color:#334155;background:#f5f8fc;box-shadow:0 3px 8px rgba(15,39,68,.04);}
.cfg-chip.on{background:#edf4fb;border-color:#9eb6d4;color:#0f2744;font-weight:700;border-width:2px;box-shadow:inset 0 0 0 1px rgba(15,39,68,.12),inset 0 1px 0 rgba(255,255,255,.72);}
/* ── Procedure chips get a subtle left label accent ── */
.chips-label{font-size:10px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;}
/* ── Case Builder ── */
.cb-section{margin-top:0;padding-top:0;}
.cb-sec-hd{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;margin:18px 0 7px 1px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;user-select:none;padding:2px 0;}
.cb-sec-hd:hover{color:#64748b;}
.cb-sec-chevron{font-size:10px;transition:transform .15s;color:#cbd5e1;}
.cb-sec-hd.collapsed .cb-sec-chevron{transform:rotate(-90deg);}
.cb-sec-body{overflow:hidden;}
.cb-sec-body.collapsed{display:none;}
.cb-sec-hd{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;margin:18px 0 7px 1px;}
.cb-items{margin-bottom:2px;}
.cb-add-btn{width:100%;display:flex;align-items:center;gap:8px;padding:8px 11px;border:1.5px dashed #d5deea;border-radius:10px;background:transparent;cursor:pointer;color:#64748b;font-size:11.5px;font-weight:700;transition:all .15s;text-align:left;}
.cb-add-btn:hover{border-color:#8fb7e8;color:#1e4d8c;background:#f7fbff;}
.cb-plus{width:22px;height:22px;border-radius:6px;background:#e2e8f0;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:900;color:#64748b;flex-shrink:0;line-height:1;transition:all .15s;}
.cb-add-btn:hover .cb-plus{background:#7aa6dc;color:#fff;}
.cb-add-btn.open{border-color:#8fb7e8;border-style:solid;color:#1e4d8c;background:#f7fbff;}
.cb-add-btn.open .cb-plus{background:#7aa6dc;color:#fff;}
.cb-add-btn.open{
  transform:translateY(-1px);
  box-shadow:0 14px 26px rgba(2,132,199,.08);
}
.cb-add-btn.open .cb-plus{transform:rotate(90deg) scale(1.05);}
.cb-picker{
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:10px;
  margin-top:6px;
  margin-bottom:6px;
  animation:pickerLift .16s var(--nf-ease-standard) both;
  transform-origin:top center;
  box-shadow:0 12px 26px rgba(15,39,68,.05),inset 0 1px 0 rgba(255,255,255,.9);
}
.picker-group-label{font-weight:800;color:#7b889d;letter-spacing:.08em;text-transform:uppercase;margin-bottom:1px;}
.compact-help{font-size:10.5px;color:#94a3b8;}
@keyframes picker-in{from{opacity:0;transform:translateY(-4px);}to{opacity:1;transform:translateY(0);}}
/* Case outline */
.case-outline{background:#fff;border:1px solid #dde3ec;border-radius:11px;padding:10px 12px;margin-top:10px;margin-bottom:4px;box-shadow:0 1px 4px rgba(0,0,0,.05);}
.case-outline-hd{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;}
.case-block{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid #f1f5f9;}
.case-block:last-child{border-bottom:none;padding-bottom:0;}
.cb-badge{font-size:9px;font-weight:800;padding:2px 7px;border-radius:4px;flex-shrink:0;min-width:54px;text-align:center;letter-spacing:.04em;}
.cb-badge.res{background:#fee2e2;color:#b91c1c;}
.cb-badge.nd{background:#dbeafe;color:#1d4ed8;}
.cb-badge.recon{background:#d1fae5;color:#065f46;}
.cb-badge.adj{background:#ede9fe;color:#5b21b6;}
.cb-badge.thy{background:#fef9c3;color:#92400e;}
.cb-badge.tors{background:#f3e8ff;color:#6d28d9;}
.cb-badge.graft{background:#e0f2fe;color:#0369a1;}
.cb-name{font-size:11.5px;font-weight:600;color:#374151;flex:1;line-height:1.3;}
.cb-cpt{font-family:monospace;font-size:10px;color:#94a3b8;font-weight:700;flex-shrink:0;}
.case-outline-empty{color:#7b8da8;font-size:12px;line-height:1.6;padding:4px 0 2px;}
.builder-empty-state{padding:10px 12px;border-radius:10px;border:1px dashed #d7e3f2;background:#fbfdff;color:#7b8da8;font-size:11px;line-height:1.6;}
.case-outline-toggle{border:none;background:transparent;color:#64748b;font-size:10px;font-weight:800;letter-spacing:.04em;cursor:pointer;padding:0;transition:color .12s ease;}
.case-outline-toggle:hover{color:#1d4ed8;}
.desktop-nudge-toggle{align-self:flex-start;border:none;background:transparent;color:#6d28d9;font-size:11px;font-weight:800;cursor:pointer;padding:2px 0;transition:color .12s ease;}
.desktop-nudge-toggle:hover{color:#5b21b6;}
/* Patient compact card */
.pt-card{background:#fff;border:1px solid #dde3ec;border-radius:11px;padding:11px 12px;margin-top:10px;box-shadow:0 1px 4px rgba(0,0,0,.05);}
.pt-card-hd{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;margin-bottom:8px;}
@media(min-width:768px){
  .sb-hd{padding:12px 14px 10px;gap:8px;}
  .sb-body{padding:14px 14px 40px;background:linear-gradient(180deg,#f6f8fc 0%,#f2f5fa 100%);}
  .hd-actions{top:9px;right:12px;}
  .hd-icon-btn{width:32px;height:32px;border-radius:11px;}
  .hd-kbd-btn{min-height:30px;padding:0 10px;}
  .hd-account-btn{padding:6px 9px;border-radius:13px;}
  .case-outline{padding:11px 12px 9px;margin-top:9px;margin-bottom:7px;border-radius:14px;box-shadow:0 6px 16px rgba(15,39,68,.038),0 1px 0 rgba(255,255,255,.88) inset;}
  .case-outline-hd{margin-bottom:8px;color:#72839c;}
  .case-block{padding:6px 0;}
  .cb-name{font-size:12px;line-height:1.35;color:#24344d;}
  .cb-badge{min-width:60px;border-radius:999px;padding:3px 8px;font-size:8.5px;letter-spacing:.08em;}
  .pt-card{border-radius:14px;padding:11px 12px;box-shadow:0 6px 16px rgba(15,39,68,.038),0 1px 0 rgba(255,255,255,.88) inset;}
  .search-wrap{margin-bottom:8px;}
  .search-inp{padding:8px 11px 8px 31px;border-radius:10px;box-shadow:0 1px 0 rgba(255,255,255,.88) inset,0 4px 10px rgba(15,39,68,.035);}
  .search-icon{left:11px;font-size:14px;}
  .case-outline-toggle{font-size:10.5px;}
  .desktop-nudge-toggle{font-size:11.5px;}
  .cb-sec-hd{margin:16px 0 7px;padding-top:9px;border-top:1px solid #e8edf4;color:#73859f;}
  .cb-add-btn{padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.78);font-size:10.5px;}
  .cb-add-btn:hover{background:#fff;box-shadow:0 6px 14px rgba(2,132,199,.06);}
  .card{padding:10px 11px;margin-top:7px;border-radius:14px;box-shadow:0 1px 0 rgba(255,255,255,.92) inset,0 6px 16px rgba(15,39,68,.04);}
  .card:hover{box-shadow:0 1px 0 rgba(255,255,255,.94) inset,0 8px 20px rgba(15,39,68,.05);}
  .card-subtle{background:#f9fbfd;border-color:#e6edf5;box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 3px 10px rgba(15,39,68,.025);}
  .card-subtle:hover{box-shadow:0 1px 0 rgba(255,255,255,.94) inset,0 4px 12px rgba(15,39,68,.03);}
  .cardTitle{font-size:12.5px;font-weight:800;color:#13243f;letter-spacing:-.01em;}
  .sb-section-tabs{padding:7px 9px 5px;margin:0 -9px 3px;background:rgba(248,250,252,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}
  .sb-section-tabs button{min-height:34px;}
}
@media(min-width:768px) and (max-width:1440px){
  .h1{font-size:14px;}
  .hd-btn{min-height:40px;padding:0 13px;font-size:10.5px;}
  .hd-icon-btn{width:40px;height:40px;}
}
@media(max-width:767px){
  .handoff-shell{padding:14px 14px 16px;}
  .handoff-summary-grid,.handoff-check-grid{grid-template-columns:1fr 1fr;}
  .handoff-textarea{min-height:240px;}
}
.auth-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:9000;display:flex;align-items:center;justify-content:center;}
.auth-modal{background:#fff;border-radius:14px;padding:28px 28px 24px;width:min(94vw,380px);box-shadow:0 8px 40px rgba(0,0,0,.18);}
.auth-title{font-size:17px;font-weight:800;color:#0f2744;margin-bottom:4px;}
.auth-sub{font-size:12px;color:#64748b;margin-bottom:20px;}
.auth-input{width:100%;box-sizing:border-box;padding:10px 12px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:14px;margin-bottom:10px;outline:none;transition:border .15s;}
.auth-input:focus{border-color:#2563eb;}
.auth-btn{width:100%;padding:11px;border:none;border-radius:8px;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s;}
.auth-btn-primary{background:#1e3a5f;color:#fff;margin-bottom:8px;}
.auth-btn-primary:hover{background:#2563eb;}
.auth-btn-secondary{background:#f1f5f9;color:#334155;}
.auth-btn-secondary:hover{background:#e2e8f0;}
.auth-err{font-size:12px;color:#dc2626;margin-bottom:8px;padding:8px 10px;background:#fef2f2;border-radius:6px;}
.auth-toggle{font-size:12px;color:#64748b;text-align:center;margin-top:10px;}
.auth-toggle span{color:#2563eb;cursor:pointer;font-weight:600;}
.auth-profile-row{display:flex;gap:8px;margin-bottom:10px;}
.log-prompt{display:none;position:absolute;top:calc(100% + 6px);right:0;align-items:center;gap:6px;padding:5px 10px 5px 9px;background:#1e293b;border-radius:20px;border:1px solid #334155;box-shadow:0 3px 12px rgba(0,0,0,.28);z-index:300;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s;}
.log-prompt.visible{display:flex;pointer-events:auto;animation:logFadeIn .18s ease-out forwards;}
@keyframes logFadeIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.log-prompt-text{font-size:11px;font-weight:700;color:#e2e8f0;}
.log-prompt-btn{padding:3px 9px;border-radius:12px;border:none;font-size:10px;font-weight:800;cursor:pointer;transition:opacity .12s;}
.log-prompt-btn:hover{opacity:.8;}
.log-prompt-confirm{background:#0ea5e9;color:#fff;}
.log-prompt-dismiss{background:rgba(255,255,255,.12);color:#94a3b8;}
.ob-overlay{position:fixed;inset:0;background:rgba(5,15,35,.6);z-index:9100;display:flex;align-items:center;justify-content:center;padding:16px;}
.ob-modal{background:#fff;border-radius:18px;width:min(96vw,760px);max-height:92vh;overflow-y:auto;box-shadow:0 16px 60px rgba(0,0,0,.25);display:flex;flex-direction:column;}
.ob-header{background:linear-gradient(135deg,#0f2744,#0d3d6b);padding:22px 24px 18px;border-radius:16px 16px 0 0;}
.ob-title{font-size:18px;font-weight:900;color:#fff;margin-bottom:3px;}
.ob-sub{font-size:12px;color:rgba(255,255,255,.65);}
.ob-progress{display:flex;gap:5px;margin-top:14px;}
.ob-pip{flex:1;height:3px;border-radius:2px;background:rgba(255,255,255,.25);transition:background .2s;}
.ob-pip.done{background:#60a5fa;}
.ob-pip.active{background:#fff;}
.ob-body{padding:22px 24px;flex:1;}
.ob-q{font-size:13px;font-weight:800;color:#0f172a;margin-bottom:4px;}
.ob-hint{font-size:11px;color:#94a3b8;margin-bottom:12px;}
.ob-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.ob-chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px;}
.ob-chip{padding:7px 14px;border-radius:20px;border:1.5px solid #e2e8f0;background:#f8fafc;color:#374151;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;user-select:none;}
.ob-chip:hover{border-color:#93c5fd;color:#1d4ed8;}
.ob-chip.on{background:linear-gradient(135deg,#0f2744,#0d3d6b);border-color:#0d3d6b;color:#fff;font-weight:700;border-width:2px;box-shadow:0 0 0 2px rgba(14,165,233,.18);}
.ob-input{width:100%;box-sizing:border-box;padding:9px 12px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:13px;margin-bottom:10px;outline:none;transition:border .15s;font-family:inherit;}
.ob-input:focus{border-color:#0284c7;box-shadow:0 0 0 3px rgba(2,132,199,.1);}
.ob-textarea{resize:vertical;min-height:96px;line-height:1.55;}
.ob-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 24px 20px;border-top:1px solid #f1f5f9;}
.ob-footer-actions{display:flex;align-items:center;gap:10px;}
.ob-btn-back{padding:11px 18px;border:1.5px solid #dbe4f0;border-radius:9px;background:#fff;color:#5b6b83;font-size:13px;font-weight:800;cursor:pointer;transition:all .15s;}
.ob-btn-back:hover{border-color:#93c5fd;color:#1d4ed8;}
.ob-btn-next{padding:11px 28px;border:none;border-radius:9px;background:linear-gradient(135deg,#0f2744,#0d3d6b);color:#fff;font-size:13px;font-weight:800;cursor:pointer;transition:opacity .15s;}
.ob-btn-next:hover{opacity:.88;}
.ob-btn-skip{font-size:11px;color:#94a3b8;cursor:pointer;border:none;background:none;padding:4px 8px;}
.ob-btn-skip:hover{color:#64748b;}
.ob-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.ob-summary-card{border:1.5px solid #dbe4f0;border-radius:14px;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);padding:14px 14px 12px;min-height:120px;}
.ob-summary-title{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#64748b;margin-bottom:10px;}
.ob-summary-list{display:flex;flex-direction:column;gap:6px;}
.ob-summary-item{font-size:12px;line-height:1.45;color:#0f172a;font-weight:600;}
.ob-summary-item-muted{color:#94a3b8;font-weight:500;}
.ob-ready{margin-top:16px;padding:14px 16px;border-radius:14px;background:#f0fdf4;border:1.5px solid #86efac;}
.ob-ready-title{font-size:12px;font-weight:900;color:#166534;margin-bottom:8px;}
.ob-ready-list{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#166534;font-weight:600;}
.ob-section-label{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#94a3b8;margin:14px 0 7px;}
@media (max-width: 720px){
  .ob-modal{width:min(100vw - 20px,560px);}
  .ob-grid,.ob-review-grid{grid-template-columns:1fr;}
  .followup-row{grid-template-columns:1fr;gap:8px!important;align-items:stretch!important;}
  .followup-label{white-space:normal!important;}
  .followup-select{width:100%!important;min-width:0;}
  .followup-meta{display:block;}
}
.sign-in-btn{padding:4px 10px;border-radius:6px;border:1.5px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff;font-size:11px;font-weight:700;cursor:pointer;letter-spacing:.04em;transition:all .12s;}
.sign-in-btn:hover{background:rgba(255,255,255,.22);}
.sign-in-btn.signed-in{background:rgba(34,197,94,.2);border-color:rgba(34,197,94,.4);color:#86efac;}
.sync-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;display:inline-block;margin-right:4px;box-shadow:0 0 0 3px rgba(34,197,94,.14);}
.hd-icon-btn .nf-icon{width:18px;height:18px;}
.hd-icon-btn .nf-icon svg{width:18px;height:18px;}

/* ── Fill Blanks Mode ── */
.fill-mode-pre{position:relative;}
.nf-blank-input{
  display:inline;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:13px;
  font-weight:600;
  color:#92400e;
  background:#fef3c7;
  border:none;
  border-bottom:2px solid transparent;
  border-radius:3px 3px 0 0;
  padding:1px 4px 0;
  outline:none;
  vertical-align:baseline;
  cursor:text;
  transition:background .15s,border-color .15s,box-shadow .15s;
  line-height:inherit;
  /* Hover: subtle affordance */
}
.nf-blank-input:hover{border-bottom-color:#f59e0b;box-shadow:0 1px 0 0 #fcd34d;}
.nf-blank-input::placeholder{color:#b45309;opacity:.8;font-style:italic;}
.nf-blank-input:focus{
  background:#fef9c3;
  border-bottom:2px solid #d97706;
  box-shadow:0 2px 0 0 #f59e0b;
  border-radius:3px 3px 0 0;
}
.nf-blank-input.numeric{font-family:"JetBrains Mono",monospace;font-weight:700;color:#0f766e;background:#f0fdfa;border-color:#5eead4;text-align:right;}
.nf-blank-input.filled{
  background:transparent;
  border-bottom:1.5px dashed #86efac;
  color:#15803d;
  font-weight:500;
}
.nf-blank-input.filled:hover{border-bottom-color:#22c55e;}
.nf-blank-input.filled:focus{background:#f0fdf4;border-bottom:2px solid #16a34a;box-shadow:0 2px 0 0 #22c55e;}


/* ── Mobile section tile grid ── */
.mob-sec-grid{display:none;}
.mob-sec-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 8px;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;position:relative;transition:border-color .15s,background .15s,box-shadow .15s;min-height:60px;}
.mob-sec-tile-label{font-size:10.5px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.05em;text-align:center;line-height:1.2;}
.mob-sec-tile-badge{position:absolute;top:5px;right:5px;background:#1d4ed8;color:#fff;font-size:9px;font-weight:900;border-radius:10px;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0 4px;font-family:'JetBrains Mono',monospace;}
.mob-sec-tile.has-items{border-color:#60a5fa;background:#eff6ff;}
.mob-sec-tile.has-items .mob-sec-tile-label{color:#1d4ed8;font-weight:900;}
.mob-sec-tile.active{border-color:#0ea5e9;background:#0ea5e9;box-shadow:0 2px 12px rgba(14,165,233,.45);}
.mob-sec-tile.active .mob-sec-tile-label{color:#fff;font-weight:900;}
.mob-sec-tile.active .mob-sec-tile-badge{background:#fff;color:#0369a1;}
/* Expanded section: animate in */
.cb-sec-mob{animation:sec-in .18s ease;}
@keyframes sec-in{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:translateY(0);}}
@media(max-width:767px){
  .mob-sec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px 14px 6px;}
  .cb-sec-mob{margin:0 14px 14px;background:#fff;border:1.5px solid #e2e8f0;border-radius:14px;padding:12px 12px 4px;overflow:visible;}
  .cb-sec-mob .cb-sec-hd{margin-top:0;}
  /* Collapse button visible only on mobile inside tile-expanded section */
  .mob-sec-collapse{display:flex;}
}
.mob-sec-collapse{display:none;align-items:center;gap:5px;margin:10px 0 6px;padding:8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9px;cursor:pointer;font-size:11px;font-weight:800;color:#64748b;width:100%;}
.mob-sec-collapse:active{background:#e2e8f0;}

/* ── Mobile: Back to sections button ── */
.mob-sec-back{display:none;}
@media(max-width:767px){
  .mob-sec-back{display:flex;align-items:center;gap:6px;width:100%;padding:9px 10px;margin-bottom:8px;background:#f1f5f9;border:1.5px solid #e2e8f0;border-radius:9px;cursor:pointer;font-size:12px;font-weight:800;color:#334155;transition:background .1s;}
  .mob-sec-back:active{background:#e2e8f0;}
  .mob-sec-back::before{content:"←";font-size:14px;}
}

/* ── Sticky search on mobile ── */
@media(max-width:767px){
  .mob-sticky-search{position:sticky;top:0;z-index:50;background:#f8fafc;padding:8px 0 4px;margin:0 -2px;box-shadow:0 2px 8px rgba(0,0,0,.06);}
}

/* ── Badge pulse animation ── */
@keyframes badge-pop{0%{transform:scale(1);}40%{transform:scale(1.5);}100%{transform:scale(1);}}
.mob-sec-tile-badge{animation:badge-pop .3s ease;}

/* ═══════════════════════════════════════════════════════════
   POLISH LAYER — typography, shadows, micro-interactions
   ═══════════════════════════════════════════════════════════ */

/* ── Scrollbars ── */
::-webkit-scrollbar{width:4px;height:4px;}
::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:99px;}
::-webkit-scrollbar-thumb:hover{background:#9ca3af;}
::selection{background:rgba(14,165,233,.18);color:#0f172a;}
:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.18),0 0 0 1px rgba(59,130,246,.3)!important;}
.chip:focus-visible,.proc-chip:focus-visible,.cfg-chip:focus-visible,.flag:focus-visible,
.billing-zone-action:focus-visible,.billing-icd-action:focus-visible,.mob-note-tab:focus-visible,.mob-nav-btn:focus-visible,
.note-mini-pill:focus-visible,.copy-btn:focus-visible,.tab:focus-visible,.btn:focus-visible,.inp:focus-visible,.sel:focus-visible,.txt:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(59,130,246,.24),0 0 0 1px rgba(29,78,216,.42)!important;
}

/* ── Product tokens ── */
:root{
  --nf-surface-deep:#f8fbff;
  --nf-surface-document:#fffdf9;
  --nf-surface-sky:#f3f8ff;
  --nf-surface-contrast:rgba(12,32,64,.82);
  --nf-border-subtle:#e8edf5;
  --nf-border-contrast:rgba(255,255,255,.18);
  --nf-text-strong:#0f1f36;
  --nf-text-inverse:#f8fbff;
  --nf-text-accent:#103d75;
  --nf-accent-ink:#12355e;
  --nf-accent-violet:#6d28d9;
  --nf-glow-blue:rgba(59,130,246,.16);
  --nf-glow-cyan:rgba(14,165,233,.12);
  --nf-shadow-card:0 16px 34px rgba(15,39,68,.08),0 1px 0 rgba(255,255,255,.92) inset;
  --nf-shadow-ambient:0 32px 80px rgba(15,39,68,.14),0 10px 28px rgba(15,39,68,.08);
}

/* ── Sidebar body: off-white ground ── */
.sb{background:linear-gradient(180deg,#f8fbff 0%,#f2f6fb 48%,#eef3f8 100%);box-shadow:10px 0 42px rgba(15,39,68,.1);}
.sb-body{background:
  radial-gradient(circle at top left,rgba(191,219,254,.22),transparent 26%),
  radial-gradient(circle at 88% 8%,rgba(14,165,233,.08),transparent 18%),
  linear-gradient(180deg,#f7fafe 0%,#f2f6fb 100%);}
.main{background:
  radial-gradient(circle at top right,rgba(191,219,254,.18),transparent 28%),
  radial-gradient(circle at 20% 0%,rgba(255,255,255,.52),transparent 22%),
  linear-gradient(180deg,#eef3f8 0%,#f5f8fc 100%);}
.billing-panel{background:
  radial-gradient(circle at top left,rgba(191,219,254,.22),transparent 30%),
  radial-gradient(circle at 88% 0%,rgba(14,165,233,.07),transparent 20%),
  linear-gradient(180deg,#f4f8fc 0%,#f8fbfd 100%);}

/* ── Sidebar header: richer gradient + inner highlight ── */
.sb-hd{background:
  radial-gradient(circle at top right,rgba(56,189,248,.24),transparent 28%),
  linear-gradient(158deg,#0b1e3c 0%,#0b305b 54%,#0d4b86 100%);
  box-shadow:0 1px 0 rgba(255,255,255,.1) inset,0 -1px 0 rgba(0,0,0,.18) inset,0 22px 40px rgba(6,16,34,.16);}
.h1{font-weight:900;letter-spacing:-.05em;}
.sub{color:rgba(255,255,255,.58);}

/* ── Section labels: accent bar + refined tracking ── */
.lbl{font-size:11px;letter-spacing:.1em;color:#5a6a82;gap:8px;}
.lbl::before{content:'';display:inline-block;width:2.5px;height:10px;background:linear-gradient(180deg,#0284c7,#0ea5e9);border-radius:2px;flex-shrink:0;}

/* ── Inputs ── */
.inp,.sel,.txt,.search-inp{
  border-color:var(--nf-border);
  font-family:inherit;
  border-radius:14px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
  transition:border-color var(--nf-dur-fast),box-shadow var(--nf-dur-fast),background var(--nf-dur-fast),transform var(--nf-dur-fast);
  color:var(--nf-text);
  box-shadow:var(--nf-shadow-xs),inset 0 1px 0 rgba(255,255,255,.88);
}
.inp::placeholder,.txt::placeholder,.search-inp::placeholder{color:#94a3b8;}
.inp:hover,.sel:hover,.txt:hover,.search-inp:hover{border-color:var(--nf-border-strong);}
.inp:focus,.sel:focus,.txt:focus,.search-inp:focus{
  border-color:#0284c7;
  box-shadow:0 0 0 4px rgba(2,132,199,.1),0 14px 28px rgba(15,39,68,.07),inset 0 1px 0 rgba(255,255,255,.94);
  background:#fff;
}

/* ── Cards: lifted with top highlight ── */
.box,.card,.pt-card,.bp-section,.handoff-summary-card,.billing-zone-card,.billing-mobile-summary-card,.ob-summary-card{
  position:relative;
}
.box::before,.card::before,.pt-card::before,.bp-section::before,.handoff-summary-card::before,.billing-zone-card::before,.billing-mobile-summary-card::before,.ob-summary-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.38));
  pointer-events:none;
}
.box{border-color:#e8edf5;border-radius:24px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);box-shadow:var(--nf-shadow-medium);}
.card{border-color:#e8edf5;border-radius:20px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);box-shadow:var(--nf-shadow-soft);transition:box-shadow var(--nf-dur-fast) ease-out,transform var(--nf-dur-fast) ease-out,border-color var(--nf-dur-fast) ease;}
.card:hover,.pt-card:hover{transform:translateY(-2px);box-shadow:var(--nf-shadow-card);}
.card.card-fresh{
  border-color:#7dd3fc;
  animation:cardFreshGlow 1.1s var(--nf-ease-standard) both;
}
.pt-card{border-color:#e8edf5;border-radius:20px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);box-shadow:var(--nf-shadow-soft);}

/* ── Proc chips ── */
.proc-chip{
  border-color:#e4e9f2;
  border-radius:12px;
  transition:all var(--nf-dur-fast) var(--nf-ease-swift);
  box-shadow:0 1px 0 rgba(255,255,255,.86) inset,0 6px 14px rgba(15,39,68,.04);
}
.proc-chip:hover{border-color:#93c5fd;color:#1d4ed8;background:#f0f9ff;transform:translateY(-1px);box-shadow:0 10px 20px rgba(15,39,68,.08);}
.proc-chip.on{background:linear-gradient(140deg,#0c2040 0%,#0c4278 100%);box-shadow:0 0 0 2px rgba(14,165,233,.28),0 2px 10px rgba(12,34,64,.28),0 1px 3px rgba(12,34,64,.16);letter-spacing:0;}
.proc-chip.on:hover{background:linear-gradient(140deg,#0d3560 0%,#0f5298 100%);transform:translateY(-1px);}

/* ── Regular chips ── */
.chip{
  transition:all var(--nf-dur-fast) var(--nf-ease-swift);
  border-color:#e4e9f2;
  border-radius:999px;
  box-shadow:0 1px 0 rgba(255,255,255,.84) inset;
}
.chip:hover{transform:translateY(-1px);box-shadow:0 8px 16px rgba(15,39,68,.08),0 1px 0 rgba(255,255,255,.9) inset;}

/* ── Generate button ── */
.btn{border-radius:14px;letter-spacing:.08em;font-size:12.5px;background:linear-gradient(135deg,#0b2544 0%,#0d4a82 100%);box-shadow:0 14px 28px rgba(12,34,64,.22),0 4px 10px rgba(12,34,64,.16),inset 0 1px 0 rgba(255,255,255,.16);transition:all .22s cubic-bezier(.4,0,.2,1);}
.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px rgba(12,34,64,.42),0 2px 6px rgba(12,34,64,.2);}
.btn:active:not(:disabled){transform:translateY(0);box-shadow:0 3px 10px rgba(12,34,64,.28);}

/* ── Tabs ── */
.tabs{background:rgba(255,255,255,.82);border-bottom:none;box-shadow:0 1px 0 #e4e9f2,0 10px 24px rgba(15,39,68,.04);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
.tab{font-size:10.5px;letter-spacing:.08em;padding:12px 15px;border-bottom-width:2.5px;transition:color var(--nf-dur-fast) ease,background var(--nf-dur-fast) ease,border-color var(--nf-dur-fast) ease,transform var(--nf-dur-fast) ease;}
.tab.on{color:#0c2040;border-bottom-color:#0284c7;border-bottom-width:2.5px;}
.tab:hover:not(.on){color:#334155;background:#f8fafc;transform:translateY(-1px);}

/* ── Health strip ── */
.health-strip{background:#fff;border-bottom:1px solid #e8edf5;box-shadow:0 1px 4px rgba(0,0,0,.04);padding:7px 16px;}
.hs-tile{border-radius:8px;padding:5px 11px;font-size:10.5px;letter-spacing:.01em;transition:all .13s;}
.hs-tile.rvu{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;letter-spacing:-.3px;}

/* ── CPT / numerical monospace ── */
.code,.rv,.srch-code,.srch-rvu,.missed-cpt,.pill{font-family:'JetBrains Mono',monospace;}
.pill{letter-spacing:-.3px;box-shadow:0 3px 14px rgba(12,34,64,.32);}
.rv{color:#0f766e;}

/* ── Tables ── */
.tbl th{font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;letter-spacing:.12em;background:#f8fafc;border-bottom:1.5px solid #e4e9f2;padding:10px 14px;color:#6b7280;}
.tbl td{padding:11px 14px;font-size:12px;}
.tbl tbody tr:hover{background:#f8fafc;}
.tbl tbody tr:last-child td{border-bottom:none;}

/* ── Dash tiles ── */
.dash-tile{border-radius:13px;box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 1px 3px rgba(0,0,0,.06),0 4px 12px rgba(0,0,0,.04);}
.dash-tile-label{letter-spacing:.1em;font-size:11px;}
.dash-tile-val{font-family:'JetBrains Mono',monospace;letter-spacing:-.5px;}

/* ── Dash drawer ── */
.dash-drawer{background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);border-bottom:1px solid #e8edf5;}

/* ── Copy button ── */
.copy-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;font-size:11.5px;font-weight:900;padding:9px 14px;transition:all .18s ease;background:linear-gradient(180deg,#f5f9ff 0%,#e9f2ff 100%);border-color:#c8dbfb;color:#114a8b;box-shadow:0 10px 22px rgba(29,78,216,.08), inset 0 1px 0 rgba(255,255,255,.9);}
.copy-btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(29,78,216,.12), inset 0 1px 0 rgba(255,255,255,.94);background:linear-gradient(180deg,#ffffff 0%,#edf5ff 100%);}

/* ── Billing panel header ── */
.bp-hd{background:
  radial-gradient(circle at top right,rgba(56,189,248,.18),transparent 28%),
  linear-gradient(180deg,#10223c 0%,#15304e 100%);
  box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 14px 28px rgba(15,39,68,.08);
  font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:.12em;}
.bp-section-hd{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:.16em;color:#7e90aa;}
.bp-body{background:linear-gradient(180deg,#f4f7fb 0%,#f7f9fc 100%);}

/* ── Missed revenue ── */
.missed-add-btn{border-radius:8px;font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:.02em;}
.missed-cpt{font-family:'JetBrains Mono',monospace;}
.missed-panel{border-radius:12px;border-color:#ddd6fe;}

/* ── Presets ── */
.preset-section{background:linear-gradient(158deg,#0c2040 0%,#0b3260 55%,#0c4278 100%);}
.preset-chip{font-family:'Plus Jakarta Sans',sans-serif;border-radius:20px;}

/* ── Accordion ── */
.acc-hd{border-radius:9px;border:1px solid #eaecf2;}
.acc-hd:hover{background:#f4f7fd;border-color:#c7d8f0;}

/* ── Suggestion cards ── */
.sug-text,.sug-mod,.sug-btn{font-family:'Plus Jakarta Sans',sans-serif;}

/* ── Warn box ── */
.warn-box{border-radius:11px;}

/* ── Note output: document feel ── */
.out{background:
  radial-gradient(circle at top right,rgba(191,219,254,.12),transparent 26%),
  linear-gradient(180deg,#f0f3f7 0%,#f5f7fb 100%);}
.pre{font-family:var(--nf-font-sans);line-height:1.84;font-size:14px;color:#1b2637;letter-spacing:-.002em;}
.pre strong{
  font-family:var(--nf-font-serif);
  font-size:14.2px;
  letter-spacing:-.01em;
  color:#102137;
  font-weight:900;
}
/* ── Note card wrapper: warm document surface ── */
.note-card-wrap{background:
  linear-gradient(180deg,rgba(255,255,255,.995) 0%,#ffffff 54%,#fcfdff 100%);
  border-radius:28px 28px 18px 18px;border:1px solid #e3e8ef;box-shadow:0 16px 36px rgba(15,39,68,.06),0 32px 72px rgba(15,39,68,.04);padding:32px 34px 30px;margin:10px 0 20px;width:100%;max-width:none;min-height:100%;box-sizing:border-box;overflow:hidden;position:relative;}
.note-card-wrap::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(180deg,rgba(244,247,251,.92) 0%,rgba(233,239,246,.45) 100%);}
.note-card-wrap::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at top right,rgba(14,165,233,.02),transparent 16%);
}
.note-pane-wrap.has-mini-metrics .note-card-wrap{margin-top:0;border-top-left-radius:22px;border-top-right-radius:22px;}

/* ── Reset btn ── */
.reset-btn{font-family:'Plus Jakarta Sans',sans-serif;border-radius:8px;letter-spacing:.01em;}

/* ── Icon btn ── */
.iconBtn{border-radius:8px;font-family:'Plus Jakarta Sans',sans-serif;}

/* ── Small text ── */
.small{font-size:11px;color:#8799b2;}

/* ── Flag pills ── */
.flag{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:.06em;border-radius:999px;}

/* ── Mobile: frosted glass bottom nav ── */
@media(max-width:767px){
  .out{display:block;}
  .note-workspace{width:auto;max-width:none;min-height:0;display:block;flex:unset;}
  .note-workspace>.note-card-wrap,
  .note-workspace>.note-edit-shell{display:block;flex:unset;}
  .note-card-wrap{min-height:0;}
  .note-pane-wrap.has-mini-metrics{padding-top:0;}
  .note-pane-wrap.has-mini-metrics::before{display:none;}
  .outHd{align-items:flex-start;gap:8px;flex-wrap:wrap;}
  .outTitle{flex:1 1 100%;font-size:14px;line-height:1.2;}
  .copy-btn{margin-left:auto;}
  .billing-mobile-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px;}
  .billing-mobile-sticky-summary{position:sticky;top:8px;z-index:22;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:-2px 0 10px;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .18s ease,transform .18s ease;}
  .billing-mobile-sticky-summary.visible{opacity:1;transform:translateY(0);pointer-events:auto;}
  .billing-mobile-sticky-chip{flex:1;min-width:0;justify-content:space-between;}
  .tbl{table-layout:auto;}
  .tbl th,.tbl td{padding:9px 8px;}
  .tbl th:nth-child(1),.tbl td:nth-child(1){width:96px!important;}
  .tbl th:nth-child(3),.tbl td:nth-child(3){width:62px!important;}
  .tbl th:nth-child(4),.tbl td:nth-child(4){width:62px!important;}
  .tbl th:nth-child(2),.tbl td:nth-child(2){
    width:auto!important;
    min-width:120px;
    overflow-wrap:break-word;
    word-break:normal;
  }
  .preset-section{padding:10px 12px;border-radius:16px;margin-bottom:10px;}
  .preset-head{margin-bottom:8px;}
  .preset-label{margin-bottom:0;font-size:11px;letter-spacing:.1em;}
  .starter-recipes-row{flex-direction:column;align-items:stretch;padding:8px 0 10px;}
  .starter-recipes-copy{max-width:none;}
  .starter-recipes-chips{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;}
  .starter-recipes-chips::-webkit-scrollbar{display:none;}
  .preset-manage{padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.12);}
  .preset-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;}
  .preset-chips::-webkit-scrollbar{display:none;}
  .preset-chip{flex:0 0 auto;padding:8px 12px;border-radius:999px;font-size:12px;}
  .preset-active-bar{padding:8px 10px;border-radius:12px;gap:8px;}
  .builder-nudge-mobile{padding:9px 10px;align-items:flex-start;}
  .builder-nudge-mobile-sub{display:none;}
  .builder-nudge-mobile-actions{flex-direction:row;gap:6px;}
  .builder-nudge-mobile-btn{padding:7px 9px;}
  .mob-nav{background:rgba(255,255,255,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(0,0,0,.06);}
  .mob-sec-tile{box-shadow:0 1px 3px rgba(0,0,0,.06),0 2px 8px rgba(0,0,0,.04);}
  .mob-sec-tile:active{transform:scale(.95);transition:transform .1s;}
  .mob-sec-tile.active:active{transform:scale(.95);}
}

/* ── FAB shimmer when idle (no note generated yet) ── */
@keyframes fab-shimmer{
  0%,100%{box-shadow:0 4px 20px rgba(3,105,161,.45),0 1px 3px rgba(0,0,0,.2);}
  50%{box-shadow:0 4px 28px rgba(3,105,161,.7),0 1px 3px rgba(0,0,0,.2),0 0 0 6px rgba(14,165,233,.12);}
}
.mob-fab.fab-visible.fab-idle{animation:fab-shimmer 2.4s ease-in-out infinite;}
.outHd{align-items:flex-start;gap:14px;padding:8px 2px 16px;margin-bottom:16px;border-bottom:1px solid rgba(223,231,242,.8);}
.outHeadingGroup{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1;}
.outEyebrow{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#70839a;}
.outTitle{
  font-family:var(--nf-font-serif);
  font-size:20px;
  font-weight:900;
  letter-spacing:-.035em;
  color:#0f1f36;
  line-height:1.08;
}
.outSub{font-size:11.5px;color:#6a7b92;line-height:1.6;max-width:620px;}

/* ── Biller checklist ── */
.cb-add-btn{border-radius:10px;font-family:'Plus Jakarta Sans',sans-serif;}


.tab-panel{animation:fadeTab 120ms ease-out both;}
.out{animation:fadeIn 150ms ease-out both;}
.hs-tile{animation:none;}
.hs-tile.deny,.hs-tile.doc,.hs-tile.mod,.hs-tile.rev{animation:badgePulse 280ms ease-out both;}
.dash-tile-val{animation:countUp 200ms ease-out both;}
.dash-tile:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(15,39,68,.1);}
.mob-note-tab::after{content:none;}
.hs-tile.rev .hs-badge{display:inline-block;animation:badgePulse 350ms ease-out both;}
.case-log-entry{
  border-bottom:1px solid #eef2f7;
  padding:18px 20px;
  transition:background var(--nf-dur-fast) ease,transform var(--nf-dur-fast) ease,box-shadow var(--nf-dur-fast) ease,border-color var(--nf-dur-fast) ease;
  border-radius:18px;
}
.case-log-entry:hover{
  background:linear-gradient(180deg,#fbfdff 0%,#f7fbff 100%);
  box-shadow:inset 3px 0 0 #bfdbfe,0 18px 34px rgba(15,39,68,.06);
  transform:translateY(-1px);
}
.case-log-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:6px;}
.case-log-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.case-log-date{font-size:10.5px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#6b7b91;}
.case-log-chip{display:inline-flex;align-items:center;justify-content:center;padding:2px 7px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;border:1px solid transparent;}
.case-log-chip.warn{background:#fef3c7;color:#92400e;border-color:#fde68a;}
.case-log-chip.info{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe;}
.case-log-chip.neutral{background:#f1f5f9;color:#64748b;border-color:#e2e8f0;}
.case-log-score{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:900;padding:4px 9px;border-radius:999px;background:#eff6ff;border:1.5px solid #bfdbfe;color:#1d4ed8;white-space:nowrap;box-shadow:0 4px 12px rgba(29,78,216,.08);}
.case-log-title{font-size:13px;font-weight:900;color:#0f172a;line-height:1.3;margin-bottom:5px;}
.case-log-submeta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px;}
.case-log-submeta-item{font-size:10.5px;font-weight:700;color:#64748b;}
.case-log-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px;}
.case-log-tag{font-size:10px;font-weight:800;padding:3px 8px;border-radius:999px;background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;}
.case-log-actions{display:flex;gap:7px;flex-wrap:wrap;}
.case-log-cloud-note{font-size:11px;font-weight:800;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:7px 10px;}
.case-log-btn{font-size:11px;font-weight:800;padding:7px 14px;border-radius:12px;border:1.5px solid #e2e8f0;background:#f8fafc;color:#334155;cursor:pointer;transition:all var(--nf-dur-fast) ease;}
.case-log-btn.primary{border-color:#0f2744;background:#0f2744;color:#fff;}
.case-log-btn.danger{border-color:#fecaca;background:#fff5f5;color:#dc2626;}
.case-log-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(15,39,68,.08);}

/* ── Premium workflow surfaces ── */
.nf-overlay{background:rgba(8,18,34,.46);backdrop-filter:blur(16px) saturate(1.06);-webkit-backdrop-filter:blur(16px) saturate(1.06);}
.nf-card{background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);box-shadow:var(--nf-shadow-modal);}
.nf-modal-card{border-radius:24px;border:1px solid rgba(255,255,255,.78);}
.nf-sheet-card{border-radius:30px 30px 20px 20px;background:linear-gradient(180deg,#ffffff 0%,#f9fbff 100%);}
.nf-popover-card{border-radius:20px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);box-shadow:var(--nf-shadow-floating);}
.nf-toast{border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 42px rgba(15,23,42,.26);}
.nf-toast-title{font-size:12.5px;letter-spacing:.01em;}
.nf-toast-message{font-size:11.5px;line-height:1.55;}
.nf-stat-card{border-radius:20px;padding:20px 18px;background:linear-gradient(180deg,#ffffff 0%,#f9fbff 100%);border-color:#deE7f2;box-shadow:var(--nf-shadow-soft);}
.nf-stat-label{font-size:11px;letter-spacing:.12em;color:#6f839d;}
.nf-stat-value{font-size:22px;letter-spacing:-.04em;color:#10223b;}
.nf-stat-detail{font-size:11px;color:#667991;line-height:1.45;}
.handoff-summary-card,.bp-section,.billing-zone-card,.billing-mobile-summary-card,.ob-summary-card{box-shadow:var(--nf-shadow-soft);}
.handoff-shell{padding:22px 24px 24px;}
.handoff-title{font-size:26px;letter-spacing:-.04em;}
.handoff-subtitle{font-size:12.5px;color:#5f748f;max-width:680px;}
.handoff-tab,.handoff-mode-btn{padding:9px 14px;border-radius:999px;font-size:11px;letter-spacing:.04em;}
.handoff-textarea{background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);border-radius:18px;border-color:#d9e4f2;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 12px 28px rgba(15,39,68,.05);}
.billing-zone{border-radius:18px;padding:14px 15px;box-shadow:var(--nf-shadow-soft);}
.billing-zone-title{font-size:11px;letter-spacing:.1em;}
.billing-zone-meta{font-size:11px;color:#6e8098;}
.billing-zone-card{border-radius:16px;padding:12px 12px;}
.billing-zone-chip{font-size:11.5px;}
.billing-zone-copy{font-size:11px;line-height:1.52;color:#334155;}
.billing-zone-action,.missed-add-btn,.case-log-btn,.cs-btn,.pm-btn,.ai-btn,.haiku-btn,.nf-doc-insert-btn,.nf-doc-send,.srch-add,.sug-btn{
  font-family:'Plus Jakarta Sans',sans-serif;
  border-radius:12px;
  font-weight:800;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease,color .16s ease;
}
.billing-zone-action:hover,.missed-add-btn:hover:not(:disabled),.case-log-btn:hover,.cs-btn:hover,.pm-btn:hover,.ai-btn:hover,.haiku-btn:hover,.nf-doc-insert-btn:hover,.nf-doc-send:hover:not(:disabled),.srch-add:hover,.sug-btn:hover{
  transform:translateY(-1px);
}
.empty{
  gap:10px;
  padding:48px 24px;
  border-radius:24px;
  background:
    radial-gradient(circle at top,rgba(191,219,254,.18),transparent 42%),
    linear-gradient(180deg,#fbfdff 0%,#f6fafe 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.tbl{border-collapse:separate;border-spacing:0;overflow:hidden;border-radius:18px;}
.tbl thead th:first-child{border-top-left-radius:16px;}
.tbl thead th:last-child{border-top-right-radius:16px;}
.tbl tbody tr{transition:background .14s ease;}
.tbl tbody tr:hover{background:#f7fbff;}
.code{font-size:12px;}
.rv{font-size:11.5px;}
.search-wrap,.sec,.case-summary{position:relative;}
.search-inp{padding:10px 12px 10px 32px;box-shadow:0 10px 20px rgba(15,39,68,.04), inset 0 1px 0 rgba(255,255,255,.86);}
.cb-add-btn{
  border-radius:14px;
  border-style:solid;
  background:linear-gradient(180deg,rgba(255,255,255,.86) 0%,rgba(248,251,255,.92) 100%);
  box-shadow:0 10px 18px rgba(15,39,68,.04);
}
.cb-add-btn:hover{box-shadow:0 14px 26px rgba(2,132,199,.08);}
.note-fab.mobile{background:transparent;box-shadow:none;}
.desktop-dock-trigger{box-shadow:0 24px 48px rgba(15,39,68,.3),0 8px 22px rgba(15,39,68,.16),inset 0 1px 0 rgba(255,255,255,.22);}
.bp-tab{
  border-radius:14px;
  transition:background var(--nf-dur-fast) ease,color var(--nf-dur-fast) ease,transform var(--nf-dur-fast) ease,box-shadow var(--nf-dur-fast) ease;
}
.bp-tab.on{
  background:rgba(255,255,255,.18);
  box-shadow:0 14px 28px rgba(7,20,39,.18),inset 0 1px 0 rgba(255,255,255,.16);
}
.bp-tab.on .bp-tab-icon{transform:translateY(-1px) scale(1.03);}
.note-mini-pill{
  background:rgba(255,255,255,.78);
  border-color:rgba(255,255,255,.72);
  box-shadow:0 18px 36px rgba(15,39,68,.12),inset 0 1px 0 rgba(255,255,255,.88);
}
.bp-pane.is-active,.bp-pane.was-activated{
  animation:panelReveal .22s var(--nf-ease-standard) both;
}
.desktop-orbit-btn{
  border:1px solid rgba(226,232,240,.9);
  box-shadow:0 18px 34px rgba(15,23,42,.14),0 4px 14px rgba(15,23,42,.1),inset 0 1px 0 rgba(255,255,255,.82);
}
.mob-nav{background:rgba(255,255,255,.98);box-shadow:0 -18px 40px rgba(15,39,68,.12),0 -1px 0 rgba(148,163,184,.14);}
.mob-nav-btn{border-radius:20px;border:1px solid rgba(226,232,240,.72);}
.mob-nav-btn.on{box-shadow:0 18px 34px rgba(15,39,68,.22),inset 0 1px 0 rgba(255,255,255,.08);}
.case-log-score,.billing-mobile-summary-value,.dash-tile .nf-stat-value,.pill{font-family:'JetBrains Mono',monospace;}

/* ── Coding Consult ── */
.coding-consult-shell,.coding-consult-results,.coding-consult-empty{
  position:relative;
  overflow:hidden;
  border-radius:20px;
  border:1px solid #e4ebf3;
  box-shadow:var(--nf-shadow-card);
}
.coding-consult-shell::after,.coding-consult-results::after{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:104px;
  height:104px;
  pointer-events:none;
  background:radial-gradient(circle,rgba(14,165,233,.055) 0%,rgba(14,165,233,0) 72%);
}
.coding-consult-kicker{
  font-size:11px;
  font-weight:900;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#72849b;
  margin-bottom:7px;
}
.coding-consult-title{
  font-family:var(--nf-font-serif);
  font-size:18px;
  font-weight:900;
  line-height:1.12;
  letter-spacing:-.03em;
  color:var(--nf-text-strong);
  margin-bottom:7px;
}
.coding-consult-subtitle{
  font-size:12px;
  line-height:1.62;
  color:#667a90;
}
.coding-consult-input{
  margin-top:12px;
  min-height:124px;
  border-radius:18px!important;
  box-shadow:0 12px 24px rgba(15,39,68,.045),inset 0 1px 0 rgba(255,255,255,.94)!important;
}
.coding-consult-prompt-row,.coding-consult-source-row{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:11px;
}
.coding-consult-prompt-chip,.coding-consult-source-chip{
  padding:7px 10px;
  border-radius:999px;
  border:1px solid #cfe0f7;
  background:linear-gradient(180deg,#fbfdff 0%,#f1f6fd 100%);
  color:#1d4ed8;
  font-size:10.5px;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
  transition:transform var(--nf-dur-fast) ease,box-shadow var(--nf-dur-fast) ease,border-color var(--nf-dur-fast) ease,background var(--nf-dur-fast) ease;
  box-shadow:0 6px 14px rgba(29,78,216,.05),inset 0 1px 0 rgba(255,255,255,.92);
}
.coding-consult-prompt-chip:hover,.coding-consult-source-chip:hover{
  transform:translateY(-1px);
  border-color:#93c5fd;
  box-shadow:0 10px 18px rgba(29,78,216,.08),inset 0 1px 0 rgba(255,255,255,.96);
}
.coding-consult-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.coding-consult-confidence{
  margin-top:2px;
  font-size:13px;
  font-weight:800;
  color:var(--nf-text-strong);
}
.coding-consult-query-pill{
  padding:6px 10px;
  border-radius:999px;
  background:linear-gradient(180deg,#fbfdff 0%,#f1f6fd 100%);
  border:1px solid #cfe0f7;
  font-size:10.5px;
  font-weight:900;
  color:#0369a1;
  box-shadow:0 8px 16px rgba(29,78,216,.06);
}
.coding-consult-section{
  margin-top:16px;
}
.coding-consult-section-hd{
  font-size:11px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#7286a0;
  margin-bottom:9px;
}
.coding-consult-row{
  display:flex;
  gap:12px;
  align-items:flex-start;
  justify-content:space-between;
  padding:13px 0;
  border-bottom:1px solid #edf2f7;
}
.coding-consult-row:last-child{border-bottom:none;padding-bottom:2px;}
.coding-consult-copy{min-width:0;flex:1;}
.coding-consult-row-meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:4px;
}
.coding-consult-code{
  font-family:var(--nf-font-mono);
  font-weight:900;
  font-size:12.5px;
  color:#0369a1;
  background:#eff6ff;
  padding:4px 8px;
  border-radius:999px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.coding-consult-rvu{
  font-size:11px;
  font-weight:800;
  color:#64748b;
}
.coding-consult-cat{
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#94a3b8;
}
.coding-consult-desc{
  font-size:12.5px;
  line-height:1.52;
  color:var(--nf-text-strong);
}
.coding-consult-reason{
  font-size:11.25px;
  line-height:1.58;
  color:#667991;
  margin-top:5px;
}
.coding-consult-add-btn{
  flex-shrink:0;
  padding:8px 11px;
  border-radius:14px;
  border:1px solid #bfdbfe;
  background:linear-gradient(180deg,#f8fbff 0%,#edf4fd 100%);
  color:#0369a1;
  font-size:10.5px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 8px 16px rgba(29,78,216,.06),inset 0 1px 0 rgba(255,255,255,.94);
  transition:transform var(--nf-dur-fast) ease,box-shadow var(--nf-dur-fast) ease,background var(--nf-dur-fast) ease,border-color var(--nf-dur-fast) ease;
}
.coding-consult-add-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 20px rgba(29,78,216,.09),inset 0 1px 0 rgba(255,255,255,.95);
}
.coding-consult-add-btn.is-disabled{
  background:#f8fafc;
  border-color:#e2e8f0;
  color:#94a3b8;
  cursor:default;
  box-shadow:none;
}
.coding-consult-list{
  display:grid;
  gap:8px;
}
.coding-consult-note-card{
  padding:11px 12px;
  border-radius:16px;
  border:1px solid #e5eef8;
  font-size:12px;
  line-height:1.58;
  color:var(--nf-text-strong);
}
.coding-consult-note-card.pearl{
  background:linear-gradient(180deg,#fbfdff 0%,#f5f9ff 100%);
}
.coding-consult-note-card.needed{
  background:linear-gradient(180deg,#fffaf2 0%,#fff3df 100%);
  border-color:#fdcf94;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92);
}
.coding-consult-action-deck{
  margin-top:10px;
  padding:12px 12px 10px;
  border-radius:18px;
  background:linear-gradient(180deg,#fffaf0 0%,#fff7ea 100%);
  border:1px solid #f8d4a2;
  box-shadow:0 10px 24px rgba(245,158,11,.08);
}
.coding-consult-action-intro{
  font-size:10px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#b06400;
  margin-bottom:9px;
}
.coding-consult-action-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.coding-consult-action-chip{
  border:1px solid #f7b267;
  background:linear-gradient(180deg,#fffdfa 0%,#fff0d8 100%);
  color:#9a5a00;
  border-radius:14px;
  padding:9px 13px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.01em;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(245,158,11,.07), inset 0 1px 0 rgba(255,255,255,.95);
  transition:transform var(--nf-dur-fast) ease,box-shadow var(--nf-dur-fast) ease,background var(--nf-dur-fast) ease,border-color var(--nf-dur-fast) ease;
}
.coding-consult-action-chip:hover{
  transform:translateY(-1px);
  border-color:#f59e0b;
  box-shadow:0 12px 22px rgba(245,158,11,.11), inset 0 1px 0 rgba(255,255,255,.98);
}

/* ── Analytics ── */
.analytics-shell{display:grid;gap:18px;}
.analytics-empty{
  padding:44px 24px;
  text-align:center;
  border-radius:22px;
  background:linear-gradient(180deg,#fbfdff 0%,#f6fafe 100%);
  border:1px dashed #d7e3f2;
  color:#94a3b8;
}
.analytics-empty.loading{padding:32px 24px;border-style:solid;}
.analytics-empty-icon{font-size:32px;margin-bottom:12px;}
.analytics-empty-title{font-size:13px;font-weight:700;color:#64748b;margin-bottom:4px;}
.analytics-empty-copy{font-size:12px;color:#94a3b8;line-height:1.55;}
.analytics-hero{
  padding:18px 18px 16px;
  border-radius:24px;
  border:1px solid #dde7f3;
  background:
    radial-gradient(circle at top right,rgba(14,165,233,.06),transparent 24%),
    linear-gradient(180deg,#fbfdff 0%,#f5f8fc 100%);
  box-shadow:var(--nf-shadow-card);
}
.analytics-hero-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.analytics-kicker{
  font-size:11px;
  font-weight:900;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#0f4c8a;
  margin-bottom:4px;
}
.analytics-hero-title{
  font-family:var(--nf-font-serif);
  font-size:18px;
  font-weight:900;
  color:#0f172a;
  letter-spacing:-.03em;
}
.analytics-hero-meta{font-size:10.5px;font-weight:800;color:#64748b;}
.analytics-hero-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.analytics-hero-card{
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfe 100%);
  border:1px solid #e2e8f0;
  border-radius:18px;
  padding:12px 11px;
  box-shadow:0 8px 18px rgba(15,39,68,.04);
}
.analytics-card-label{
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#94a3b8;
  margin-bottom:6px;
}
.analytics-hero-value{
  font-size:16px;
  font-weight:900;
  color:#0f172a;
}
.analytics-hero-foot{
  margin-top:10px;
  font-size:11px;
  color:#64748b;
  line-height:1.55;
}
.analytics-pace{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(221,230,240,.85);
}
.analytics-pace-label{
  display:flex;
  justify-content:space-between;
  gap:10px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#73849b;
  margin-bottom:7px;
}
.analytics-pace-bar{
  position:relative;
  height:12px;
  border-radius:999px;
  background:linear-gradient(180deg,#e8eef5 0%,#e0e8f2 100%);
  overflow:hidden;
}
.analytics-pace-fill{
  position:absolute;
  inset:0 auto 0 0;
  background:linear-gradient(90deg,#0f4c8a 0%,#1497d4 100%);
  border-radius:999px;
}
.analytics-pace-marker{
  position:absolute;
  top:-2px;
  bottom:-2px;
  width:2px;
  border-radius:999px;
  background:rgba(180,83,9,.88);
  box-shadow:0 0 0 2px rgba(255,247,237,.95);
}
.analytics-pace-copy{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-top:8px;
  font-size:11px;
  color:#667991;
}
.analytics-stat-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.analytics-stat-card{min-height:110px;}
.analytics-filter-row{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.analytics-filter-btn{
  padding:7px 11px;
  border-radius:10px;
  border:1px solid #dbe5f1;
  background:#fff;
  color:#64748b;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
  transition:all var(--nf-dur-fast) ease;
}
.analytics-filter-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(15,39,68,.06);
}
.analytics-filter-btn.on{
  border-color:#0ea5e9;
  background:#eff6ff;
  color:#0369a1;
}
.analytics-panel{
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfe 100%);
  border:1px solid #e6ebf3;
  border-radius:22px;
  padding:18px 18px 16px;
  box-shadow:var(--nf-shadow-card);
}
.analytics-panel-title{
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#64748b;
  margin-bottom:12px;
}
.analytics-panel-empty{
  font-size:12px;
  color:#94a3b8;
}
.analytics-chart-list,.analytics-list{
  display:grid;
  gap:9px;
}
.analytics-chart-row{
  display:grid;
  grid-template-columns:82px 1fr 72px;
  gap:10px;
  align-items:center;
}
.analytics-chart-label{
  font-size:12px;
  font-weight:700;
  color:#0f172a;
}
.analytics-chart-bar{
  height:10px;
  border-radius:999px;
  background:#eaf2fb;
  overflow:hidden;
}
.analytics-chart-fill{
  height:100%;
  background:linear-gradient(90deg,#0ea5e9,#2563eb);
  border-radius:999px;
}
.analytics-chart-value{
  font-size:12px;
  font-weight:800;
  color:#0369a1;
  text-align:right;
}
.analytics-list-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:11px 12px;
  border-radius:16px;
  background:linear-gradient(180deg,#fbfdff 0%,#f5f9ff 100%);
  border:1px solid #e5eef8;
}
.analytics-list-main{
  display:flex;
  gap:10px;
  align-items:center;
  min-width:0;
}
.analytics-code-chip{
  font-family:var(--nf-font-mono);
  font-weight:900;
  font-size:12px;
  color:#0369a1;
  background:#eff6ff;
  padding:4px 8px;
  border-radius:999px;
  white-space:nowrap;
}
.analytics-code-chip.plain{
  background:#f1f5f9;
  color:#0f2744;
}
.analytics-list-text{
  font-size:12.5px;
  color:#0f172a;
  line-height:1.45;
}
.analytics-list-text.strong{font-weight:700;}
.analytics-list-count{
  font-size:12px;
  font-weight:800;
  color:#64748b;
  white-space:nowrap;
}

/* ── Case Log Modal ── */
.case-log-modal-head{
  padding:16px 20px 14px;
  background:
    radial-gradient(circle at top right,rgba(56,189,248,.24),transparent 30%),
    linear-gradient(158deg,#0f2744 0%,#0d4a82 100%);
}
.case-log-modal-head-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:10px;
  gap:12px;
}
.case-log-modal-title{
  font-family:var(--nf-font-serif);
  font-size:18px;
  font-weight:700;
  color:#fff;
  letter-spacing:-.03em;
}
.case-log-modal-subtitle{
  font-size:10px;
  color:rgba(255,255,255,.58);
  margin-top:2px;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.case-log-modal-close{
  background:rgba(255,255,255,.12);
  border:1.5px solid rgba(255,255,255,.2);
  border-radius:10px;
  font-size:13px;
  cursor:pointer;
  color:#fff;
  padding:5px 11px;
  font-weight:700;
  transition:all var(--nf-dur-fast) ease;
}
.case-log-modal-close:hover{
  background:rgba(255,255,255,.18);
  transform:translateY(-1px);
}
.case-log-modal-search{
  width:100%;
  padding:8px 12px;
  border-radius:12px;
  border:none;
  font-size:12px;
  background:rgba(255,255,255,.15);
  color:#fff;
  margin-bottom:8px;
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1);
}
.case-log-modal-search::placeholder{color:rgba(255,255,255,.58);}
.case-log-modal-tabs{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
.case-log-modal-tab{
  padding:6px 14px;
  border-radius:10px;
  border:none;
  cursor:pointer;
  font-size:11px;
  font-weight:800;
  background:rgba(255,255,255,.15);
  color:rgba(255,255,255,.8);
  transition:all var(--nf-dur-fast) ease;
}
.case-log-modal-tab.on{
  background:#fff;
  color:#0f2744;
  box-shadow:0 8px 18px rgba(15,39,68,.12);
}
.case-log-section-label{
  padding:14px 18px 4px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#0f2744;
}
.case-log-empty{
  padding:52px 24px;
  text-align:center;
  color:#94a3b8;
}
.case-log-empty.loading{padding:40px 24px;font-size:13px;}
.case-log-empty-icon{font-size:32px;margin-bottom:12px;}
.case-log-empty-title{
  font-size:13px;
  font-weight:700;
  color:#64748b;
  margin-bottom:4px;
}
.case-log-empty-copy{
  font-size:12px;
  color:#94a3b8;
  line-height:1.55;
}

@media(max-width:767px){
  .outHd{padding:4px 2px 12px;margin-bottom:12px;}
  .outTitle{font-size:18px;}
  .outSub{font-size:11.5px;max-width:none;}
  .note-card-wrap{padding:24px 18px 20px;border-radius:28px 28px 18px 18px;}
  .box{border-radius:18px;}
  .analytics-hero-grid,.analytics-stat-grid{grid-template-columns:1fr 1fr;}
  .analytics-hero-card:first-child{grid-column:1/-1;}
  .analytics-chart-row{grid-template-columns:68px 1fr 58px;gap:8px;}
  .analytics-list-row{align-items:flex-start;}
  .analytics-list-main{align-items:flex-start;}
  .coding-consult-row{flex-direction:column;align-items:stretch;}
  .coding-consult-add-btn{width:100%;}
}

/* ── AI Intake chat layout ── */
.ai-chat-wrap{display:flex;flex-direction:column;height:100%;min-height:0;}


/* ── AI patch highlight animations ─────────────────────────────── */
@keyframes aiPatchGlow{
  0%  { background:rgba(34,197,94,.18); box-shadow:0 0 0 2px rgba(34,197,94,.3); }
  15% { background:rgba(34,197,94,.12); box-shadow:0 0 0 1px rgba(34,197,94,.2); }
  60% { background:rgba(34,197,94,.06); }
  100%{ background:transparent; box-shadow:none; }
}
@keyframes aiPatchBar{
  0%  { opacity:1; transform:scaleY(1); }
  70% { opacity:.6; }
  100%{ opacity:0; transform:scaleY(0.3); }
}
@keyframes aiPatchBadge{
  0%   { opacity:1; transform:scale(1); }
  60%  { opacity:1; }
  100% { opacity:0; transform:scale(0.8); }
}
@keyframes aiPatchSlideIn{
  from{ opacity:0; transform:translateY(-4px); }
  to  { opacity:1; transform:translateY(0); }
}

@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}

/* ── FOCUS VISIBLE — keyboard navigation rings ── */
.chip:focus-visible,.proc-chip:focus-visible,.cfg-chip:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.35),0 1px 2px rgba(0,0,0,.04);}
.flag:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(239,68,68,.25);}
.btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(15,39,68,.28),0 4px 14px rgba(13,61,107,.3);}
.tab:focus-visible{outline:none;background:rgba(15,76,138,.05);box-shadow:0 0 0 2px rgba(15,76,138,.22) inset;}
.billing-zone-action:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(15,118,110,.28);}
.billing-icd-action:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.28);}
.acc-hd:focus-visible{outline:none;background:#f0f6ff;box-shadow:0 0 0 2px rgba(59,130,246,.18) inset;}
.srch-add:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(34,197,94,.25);}
.iconBtn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(239,68,68,.2);}
.cs-btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.22);}
.reset-btn:focus-visible,.hd-btn:focus-visible,.hd-icon-btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(255,255,255,.32),inset 0 1px 0 rgba(255,255,255,.08);}
.pm-btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(14,165,233,.22);}
.missed-add-btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(109,40,217,.28);}
.mob-nav-btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(15,39,68,.2) inset;}
.preset-chip:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(191,219,254,.7);}

/* Workflow hierarchy */
/* Ordered procedure outline */
.case-block.ordered{gap:7px}.cb-order{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#e2e8f0;color:#475569;font-size:10px;font-weight:900}.cb-drag{margin-left:auto;color:#94a3b8;cursor:grab;letter-spacing:-2px}.case-outline-add{width:100%;margin-top:7px;padding:7px 9px;border:1px dashed #94a3b8;border-radius:9px;background:#fff;color:#334155;font-size:11px;font-weight:800;cursor:pointer}
/* Search provenance */
.srch-note{font-size:10px;color:#2563eb;margin-top:3px}.srch-note-detail{color:#64748b}
/* Coding review authority labels */
.coding-pearl-meta{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 9px}.coding-pearl-meta span{font-size:9px;font-weight:800;padding:3px 6px;border-radius:999px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.coding-pearl-meta .coding-rec-type{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.coding-pearl-source{margin-top:9px;padding-top:8px;border-top:1px solid #e2e8f0;font-size:9.5px;color:#64748b;line-height:1.4}
/* Traceable note insertion */
.coding-insert-reason{font-size:11px;color:#475569;margin-top:4px}.coding-insert-text{font-size:11px;color:#0f172a;margin-top:6px;max-width:680px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coding-insert-history{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:9px 12px;border:1px solid #f59e0b;background:#fffbeb;color:#78350f;font-size:11px}.coding-insert-history-reason{color:#92400e;margin-top:2px}.coding-insert-undo{border:1px solid #f59e0b;background:#fff;color:#92400e;border-radius:8px;padding:6px 9px;font-size:10px;font-weight:900;cursor:pointer;white-space:nowrap}
/* Preferences */
.prefs-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;position:sticky;top:58px;z-index:2;background:#fff;padding:0 0 14px}.prefs-tab{padding:9px 12px;border:1px solid #dbe4ee;border-radius:10px;background:#f8fafc;color:#64748b;font-weight:800;cursor:pointer}.prefs-tab.active{background:#0f2744;color:#fff;border-color:#0f2744}.advanced-style-toggle{margin:0 0 14px;padding:9px 12px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff;color:#1d4ed8;font-weight:800;cursor:pointer}.surgeon-settings-body .prefs-profile,.surgeon-settings-body .prefs-style,.surgeon-settings-body .prefs-workflow,.surgeon-settings-body .prefs-phrases{display:none}.surgeon-settings-body.prefs-profile .prefs-profile,.surgeon-settings-body.prefs-style .prefs-style,.surgeon-settings-body.prefs-workflow .prefs-workflow,.surgeon-settings-body.prefs-phrases .prefs-phrases{display:block}.surgeon-settings-body .surgeon-style-section{display:none}.surgeon-settings-body.prefs-style .prefs-note-style{display:block}
.lazy-chunk-loading,.lazy-chunk-error{padding:32px;text-align:center;color:#64748b}.lazy-chunk-error{color:#b91c1c}

/* Note change audit trail */
.note-changes-toolbar{position:relative;margin:0 0 10px;display:flex;justify-content:flex-end}.note-changes-toggle{display:inline-flex;align-items:center;gap:7px;border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:10px;padding:7px 10px;font-size:11px;font-weight:900;cursor:pointer}.note-changes-count{display:grid;place-items:center;min-width:18px;height:18px;border-radius:999px;background:#0f2744;color:#fff;font-size:9px}.note-changes-panel{position:absolute;right:0;top:39px;z-index:30;width:min(520px,92vw);max-height:420px;overflow:auto;border:1px solid #cbd5e1;border-radius:14px;background:#fff;box-shadow:0 18px 48px rgba(15,39,68,.2);padding:10px}.note-changes-empty{padding:18px;color:#64748b;font-size:12px;text-align:center}.note-change-row{display:flex;gap:10px;align-items:flex-start;padding:10px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}.note-change-row+.note-change-row{margin-top:8px}.note-change-row.status-undone{opacity:.62;background:#f1f5f9}.note-change-main{min-width:0;flex:1}.note-change-title{font-size:11px;font-weight:900;color:#0f172a}.note-change-text{margin-top:4px;font-size:11px;line-height:1.45;color:#334155;white-space:pre-wrap}.note-change-reason{margin-top:5px;font-size:10px;color:#475569}.note-change-meta{margin-top:6px;font-size:9px;color:#64748b}.note-change-undo{border:1px solid #f59e0b;background:#fffbeb;color:#92400e;border-radius:8px;padding:5px 8px;font-size:10px;font-weight:900;cursor:pointer}
/* Coding governance */
.coding-governance{margin-top:8px;padding:8px 9px;border:1px solid #dbe4ee;border-radius:9px;background:#f8fafc}.coding-governance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 10px;font-size:9.5px;color:#475569}.coding-governance-grid strong{color:#0f172a}.coding-rule-stale{margin-top:7px;padding:6px 8px;border-radius:7px;background:#fff7ed;border:1px solid #fdba74;color:#9a3412;font-size:10px;font-weight:800}

