*{box-sizing:border-box;margin:0;padding:0}
:root{
  /* Design system canonical tokens */
  --color-bg: #F4F6FA;
  --color-bg-soft: #F8FAFC;
  --color-surface: #FFFFFF;
  --color-surface-muted: #F8FAFC;
  --color-surface-elevated: #FFFFFF;
  --color-text: #101828;
  --color-text-soft: #344054;
  --color-muted: #667085;
  --color-border: #D0D7E2;
  --color-border-soft: #E4E9F2;
  --color-primary: #344BFF;
  --color-primary-hover: #2D43E6;
  --color-primary-soft: #EEF2FF;
  --color-primary-strong: #2637C7;
  --color-success: #12A66A;
  --color-success-soft: #ECFDF3;
  --color-warning: #D19010;
  --color-warning-soft: #FFFAEB;
  --color-danger: #DC2626;
  --color-danger-soft: #FEF2F2;
  --color-orange: #EA7A12;
  --color-orange-soft: #FFF7ED;

  --font-sans: Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --font-mono: ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
  --font-size-2xs: 11px;
  --font-size-xs: 12px;
  --font-size-sm: 13px;
  --font-size-md: 14px;
  --font-size-lg: 16px;
  --font-size-xl: 20px;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --line-tight: 1.25;
  --line-body: 1.55;
  --line-relaxed: 1.75;

  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;

  --radius-xs: 6px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 20px;
  --radius-pill: 999px;

  --border-width: 1px;
  --border-subtle: var(--border-width) solid var(--color-border);
  --border-muted: var(--border-width) solid var(--color-border-soft);

  --shadow-xs: 0 1px 2px rgba(16,24,40,.05);
  --shadow-sm: 0 4px 12px rgba(16,24,40,.06);
  --shadow-md: 0 10px 24px rgba(16,24,40,.08);
  --shadow-lg: 0 18px 44px rgba(16,24,40,.14);
  --shadow-focus: 0 0 0 3px rgba(52,75,255,.16);

  --focus-ring: 0 0 0 3px rgba(52,75,255,.16);
  --focus-border: var(--color-primary);

  --transition-fast: 120ms ease;
  --transition-base: 180ms ease;
  --transition-slow: 240ms ease;

  --z-header: 50;
  --z-sidebar: 80;
  --z-overlay: 100;
  --z-modal: 1200;
  --z-toast: 999;

  /* Legacy aliases kept for inline styles and JS-set styles */
  --bg: var(--color-bg);
  --surface: var(--color-surface);
  --text: var(--color-text);
  --muted: var(--color-muted);
  --border: var(--color-border);
  --primary: var(--color-primary);
  --pl: var(--primary-soft);
  --green: var(--success);
  --gbg: var(--color-success-soft);
  --gtxt: #087A55;
  --red: var(--danger);
  --rbg: var(--color-danger-soft);
  --amber: var(--color-warning);
  --abg: var(--color-warning-soft);
  --r: var(--radius-md);
  --rlg: var(--radius-xl);
  --surface-soft: var(--color-surface-muted);
  --primary-strong: var(--color-primary-strong);
  --primary-soft: var(--color-primary-soft);
  --accent: #0EA5A0;
  --accent-soft: #F1EEE8;
  --ink-luxe: #0F2533;
  --gold-line: rgba(214,202,183,.62);
  --primary-2: var(--color-primary-hover);
  --surface-elevated: var(--color-surface-elevated);
  --success: var(--color-success);
  --warning: var(--color-warning);
  --danger: var(--color-danger);
  --orange: var(--color-orange);
  --text-soft: var(--color-text-soft);
  --border-soft: var(--color-border-soft);
  --shadow-soft: var(--shadow-md);
  --shadow-card: var(--shadow-sm);
  --shadow-hover: var(--shadow-md);
}
html,body{background:var(--bg);color:var(--text);font-family:var(--font-sans);min-height:100vh;font-size:var(--font-size-md);font-weight:var(--font-weight-regular);line-height:var(--line-body)}

/* Gate */
.gate{position:fixed;inset:0;background:var(--bg);z-index:200;display:flex;align-items:center;justify-content:center}
.gate-box{background:var(--surface);border-radius:20px;border:1px solid var(--border);padding:2rem 1.75rem;width:100%;max-width:340px;box-shadow:var(--shadow-lg)}
.gate-logo{font-size:11px;font-weight:700;color:var(--muted);letter-spacing:.06em;margin-bottom:4px}
.gate-title{font-size:20px;font-weight:700;color:var(--primary);margin-bottom:2px}
.gate-sub{font-size:12px;color:var(--muted);margin-bottom:1.25rem}
.tabs{display:flex;border-bottom:1px solid var(--border);margin-bottom:1rem}
.tab{flex:1;padding:7px;border:none;background:none;cursor:pointer;font-size:13px;font-weight:500;color:var(--muted);font-family:inherit;border-bottom:2px solid transparent;margin-bottom:-1px}
.tab.on{color:var(--primary);border-bottom-color:var(--primary)}
.fg{margin-bottom:10px}
.fg label{display:block;font-size:10px;font-weight:700;color:var(--muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.05em}
.fi{width:100%;padding:9px 12px;border-radius:var(--r);border:1px solid var(--border);color:var(--text);font-size:14px;font-family:inherit;background:var(--surface);transition:border-color .15s}
.fi:focus{outline:none;border-color:var(--primary)}
.err{color:var(--red);font-size:11px;min-height:16px;margin-top:5px;text-align:center}
.btn-p{width:100%;padding:11px;border-radius:var(--r);border:none;background:var(--primary);color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;margin-top:4px;transition:all .18s ease;box-shadow:0 2px 10px rgba(26,43,107,.2)}
.btn-p:hover{opacity:1;transform:translateY(-1px);box-shadow:0 5px 16px rgba(26,43,107,.28)}
.btn-p:active{transform:translateY(0);box-shadow:0 2px 8px rgba(26,43,107,.18)}
.btn-p:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}

/* Header */
.hdr{background:var(--surface);border-bottom:1px solid var(--border);padding:0 20px;height:52px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;box-shadow:0 1px 0 var(--border),0 2px 14px rgba(26,43,107,.06)}
.hdr-l{display:flex;align-items:center;gap:12px}
.back{font-size:12px;color:var(--muted);text-decoration:none;padding:4px 8px;border-radius:6px;border:1px solid var(--border)}
.back:hover{color:var(--primary);border-color:var(--primary)}
.logo{font-size:13px;font-weight:700;color:var(--primary)}
.logo span{font-weight:400;color:var(--muted)}
.hdr-r{display:flex;align-items:center;gap:6px}
.pill{font-size:11px;color:var(--muted);background:var(--bg);padding:3px 10px;border-radius:20px;font-weight:500}
.btn-sm{padding:5px 10px;border-radius:6px;border:1px solid var(--border);background:none;cursor:pointer;font-size:12px;color:var(--text);font-family:inherit}
.btn-sm:hover{border-color:var(--primary);color:var(--primary)}
.btn-sm.danger:hover{border-color:var(--red);color:var(--red)}

/* Home view */
.home-view{padding:24px 20px;max-width:680px;margin:0 auto}
.home-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:10px}
.home-greeting{font-size:18px;font-weight:700;color:var(--primary)}
.home-sub{font-size:12px;color:var(--muted);margin-top:2px}
.btn-novo{padding:10px 22px;border-radius:10px;border:none;background:var(--primary);color:#fff;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;transition:all .18s ease;box-shadow:0 2px 10px rgba(26,43,107,.2)}
.btn-novo:hover{opacity:1;transform:translateY(-1px);box-shadow:0 5px 18px rgba(26,43,107,.28)}
.home-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rlg);overflow:hidden;box-shadow:var(--shadow-sm)}
.home-card-hdr{padding:13px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:rgba(26,43,107,.022)}
.home-card-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.home-stats{display:flex;gap:6px}
.hstat{background:var(--bg);padding:4px 10px;border-radius:8px;font-size:11px;font-weight:600;color:var(--primary)}
.hstat span{color:var(--muted);font-weight:400}
.a-list{display:flex;flex-direction:column}
.a-item{padding:11px 18px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--bg);transition:background .12s}
.a-item:hover:not(.enc){background:rgba(26,43,107,.018)}
.a-item:last-child{border-bottom:none}
.a-info{flex:1;min-width:0}
.a-name{font-size:13px;font-weight:600}
.a-meta{font-size:11px;color:var(--muted);margin-top:2px}
.a-badge{display:flex;align-items:center;gap:5px;margin-top:3px;flex-wrap:nowrap;overflow:hidden;max-width:100%}
.a-triage{display:inline-flex;align-items:center;gap:2px;padding:1px 6px;border-radius:5px;font-size:10px;font-weight:700;white-space:nowrap;flex-shrink:0;line-height:1.5}
.a-triage.verde{background:#dcfce7;color:#166534}
.a-triage.amarelo{background:#fef9c3;color:#854d0e}
.a-triage.laranja{background:#ffedd5;color:#9a3412}
.a-demog{font-size:11px;color:var(--muted);white-space:nowrap;flex-shrink:0}
.a-sep{font-size:9px;color:rgba(26,43,107,.2);flex-shrink:0;line-height:1}
.a-sid{font-size:11px;color:var(--text);opacity:.68;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}
.a-btime{font-size:10px;color:var(--muted);margin-left:auto;white-space:nowrap;flex-shrink:0;padding-left:4px}
.bp{background:var(--pl);color:var(--primary);padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;white-space:nowrap}
.br{background:var(--gbg);color:var(--green);padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;white-space:nowrap}
.a-val{font-size:12px;font-weight:700;color:var(--green);white-space:nowrap}
.empty-st{text-align:center;padding:32px;color:var(--muted);font-size:13px}

/* Form layout */
.layout{display:grid;grid-template-columns:1fr 390px;min-height:calc(100vh - 52px)}
.form{padding:18px 16px;display:flex;flex-direction:column;gap:12px;overflow-y:auto}
.panel{background:linear-gradient(160deg,#f4f6ff 0%,var(--surface) 100%);border-left:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:52px;height:calc(100vh - 52px)}

/* Cards */
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rlg);box-shadow:var(--shadow-xs);transition:box-shadow .2s}
.card-hdr{padding:11px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;background:rgba(26,43,107,.022);border-radius:var(--rlg) var(--rlg) 0 0}
.card-hdr.collapsible{cursor:pointer;user-select:none}
.card-hdr.collapsible:hover .card-title{color:var(--primary)}
.card-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text);display:flex;align-items:center;gap:6px}
.card-chevron{font-size:9px;color:var(--muted);transition:transform .2s;display:inline-block;margin-left:2px}
.card:not(.collapsed) .card-chevron{transform:rotate(90deg)}
.card.collapsed > .card-body{display:none}
.card-body{padding:14px 16px}

/* Tipo */
.tipo-row{display:flex;gap:6px;margin-top:6px}
.tipo-btn{flex:1;padding:9px;border-radius:8px;border:1.5px solid var(--border);background:none;cursor:pointer;font-size:12px;font-weight:500;color:var(--muted);font-family:inherit;transition:all .18s ease;text-align:center}
.tipo-btn:hover:not(.on){border-color:rgba(26,43,107,.3);color:var(--text);background:rgba(26,43,107,.03)}
.tipo-btn.on{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 2px 10px rgba(26,43,107,.25),0 0 0 3px rgba(26,43,107,.15)}

/* Ident row */
.ident-row{display:flex;gap:8px;margin-top:10px;align-items:flex-end}
.ident-row .fg{margin-bottom:0;flex:1}
.seg{display:inline-flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}
.seg-label{font-size:10px;font-weight:600;color:var(--muted);letter-spacing:.04em;padding:6px 8px;background:var(--bg);border-right:1px solid var(--border);display:flex;align-items:center;white-space:nowrap}
.seg-btn{padding:6px 10px;border:none;background:none;cursor:pointer;font-size:11px;font-weight:500;color:var(--muted);font-family:inherit;border-right:1px solid var(--border);transition:all .15s}
.seg-btn:last-child{border-right:none}
.seg-btn.on{background:var(--primary);color:#fff}
.triage-btn{padding:5px 10px;border:1px solid var(--border);border-radius:6px;background:none;cursor:pointer;font-size:11px;font-weight:600;font-family:inherit;color:var(--muted);transition:all .15s;white-space:nowrap}
.triage-btn.on-verde{background:#166534;color:#bbf7d0;border-color:#166534}
.triage-btn.on-amarelo{background:#854d0e;color:#fef08a;border-color:#854d0e}
.triage-btn.on-laranja{background:#9a3412;color:#fed7aa;border-color:#9a3412}

/* HDA */
.queixa-input{width:100%;padding:9px 12px;border-radius:var(--r);border:1px solid var(--border);font-size:13px;font-family:inherit;color:var(--text);background:var(--surface)}
.queixa-input:focus{outline:none;border-color:var(--primary)}
.ctx-panel{background:var(--bg);border-radius:var(--r);padding:10px 12px;margin-top:8px;display:none}
.ctx-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.ctx-label.rf{color:var(--red)}
.chip-row{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:2px}
.chip{padding:5px 11px;border-radius:16px;border:1px solid var(--border);background:none;cursor:pointer;font-size:11px;color:var(--muted);font-family:inherit;transition:all .15s;white-space:nowrap}
.chip:hover{border-color:var(--primary);color:var(--primary);background:rgba(26,43,107,.03)}
.chip.on{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 2px 8px rgba(26,43,107,.22),0 0 0 2px rgba(26,43,107,.12)}
.chip.rf.on{background:var(--rbg);color:var(--red);border-color:var(--red);box-shadow:0 0 0 3px rgba(192,57,43,.18)}
.chip.rf:hover{border-color:var(--red);color:var(--red)}
.chip-x{margin-left:4px;opacity:.4;font-size:11px;line-height:1;cursor:pointer;vertical-align:middle}
.chip-x:hover{opacity:.9}
[draggable="true"][data-chip]{cursor:grab}
.chip-dragging{opacity:.45;cursor:grabbing}
.sec-copy-btn{padding:3px 8px;font-size:13px;line-height:1;color:var(--muted);flex-shrink:0}
.sec-copy-btn:hover{color:var(--primary)}
/* NIHSS */
.nihss-item{border-bottom:1px solid var(--bg);padding-bottom:8px}
.nihss-lbl{font-size:12px;font-weight:700;color:var(--text-soft);margin-bottom:5px}
.nihss-opts{display:flex;flex-wrap:wrap;gap:5px}
.nihss-box{border:1px solid var(--border);background:#fff;border-radius:9px;padding:5px 9px;font-size:11px;color:var(--text-soft);cursor:pointer;font-family:inherit;transition:border-color .12s,background .12s,color .12s}
.nihss-box b{color:var(--muted);margin-right:2px}
.nihss-box:hover{border-color:var(--primary);color:var(--primary)}
.nihss-box.on{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;border-color:transparent}
.nihss-box.on b{color:#fff}
html.dark .nihss-box{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:var(--text)}
.hda-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.dur-in{width:52px;padding:6px 8px;border:none;border-right:1px solid var(--border);background:none;font-size:13px;font-family:inherit;color:var(--text);text-align:center}
.dur-in:focus{outline:none;background:var(--pl)}
.s-ta{width:100%;padding:9px 10px;border-radius:var(--r);border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:12px;font-family:inherit;resize:vertical;min-height:68px;line-height:1.6;margin-top:8px}
.s-ta:focus{outline:none;border-color:var(--primary);background:var(--surface)}

/* Exam */
.exam-sys{border-bottom:1px solid var(--bg)}
.exam-sys:last-child{border-bottom:none}
.exam-sys-hdr{display:flex;align-items:center;gap:8px;padding:9px 0;cursor:pointer;user-select:none}
.exam-sys-hdr:hover .exam-sys-label{color:var(--primary)}
.exam-chevron{margin-left:auto;font-size:9px;color:var(--muted);transition:transform .2s;flex-shrink:0}
.exam-sys.open .exam-chevron{transform:rotate(90deg)}
.norm-check{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:11px;color:var(--green);font-weight:600;user-select:none;white-space:nowrap}
.norm-check input{accent-color:var(--green);width:13px;height:13px;cursor:pointer;flex-shrink:0}
.exam-sys-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;transition:color .15s}
.exam-body-inner{display:none;padding-bottom:10px}
.exam-sys.open .exam-body-inner{display:block}
.exam-chips{display:flex;gap:3px;flex-wrap:wrap;margin-bottom:6px}
.echip{padding:3px 8px;border-radius:12px;border:1px solid var(--border);background:none;cursor:pointer;font-size:11px;color:var(--muted);font-family:inherit;transition:all .15s;white-space:nowrap}
.echip:hover{border-color:var(--red);color:var(--red);background:var(--rbg)}
.echip.on{background:var(--rbg);color:var(--red);border-color:var(--red);box-shadow:0 0 0 3px rgba(192,57,43,.18)}
.exam-ta{width:100%;padding:7px 10px;border-radius:var(--r);border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:11px;font-family:inherit;resize:vertical;min-height:44px;line-height:1.6}
.exam-ta:focus{outline:none;border-color:var(--primary);background:var(--surface)}
.outro-chips-wrap{display:flex;flex-wrap:wrap;gap:3px;margin-bottom:6px}
.outro-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 6px 3px 9px;border-radius:12px;border:1px solid var(--primary);background:rgba(74,108,247,.12);color:var(--primary);font-size:11px;cursor:pointer;font-family:inherit;transition:all .15s;max-width:240px}
.outro-chip:hover{background:rgba(74,108,247,.22)}
.outro-chip-del{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:none;background:rgba(74,108,247,.2);border-radius:50%;color:var(--primary);font-size:9px;cursor:pointer;padding:0;font-family:inherit;flex-shrink:0;line-height:1}
.outro-chip-del:hover{background:var(--red);color:#fff}
.outro-save-btn{margin-top:5px;padding:3px 9px;border-radius:6px;border:1px dashed var(--primary);background:none;color:var(--primary);font-size:10px;cursor:pointer;font-family:inherit;opacity:.75;transition:all .15s}
.outro-save-btn:hover{opacity:1;background:rgba(74,108,247,.1)}
.hip-icd-tag{padding:2px 7px;border-radius:10px;border:1px solid var(--border);background:none;cursor:pointer;font-size:10px;font-weight:700;font-family:monospace;color:var(--muted);transition:all .15s;white-space:nowrap;flex-shrink:0;letter-spacing:.03em}
.hip-icd-tag:hover,.hip-icd-tag.open{border-color:var(--primary);color:var(--primary);background:rgba(26,43,107,.06)}
.hip-icd-tag.has{border-color:var(--primary);color:var(--primary);background:rgba(26,43,107,.08)}
.hip-icd-tag.empty{border-style:dashed;font-family:inherit;font-weight:500;letter-spacing:0}
.hip-icd-picker{background:var(--surface);border:1px solid var(--primary);border-radius:8px;padding:8px 10px;margin:0 0 8px 24px}
.hip-icd-sugg{padding:3px 8px;border-radius:5px;border:1px solid var(--border);background:none;cursor:pointer;font-size:11px;font-family:inherit;color:var(--text);text-align:left;transition:all .1s;white-space:nowrap}
.hip-icd-sugg:hover{background:rgba(26,43,107,.06);border-color:var(--primary);color:var(--primary)}
.hip-icd-toggle{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:10px;border:1px dashed var(--border);background:none;cursor:pointer;font-size:10px;font-weight:600;font-family:inherit;color:var(--muted);transition:all .15s;margin-top:2px}
.hip-icd-toggle:hover{border-color:var(--primary);color:var(--primary)}
.hip-icd-toggle.on{border-style:solid;border-color:var(--primary);color:var(--primary);background:rgba(26,43,107,.06)}
.exam-actions{display:flex;gap:6px;flex-wrap:wrap}
.btn-green{padding:6px 12px;border-radius:6px;border:none;background:var(--green);color:#fff;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit}
.btn-green:hover{opacity:.85}
.btn-o{padding:6px 12px;border-radius:6px;border:1px solid var(--border);background:none;cursor:pointer;font-size:11px;color:var(--text);font-family:inherit}
.btn-o:hover{border-color:var(--primary);color:var(--primary)}

/* Morb */
.morb-top{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:8px}
.morb-in{width:100%;padding:8px 10px;border-radius:var(--r);border:1px solid var(--border);font-size:13px;font-family:inherit;color:var(--text);background:var(--surface)}
.morb-in:focus{outline:none;border-color:var(--primary)}
.morb-hint{font-size:10px;color:var(--muted);margin-top:4px}
.morb-preview{font-size:12px;color:var(--text);margin-top:6px;padding:7px 10px;background:var(--bg);border-radius:6px;display:none;line-height:1.7}

/* Med */
.med-lines{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}
.med-line-row{display:flex;gap:6px}
.med-in{flex:1;padding:7px 10px;border-radius:var(--r);border:1px solid var(--border);font-size:12px;font-family:inherit;color:var(--text);background:var(--surface)}
.med-in:focus{outline:none;border-color:var(--primary)}
.med-in.processed{background:var(--gbg);border-color:rgba(26,122,74,.3);color:var(--gtxt)}
.med-rm{padding:4px 8px;border-radius:6px;border:1px solid var(--border);background:none;cursor:pointer;font-size:13px;color:var(--muted)}
.med-rm:hover{border-color:var(--red);color:var(--red)}
.med-hint{font-size:10px;color:var(--muted);line-height:1.5;margin-bottom:6px}

/* Conduta */
.destino-row{display:flex;gap:8px;margin-bottom:12px}
.destino-btn{flex:1;padding:9px;border-radius:8px;border:1.5px solid var(--border);background:none;cursor:pointer;font-size:12px;font-weight:600;color:var(--muted);font-family:inherit;transition:all .18s ease}
.destino-btn:hover:not(.on){border-color:rgba(26,43,107,.28);color:var(--text);background:rgba(26,43,107,.03)}
.destino-btn.alta.on{background:#E3F5EC;color:var(--green);border-color:var(--green);box-shadow:0 2px 8px rgba(26,122,74,.18)}
.destino-btn.ps.on{background:var(--pl);color:var(--primary);border-color:var(--primary);box-shadow:0 2px 8px rgba(26,43,107,.18)}
.destino-btn.intern.on{background:#f3e8ff;color:#8b5cf6;border-color:#8b5cf6;box-shadow:0 2px 8px rgba(139,92,246,.18)}
.conduta-items{display:none;flex-direction:column;gap:6px}
.conduta-items.show{display:flex}
.citem{display:flex;align-items:flex-start;gap:8px;padding:8px 11px;border-radius:8px;border:1px solid var(--border);cursor:pointer;user-select:none;transition:all .15s;background:var(--surface)}
.citem:hover{border-color:rgba(26,43,107,.3);box-shadow:var(--shadow-xs)}
.citem.on{border-color:var(--primary);background:var(--pl);box-shadow:0 1px 6px rgba(26,43,107,.1)}
.citem input[type=checkbox]{accent-color:var(--primary);width:14px;height:14px;margin-top:1px;flex-shrink:0;cursor:pointer}
.citem-label{font-size:12px;color:var(--text);flex:1;line-height:1.4}
.citem-sub{width:100%;margin-top:6px;padding:5px 8px;border-radius:5px;border:1px solid var(--border);font-size:12px;font-family:inherit;color:var(--text);display:none;background:var(--surface)}
.citem-sub:focus{outline:none;border-color:var(--primary)}
.citem.on .citem-sub.show-sub{display:block}
.citem.on .citem-sub.show-sub.flex-col{display:flex;flex-direction:column}
.exames-sub{display:none;flex-direction:column;gap:5px;margin-top:8px;padding:8px 10px;background:var(--bg);border-radius:6px;border:1px solid var(--border)}
.exames-sub.show{display:flex}
.exsub-row{display:flex;align-items:center;gap:6px}
.exsub-cb{accent-color:var(--primary);width:13px;height:13px;cursor:pointer;flex-shrink:0}
.exsub-lbl{font-size:11px;color:var(--text);white-space:nowrap}
.exsub-in{flex:1;padding:4px 8px;border-radius:5px;border:1px solid var(--border);font-size:12px;font-family:inherit;color:var(--text);background:var(--surface)}
.exsub-in:focus{outline:none;border-color:var(--primary)}
.auto-item{padding:7px 10px;border-radius:6px;background:var(--gbg);font-size:12px;color:var(--gtxt);line-height:1.4;border:1px solid rgba(26,122,74,.2)}

/* Note panel */
.note-inner{display:flex;flex-direction:column;height:100%;padding:16px;gap:10px}
.note-head{display:flex;align-items:center;justify-content:space-between}
.note-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.note-date{font-size:11px;color:var(--muted)}
.note-pre{flex:1;overflow-y:auto;background:#fff;border-radius:12px;padding:16px;font-size:12px;line-height:1.85;color:var(--text);word-break:break-word;font-family:'Courier New',Courier,monospace;border:1px solid var(--border);resize:none;box-shadow:0 2px 12px rgba(26,43,107,.06),inset 0 1px 0 rgba(255,255,255,.9);transition:border-color .2s,box-shadow .2s}
.note-pre:focus{outline:none;border-color:rgba(26,43,107,.22);box-shadow:0 2px 16px rgba(26,43,107,.09),inset 0 1px 0 rgba(255,255,255,.9)}
.note-empty{color:var(--muted);font-style:italic;font-family:inherit}
.btn-copy{width:100%;padding:11px;border-radius:9px;border:1.5px solid var(--primary);background:var(--pl);color:var(--primary);font-size:12px;font-weight:700;cursor:pointer;font-family:inherit;transition:all .18s ease}
.btn-copy:hover{background:var(--primary);color:#fff;transform:translateY(-1px);box-shadow:0 4px 14px rgba(26,43,107,.22)}
.btn-encerrar{width:100%;padding:11px;border-radius:9px;border:none;background:var(--primary);color:#fff;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit;transition:all .18s ease;box-shadow:0 2px 10px rgba(26,43,107,.2)}
.btn-encerrar:hover{opacity:1;transform:translateY(-1px);box-shadow:0 5px 18px rgba(26,43,107,.3)}
.btn-encerrar:active,.btn-copy:active{transform:translateY(0)}
.btn-encerrar:disabled,.btn-copy:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.copy-ok{font-size:11px;color:var(--green);text-align:center;font-weight:500;min-height:14px}

/* Modal Atendimentos */
.overlay{position:fixed;inset:0;background:rgba(10,16,40,.5);backdrop-filter:blur(2px);z-index:100;display:flex;align-items:center;justify-content:center;padding:16px}
.modal{background:var(--surface);border-radius:20px;width:100%;max-width:520px;max-height:88vh;overflow-y:auto;padding:22px;box-shadow:var(--shadow-lg)}
.modal-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.modal-title{font-size:15px;font-weight:700}
.btn-x{background:none;border:none;cursor:pointer;font-size:20px;color:var(--muted);padding:0 4px}
.mnav{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.mnav-lbl{flex:1;text-align:center;font-size:13px;font-weight:600}
.btn-nav{background:none;border:1px solid var(--border);border-radius:6px;cursor:pointer;font-size:15px;color:var(--muted);padding:3px 10px;font-family:inherit}
.sum-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px}
.sum-card{background:var(--bg);border-radius:10px;padding:10px;text-align:center}
.sum-n{font-size:22px;font-weight:700;color:var(--primary)}
.sum-l{font-size:10px;color:var(--muted);margin-top:2px}
.sum-val{background:var(--gbg);border-radius:10px;padding:10px 14px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between}
.sum-val-n{font-size:20px;font-weight:700;color:var(--green)}
.sum-val-l{font-size:11px;color:var(--gtxt)}

/* Reavaliação */
.reav-step{margin-bottom:14px}
.reav-q{font-size:12px;font-weight:600;color:var(--text);margin-bottom:8px}
.reav-opts{display:flex;gap:8px;flex-wrap:wrap}
.reav-opts.col{flex-direction:column;gap:6px}
.reav-btn{padding:6px 16px;border-radius:20px;border:1px solid var(--border);background:none;cursor:pointer;font-size:12px;font-family:inherit;color:var(--muted);transition:all .15s;text-align:left}
.reav-btn:hover{border-color:var(--primary);color:var(--primary)}
.reav-btn.on{background:var(--pl);border-color:var(--primary);color:var(--primary);font-weight:600;box-shadow:0 0 0 3px rgba(26,43,107,.18)}
.reav-sub{margin-top:10px;padding:10px 12px;background:var(--bg);border-radius:8px;border-left:3px solid var(--primary)}
.reav-field-lbl{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.badge-pendente{background:var(--abg);color:var(--amber);padding:3px 8px;border-radius:10px;font-size:11px;font-weight:700;white-space:nowrap;display:inline-flex;flex-direction:column;align-items:center;line-height:1.4}
.timer-txt{font-size:10px;color:var(--amber);font-weight:500;line-height:1.2}
.enc-lbl{font-size:10px;color:var(--muted);font-weight:600;white-space:nowrap;letter-spacing:.02em}
.enc-dur{font-size:9px;font-weight:400;opacity:.75;margin-left:3px}
.a-item.enc{opacity:.64;background:rgba(255,255,255,.012)}
.btn-encerrar-sem{background:transparent;border:1px solid var(--border);color:var(--muted);padding:3px 9px;border-radius:8px;font-size:10px;font-weight:600;cursor:pointer;white-space:nowrap}
.btn-encerrar-sem:hover{border-color:var(--primary);color:var(--primary)}
.btn-reabrir{background:transparent;border:1px solid var(--border);color:var(--muted);padding:3px 9px;border-radius:8px;font-size:10px;font-weight:600;cursor:pointer;white-space:nowrap}
.btn-reabrir:hover{border-color:var(--primary);color:var(--primary)}

/* Selo Pendente clicável (abre o painel de pendências) */
.badge-pend-btn{border:none;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;display:inline-flex;align-items:center;transition:filter .12s}
.badge-pend-btn:hover{filter:brightness(.92)}
.badge-pend-btn.pend-done{background:var(--pl,rgba(22,163,74,.12));color:var(--green)}

/* Balão ancorado genérico (graduação de achados, Escala de Glasgow) */
#gpop{width:270px;max-width:calc(100vw - 16px);max-height:74vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 34px rgba(15,27,61,.24);padding:12px 14px}
html.dark #gpop{box-shadow:0 12px 34px rgba(0,0,0,.5)}
.gpop-t{font-size:12px;font-weight:700;color:var(--text);margin-bottom:8px}
.grade-row{display:flex;gap:6px}
.grade-b{flex:1;padding:8px 0;border:1px solid var(--border);border-radius:9px;background:var(--bg);color:var(--text);font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;transition:all .12s}
.grade-b:hover{border-color:var(--primary);color:var(--primary)}
.grade-b.on{background:var(--primary);color:#fff;border-color:var(--primary)}
.grade-rm{width:100%;margin-top:8px;padding:6px;border:1px solid var(--border);border-radius:8px;background:none;color:var(--muted);font-size:11px;font-weight:600;cursor:pointer;font-family:inherit}
.grade-rm:hover{border-color:var(--red);color:var(--red)}
.gcs-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:9px 0 3px}
.gcs-row{display:flex;flex-direction:column;gap:4px}
.gcs-b{text-align:left;padding:5px 9px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:12px;cursor:pointer;font-family:inherit;transition:all .12s}
.gcs-b b{color:var(--primary);margin-right:5px}
.gcs-b:hover{border-color:var(--primary)}
.gcs-b.on{background:var(--primary);color:#fff;border-color:var(--primary)}
.gcs-b.on b{color:#fff}

/* Balão de pendências (popover leve, sem fundo escuro) */
#pend-pop{width:300px;max-width:calc(100vw - 16px);max-height:70vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 34px rgba(15,27,61,.24);padding:12px 14px}
html.dark #pend-pop{box-shadow:0 12px 34px rgba(0,0,0,.5)}
.pend-pop-hdr{display:flex;align-items:center;font-size:13px;font-weight:700;color:var(--text);margin-bottom:4px}
.pend-pop-x{margin-left:auto;background:none;border:none;font-size:18px;line-height:1;color:var(--muted);cursor:pointer;padding:0 2px}
.pend-pop-x:hover{color:var(--text)}
.pend-pop-foot{font-size:10px;color:var(--muted);text-align:right;margin-top:8px}
.pend-sec-t{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:10px 0 3px}

/* Itens do painel de pendências */
.pend-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:var(--text)}
.pend-item input[type=checkbox]{accent-color:var(--primary);width:15px;height:15px;flex-shrink:0;cursor:pointer}
.pend-txt{flex:1;min-width:0;word-break:break-word}
.pend-txt.done{text-decoration:line-through;color:var(--muted)}
.pend-rm{background:none;border:none;cursor:pointer;color:var(--muted);font-size:16px;line-height:1;padding:0 4px;flex-shrink:0}
.pend-rm:hover{color:var(--red)}
.pend-add{display:flex;gap:6px;margin:4px 0 2px}
.pend-add input{flex:1;min-width:0;padding:5px 9px;border:1px solid var(--border);border-radius:8px;font-size:12px;font-family:inherit;background:var(--bg);color:var(--text);outline:none}
.pend-add input:focus{border-color:var(--primary)}
.pend-add button{width:30px;flex-shrink:0;border:1px solid var(--border);border-radius:8px;background:none;color:var(--primary);font-size:15px;font-weight:700;cursor:pointer}
.pend-add button:hover{background:var(--pl,rgba(26,43,107,.06))}
.btn-del-atend{background:transparent;border:none;color:transparent;padding:4px 6px;border-radius:6px;font-size:14px;cursor:pointer;line-height:1;transition:color .15s,background .15s;flex-shrink:0}
.a-item:hover .btn-del-atend{color:var(--muted)}
.btn-del-atend:hover{background:var(--rbg)!important;color:var(--red)!important}
.btn-reavaliar{background:var(--primary);color:#fff;border:none;padding:3px 10px;border-radius:10px;font-size:10px;font-weight:700;cursor:pointer;white-space:nowrap}
.btn-reavaliar:hover{opacity:.82}
.btn-csv{background:transparent;border:1px solid var(--border);color:var(--muted);padding:3px 9px;border-radius:8px;font-size:11px;font-weight:600;cursor:pointer;flex-shrink:0}
.btn-csv:hover{border-color:var(--green);color:var(--green)}

/* Glow border animation */
@keyframes glowPulse{0%,100%{box-shadow:0 0 0 0 rgba(59,130,246,0)}30%{box-shadow:0 0 0 4px rgba(59,130,246,.55),0 0 18px 4px rgba(59,130,246,.3)}70%{box-shadow:0 0 0 4px rgba(59,130,246,.35),0 0 12px 2px rgba(59,130,246,.2)}}
.glow-border{animation:glowPulse 1.6s ease-in-out 2}
/* Acordeão não relatado no ditado — brilho vermelho até ser preenchido */
.card.card-missing{border-color:#ef4444!important;animation:none}
.card.card-missing .card-title::after{content:" — faltou relatar";color:#ef4444;font-weight:600;font-size:11px}

/* CID chips */
.cid-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;min-height:0}
.cid-chip{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:20px;border:1px solid var(--border);background:var(--bg);cursor:pointer;font-size:11px;font-family:inherit;color:var(--muted);transition:all .15s;user-select:none}
.cid-chip:hover{border-color:var(--primary);color:var(--primary)}
.cid-chip.on{background:var(--pl);border-color:var(--primary);color:var(--primary);box-shadow:0 0 0 3px rgba(26,43,107,.18)}
.cid-chip .cid-code{font-weight:700;font-size:10px}
.cid-chip .cid-desc{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Toast */
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--primary);color:#fff;padding:8px 18px;border-radius:16px;font-size:12px;font-weight:500;z-index:999;opacity:0;transition:opacity .2s;pointer-events:none;white-space:nowrap}
.toast.show{opacity:1}
.spin{width:13px;height:13px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:inline-block;vertical-align:middle}
@keyframes spin{to{transform:rotate(360deg)}}
.rx-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;z-index:1200;padding:16px}
.rx-modal{background:var(--surface);border-radius:16px;width:100%;max-width:760px;height:86vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.4)}
.rx-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border);flex-shrink:0}
.rx-head-title{font-size:14px;font-weight:700}
.rx-body{display:flex;flex:1;overflow:hidden}
.rx-sidebar{width:190px;flex-shrink:0;border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}
.rx-sidebar-label{padding:10px 12px 4px;font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0}
.rx-sidebar-list{flex:1;overflow-y:auto;padding:4px 6px}
.rx-item{display:block;width:100%;text-align:left;padding:7px 10px;border-radius:8px;border:none;background:none;cursor:pointer;font-size:12px;font-family:inherit;color:var(--text);transition:background .12s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rx-item:hover{background:var(--pl)}
.rx-item.active{background:rgba(26,43,107,.14);color:var(--primary);font-weight:600}
.rx-sidebar-foot{padding:8px;border-top:1px solid var(--border);flex-shrink:0}

/* Chip que abre os modelos: verde-água, para não sumir no meio dos outros */
.chip.chip-mask{
  border-color:rgba(13,148,136,.45);
  color:#0D9488;
  background:rgba(20,184,166,.08);
  font-weight:600;
}
.chip.chip-mask:hover{
  border-color:#0D9488;
  color:#0F766E;
  background:rgba(20,184,166,.18);
}

/* Chip do modelo em uso: vidro fosco (estilo Apple) */
.chip.chip-glass{
  color:#0F766E;
  font-weight:700;
  border:1px solid rgba(255,255,255,.7);
  background:linear-gradient(135deg,rgba(45,212,191,.30),rgba(20,184,166,.10));
  -webkit-backdrop-filter:blur(12px) saturate(180%);
  backdrop-filter:blur(12px) saturate(180%);
  box-shadow:0 2px 10px rgba(13,148,136,.20),inset 0 1px 0 rgba(255,255,255,.85);
}
.chip.chip-glass:hover{
  background:linear-gradient(135deg,rgba(45,212,191,.42),rgba(20,184,166,.18));
  box-shadow:0 3px 14px rgba(13,148,136,.30),inset 0 1px 0 rgba(255,255,255,.9);
}
html.dark .chip.chip-mask{
  color:#5EEAD4;border-color:rgba(94,234,212,.35);background:rgba(20,184,166,.12);
}
html.dark .chip.chip-mask:hover{background:rgba(20,184,166,.22);border-color:#5EEAD4;color:#99F6E4}
html.dark .chip.chip-glass{
  color:#99F6E4;
  border-color:rgba(255,255,255,.18);
  background:linear-gradient(135deg,rgba(45,212,191,.22),rgba(20,184,166,.08));
  box-shadow:0 2px 12px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.14);
}

/* Modelos de história (máscaras): modal largo, formulário à esquerda, texto à direita */
.mk-modal{max-width:1200px;height:90vh}
.mk-cols{display:flex;gap:16px;flex:1;overflow:hidden;min-height:0}
.mk-form{flex:1.1;overflow-y:auto;padding-right:8px;min-width:0}
.mk-out{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0;overflow:hidden;border-left:1px solid var(--border);padding-left:16px}
.mk-out .rx-ta{flex:1;font-family:inherit;font-size:14px;line-height:1.75}
@media(max-width:900px){
  .mk-modal{max-width:100%;height:92vh}
  .mk-cols{flex-direction:column;overflow-y:auto}
  .mk-form{flex:none;overflow:visible;padding-right:0}
  .mk-out{border-left:none;border-top:1px solid var(--border);padding-left:0;padding-top:12px}
  .mk-out .rx-ta{min-height:160px}
}
.rx-new-btn{width:100%;padding:7px;border-radius:8px;border:1px dashed var(--primary);background:none;color:var(--primary);font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .12s}
.rx-new-btn:hover{background:var(--pl)}
.rx-editor{flex:1;display:flex;flex-direction:column;padding:14px 16px;gap:10px;overflow:hidden}
.rx-editor-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px}
.rx-name-input{width:100%;border:1px solid var(--border);border-radius:8px;padding:7px 11px;font-size:13px;font-weight:600;font-family:inherit;background:var(--bg);color:var(--text);box-sizing:border-box;outline:none;transition:border-color .15s}
.rx-name-input:focus{border-color:var(--primary)}
.rx-ta{flex:1;resize:none;width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-family:'Courier New',Courier,monospace;font-size:12px;line-height:1.75;background:var(--bg);color:var(--text);outline:none;transition:border-color .15s}
.rx-ta:focus{border-color:var(--primary)}
.rx-actions{display:flex;gap:8px;flex-shrink:0}
.rx-btn-use{flex:1;padding:8px;border:none;border-radius:9px;background:var(--primary);color:#fff;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit;transition:opacity .15s}
.rx-btn-use:hover{opacity:.85}
.rx-btn-save{padding:8px 14px;border-radius:9px;border:1px solid var(--primary);background:none;color:var(--primary);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}
.rx-btn-save:hover{background:var(--pl)}
.rx-btn-del{padding:8px 14px;border-radius:9px;border:1px solid var(--red);background:none;color:var(--red);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}
.rx-btn-del:hover{background:rgba(239,68,68,.07)}
.rx-btn-copy{padding:8px 14px;border-radius:9px;border:1px solid var(--green);background:none;color:var(--green);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s}
.rx-btn-copy:hover{background:var(--gbg)}
.rx-btn-copy.ok{background:var(--gbg);color:var(--green);border-color:var(--green)}
.rx-open-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:8px;border:1px dashed var(--border);background:none;color:var(--muted);font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s;margin-top:6px}
.rx-open-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--pl)}

/* Visual refresh: PrismaHUB Storyteller Design Lab */
html,body{
  background:
    linear-gradient(180deg,#FAFCFC 0%,#F3F7F8 38%,#EEF5F6 100%);
  color:var(--text);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
  letter-spacing:0;
}
button,input,textarea{letter-spacing:0}
::selection{background:rgba(21,86,108,.18)}

.gate{background:linear-gradient(160deg,#F8FBFC 0%,#EAF3F5 100%)}
.gate-box{
  max-width:380px;
  padding:2.25rem 2rem;
  border-radius:18px;
  border:1px solid rgba(16,35,63,.10);
  box-shadow:var(--shadow-lg);
}
.gate-logo,.note-title,.home-card-title,.card-title,.fg label,.ctx-label,.exam-sys-label{
  color:var(--muted);
}
.gate-title{font-size:22px;color:var(--primary-strong)}
.gate-sub{line-height:1.5}

.hdr{
  height:60px;
  padding:0 22px;
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(16,35,63,.10);
  box-shadow:0 1px 0 rgba(255,255,255,.7),0 10px 30px rgba(16,35,63,.05);
}
.logo{
  color:var(--primary-strong);
  font-size:14px;
  letter-spacing:.01em;
}
.logo span{color:var(--muted)}
.back,.btn-sm,.btn-o,.btn-csv,.btn-nav{
  background:var(--surface);
  border-color:rgba(16,35,63,.12);
  box-shadow:0 1px 0 rgba(255,255,255,.8);
  transition:border-color .15s,background .15s,color .15s,transform .15s,box-shadow .15s;
}
.back:hover,.btn-sm:hover,.btn-o:hover,.btn-csv:hover,.btn-nav:hover{
  background:var(--primary-soft);
  border-color:rgba(21,86,108,.28);
  color:var(--primary-strong);
}
.pill{
  background:var(--primary-soft);
  color:var(--primary-strong);
  border:1px solid rgba(21,86,108,.12);
}

.home-view{max-width:920px;padding:30px 22px}
.home-top{margin-bottom:22px}
.home-greeting{font-size:22px;color:var(--primary-strong)}
.home-sub{font-size:13px;line-height:1.5}
.home-card,.card,.modal,.rx-modal{
  border-color:rgba(16,35,63,.10);
  box-shadow:var(--shadow-sm);
}
.home-card-hdr,.card-hdr{
  background:linear-gradient(180deg,#FFFFFF 0%,#F8FBFC 100%);
}
.home-card-title,.card-title{
  letter-spacing:.08em;
}
.hstat,.sum-card{
  background:var(--surface-soft);
  border:1px solid rgba(16,35,63,.08);
}
.a-item{padding:14px 18px}
.a-item:hover:not(.enc){background:rgba(21,86,108,.045)}
.a-name{font-size:13.5px}
.a-val,.sum-val-n{color:var(--green)}

.btn-p,.btn-novo,.btn-encerrar,.btn-reavaliar,.rx-btn-use{
  background:linear-gradient(180deg,var(--primary) 0%,var(--primary-strong) 100%);
  box-shadow:0 8px 18px rgba(21,86,108,.22);
}
.btn-p:hover,.btn-novo:hover,.btn-encerrar:hover,.btn-reavaliar:hover,.rx-btn-use:hover{
  box-shadow:0 12px 24px rgba(21,86,108,.28);
}
.btn-copy{
  background:var(--primary-soft);
  border-color:rgba(21,86,108,.32);
  color:var(--primary-strong);
}
.btn-copy:hover{
  background:var(--primary);
  color:#fff;
}

.layout{
  grid-template-columns:minmax(0,1fr) 420px;
  min-height:calc(100vh - 60px);
}
.form{
  padding:22px;
  gap:14px;
}
.panel{
  top:60px;
  height:calc(100vh - 60px);
  background:linear-gradient(180deg,#F8FBFC 0%,#EEF5F6 100%);
  border-left:1px solid rgba(16,35,63,.10);
}
.card{
  background:rgba(255,255,255,.96);
  border-radius:14px;
  overflow:hidden;
}
.card:hover{box-shadow:var(--shadow-md)}
.card-hdr{padding:13px 16px}
.card-body{padding:16px}

.fi,.queixa-input,.s-ta,.exam-ta,.morb-in,.med-in,.exsub-in,.citem-sub,.rx-name-input,.rx-ta{
  border-color:rgba(16,35,63,.13);
  background:#FFFFFF;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.fi:focus,.queixa-input:focus,.s-ta:focus,.exam-ta:focus,.morb-in:focus,.med-in:focus,.exsub-in:focus,.citem-sub:focus,.rx-name-input:focus,.rx-ta:focus{
  border-color:rgba(21,86,108,.48);
  box-shadow:0 0 0 3px rgba(21,86,108,.10);
}
.seg{
  background:#fff;
  border-color:rgba(16,35,63,.13);
  border-radius:9px;
}
.seg-label{background:var(--surface-soft)}
.seg-btn,.tipo-btn,.destino-btn,.chip,.echip,.reav-btn,.cid-chip{
  transition:border-color .15s,background .15s,color .15s,box-shadow .15s,transform .15s;
}
.seg-btn.on,.tipo-btn.on,.chip.on,.cid-chip.on{
  background:var(--primary);
  border-color:var(--primary);
  color:#fff;
  box-shadow:0 0 0 3px rgba(21,86,108,.12);
}
.tipo-btn,.destino-btn,.citem{
  background:#fff;
  border-color:rgba(16,35,63,.12);
}
.tipo-btn:hover:not(.on),.destino-btn:hover:not(.on),.citem:hover{
  background:var(--surface-soft);
  border-color:rgba(21,86,108,.24);
}
.citem.on{
  background:var(--primary-soft);
  border-color:rgba(21,86,108,.34);
}

.chip,.echip,.cid-chip{
  background:#fff;
  border-color:rgba(16,35,63,.12);
}
.chip:hover,.echip:hover,.cid-chip:hover{
  background:var(--primary-soft);
  border-color:rgba(21,86,108,.26);
  color:var(--primary-strong);
}
.chip.rf.on,.echip.on{
  background:var(--rbg);
  color:var(--red);
  border-color:rgba(180,35,24,.45);
}
.triage-btn.on-verde{background:#0F766E;color:#D9FFF7;border-color:#0F766E}
.triage-btn.on-amarelo{background:#B7791F;color:#FFF4D8;border-color:#B7791F}
.triage-btn.on-laranja{background:#B45309;color:#FFEDD5;border-color:#B45309}

.note-inner{padding:18px;gap:12px}
.note-head{padding:0 2px}
.note-pre{
  border-radius:14px;
  background:#FFFFFF;
  border-color:rgba(16,35,63,.12);
  box-shadow:var(--shadow-xs);
  font-size:12.5px;
  line-height:1.85;
}
.note-pre:focus{
  border-color:rgba(21,86,108,.36);
  box-shadow:0 0 0 3px rgba(21,86,108,.10),var(--shadow-sm);
}
.copy-ok{color:var(--green)}

.overlay,.rx-overlay{background:rgba(9,21,35,.55);backdrop-filter:blur(5px)}
.modal,.rx-modal{border:1px solid rgba(255,255,255,.65)}
.toast{
  background:var(--primary-strong);
  box-shadow:0 10px 30px rgba(16,35,63,.22);
}

@media (max-width:980px){
  .layout{display:block}
  .panel{
    position:relative;
    top:auto;
    height:58vh;
    border-left:none;
    border-top:1px solid var(--border);
  }
  .form{padding:16px}
}
@media (max-width:680px){
  .hdr{
    height:auto;
    min-height:60px;
    padding:10px 14px;
    align-items:flex-start;
    gap:10px;
    flex-direction:column;
  }
  .hdr-l,.hdr-r{width:100%;flex-wrap:wrap}
  .hdr-r{justify-content:flex-start}
  .home-view{padding:18px 14px}
  .home-greeting{font-size:19px}
  .home-card-hdr,.home-top{align-items:flex-start}
  .home-stats{width:100%;flex-wrap:wrap}
  .layout{min-height:auto}
  .form{padding:14px;gap:12px}
  .card-hdr{align-items:flex-start}
  .card-body{padding:14px}
  .sum-grid{grid-template-columns:1fr}
  .modal{padding:18px}
  .rx-body{flex-direction:column}
  .rx-sidebar{width:100%;max-height:180px;border-right:none;border-bottom:1px solid var(--border)}
}

/* Luxe finishing layer */
html,body{
  background:
    radial-gradient(circle at 12% -18%,rgba(42,92,120,.12),transparent 38%),
    radial-gradient(circle at 78% -8%,rgba(214,202,183,.30),transparent 30%),
    linear-gradient(180deg,#FDFDFB 0%,#F5F8F9 42%,#EDF4F6 100%);
}
.lux-scroll{
  position:fixed;
  left:0;
  top:0;
  width:100%;
  height:2px;
  z-index:1000;
  pointer-events:none;
  background:linear-gradient(90deg,#D8CAB6,#2A5C78,#D8CAB6);
  transform:scaleX(0);
  transform-origin:left;
  opacity:.88;
  box-shadow:0 0 16px rgba(42,92,120,.22);
}
.hdr{
  box-shadow:0 1px 2px rgba(15,37,51,.04),0 18px 48px rgba(15,37,51,.055);
}
.hdr::before{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold-line),rgba(42,92,120,.28),transparent);
  pointer-events:none;
}
.logo{
  letter-spacing:.01em;
}
.logo span{
  font-weight:600;
}
.logo .byline{
  color:#87979E;
  letter-spacing:.015em;
}
.home-greeting{
  color:var(--ink-luxe);
  font-size:27px;
}
.home-greeting::after{
  content:"";
  display:block;
  width:72px;
  height:2px;
  margin-top:10px;
  border-radius:999px;
  background:linear-gradient(90deg,#2A5C78,#D8CAB6,transparent);
}
.home-card,.card{
  background:
    linear-gradient(#FFFFFF,#FFFFFF) padding-box,
    linear-gradient(135deg,rgba(42,92,120,.20),rgba(214,202,183,.50),rgba(42,92,120,.08)) border-box;
  border:1px solid transparent;
}
.home-card::after,.card::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),rgba(214,202,183,.72),transparent);
  pointer-events:none;
  z-index:2;
}
.home-card:hover,.card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 38px rgba(15,37,51,.10),0 38px 82px rgba(15,37,51,.075);
}
.home-card-hdr,.card-hdr{
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,251,250,.92)),
    linear-gradient(90deg,rgba(214,202,183,.20),rgba(42,92,120,.08));
}
.card-title,.home-card-title{
  position:relative;
  overflow:hidden;
  padding:3px 8px 3px 0;
  border-radius:8px;
  color:#173544;
  font-size:13.6px;
  font-weight:780;
}
.card-title::after,.home-card-title::after{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:82%;
  height:70%;
  z-index:-1;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),rgba(255,255,255,.58),rgba(255,255,255,.14),transparent);
  transform:translateX(-115%) translateY(-50%);
  opacity:0;
  pointer-events:none;
}
.card-title::before,.home-card-title::before{
  width:9px;
  height:9px;
  background:linear-gradient(135deg,#2A5C78 0%,#6D91A2 48%,#D8CAB6 100%);
  box-shadow:0 0 0 4px rgba(42,92,120,.09),0 5px 12px rgba(42,92,120,.16);
}
.card-chevron{
  color:#8A9AA0;
}
.panel{
  background:
    radial-gradient(circle at 50% 0%,rgba(214,202,183,.18),transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.90),rgba(246,250,251,.96));
}
.note-pre{
  background:
    linear-gradient(180deg,#FFFFFF 0%,#FFFDF9 100%);
  border-color:rgba(42,92,120,.18);
  box-shadow:inset 0 1px 2px rgba(15,37,51,.035),0 14px 34px rgba(15,37,51,.055);
}
.note-pre:hover{
  box-shadow:inset 0 1px 2px rgba(15,37,51,.035),0 20px 46px rgba(15,37,51,.075);
}
.btn-p,.btn-novo,.btn-encerrar,.btn-reavaliar,.rx-btn-use,.btn-copy{
  position:relative;
  overflow:hidden;
}
.btn-p::after,.btn-novo::after,.btn-encerrar::after,.btn-reavaliar::after,.rx-btn-use::after,.btn-copy::after{
  content:"";
  position:absolute;
  top:-40%;
  bottom:-40%;
  left:0;
  width:42%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
  transform:translateX(-140%) skewX(-16deg);
  pointer-events:none;
}
.fi,.queixa-input,.sid-field,.s-ta,.exam-ta,.morb-in,.med-in,.exsub-in,.citem-sub,.rx-name-input,.rx-ta,
input[type="number"],input[type="text"],input[type="email"],input[type="password"]{
  background:linear-gradient(180deg,#FFFFFF 0%,#FEFFFE 100%);
}
.chip,.echip,.cid-chip,.tipo-btn,.destino-btn,.citem{
  box-shadow:0 1px 2px rgba(15,37,51,.018);
}
.tipo-btn:hover:not(.on),.destino-btn:hover:not(.on),.citem:hover{
  box-shadow:0 8px 18px rgba(15,37,51,.055);
}
.chip:hover,.echip:hover,.cid-chip:hover{
  box-shadow:0 1px 3px rgba(15,37,51,.035);
}
.chip,.echip,.cid-chip,.seg-btn{
  transition:background-color .04s linear,border-color .04s linear,color .04s linear;
  will-change:auto;
}
.chip.on,.echip.on,.cid-chip.on,.seg-btn.on{
  transition:none;
}
.a-item{
  position:relative;
}
.a-item::before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:2px;
  border-radius:999px;
  background:linear-gradient(180deg,#2A5C78,#D8CAB6);
  opacity:0;
  transition:opacity .18s ease;
}
.a-item:hover::before{
  opacity:.8;
}
.modal,.rx-modal,.gate-box{
  background:
    linear-gradient(#FFFFFF,#FFFFFF) padding-box,
    linear-gradient(135deg,rgba(42,92,120,.22),rgba(214,202,183,.58),rgba(42,92,120,.08)) border-box;
  border:1px solid transparent;
}
@media (prefers-reduced-motion:reduce){
  .btn-novo{animation:none}
  .btn-p::after,.btn-novo::after,.btn-encerrar::after,.btn-reavaliar::after,.rx-btn-use::after,.btn-copy::after{display:none}
}
/* ── AI Assistant ─────────────────────────────────────────── */
.ai-bar{display:flex;gap:6px;margin-top:6px;align-items:center;flex-wrap:wrap}
.ai-btn-main{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;border:none;border-radius:10px;font-size:11px;font-weight:700;cursor:pointer;transition:opacity .15s;white-space:nowrap}
.ai-btn-main:hover{opacity:.85}
.ai-btn-main:disabled{opacity:.5;cursor:not-allowed}
.ai-btn-neon{background:#6366f1;color:#fff;box-shadow:0 0 8px rgba(99,102,241,.45),0 0 18px rgba(99,102,241,.15);border:none;border-radius:10px;font-size:11px;font-weight:700;cursor:pointer;padding:6px 14px;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;transition:box-shadow .2s,transform .1s}
.ai-btn-neon:hover{filter:brightness(1.04)}
.ai-btn-neon:disabled{opacity:.5;cursor:not-allowed}
.ai-cfg-btn{background:transparent;border:1px solid var(--border);color:var(--muted);padding:4px 8px;border-radius:8px;font-size:11px;cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s}
.ai-cfg-btn:hover{border-color:#7c3aed;color:#7c3aed}
.ai-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1300;padding:16px}
.ai-modal{background:var(--surface);border-radius:16px;width:100%;max-width:680px;max-height:88vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}
.ai-modal-head{display:flex;align-items:center;gap:8px;padding:16px 20px;border-bottom:1px solid var(--border);flex-shrink:0}
.ai-modal-head-title{flex:1;font-size:14px;font-weight:700;color:var(--text)}
.ai-modal-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px}
.ai-result-box{width:100%;min-height:200px;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:12px;font-size:13px;color:var(--text);line-height:1.6;resize:vertical;font-family:inherit}
.ai-modal-foot{padding:12px 20px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;flex-shrink:0}
.ai-apply-btn{background:#4f46e5;color:#fff;border:none;padding:7px 18px;border-radius:10px;font-size:12px;font-weight:700;cursor:pointer;transition:opacity .15s}
.ai-apply-btn:hover{opacity:.85}
.ai-loading{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;padding:20px 0}
.ai-spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:#7c3aed;border-radius:50%;animation:spin .7s linear infinite}
.ai-cfg-modal{max-width:520px}
.ai-cfg-label{font-size:12px;font-weight:600;color:var(--muted);margin-bottom:4px}
.ai-sys-prompt{width:100%;height:180px;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:12px;font-size:12px;color:var(--text);line-height:1.6;resize:vertical;font-family:inherit}
.ai-sys-prompt:focus{outline:none;border-color:#7c3aed}
/* ── Hub Operacional ───────────────────────────────────────────── */
.hub-metrics{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.hub-chip{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:4px 10px;font-size:11px;font-weight:600;color:var(--text);white-space:nowrap;line-height:1.5}
.hub-chip span{color:var(--muted);font-weight:400}
.hub-chip.warn{background:var(--abg);border-color:var(--amber);color:var(--amber)}
.hub-chip.pos{background:var(--gbg);border-color:var(--green);color:var(--green)}
.hub-chip.danger{background:var(--rbg);border-color:var(--red);color:var(--red)}
.hub-proj{padding:7px 18px;font-size:11px;color:var(--muted);border-bottom:1px solid var(--bg);display:flex;gap:16px;flex-wrap:wrap;line-height:1.6}
.hub-proj strong{color:var(--text);font-weight:700}
.a-item.esq-med{border-left:3px solid var(--amber)!important}
.a-item.esq-hi{border-left:3px solid var(--red)!important;background:rgba(192,57,43,.025)!important}
.a-item.compact-row{padding:7px 18px}
.a-item.compact-row .a-badge,.a-item.compact-row .badge-pendente,.a-item.compact-row .btn-reavaliar,.a-item.compact-row .btn-encerrar-sem,.a-item.compact-row .btn-reabrir{display:none!important}
.a-item.compact-row .a-name{font-size:12px}
.compact-elapsed{display:none;font-size:10px;color:var(--muted);margin-left:4px;font-weight:400}
.a-item.compact-row .compact-elapsed{display:inline}
.btn-compact{background:var(--bg);border:1px solid var(--border);border-radius:7px;padding:3px 8px;font-size:10px;font-weight:600;color:var(--muted);cursor:pointer;font-family:inherit;transition:all .15s;white-space:nowrap}
.btn-compact.on{background:var(--primary);color:#fff;border-color:var(--primary)}

/* ── Sidebar brand ── */
.side-byline{font-size:10px;color:var(--muted);margin-top:2px;font-style:italic;letter-spacing:.01em}
html.dark .side-byline{color:rgba(255,255,255,.35)}

/* ── Gate watermark diagonal ── */
.gate-watermark{
  position:absolute;inset:-60%;
  width:220%;height:220%;
  pointer-events:none;z-index:0;user-select:none;
  overflow:hidden;
}
.gate-watermark::before{
  content:"prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma prisma";
  position:absolute;inset:0;
  display:block;
  font-size:34px;font-weight:800;letter-spacing:-.02em;
  line-height:1.8;word-spacing:18px;
  color:rgba(64,91,255,.08);
  transform:rotate(-13deg);
  overflow:hidden;
  word-break:break-all;
  padding:0 24px;
}
html.dark .gate-watermark::before{color:rgba(255,255,255,.055)}
.gate-box{position:relative;z-index:1}

/* ── IA chart ── */
.side-ia-chart{display:none;margin-top:14px;height:44px;border-radius:12px;overflow:hidden}
.side-ia-chart svg{width:100%;height:100%;display:block}

/* ── Config modal ── */
.cfg-section-lbl{font-size:10px;font-weight:700;color:var(--muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:8px}
.cfg-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--bg);border-radius:12px;margin-bottom:6px}
.cfg-row-title{font-size:13px;font-weight:600;color:var(--text)}
.cfg-row-sub{font-size:11px;color:var(--muted);margin-top:2px}
.cfg-btn{width:100%;text-align:left;padding:12px 14px;background:var(--bg);border-radius:12px;border:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:8px;transition:background .15s}
.cfg-btn:hover{background:var(--primary-soft);color:var(--primary)}

/* ── Dark mode toggle ── */
.dark-toggle{width:46px;height:26px;border-radius:999px;background:var(--border);border:none;cursor:pointer;position:relative;transition:background .2s;flex-shrink:0}
.dark-toggle.on{background:var(--primary)}
.dark-toggle-thumb{position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:transform .2s;display:block}
.dark-toggle.on .dark-toggle-thumb{transform:translateX(20px)}

/* ── Relatórios placeholder ── */
.rel-ph{min-height:80px;background:repeating-linear-gradient(90deg,var(--border) 0,var(--border) 1px,transparent 1px,transparent 20px) bottom/100% 40px no-repeat,var(--bg);border-radius:8px;position:relative;overflow:hidden}
.rel-ph::after{content:"Em breve";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.04em}

/* ── Dark mode ── */
html.dark{color-scheme:dark}
html.dark body{
  background:#0F1117;
  color:#E2E8F8;
}
html.dark{
  --bg:#181B26;
  --surface:#1E2130;
  --surface-soft:#222537;
  --text:#E2E8F8;
  --text-soft:#B8C4DC;
  --muted:#7A889E;
  --border:rgba(255,255,255,.1);
  --border-soft:rgba(255,255,255,.08);
  --primary:#6070FF;
  --primary-2:#8870FF;
  --primary-soft:rgba(96,112,255,.15);
  --pl:rgba(96,112,255,.15);
  --shadow-sm:0 1px 3px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.25);
  --shadow-md:0 4px 14px rgba(0,0,0,.4),0 20px 44px rgba(0,0,0,.3);
  --shadow-lg:0 28px 80px rgba(0,0,0,.55);
}
html.dark .hdr{background:rgba(20,22,35,.9);border-color:rgba(255,255,255,.08)}
html.dark .app-sidebar{background:var(--surface);border-color:var(--border-soft)}
html.dark .side-ai-card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.08)}
html.dark .side-item:hover{background:rgba(255,255,255,.07)}
html.dark .side-item.active{background:rgba(96,112,255,.18);color:#7A8FFF}
html.dark .home-card,html.dark .card,html.dark .modal,html.dark .rx-modal{background:var(--surface);border-color:var(--border)}
html.dark .home-card-hdr,html.dark .card-hdr{background:rgba(255,255,255,.03);border-color:rgba(255,255,255,.08)}
html.dark .panel{background:linear-gradient(180deg,rgba(22,24,38,.98),rgba(18,20,32,.95));border-color:rgba(255,255,255,.08)}
html.dark .note-inner{background:rgba(22,24,38,.94);border-color:rgba(255,255,255,.09)}
html.dark .note-pre{background:#1A1D2A;border-color:rgba(255,255,255,.1);color:var(--text)}
html.dark .fi,html.dark .queixa-input,html.dark .s-ta,html.dark .exam-ta,html.dark .morb-in,html.dark .med-in,html.dark .exsub-in,html.dark .citem-sub,html.dark .rx-name-input,html.dark .rx-ta,
html.dark input[type="number"],html.dark input[type="text"],html.dark input[type="email"],html.dark input[type="password"]{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:var(--text)}
html.dark .chip,html.dark .echip,html.dark .cid-chip,html.dark .tipo-btn,html.dark .destino-btn,html.dark .citem,html.dark .seg{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12);color:var(--text)}
html.dark .chip:hover,html.dark .echip:hover,html.dark .cid-chip:hover,html.dark .tipo-btn:hover:not(.on),html.dark .destino-btn:hover:not(.on),html.dark .citem:hover{background:rgba(96,112,255,.15);border-color:rgba(96,112,255,.3)}
html.dark .a-item:hover:not(.enc){background:rgba(255,255,255,.04)}
html.dark .btn-sm,html.dark .btn-csv,html.dark .btn-o,html.dark .btn-nav,html.dark .rx-open-btn,html.dark .rx-btn-save,html.dark .rx-new-btn{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:var(--text)}
html.dark .btn-sm:hover,html.dark .btn-csv:hover,html.dark .btn-o:hover{background:rgba(96,112,255,.15);border-color:rgba(96,112,255,.3);color:#7A8FFF}
html.dark .back{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:var(--text)}
html.dark .pill{background:rgba(96,112,255,.18);border-color:rgba(96,112,255,.28);color:#8FA0FF}
html.dark .hdr .btn-sm{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:var(--text)}
html.dark .hdr .btn-sm:hover{background:rgba(96,112,255,.2);border-color:rgba(96,112,255,.35);color:#8FA0FF}
html.dark .hstat,html.dark .sum-card{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.1)}
html.dark .cfg-row,html.dark .rel-ph{background:rgba(255,255,255,.06)}
html.dark .cfg-btn{background:rgba(255,255,255,.06)}
html.dark .cfg-btn:hover{background:rgba(96,112,255,.18)}
html.dark .gate{background:url("../img/storyteller-login-bg.png") center center / cover no-repeat,#FBFCFF}
html.dark .gate-box{background:#1E2130;border-color:rgba(255,255,255,.12)}
html.dark .overlay,html.dark .rx-overlay,html.dark .ai-overlay{background:rgba(0,0,0,.72)}
html.dark .dark-toggle{background:rgba(255,255,255,.18)}
html.dark .dark-toggle.on{background:var(--primary)}
html.dark .ctx-panel,html.dark .morb-preview,html.dark .exames-sub{background:rgba(255,255,255,.06)}
html.dark .home-card-hdr::before,html.dark .card-hdr::before{display:none}

/* ═══════════════════════════════════════════════════════════════════
   PRISMA STORYTELLER · Modern SaaS Layer
   Paleta Índigo — Linear / Stripe / Vercel aesthetic
═══════════════════════════════════════════════════════════════════ */

html,body{
  background:
    radial-gradient(ellipse 80% 50% at 20% -5%,rgba(64,91,255,.09),transparent),
    radial-gradient(ellipse 60% 40% at 90% 5%,rgba(108,92,255,.07),transparent),
    #F5F7FB;
  color:var(--text);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
  font-size:14px;
}
button,input,textarea{font-family:inherit;letter-spacing:0}

/* Limpa ruídos decorativos das camadas anteriores */
body::before,body::after,.gate::before,.gate::after{content:none!important;animation:none!important}
.hdr::before,.hdr::after{content:none!important;animation:none!important}
.home-card::before,.home-card::after,.card::before,.card::after{content:none!important;animation:none!important}
.card-title::after,.home-card-title::after{content:none!important;animation:none!important}
.a-item::before{content:none!important}
.logo::before{content:none!important}
.lux-scroll{display:none!important}
.btn-novo{animation:none!important}

/* ── Header ──────────────────────────────────────────────────── */
.hdr{
  height:60px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(16px) saturate(1.2);
  border-bottom:1px solid #DDE5F2;
  box-shadow:0 1px 0 rgba(255,255,255,.6),0 6px 20px rgba(15,27,61,.05);
}
.logo{font-size:14px;font-weight:800;color:var(--text);text-transform:none;letter-spacing:-.01em}
.logo span{color:var(--muted);font-weight:500}
.logo .byline{display:none}
.back{
  border:1px solid var(--border);background:var(--surface);color:var(--muted);
  border-radius:8px;box-shadow:0 1px 2px rgba(15,27,61,.04);padding:5px 10px;
  transition:all .15s;
}
.back:hover{background:var(--primary-soft);border-color:rgba(64,91,255,.28);color:var(--primary);transform:none;box-shadow:none}
.pill{
  background:var(--primary-soft);border:1px solid rgba(64,91,255,.16);
  color:var(--primary);border-radius:999px;font-weight:600;padding:4px 12px;
}
.hdr .btn-sm{
  background:#FFFFFF;border-color:var(--border);color:var(--text);
  box-shadow:0 1px 2px rgba(15,27,61,.04);border-radius:9px;
}
.hdr .btn-sm:hover{background:var(--primary-soft);border-color:rgba(64,91,255,.28);color:var(--primary);transform:none;box-shadow:none}
.hdr .btn-sm.danger:hover{background:var(--rbg);border-color:rgba(220,38,38,.3);color:var(--red)}

/* ── Auth gate ───────────────────────────────────────────────── */
.gate{
  background:url("../img/storyteller-login-bg.png") center center / cover no-repeat,#FBFCFF;
}
.gate-watermark{display:none}
.gate-box{
  background:#FFFFFF;border-radius:24px;
  border:1px solid rgba(64,91,255,.14);
  box-shadow:0 32px 80px rgba(15,27,61,.18);
  padding:2.25rem 2rem;
  animation:none;
}
.gate-logo{color:var(--primary);font-weight:800;letter-spacing:.05em;font-size:11px}
.gate-title{color:var(--text);font-size:24px;font-weight:800;letter-spacing:-.02em}
.gate-sub{color:var(--muted);line-height:1.5;font-size:13px}
.tabs{border-bottom-color:var(--border)}
.tab.on{color:var(--primary);border-bottom-color:var(--primary)}

/* ── Home ────────────────────────────────────────────────────── */
.home-view{max-width:960px;padding:32px 24px}
.home-top{margin-bottom:24px}
.home-greeting{
  font-size:26px;font-weight:800;color:var(--text);letter-spacing:-.02em;line-height:1.15;
}
.home-greeting::after{
  content:"";display:block;width:52px;height:3px;margin-top:10px;border-radius:999px;
  background:linear-gradient(90deg,var(--primary),var(--primary-2));
}
.home-sub{color:var(--muted);font-size:13px;margin-top:4px}
.home-card,.card,.modal,.rx-modal{border:1px solid var(--border);box-shadow:var(--shadow-sm)}
.home-card,.card{
  background:#FFFFFF;border-radius:20px;overflow:hidden;isolation:isolate;
  transition:box-shadow .22s ease,transform .22s ease,border-color .22s ease;
}
.home-card:hover,.card:hover{
  transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:rgba(64,91,255,.2);
}
.home-card-hdr,.card-hdr{
  background:linear-gradient(180deg,#FFFFFF 0%,var(--surface-soft) 100%);
  border-bottom:1px solid var(--border);min-height:48px;
}
.home-card-title,.card-title{
  font-size:13px;font-weight:700;letter-spacing:.01em;text-transform:none;color:var(--text);
}
.home-card-title::before,.card-title::before{
  content:"";width:8px;height:8px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,var(--primary),var(--primary-2));
  box-shadow:0 0 0 3px rgba(64,91,255,.12);
  display:inline-block;margin-right:8px;vertical-align:0px;
}
.note-title,.rx-sidebar-label,.fg label{
  color:var(--muted);font-size:10px;letter-spacing:.07em;font-weight:700;
}
.hstat,.sum-card{background:var(--surface-soft);border:1px solid var(--border)}
.card-hdr{padding:14px 18px}
.card-body{padding:18px}
.card{border-radius:16px}

/* ── Layout / Panel ──────────────────────────────────────────── */
.layout{grid-template-columns:minmax(0,1fr) 440px;min-height:calc(100vh - 60px)}
.form{padding:24px;gap:14px}
.panel{
  top:60px;height:calc(100vh - 60px);
  background:linear-gradient(180deg,rgba(248,250,255,.98) 0%,rgba(238,241,255,.93) 100%);
  border-left:1px solid var(--border);
}
.note-inner{padding:20px;gap:14px}
.note-pre{
  border-radius:16px;border-color:var(--border);background:#FFFFFF;
  font-size:12.5px;line-height:1.85;padding:18px;
  box-shadow:0 1px 3px rgba(15,27,61,.05),inset 0 1px 0 rgba(255,255,255,.9);
  transition:border-color .16s,box-shadow .16s;
}
.note-pre:focus{
  border-color:rgba(64,91,255,.38);
  box-shadow:0 0 0 3px rgba(64,91,255,.1),0 6px 20px rgba(64,91,255,.07);
}

/* ── Botões primários — gradiente índigo ─────────────────────── */
.btn-p,.btn-novo,.btn-encerrar,.btn-reavaliar,.rx-btn-use{
  background:linear-gradient(180deg,#5470FF 0%,#3A50F0 100%);
  border-radius:12px;color:#fff;border:none;
  box-shadow:0 4px 14px rgba(64,91,255,.32),inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
  position:relative;overflow:hidden;
}
.btn-p:hover,.btn-novo:hover,.btn-encerrar:hover,.btn-reavaliar:hover,.rx-btn-use:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 24px rgba(64,91,255,.42),inset 0 1px 0 rgba(255,255,255,.22);
  background:linear-gradient(180deg,#6070FF 0%,#4A5EFF 100%);
}
.btn-p::after,.btn-novo::after,.btn-encerrar::after,.rx-btn-use::after{
  content:"";position:absolute;top:-50%;bottom:-50%;left:0;width:42%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.26),transparent);
  transform:translateX(-140%) skewX(-18deg);pointer-events:none;
}
.btn-p:disabled,.btn-encerrar:disabled{opacity:.55;transform:none;cursor:not-allowed;box-shadow:none}
.btn-encerrar{font-size:13px;letter-spacing:.01em}

/* ── Botões secundários ──────────────────────────────────────── */
.btn-sm,.btn-csv,.btn-o,.btn-nav,.rx-open-btn,.rx-btn-save,.rx-new-btn{
  border:1px solid var(--border);background:#FFFFFF;color:var(--text);
  box-shadow:0 1px 2px rgba(15,27,61,.04);border-radius:9px;transition:all .15s;
}
.btn-sm:hover,.btn-csv:hover,.btn-o:hover,.btn-nav:hover,.rx-open-btn:hover,.rx-btn-save:hover,.rx-new-btn:hover{
  background:var(--primary-soft);border-color:rgba(64,91,255,.28);color:var(--primary);
  transform:none;box-shadow:none;
}
.btn-copy{
  background:var(--primary-soft);border:1.5px solid rgba(64,91,255,.22);color:var(--primary);
  border-radius:12px;transition:all .18s;position:relative;overflow:hidden;
}
.btn-copy:hover{background:linear-gradient(180deg,#5470FF,#3A50F0);color:#fff;border-color:transparent}

/* ── Inputs ──────────────────────────────────────────────────── */
.fi,.queixa-input,.sid-field,.s-ta,.exam-ta,.morb-in,.med-in,.exsub-in,.citem-sub,.rx-name-input,.rx-ta,
input[type="number"],input[type="text"],input[type="email"],input[type="password"]{
  border:1px solid var(--border);background:#FFFFFF;color:var(--text);
  border-radius:10px;transition:border-color .15s,box-shadow .15s;
}
.fi:focus,.queixa-input:focus,.sid-field:focus,.s-ta:focus,.exam-ta:focus,.morb-in:focus,
.med-in:focus,.exsub-in:focus,.citem-sub:focus,.rx-name-input:focus,.rx-ta:focus,
input[type="number"]:focus,input[type="text"]:focus,input[type="email"]:focus,input[type="password"]:focus{
  outline:none;border-color:rgba(64,91,255,.4);box-shadow:0 0 0 3px rgba(64,91,255,.1);transform:none;
}

/* ── Segmentos, tipo, destino ────────────────────────────────── */
.seg{border-color:var(--border);border-radius:10px;background:#fff}
.seg-label{background:var(--surface-soft)}
.tipo-btn,.destino-btn,.citem{border-color:var(--border);background:#FFFFFF;border-radius:10px;transition:all .15s}
.tipo-btn:hover:not(.on),.destino-btn:hover:not(.on),.citem:hover{
  background:var(--primary-soft);border-color:rgba(64,91,255,.24);transform:none;box-shadow:none;
}
.seg-btn.on,.tipo-btn.on,.chip.on,.cid-chip.on{
  background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 2px 10px rgba(64,91,255,.28);
}
.citem.on{background:var(--primary-soft);border-color:rgba(64,91,255,.3);color:var(--primary);box-shadow:none}
.destino-btn.alta.on{background:var(--gbg);color:var(--gtxt);border-color:rgba(5,150,105,.3);box-shadow:none}
.destino-btn.ps.on{background:var(--primary-soft);color:var(--primary);border-color:rgba(64,91,255,.3);box-shadow:none}
.destino-btn.intern.on{background:#F5F3FF;color:#6D28D9;border-color:#C4B5FD;box-shadow:none}

/* ── Chips ───────────────────────────────────────────────────── */
.chip,.echip,.cid-chip{border-color:var(--border);background:#FFFFFF;border-radius:999px;transition:all .12s}
.chip:hover,.echip:hover,.cid-chip:hover{background:var(--primary-soft);border-color:rgba(64,91,255,.25);color:var(--primary)}
.chip.rf:hover,.chip.rf.on,.echip.on{background:var(--rbg);border-color:rgba(220,38,38,.3);color:var(--red);box-shadow:none}
.chip,.echip,.cid-chip,.seg-btn{transition:background .06s,border-color .06s,color .06s}

/* ── Lista de atendimentos ───────────────────────────────────── */
.a-item{min-height:60px;border-bottom-color:var(--bg);transition:background .12s ease}
.a-item:hover:not(.enc){background:rgba(64,91,255,.035);transform:none}
.a-name{font-weight:700;color:var(--text)}
.a-val,.sum-val-n{color:var(--green)}
.bp{background:var(--primary-soft);color:var(--primary)}
.badge-pendente{background:var(--abg);color:var(--amber)}
.timer-txt{color:var(--amber)}
.a-item.enc{opacity:.64;background:none}
.btn-reavaliar{background:var(--primary);border:none;border-radius:10px}
.btn-reavaliar:hover{background:#3A50F0;opacity:1}

/* ── Triagem ─────────────────────────────────────────────────── */
.triage-btn.on-verde{background:#059669;color:#ECFDF5;border-color:#059669}
.triage-btn.on-amarelo{background:#D97706;color:#FFFBEB;border-color:#D97706}
.triage-btn.on-laranja{background:#EA580C;color:#FFF7ED;border-color:#EA580C}

/* ── Overlays / Modais ───────────────────────────────────────── */
.overlay,.rx-overlay{background:rgba(10,18,48,.58);backdrop-filter:blur(7px)}
.modal,.rx-modal{border-radius:22px;box-shadow:var(--shadow-lg);border:1px solid var(--border);background:#FFFFFF}
.toast{background:var(--text);border-radius:999px;box-shadow:0 12px 32px rgba(15,27,61,.24)}

/* ── Receituário ─────────────────────────────────────────────── */
.rx-item:hover{background:var(--primary-soft)}
.rx-item.active{background:rgba(64,91,255,.1);color:var(--primary)}
.rx-ta,.rx-name-input{background:var(--surface-soft)}
.rx-btn-del{border-color:rgba(220,38,38,.25);color:var(--red)}
.rx-btn-copy{border-color:rgba(5,150,105,.25);color:var(--green)}
.rx-sidebar{border-right-color:var(--border)}
.rx-head{border-bottom-color:var(--border)}

/* ── Outros ──────────────────────────────────────────────────── */
.btn-green{background:#059669;color:#fff}
.btn-green:hover{background:#047857;opacity:1}
.auto-item{background:var(--gbg);border-color:rgba(5,150,105,.2);color:var(--gtxt)}
.med-in.processed{background:var(--gbg);border-color:rgba(5,150,105,.3);color:var(--gtxt)}

/* ── Animações de entrada ────────────────────────────────────── */
@keyframes saasIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.home-card,.card{animation:none}
.modal,.rx-modal,.gate-box{animation:saasIn var(--transition-slow) ease both}
.form .card:nth-child(2){animation-delay:.04s}
.form .card:nth-child(3){animation-delay:.08s}
.form .card:nth-child(4){animation-delay:.12s}
.form .card:nth-child(5){animation-delay:.16s}
.form .card:nth-child(n+6){animation-delay:.18s}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}
  html:focus-within{scroll-behavior:auto}
}
@media (max-width:980px){
  .layout{display:block}
  .panel{position:relative;top:auto;height:58vh;border-left:none;border-top:1px solid var(--border)}
  .form{padding:16px}
}
@media (max-width:680px){
  .hdr{height:auto;min-height:56px;padding:10px 14px;flex-direction:column;align-items:flex-start;gap:8px}
  .hdr-l,.hdr-r{width:100%;flex-wrap:wrap}
  .home-view{padding:18px 14px}
  .home-greeting{font-size:22px}
  .home-greeting::after{width:36px;height:2px}
  .modal{padding:18px}
  .rx-body{flex-direction:column}
  .rx-sidebar{width:100%;max-height:160px;border-right:none;border-bottom:1px solid var(--border)}
  .card-body{padding:15px}
  .card-hdr{padding:12px 15px}
  .home-card-title::before,.card-title::before{display:none}
  .sum-grid{grid-template-columns:1fr}
}
/* ── Prisma SaaS AI redesign ───────────────────────────────────── */
html,body{
  background:var(--color-bg);
  color:var(--text);font-family:var(--font-sans);
}
#app{min-height:100vh;padding-left:220px;background:transparent}
.app-sidebar{position:fixed;inset:0 auto 0 0;width:220px;z-index:80;display:flex;flex-direction:column;gap:14px;padding:18px 12px;background:var(--surface);border-right:var(--border-muted);box-shadow:none;backdrop-filter:none}
.side-brand{display:flex;align-items:center;gap:10px;min-height:44px;padding:2px 6px 14px}
.side-logo{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:var(--primary);font-weight:700;font-size:18px;background:var(--primary-soft);box-shadow:none;animation:none}
.side-name{font-size:15px;font-weight:700;color:var(--text);letter-spacing:0}.side-sub{font-size:12px;color:var(--muted);margin-top:1px}
.side-nav{display:flex;flex-direction:column;gap:4px}.side-item{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 10px;border-radius:10px;color:var(--text-soft);font-size:var(--font-size-sm);font-weight:500;transition:background var(--transition-base),color var(--transition-base),box-shadow var(--transition-base)}.side-item span{width:20px;text-align:center;color:inherit}.side-item:hover{background:var(--color-bg-soft);transform:none}.side-item.active{background:var(--primary-soft);color:var(--primary);box-shadow:inset 2px 0 0 var(--primary)}
.side-ai-card{margin-top:auto;padding:12px;border-radius:12px;background:var(--color-surface-muted);border:var(--border-muted);box-shadow:none;overflow:hidden}.side-ai-head{display:flex;align-items:center;gap:8px;color:var(--text);font-size:13px}.side-ai-head span{color:var(--primary)}.side-ai-head i{margin-left:auto;width:8px;height:8px;border-radius:999px;background:var(--success);box-shadow:none}.side-ai-card p{font-size:12px;line-height:1.5;color:var(--muted);margin-top:8px}.side-wave{display:none}
.hdr{height:60px;padding:0 20px;background:var(--surface);border-bottom:var(--border-muted);box-shadow:none;backdrop-filter:none}.hdr::before,.hdr::after{display:none}.logo{display:none}.back{min-height:36px;padding:0 12px;display:inline-flex;align-items:center;border:var(--border-subtle);border-radius:10px;background:var(--surface);color:var(--text-soft);box-shadow:none}.hdr-r{gap:8px}.pill{min-height:36px;display:inline-flex;align-items:center;padding:0 12px;background:var(--color-bg-soft);border:var(--border-muted);color:var(--text);border-radius:10px;box-shadow:none}
.btn-sm,.btn-csv,.btn-o,.btn-nav,.ai-cfg-btn,.btn-x{min-height:38px;border:var(--border-subtle);background:var(--surface);color:var(--text-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:background var(--transition-base),border-color var(--transition-base),color var(--transition-base),box-shadow var(--transition-base)}
.btn-sm:hover,.btn-csv:hover,.btn-o:hover,.btn-nav:hover,.ai-cfg-btn:hover,.btn-x:hover{background:var(--color-bg-soft);border-color:var(--color-primary);color:var(--primary);box-shadow:var(--shadow-sm)}
.home-view{max-width:1120px;padding:28px 34px 44px}.home-greeting{font-size:28px;color:var(--text);letter-spacing:-.02em}.home-greeting::before{content:"✦";color:var(--primary);margin-right:10px}.home-greeting::after{display:none}.home-sub{font-size:13.5px;color:var(--primary);margin-top:6px}.home-sub::before{content:"";display:inline-block;width:9px;height:9px;margin-right:8px;border-radius:999px;background:var(--success);box-shadow:0 0 0 4px rgba(25,195,125,.12)}
.modal,.rx-modal,.ai-modal{background:var(--surface);border:var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);backdrop-filter:none}
.home-card,.card{background:var(--surface);border:var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;backdrop-filter:none}
.home-card:hover,.card:hover{transform:none;border-color:var(--border);box-shadow:var(--shadow-sm)}
.form>.card{border-radius:var(--radius-md);border:var(--border-muted);box-shadow:none;background:var(--surface);animation:none}
.form>.card.motion-reveal,.form>.card.motion-reveal.is-visible{opacity:1;transform:none}
.form>.card:hover{transform:none;border-color:var(--border);box-shadow:none}
.home-card::before,.card::before,.home-card::after,.card::after{display:none}
.home-card-hdr,.card-hdr{min-height:52px;padding:var(--space-4) var(--space-5);background:var(--surface);border-bottom:var(--border-subtle)}
.form>.card>.card-hdr{min-height:46px;padding:var(--space-3) var(--space-4);background:var(--surface);border-bottom:var(--border-muted)}
.home-card-title,.card-title{font-size:var(--font-size-lg);line-height:var(--line-tight);color:var(--text);font-weight:var(--font-weight-semibold);letter-spacing:0;text-transform:none;padding:0}
.form>.card>.card-hdr .card-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}
.card-title::before,.home-card-title::before{width:3px;height:22px;border-radius:var(--radius-pill);display:inline-block;background:var(--primary);box-shadow:none;content:"";color:var(--primary);font-size:0;flex-shrink:0}
.form>.card>.card-hdr .card-title::before{width:2px;height:16px}
.card-title::after,.home-card-title::after{display:none}.card-body{padding:var(--space-5)}
.form>.card>.card-body{padding:var(--space-4)}
.form-topbar{display:flex;align-items:center;gap:14px;padding:10px 24px 12px;background:transparent!important;border-bottom:none!important}.form-topbar button{min-height:36px!important;padding:0 12px!important;border:var(--border-subtle)!important;border-radius:10px!important;background:var(--surface)!important;box-shadow:none!important}.form-top-title strong{display:block;font-size:var(--font-size-xl);line-height:var(--line-tight);font-weight:var(--font-weight-semibold);color:var(--text);letter-spacing:0}.form-top-title strong::before{content:"✦";color:var(--primary);margin-right:10px}.form-top-title span{display:block;margin-top:4px;font-size:var(--font-size-xs);color:var(--muted)}.form-top-title span::before{content:none}
.layout{display:grid;grid-template-columns:112px minmax(520px,1fr) minmax(360px,430px);gap:18px;min-height:calc(100vh - 82px);padding:0 20px 24px}.flow-stepper{position:sticky;top:76px;align-self:start;padding:10px 0}.step{position:relative;display:grid;grid-template-columns:22px 1fr;gap:8px;align-items:center;min-height:38px;color:var(--text-soft);font-size:11px;font-weight:500;line-height:1.25}.step:not(:last-child)::after{content:"";position:absolute;left:10px;top:28px;bottom:-10px;border-left:1px solid var(--border-soft)}.step b{width:22px;height:22px;border-radius:999px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--border);color:var(--muted);font-size:11px;font-weight:600;box-shadow:none;z-index:1}.step.on b{background:var(--primary-soft);color:var(--primary);border-color:#C7D2FE;box-shadow:none}.step.on span{color:var(--primary)}
.form{padding:0;gap:18px;overflow:visible}.panel{position:sticky;top:92px;height:calc(100vh - 116px);min-height:0;border-left:none;background:transparent}.note-inner{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:10px;padding:14px;background:var(--surface);border:var(--border-muted);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);backdrop-filter:none;overflow:hidden}.note-head{min-height:0;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:var(--border-muted)}.note-title-block{min-width:0;display:flex;flex-direction:column;gap:3px}.note-title{font-size:var(--font-size-md);color:var(--text);letter-spacing:0;text-transform:none;font-weight:var(--font-weight-semibold)}.note-date{font-size:var(--font-size-xs);color:var(--muted)}.note-doc-actions,.note-action-row,.note-tertiary-actions{display:flex;align-items:center;gap:8px}.note-doc-actions{flex-shrink:0}.note-tool-btn,.note-icon-btn,.note-capture-btn{min-height:34px;border:var(--border-subtle);border-radius:var(--radius-md);background:var(--surface);color:var(--text-soft);box-shadow:none;cursor:pointer;font-family:inherit;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);transition:background var(--transition-base),border-color var(--transition-base),color var(--transition-base)}.note-tool-btn{padding:0 10px}.note-icon-btn{width:34px;padding:0;display:grid;place-items:center;flex-shrink:0}.note-capture-btn{padding:0 12px;flex:1}.note-tool-btn:hover,.note-icon-btn:hover,.note-capture-btn:hover{background:var(--color-bg-soft);border-color:var(--color-primary);color:var(--primary)}.note-editor{min-height:0;display:flex}.note-pre{width:100%;min-height:0;flex:1;overflow:auto;resize:none;padding:16px;border-radius:var(--radius-md);border:var(--border-subtle);background:var(--surface);box-shadow:none;color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;font-size:var(--font-size-sm);line-height:1.85}.note-pre:focus{outline:none;border-color:var(--focus-border);box-shadow:var(--focus-ring)}.note-status{display:flex;flex-direction:column;gap:6px;min-height:0}.note-status-bar{display:flex;align-items:center;gap:8px;min-height:34px;padding:6px 8px;border:var(--border-muted);border-radius:var(--radius-md);background:var(--color-bg-soft);color:var(--muted);font-size:var(--font-size-xs);line-height:var(--line-body);overflow:hidden}.note-status-bar #draft-save-status{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-status-bar #refinar-ind,.note-status-bar .copy-ok{font-size:var(--font-size-xs);color:var(--muted);transition:opacity .3s}.note-status-bar .copy-ok{color:var(--success);min-height:0;text-align:left;font-weight:var(--font-weight-semibold)}#note-edited-banner{align-items:center;gap:8px;padding:8px 10px;border:1px solid #FDE68A;border-radius:var(--radius-md);background:#FFFBEB;color:#92400E;font-size:var(--font-size-xs);line-height:var(--line-body)}#note-edited-banner span{flex:1;min-width:0}#note-edited-banner button{min-height:28px;padding:0 10px;border:1px solid #FDE68A;border-radius:var(--radius-sm);background:transparent;color:#92400E;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer;font-family:inherit;white-space:nowrap}#linked-banner{padding:7px 10px;border-radius:var(--radius-md);background:var(--primary-soft);color:var(--primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-align:center}.note-actions{display:flex;flex-direction:column;gap:8px;min-height:0}.note-action-row{align-items:stretch}.note-ai-action{position:relative;min-width:0;flex:1;display:flex}.note-actions .btn-copy{width:auto;min-width:112px;min-height:40px;box-shadow:none}.note-actions .btn-encerrar{width:100%;min-height:44px;box-shadow:var(--shadow-sm)}.note-tertiary-actions{align-items:stretch}.note-tertiary-actions .btn-pausar{width:auto;flex:1;min-height:34px;margin-top:0}.note-ai-action #refino-undo-btn{align-self:center;margin-left:6px;min-height:32px;padding:0 10px;border:var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-soft);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer;font-family:inherit}
.note-inner .ai-btn-neon{min-height:38px;padding:0 var(--space-4)!important;border-radius:var(--radius-md)!important;font-size:var(--font-size-sm)!important;background:var(--primary-soft)!important;box-shadow:none!important;color:var(--primary)!important}
.btn-p,.btn-novo,.btn-encerrar,.rx-btn-use,.ai-apply-btn{border:none;border-radius:var(--radius-md);background:var(--primary);color:#fff;box-shadow:var(--shadow-sm);transition:background var(--transition-base),box-shadow var(--transition-base),transform var(--transition-fast)}.btn-p:hover,.btn-novo:hover,.btn-encerrar:hover,.rx-btn-use:hover,.ai-apply-btn:hover{transform:none;background:var(--color-primary-hover);box-shadow:var(--shadow-md)}.btn-p:active,.btn-novo:active,.btn-encerrar:active,.rx-btn-use:active{transform:scale(.99)}.btn-copy{min-height:38px;border-radius:var(--radius-md);background:var(--surface);border:var(--border-subtle);color:var(--text);box-shadow:var(--shadow-xs);transition:background var(--transition-base),border-color var(--transition-base),color var(--transition-base),box-shadow var(--transition-base)}.btn-copy:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.btn-encerrar{min-height:42px;font-size:var(--font-size-md);border-radius:var(--radius-md)}
.fi,.queixa-input,.sid-field,.s-ta,.exam-ta,.morb-in,.med-in,.exsub-in,.citem-sub,.rx-name-input,.rx-ta,.ai-result-box,select,input[type="number"],input[type="text"],input[type="email"],input[type="password"]{min-height:44px;border:var(--border-subtle);border-radius:var(--radius-md);background:var(--surface);color:var(--text);box-shadow:none;transition:background var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base),color var(--transition-base)}.form .fi,.form .queixa-input,.form .sid-field,.form .morb-in,.form .med-in,.form .exsub-in,.form .citem-sub,.form input[type="number"],.form input[type="text"]{min-height:40px;border-radius:var(--radius-sm);padding:0 var(--space-3)}.s-ta,.exam-ta,.rx-ta,.ai-result-box{min-height:88px}.form .s-ta,.form .exam-ta{min-height:82px;border-radius:var(--radius-sm);padding:var(--space-3)}#hda-age{width:64px;text-align:center}#custom-alarm-inp{width:160px}#febre-temp{width:100px}#im-outro{width:100%;box-sizing:border-box}.fi:focus,.queixa-input:focus,.sid-field:focus,.s-ta:focus,.exam-ta:focus,.morb-in:focus,.med-in:focus,.exsub-in:focus,.citem-sub:focus,.rx-name-input:focus,.rx-ta:focus,.ai-result-box:focus,select:focus,input[type="number"]:focus,input[type="text"]:focus,input[type="email"]:focus,input[type="password"]:focus{outline:none;border-color:var(--focus-border);box-shadow:var(--focus-ring);transform:none}
.fg label,.ctx-label,.exam-sys-label,.field-label,.exam-actions label,.citem-sub label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:0;color:var(--text-soft);text-transform:none}.field-label{margin-bottom:var(--space-1)}.field-label-danger{color:var(--danger)}.field-label-note,.vital-unit{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);color:var(--muted);text-transform:none}.vital-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-soft)}.exam-actions label,.citem-sub label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;user-select:none}.form input[type="checkbox"]{accent-color:var(--primary);cursor:pointer}.seg{border-radius:var(--radius-md);border-color:var(--border);background:var(--surface)}.seg-btn,.tipo-btn,.destino-btn,.chip,.echip,.cid-chip,.citem{border-radius:var(--radius-sm);border-color:var(--border);background:var(--surface);color:var(--text-soft);box-shadow:none;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.chip,.echip,.cid-chip{min-height:30px;padding:var(--space-1) var(--space-3)}#add-alarm-btn{border-style:dashed;color:var(--muted)}#custom-alarm-input-wrap button{min-height:28px;padding:0 var(--space-2);border:var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer}.tipo-btn,.destino-btn{border-radius:var(--radius-md);min-height:40px}.seg-btn.on,.tipo-btn.on{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:none}.chip.on,.cid-chip.on{background:var(--primary-soft);border-color:#C7D2FE;color:var(--primary);box-shadow:none}.chip.rf.on,.echip.on{background:var(--rbg);color:var(--danger);border-color:#FCA5A5;box-shadow:none}.triage-btn{border-radius:var(--radius-sm);min-height:34px;background:var(--surface);border-color:var(--border);padding:0 var(--space-3)}.triage-btn.on-verde{background:var(--color-success-soft);color:#087A55;border-color:#ABEFC6}.triage-btn.on-amarelo{background:var(--color-warning-soft);color:#936B05;border-color:#FEDF89}.triage-btn.on-laranja{background:var(--color-orange-soft);color:#C2410C;border-color:#FDBA74}.citem{border-radius:var(--radius-md);padding:var(--space-3);box-shadow:none}.citem:hover{transform:none}.citem.on,.destino-btn.ps.on{background:var(--primary-soft);border-color:#C7D2FE;color:var(--primary)}.destino-btn.alta.on{background:var(--color-success-soft);color:#087A55;border-color:#ABEFC6}.destino-btn.intern.on{background:#F5F3FF;color:#5B21B6;border-color:#DDD6FE}.intern-report-btn{width:100%;margin-top:var(--space-3);min-height:40px;border:none;border-radius:var(--radius-md);background:var(--primary);color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;font-family:inherit}
.ai-btn-main,.ai-btn-neon{background:var(--primary)!important;border:none!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-sm)!important}.ai-modal{max-width:760px}.ai-modal-head{padding:18px 22px;border-color:var(--border-soft)}.ai-modal-head-title{font-size:18px;color:var(--text)}.ai-modal-body{padding:22px}.ai-spinner{border-color:rgba(52,75,255,.18);border-top-color:var(--primary)}.overlay,.ai-overlay,.rx-overlay{background:rgba(16,24,40,.42);backdrop-filter:blur(4px)}.toast{background:var(--text);border-radius:var(--radius-pill);box-shadow:var(--shadow-md)}
@media (max-width:1180px){#app{padding-left:0}.app-sidebar{display:none}.layout{grid-template-columns:minmax(0,1fr) minmax(340px,410px);padding:0 18px 24px}.flow-stepper{display:none}}
@media (max-width:860px){.hdr{height:auto;padding:12px 16px;align-items:flex-start}.layout{display:block}.panel{position:relative;top:auto;height:65vh;margin-top:18px}.form-topbar{padding:0 16px 16px}.home-view{padding:18px 16px}}

/* ── Accessibility contrast and readable sizing ─────────────────── */
html,body{font-size:var(--font-size-md);color:var(--text)}
.home-sub,.side-sub,.side-ai-card p,.note-date,.a-meta,.a-demog,.a-btime,.morb-hint,.med-hint,.gate-sub,.copy-ok{color:var(--muted)}
.side-item,.step,.pill,.btn-sm,.btn-csv,.btn-o,.btn-nav,.ai-cfg-btn,.chip,.echip,.cid-chip,.seg-btn,.tipo-btn,.destino-btn,.citem-label{font-size:var(--font-size-sm)}
.fg label,.ctx-label,.exam-sys-label,.note-title,.rx-sidebar-label{
  color:var(--text-soft);
  font-size:var(--font-size-xs);
  font-weight:var(--font-weight-semibold);
}
.home-card-title,.card-title{
  font-size:var(--font-size-lg);
  color:var(--text);
}
.home-greeting{font-size:25px;color:var(--text)}
.form-top-title strong{font-size:var(--font-size-xl);line-height:var(--line-tight);font-weight:var(--font-weight-semibold);letter-spacing:0;color:var(--text)}
.fi,.queixa-input,.sid-field,.morb-in,.med-in,.exsub-in,.citem-sub,.rx-name-input,input[type="number"],input[type="text"],input[type="email"],input[type="password"]{
  min-height:44px;
  font-size:var(--font-size-md);
  color:var(--text);
  border-color:var(--border);
}
.s-ta,.exam-ta,.rx-ta,.ai-result-box{
  font-size:var(--font-size-md);
  line-height:var(--line-relaxed);
  color:var(--text);
  border-color:var(--border);
}
.note-pre{
  font-size:var(--font-size-sm);
  line-height:1.85;
  color:var(--text);
  border-color:var(--border);
  background:#FFFFFF;
}
.chip,.echip,.cid-chip,.seg-btn,.tipo-btn,.destino-btn,.citem{
  color:var(--text-soft);
  border-color:var(--border);
}
.chip:hover,.echip:hover,.cid-chip:hover,.tipo-btn:hover:not(.on),.destino-btn:hover:not(.on),.citem:hover{
  color:var(--text);
  border-color:#AAB8D0;
}
.a-name{font-size:13.5px;color:var(--text)}
.a-sid{font-size:11.5px;color:var(--text-soft);opacity:1}
.a-val{font-size:12.5px}
.hstat,.sum-l,.sum-val-l{color:var(--text-soft)}
.btn-p,.btn-novo,.btn-copy,.btn-encerrar,.ai-btn-main,.ai-btn-neon{
  font-size:var(--font-size-md);
  font-weight:var(--font-weight-semibold);
}
.btn-copy{color:var(--text)}
.side-name{font-size:15.5px;color:var(--text)}
.side-item{color:var(--text-soft)}
.side-item.active{color:var(--primary)}
.modal-title,.rx-head-title,.ai-modal-head-title{font-size:16px;color:var(--text)}
.empty-st{font-size:13px;color:var(--muted)}
/* ═══════════════════════════════════════════════════════════════
   PRISMA FINAL AUTHORITY — Darker bg, Resize, Collapse, Steps,
   Mobile nav, Skeleton, Icon system, Clean decorations
═══════════════════════════════════════════════════════════════ */

/* Canonical application background */
html,body{
  background:var(--color-bg);
}
html.dark body{background:var(--color-bg)}
html.dark{
  --color-bg:#090B11;
  --color-bg-soft:#111320;
  --color-surface:#181B2A;
  --color-surface-muted:#1C1F30;
  --color-surface-elevated:#202437;
  --color-text:#E2E8F8;
  --color-text-soft:#CBD5E1;
  --color-muted:#94A3B8;
  --color-border:rgba(255,255,255,.12);
  --color-border-soft:rgba(255,255,255,.08);
  --bg:var(--color-bg);
  --surface:var(--color-surface);
  --surface-soft:var(--color-surface-muted);
  --text:var(--color-text);
  --text-soft:var(--color-text-soft);
  --muted:var(--color-muted);
  --border:var(--color-border);
  --border-soft:var(--color-border-soft);
  --focus-ring:0 0 0 3px rgba(143,160,255,.24);
  --focus-border:#8FA0FF;
}

/* Clean card-title accent: narrow bar instead of ✦ box */
.card-title::before,.home-card-title::before{
  content:"";
  width:3px;height:22px;border-radius:999px;
  background:var(--primary);
  display:inline-block;margin-right:12px;vertical-align:-5px;flex-shrink:0;
  box-shadow:none;
}
/* Remove stray decorative ✦ injections from older layers */
.home-greeting::before,.form-top-title strong::before,.home-sub::before{content:none!important}
.home-sub{color:var(--muted)!important}
/* sidebar nav: SVG icons replace span text-icons */
.side-item svg{
  width:19px;height:19px;flex-shrink:0;
  stroke:var(--muted);stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;
  fill:none;transition:stroke var(--transition-fast);
}
.side-item.active svg,.side-item:hover svg{stroke:var(--primary)}
.side-item-label{white-space:nowrap;overflow:hidden;transition:opacity var(--transition-base),width var(--transition-base)}

/* ── Resize handles ─────────────────────────────────────────── */
.sb-resize{
  position:absolute;top:0;right:0;bottom:0;width:5px;
  background:transparent;transition:background var(--transition-fast);
  z-index:92;cursor:col-resize;
}
.sb-resize:hover,.sb-resize.dragging{background:rgba(64,91,255,.22)}
html.dark .sb-resize:hover,html.dark .sb-resize.dragging{background:rgba(96,112,255,.28)}

/* ── Sidebar collapse ───────────────────────────────────────── */
.app-sidebar{transition:width var(--transition-base),box-shadow var(--transition-base);overflow:hidden}
#app{transition:padding-left var(--transition-base)}
.app-sidebar.sb-collapsed{width:66px!important}
/* modo auto-recolhido na tela do prontuário: espiada flutua sobre o conteúdo */
.app-sidebar.sb-auto{z-index:90}
.app-sidebar.sb-auto .sb-collapse-btn{display:none}
.app-sidebar.sb-peek{box-shadow:6px 0 32px rgba(15,27,61,.14)}
#app.sb-collapsed{padding-left:66px!important}
.app-sidebar.sb-collapsed .side-item-label,
.app-sidebar.sb-collapsed .side-name,
.app-sidebar.sb-collapsed .side-sub,
.app-sidebar.sb-collapsed .side-byline,
.app-sidebar.sb-collapsed .side-ai-card,
.app-sidebar.sb-collapsed .sb-collapse-label{
  opacity:0;width:0;pointer-events:none;
}
.app-sidebar.sb-collapsed{padding:18px 8px}
.app-sidebar.sb-collapsed .side-brand{justify-content:center;padding:4px 0 18px}
.app-sidebar.sb-collapsed .side-logo{width:40px;height:40px;border-radius:14px}
.app-sidebar.sb-collapsed .side-nav{align-items:center;gap:10px}
.app-sidebar.sb-collapsed .side-item{width:42px;min-height:42px;justify-content:center;padding:0;gap:0;border-radius:14px}
.app-sidebar.sb-collapsed .side-item svg{width:20px;height:20px}
.app-sidebar.sb-collapsed .side-item.active{background:var(--primary-soft);box-shadow:none}
.app-sidebar.sb-collapsed .sb-collapse-btn{width:42px;min-height:42px;justify-content:center;padding:0;margin:0 auto;border-radius:14px}
.app-sidebar.sb-collapsed .sb-collapse-btn svg{transform:rotate(180deg)}
.sb-collapse-btn{
  display:flex;align-items:center;gap:8px;
  padding:9px 14px;border:none;background:none;cursor:pointer;
  font-size:12px;font-weight:600;color:var(--muted);font-family:inherit;
  border-radius:12px;width:100%;flex-shrink:0;
  transition:background var(--transition-fast),color var(--transition-fast);
}
.sb-collapse-btn:hover{background:var(--primary-soft);color:var(--primary)}
.sb-collapse-btn svg{
  width:15px;height:15px;stroke:currentColor;fill:none;
  stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;
  transition:transform var(--transition-base);
}
html.dark .sb-collapse-btn:hover{background:rgba(64,91,255,.18);color:#8FA0FF}

/* ── Resize handles (sidebar only) ─────────────────────────── */

/* ── Flow stepper: scroll tracking + click navigation ───────── */
.flow-stepper .step{opacity:.58;transition:opacity var(--transition-base),background var(--transition-base)}
.flow-stepper .step:hover{background:var(--color-bg-soft);border-radius:10px;opacity:.82!important}
.flow-stepper .step.step-active{opacity:1}
.flow-stepper .step.step-active span{color:var(--primary)!important;font-weight:600}
.flow-stepper .step.step-active b{
  background:var(--primary-soft)!important;
  color:var(--primary)!important;border-color:#C7D2FE!important;
  box-shadow:none!important;
}
.flow-stepper .step.step-done{opacity:.72}
.flow-stepper .step.step-done b{
  background:var(--surface)!important;
  color:var(--primary)!important;border-color:#C7D2FE!important;
  box-shadow:none!important;
  font-size:0;
}
.flow-stepper .step.step-done b::before{content:"✓";font-size:11px}
.flow-stepper .step.step-done span{color:var(--muted)!important}
.flow-stepper .step.step-done:not(:last-child)::after{
  border-left-color:#C7D2FE!important;
  border-left-style:solid!important;
}

/* Predictable shell grid */
.layout{grid-template-columns:104px minmax(0,1fr) minmax(500px,620px)!important}

/* ── Skeleton loading ───────────────────────────────────────── */
@keyframes skelPulse{0%,100%{opacity:.28}50%{opacity:.55}}
.skel-row{
  height:64px;border-radius:12px;margin:2px 0;
  background:var(--border-soft,#E2EAF5);
  animation:skelPulse 1.6s ease infinite;
}
.skel-row:nth-child(2){animation-delay:.22s;opacity:.8}
.skel-row:nth-child(3){animation-delay:.44s;opacity:.65}
html.dark .skel-row{background:rgba(255,255,255,.07)}

/* ── Mobile bottom nav ──────────────────────────────────────── */
.bottom-nav{
  display:none;position:fixed;bottom:0;left:0;right:0;
  height:58px;padding:0 6px;
  background:var(--surface);
  border-top:var(--border-muted);
  backdrop-filter:none;z-index:85;
  align-items:center;justify-content:space-around;
  box-shadow:var(--shadow-xs);
}
.bnav-item{
  flex:1;display:flex;flex-direction:column;align-items:center;
  gap:3px;padding:6px 4px;
  border:none;background:none;cursor:pointer;font-family:inherit;
  font-size:10px;font-weight:600;color:var(--muted);
  transition:background var(--transition-base),color var(--transition-base);border-radius:10px;
}
.bnav-item svg{
  width:20px;height:20px;stroke:currentColor;fill:none;
  stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;
}
.bnav-item.active{color:var(--primary);background:var(--primary-soft)}
@media(max-width:1180px){
  .bottom-nav{display:flex}
  body{padding-bottom:58px}
}
html.dark .bottom-nav{background:rgba(14,16,24,.97);border-top-color:rgba(255,255,255,.08)}

/* Gate logo with SVG */
.gate-logo-wrap{
  display:flex;align-items:center;gap:10px;margin-bottom:6px;
}
.gate-logo-icon{
  width:36px;height:36px;border-radius:11px;flex-shrink:0;
  background:linear-gradient(135deg,var(--primary),var(--primary-2));
  display:grid;place-items:center;
  box-shadow:0 8px 20px rgba(64,91,255,.22);
  font-size:18px;color:#fff;line-height:1;
}
.gate-logo-text{font-size:13px;font-weight:800;color:var(--text);letter-spacing:.02em}
.gate-logo-text span{font-weight:500;color:var(--muted);font-size:11px;display:block;margin-top:1px;letter-spacing:.01em}

/* ── FINAL AUTHORITY ───────────────────────────────────────── */
.hdr{height:60px!important;padding:0 20px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;background:var(--surface)!important;border-bottom:var(--border-muted)!important;backdrop-filter:none!important;}
html.dark .hdr{background:rgba(14,16,26,.92)!important;border-bottom-color:rgba(255,255,255,.07)!important;}
html.dark .hdr .logo{color:rgba(255,255,255,.9)!important;}
html.dark .hdr .logo span{color:rgba(255,255,255,.5)!important;}
html.dark .hdr .logo .byline{color:rgba(255,255,255,.32)!important;}
html.dark .hdr .back{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.12)!important;color:rgba(255,255,255,.6)!important;}
html.dark .hdr .pill{background:rgba(64,91,255,.22)!important;border-color:rgba(96,112,255,.35)!important;color:#A8B8FF!important;}
html.dark .btn-sm,html.dark .btn-csv,html.dark .btn-o,html.dark .btn-nav{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.12)!important;color:rgba(255,255,255,.75)!important;}
html.dark .btn-sm:hover,html.dark .btn-csv:hover,html.dark .btn-o:hover,html.dark .btn-nav:hover{background:rgba(96,112,255,.2)!important;border-color:rgba(96,112,255,.35)!important;color:#A0B0FF!important;}
html.dark .btn-sm.danger{background:rgba(239,68,68,.12)!important;border-color:rgba(239,68,68,.25)!important;color:#F87171!important;}
.logo{display:block!important;color:var(--text)!important;font-size:15px!important;font-weight:800!important;}
.logo span{color:var(--text-soft)!important;}
.logo .byline{color:var(--muted)!important;font-size:11px!important;font-weight:600!important;margin-left:8px!important;}
.layout{display:grid!important;grid-template-columns:104px minmax(0,1fr) minmax(500px,620px)!important;gap:18px!important;padding:0 20px 24px!important;min-height:calc(100vh - 96px)!important;}
.form{min-width:0!important;padding:0!important;gap:18px!important;overflow:visible!important;}
.panel{min-width:0!important;position:sticky!important;top:76px!important;height:calc(100vh - 116px)!important;border-left:none!important;background:transparent!important;}
.form-topbar{padding:10px 20px 12px!important;background:transparent!important;border-bottom:none!important;}
.home-view{max-width:980px!important;padding:28px 24px 44px!important;}
.card,.home-card,.note-inner{max-width:100%!important;}
.card-body{overflow-x:hidden!important;}
.hdr-r{min-width:0!important;flex-wrap:wrap!important;justify-content:flex-end!important;}
.pill{max-width:240px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.card-title{font-size:var(--font-size-md);color:var(--text);font-weight:var(--font-weight-semibold);}
.home-card-title{font-size:var(--font-size-lg);color:var(--text);font-weight:var(--font-weight-semibold);}
.note-pre{font-size:14px!important;line-height:1.9!important;color:var(--text)!important;background:#fff!important;}
.fi,.queixa-input,.sid-field,.morb-in,.med-in,.exsub-in,.citem-sub,.rx-name-input,input[type="number"],input[type="text"],input[type="email"],input[type="password"]{font-size:var(--font-size-md)!important;min-height:40px!important;color:var(--text)!important;}
/* Vital sign inputs: compact, sized to content, not global input rules */
#sv-pas,#sv-pad,#sv-fc,#sv-spo2{font-size:14px!important;min-height:44px!important;width:clamp(56px,5.5vw,68px)!important;padding:0 8px!important;text-align:center!important;}
#sv-temp{font-size:14px!important;min-height:44px!important;width:clamp(66px,6.5vw,80px)!important;padding:0 8px!important;text-align:center!important;}
.chip,.echip,.cid-chip,.seg-btn,.tipo-btn,.destino-btn,.citem-label{font-size:var(--font-size-sm)!important;}
.seg-btn.on,.tipo-btn.on{color:#fff!important;}
.chip.rf.on,.echip.on{color:var(--danger)!important;}
.destino-btn.ps.on{color:var(--primary)!important;}
.destino-btn.alta.on{color:#087A55!important;}
.destino-btn.intern.on{color:#5B21B6!important;}
/* Fix sidebar label truncation caused by legacy span width rule */
.app-sidebar:not(.sb-collapsed) .side-item .side-item-label{width:auto;flex:1;text-align:left;color:inherit;white-space:nowrap;overflow:hidden;}
/* ── Sidebar cosmic neon right-edge glow ──────────────────── */
.side-ai-head i{animation:none!important;}
.app-sidebar{
  animation:none!important;
}
/* ── Receituário button ────────────────────────────────────── */
#rx-open-btn-conduta{
  width:100%!important;min-height:48px!important;font-size:14px!important;
  font-weight:700!important;border-radius:14px!important;
  justify-content:center!important;gap:9px!important;margin-top:10px!important;
  border:1.5px dashed var(--border)!important;background:rgba(255,255,255,.6)!important;
  color:var(--text-soft)!important;transition:background var(--transition-base),border-color var(--transition-base),color var(--transition-base);
}
#rx-open-btn-conduta:hover{
  background:#fff!important;border-color:rgba(5,150,105,.4)!important;
  color:var(--green)!important;transform:none!important;
}
#rx-open-btn-conduta.alta-on{
  border:1.5px solid rgba(5,150,105,.55)!important;border-style:solid!important;
  background:var(--gbg,#ECFDF5)!important;color:var(--gtxt,#059669)!important;
  font-weight:800!important;
  animation:none!important;
}
html.dark #rx-open-btn-conduta{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.18)!important;color:rgba(255,255,255,.55)!important;}
html.dark #rx-open-btn-conduta.alta-on{background:rgba(5,150,105,.15)!important;border-color:rgba(5,150,105,.45)!important;color:#34D399!important;}
/* ── Refinar button — secondary document action (panel only) ─ */
.note-inner .ai-btn-neon{
  font-size:var(--font-size-sm)!important;font-weight:var(--font-weight-semibold)!important;
  padding:0 16px!important;min-height:42px!important;width:100%!important;
  border-radius:var(--radius-md)!important;justify-content:center!important;
  background:var(--primary-soft)!important;
  box-shadow:none!important;
  transition:background var(--transition-base),color var(--transition-base),border-color var(--transition-base);
}
.note-inner .ai-btn-neon:hover:not(:disabled){
  box-shadow:none!important;
  transform:none!important;
}
/* ── Note panel actions: stable clinical command stack ─ */
.note-actions{
  gap:8px;
}
.note-actions .btn-encerrar,
.note-actions .btn-copy,
.note-inner .ai-btn-neon,
.note-capture-btn,
.note-tertiary-actions .btn-pausar{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--radius-md);
  font-size:var(--font-size-sm);
  font-weight:var(--font-weight-semibold);
  line-height:1.2;
  text-align:center;
}
.note-actions .btn-encerrar{
  min-height:44px;
  box-shadow:none;
}
.note-action-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(136px,.36fr);
  gap:8px;
  align-items:stretch;
}
.refino-only{display:none!important}
.note-action-row.refino-disabled{grid-template-columns:1fr}
.note-ai-action{
  display:flex;
  min-width:0;
}
.note-actions .btn-copy{
  width:100%;
  min-width:0;
  box-shadow:none;
}
.note-tertiary-actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) 42px minmax(118px,.48fr);
  gap:8px;
  align-items:stretch;
}
.note-tertiary-actions .note-icon-btn{
  width:42px;
  min-height:42px;
}
.note-tertiary-actions .btn-pausar{
  width:100%;
  min-width:0;
  color:var(--muted);
}
/* ── Card header: título à esquerda, ações agrupadas à direita ─ */
.form>.card>.card-hdr .card-title{margin-right:auto}
.form>.card>.card-hdr .sec-copy-btn{margin-left:0}
/* ── Home dashboard sizing fixes ──────────────────────────── */
.home-stats{align-items:center!important;gap:8px!important;}
.hstat{font-size:var(--font-size-sm)!important;font-weight:var(--font-weight-semibold)!important;padding:0 14px!important;min-height:38px!important;display:inline-flex!important;align-items:center!important;gap:5px!important;border-radius:var(--radius-md)!important;border:1px solid var(--border)!important;}
.hstat span{font-size:var(--font-size-sm)!important;font-weight:var(--font-weight-regular)!important;}
.hub-metrics{gap:8px!important;margin-bottom:14px!important;}
.hub-chip{font-size:var(--font-size-sm)!important;font-weight:var(--font-weight-semibold)!important;padding:0 14px!important;min-height:38px!important;display:inline-flex!important;align-items:center!important;gap:5px!important;border-radius:var(--radius-md)!important;}
.hub-chip span{font-size:var(--font-size-sm)!important;font-weight:var(--font-weight-regular)!important;}
.btn-reavaliar{font-size:var(--font-size-sm)!important;font-weight:var(--font-weight-semibold)!important;padding:0 18px!important;min-height:36px!important;display:inline-flex!important;align-items:center!important;border-radius:10px!important;white-space:nowrap!important;}
.btn-encerrar-sem,.btn-reabrir{font-size:var(--font-size-sm)!important;font-weight:var(--font-weight-semibold)!important;padding:0 16px!important;min-height:36px!important;display:inline-flex!important;align-items:center!important;border-radius:10px!important;white-space:nowrap!important;}
.badge-pendente{font-size:var(--font-size-xs)!important;font-weight:var(--font-weight-semibold)!important;padding:6px 12px!important;border-radius:10px!important;line-height:1.35!important;}
.a-item{min-height:64px!important;align-items:center!important;}
@media (max-width:980px){.layout{display:block!important;padding:0 16px 24px!important}.panel{position:relative!important;top:auto!important;height:auto!important;min-height:0;margin-top:18px!important}.form-topbar{padding:12px 16px 16px!important}.note-inner{min-height:min(68vh,680px);grid-template-rows:auto minmax(180px,1fr) auto auto}.note-status-bar{flex-wrap:wrap;overflow:visible}.note-action-row,.note-tertiary-actions{flex-wrap:wrap}.note-ai-action,.note-actions .btn-copy,.note-capture-btn,.note-tertiary-actions .btn-pausar{flex:1 1 180px}}
@media (max-width:680px){.hdr{height:auto!important;padding:12px 14px!important;align-items:flex-start!important;gap:10px!important}.hdr-l,.hdr-r{width:100%!important}.logo .byline{display:block!important;margin-left:0!important;margin-top:2px!important}.note-inner{padding:12px;border-radius:var(--radius-md);grid-template-rows:auto minmax(80px,1fr) max-content max-content}.note-head{align-items:stretch;flex-direction:column}.note-doc-actions{width:100%;justify-content:space-between}.note-actions .btn-encerrar{order:0}.note-action-row,.note-tertiary-actions{display:grid;grid-template-columns:1fr}.note-actions .btn-copy,.note-capture-btn,.note-tertiary-actions .btn-pausar{width:100%;min-width:0}.note-status-bar{display:grid;grid-template-columns:1fr;align-items:stretch;gap:6px;min-height:34px}.note-status-bar #draft-save-status{white-space:normal}#atend-clock{width:100%;margin-left:0;justify-content:space-between;flex-wrap:wrap}}
/* ── Dark mode comprehensive overrides ────────────────────── */
html.dark .card,html.dark .home-card{background:var(--surface)!important;border-color:var(--border-soft)!important;}
html.dark .home-card-hdr,html.dark .card-hdr{background:var(--surface)!important;border-bottom-color:var(--border-soft)!important;}
html.dark .modal,html.dark .rx-modal,html.dark .ai-modal{background:var(--surface-elevated)!important;border-color:var(--border-soft)!important;}
html.dark .note-inner{background:rgba(18,21,38,.94)!important;border-color:rgba(255,255,255,.07)!important;}
html.dark .note-pre{background:rgba(14,16,28,.95)!important;border-color:rgba(255,255,255,.08)!important;color:rgba(255,255,255,.75)!important;}
html.dark .side-ai-card{background:rgba(22,25,42,.9)!important;border-color:rgba(255,255,255,.07)!important;}
html.dark .side-item:hover{background:rgba(255,255,255,.07)!important;}
html.dark .side-item.active{background:rgba(96,112,255,.16)!important;color:var(--primary)!important;}
/* chips, toggles, segmented buttons */
html.dark .chip,html.dark .echip,html.dark .cid-chip{background:rgba(255,255,255,.06)!important;border-color:var(--border)!important;color:var(--text-soft)!important;}
html.dark .chip.on,html.dark .cid-chip.on{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important;}
html.dark .chip.rf.on,html.dark .echip.on{background:rgba(239,68,68,.18)!important;color:#FCA5A5!important;border-color:rgba(239,68,68,.3)!important;}
html.dark .seg-btn,html.dark .tipo-btn,html.dark .destino-btn{background:rgba(255,255,255,.06)!important;border-color:var(--border)!important;color:var(--text-soft)!important;}
html.dark .seg-btn.on,html.dark .tipo-btn.on{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important;}
html.dark .citem{background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.1)!important;}
html.dark .citem.on{background:rgba(64,91,255,.18)!important;border-color:rgba(96,112,255,.35)!important;color:var(--primary)!important;}
html.dark .destino-btn.ps.on{background:rgba(64,91,255,.18)!important;border-color:rgba(96,112,255,.35)!important;color:#A8B8FF!important;}
html.dark .destino-btn.alta.on{background:rgba(5,150,105,.18)!important;border-color:rgba(52,211,153,.35)!important;color:#34D399!important;}
html.dark .destino-btn.intern.on{background:rgba(109,40,217,.18)!important;border-color:rgba(167,139,250,.35)!important;color:#C4B5FD!important;}
/* triage buttons */
html.dark .triage-btn{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.12)!important;color:rgba(255,255,255,.62)!important;}
html.dark .triage-btn.on-verde{background:rgba(5,150,105,.18)!important;color:#34D399!important;border-color:rgba(52,211,153,.35)!important;}
html.dark .triage-btn.on-amarelo{background:rgba(180,130,0,.2)!important;color:#FCD34D!important;border-color:rgba(253,211,77,.3)!important;}
html.dark .triage-btn.on-laranja{background:rgba(194,65,12,.2)!important;color:#FB923C!important;border-color:rgba(251,146,60,.3)!important;}
/* form inputs & textareas */
html.dark .fi,html.dark .queixa-input,html.dark .sid-field,html.dark .s-ta,html.dark .exam-ta,html.dark .morb-in,html.dark .med-in,html.dark .exsub-in,html.dark .citem-sub,html.dark .rx-name-input,html.dark .rx-ta,html.dark .ai-result-box,html.dark input[type="number"],html.dark input[type="text"],html.dark input[type="email"],html.dark input[type="password"]{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.12)!important;color:rgba(255,255,255,.82)!important;}
html.dark .fi::placeholder,html.dark .s-ta::placeholder,html.dark .exam-ta::placeholder,html.dark input::placeholder{color:rgba(255,255,255,.28)!important;}
/* step circles */
html.dark .step b{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.14)!important;color:rgba(255,255,255,.5)!important;}
html.dark .step:not(:last-child)::after{border-left-color:rgba(255,255,255,.1)!important;}
/* topbar buttons */
html.dark .form-topbar button{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.12)!important;color:rgba(255,255,255,.65)!important;}
/* btn-copy */
html.dark .btn-copy{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.12)!important;color:rgba(255,255,255,.7)!important;}
html.dark .btn-copy:hover{background:rgba(64,91,255,.18)!important;color:#A8B8FF!important;border-color:rgba(96,112,255,.3)!important;}
/* seg container */
html.dark .seg{background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.1)!important;}
/* home dashboard dark */
html.dark .hstat{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.1)!important;color:rgba(255,255,255,.7)!important;}
html.dark .hub-chip{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.1)!important;color:rgba(255,255,255,.7)!important;}
html.dark .pill{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.12)!important;color:rgba(255,255,255,.75)!important;}
html.dark .btn-reavaliar,html.dark .btn-encerrar-sem,html.dark .btn-reabrir{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.12)!important;color:rgba(255,255,255,.7)!important;}
/* ── Header logo gradient ─────────────────────────────────── */
.logo-title{
  font-weight:800!important;
  background:linear-gradient(100deg,#6C7FFF 0%,#A78BFA 25%,#00D4AA 50%,#A78BFA 75%,#6C7FFF 100%)!important;
  background-size:200% auto!important;
  -webkit-background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  background-clip:text!important;
  animation:logoGradientFlow 6s linear infinite;
  will-change:background-position;
}
@keyframes logoGradientFlow{to{background-position:200% center}}
/* Exceção: o brilho do logo é só cor (sem movimento de layout/flash),
   então mantemos o fluxo mesmo com "reduzir movimento" ligado. */
@media (prefers-reduced-motion:reduce){
  .logo-title{animation:logoGradientFlow 6s linear infinite!important;animation-duration:6s!important}
}
/* ── Gate icon cosmic pulse ───────────────────────────────── */
.gate-logo-icon{animation:none!important;}

/* ── Atend clock widget ───────────────────────────────────── */
#atend-clock{
  margin-left:auto;
  display:flex;align-items:center;gap:8px;min-width:max-content;
  background:transparent;border:none;border-radius:0;padding:0;
  box-shadow:none;backdrop-filter:none;
  font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text);
  transition:opacity var(--transition-base);
}
#atend-clock.hidden{display:none;opacity:0;pointer-events:none}
#atend-clock .clk-row{display:flex;align-items:center;gap:8px}
#btn-salvar-rascunho{
  min-height:28px;background:var(--surface);border:var(--border-subtle);color:var(--primary);
  border-radius:var(--radius-sm);padding:0 9px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);
  cursor:pointer;font-family:inherit;letter-spacing:.02em;
  transition:background var(--transition-fast),color var(--transition-fast);
}
#btn-salvar-rascunho:hover{background:var(--primary);color:#fff}
#btn-salvar-rascunho.saved{background:rgba(5,150,105,.12);color:#059669}
html.dark #btn-salvar-rascunho{background:rgba(100,120,255,.15);color:#8899ff}
html.dark #btn-salvar-rascunho:hover{background:var(--primary);color:#fff}
#draft-banner{
  display:none;background:var(--pl,rgba(64,91,255,.06));
  border:1px solid rgba(64,91,255,.2);border-radius:10px;
  padding:8px 12px;font-size:11px;color:var(--primary);
  display:none;align-items:center;gap:8px;flex-wrap:wrap;
  margin-bottom:4px;
}
#draft-banner strong{font-weight:700}
#draft-banner button{
  background:var(--primary);color:#fff;border:none;border-radius:8px;
  padding:3px 10px;font-size:11px;font-weight:700;cursor:pointer;
  font-family:inherit;
}
#draft-banner .btn-discard{
  background:none;color:var(--muted);border:1px solid var(--border);
}
#atend-clock .clk-dot{
  width:8px;height:8px;border-radius:50%;background:var(--primary);
  flex-shrink:0;animation:none;
}
#atend-clock .clk-label{font-size:10px;font-weight:600;color:var(--muted);margin-right:1px}
#atend-clock .clk-time{font-variant-numeric:tabular-nums;letter-spacing:.02em}
#atend-clock .clk-triage{
  font-size:10px;font-weight:700;padding:2px 7px;border-radius:8px;
  margin-left:2px;background:rgba(64,91,255,.1);color:var(--primary);
}
#atend-clock .clk-triage.verde{background:rgba(5,150,105,.1);color:#087A55}
#atend-clock .clk-triage.amarelo{background:rgba(202,138,4,.12);color:#92400E}
#atend-clock .clk-triage.laranja{background:rgba(234,88,12,.12);color:#9A3412}
#atend-clock .clk-triage.vermelho{background:rgba(220,38,38,.12);color:#991B1B}
@keyframes clkPulse{0%,100%{opacity:1}50%{opacity:.3}}
html.dark #atend-clock{background:transparent;border-color:transparent;color:rgba(255,255,255,.9)}
.btn-pausar{width:100%;padding:5px;border-radius:9px;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;transition:border-color .18s,color .18s;margin-top:0}
.btn-pausar:hover{border-color:var(--amber,#f59e0b);color:var(--amber,#f59e0b)}
button:focus-visible,
[role="button"]:focus-visible,
a:focus-visible,
.side-item:focus-visible,
.flow-stepper .step:focus-visible,
.bnav-item:focus-visible{
  outline:none;
  box-shadow:var(--focus-ring);
}
.note-actions .btn-encerrar:focus-visible,
.note-actions .btn-copy:focus-visible,
.note-inner .ai-btn-neon:focus-visible{
  box-shadow:var(--focus-ring);
}
.btn-sm:focus-visible,
.btn-csv:focus-visible,
.btn-o:focus-visible,
.btn-nav:focus-visible,
.btn-x:focus-visible,
.note-tool-btn:focus-visible,
.note-icon-btn:focus-visible,
.note-capture-btn:focus-visible,
.btn-copy:focus-visible,
.btn-encerrar:focus-visible,
.ai-btn-neon:focus-visible,
.btn-pausar:focus-visible{
  border-color:var(--focus-border);
}
.chip:focus-visible,.echip:focus-visible,.cid-chip:focus-visible,.evol-chip:focus-visible,
.seg-btn:focus-visible,.tipo-btn:focus-visible,.destino-btn:focus-visible,.triage-btn:focus-visible{
  outline:none;
  box-shadow:var(--focus-ring);
}
.btn-continuar{background:var(--amber,#f59e0b);color:#fff;border:none;padding:3px 10px;border-radius:10px;font-size:10px;font-weight:700;cursor:pointer;white-space:nowrap}
.btn-continuar:hover{opacity:.82}
.rascunho-lbl{background:rgba(245,158,11,.12);color:#92400e;padding:3px 8px;border-radius:10px;font-size:11px;font-weight:700;white-space:nowrap}
html.dark .rascunho-lbl{background:rgba(245,158,11,.18);color:#fbbf24}
.a-item.is-draft{opacity:.92}
.echip-preset{border-color:var(--primary)!important;color:var(--primary)!important;font-weight:700}
.echip-preset.on{background:linear-gradient(135deg,var(--primary),var(--primary-2))!important;color:#fff!important;border-color:transparent!important}
.evol-lbl{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.evol-chips{display:flex;flex-wrap:wrap;gap:6px}
.evol-chip{border:1px solid var(--border);background:#fff;color:var(--text-soft);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:border-color .15s,background .15s,color .15s}
.evol-chip:hover{border-color:#AAB8D0}
.evol-chip.on{background:linear-gradient(135deg,var(--primary),var(--primary-2));border-color:transparent;color:#fff}
html.dark .evol-chip{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12);color:var(--text)}
@media (max-width:880px){#evolucao-view .home-view>div[style*="grid"]{grid-template-columns:1fr!important}}

/* ── Output mestre (Prontuário com IA): janela ajustável pelo médico ─────────
   O textarea do prontuário nunca fica espremido (piso de 220px) e pode ser
   redimensionado arrastando a alça logo abaixo dele — a altura escolhida é
   lembrada por navegador (localStorage), e duplo-clique volta ao padrão.
   Em telas baixas o card rola internamente em vez de comprimir o texto.
   A altura da área de edição vira uma variável --note-h: sem ela, o textarea
   preenche o espaço (minmax 220px..1fr); com ela, assume a altura arrastada. */
.note-inner{grid-template-rows:auto var(--note-h,minmax(220px,1fr)) auto auto auto;overflow-y:auto}
.note-pre{resize:none;min-height:0}
.note-resize-handle{height:16px;display:flex;align-items:center;justify-content:center;cursor:row-resize;touch-action:none;flex-shrink:0;-webkit-user-select:none;user-select:none;margin-top:-4px}
.note-resize-handle::before{content:"";width:46px;height:4px;border-radius:999px;background:var(--border);transition:background .15s,width .15s}
.note-resize-handle:hover::before,.note-resize-handle.dragging::before{background:var(--primary);width:66px}
html.dark .note-resize-handle::before{background:rgba(255,255,255,.2)}
html.dark .note-resize-handle:hover::before,html.dark .note-resize-handle.dragging::before{background:var(--primary)}
