.dental-findings[data-v-ffc4cd10]{display:flex;flex-direction:column;gap:.65rem;min-height:0;padding:.75rem 1.1rem .9rem;border-top:1px solid rgba(216,224,230,.95);background:linear-gradient(180deg,rgba(5,125,205,.03),transparent 40%),#ffffffe0}.dental-findings__header[data-v-ffc4cd10]{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.dental-findings__eyebrow[data-v-ffc4cd10]{margin:0;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#5b7388}.dental-findings__title[data-v-ffc4cd10]{margin:.1rem 0 0;font-family:var(--font-display, "Montserrat", "Avenir Next", "Segoe UI", sans-serif);font-size:.95rem;font-weight:800;color:#1e3d58}.dental-findings__tooth[data-v-ffc4cd10]{font-size:.78rem;font-weight:700;color:#3d5a73}.dental-findings__banner[data-v-ffc4cd10]{margin:0;padding:.45rem .65rem;border-radius:.4rem;background:#7d622a14;color:#6b5420;font-size:.78rem}.dental-findings__list[data-v-ffc4cd10]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem;max-height:12.5rem;overflow:auto}.dental-findings__row[data-v-ffc4cd10]{display:flex;flex-direction:column;gap:.55rem;padding:.65rem .7rem;border:1px solid rgba(216,224,230,.95);border-radius:.55rem;background:#fff}.dental-findings__row-main[data-v-ffc4cd10]{display:flex;gap:.65rem;align-items:flex-start;min-width:0}.dental-findings__badge[data-v-ffc4cd10]{flex:none;display:inline-flex;align-items:center;min-height:1.35rem;padding:0 .45rem;border-radius:.3rem;font-size:.65rem;font-weight:800;letter-spacing:.06em;color:#1e3d58;background:#5b73881f}.dental-findings__badge--treat[data-v-ffc4cd10]{color:#7a1f2b;background:#c4404d1f}.dental-findings__badge--monitor[data-v-ffc4cd10]{color:#6b5420;background:#c49a4029}.dental-findings__copy[data-v-ffc4cd10]{min-width:0;flex:1}.dental-findings__description[data-v-ffc4cd10]{margin:0;font-size:.84rem;line-height:1.35;color:#1e3d58}.dental-findings__tooth-inline[data-v-ffc4cd10]{font-weight:600;color:#5b7388}.dental-findings__meta[data-v-ffc4cd10]{margin:.25rem 0 0;font-size:.72rem;color:#6a8094}.dental-findings__actions[data-v-ffc4cd10]{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.dental-findings__btn[data-v-ffc4cd10]{appearance:none;border:1px solid rgba(180,196,208,.95);background:#fff;color:#1e3d58;border-radius:.4rem;min-height:1.85rem;padding:0 .65rem;font-size:.75rem;font-weight:700;cursor:pointer}.dental-findings__btn[data-v-ffc4cd10]:disabled{opacity:.55;cursor:not-allowed}.dental-findings__btn--primary[data-v-ffc4cd10]{border-color:#057dcd73;background:#057dcd14;color:#055f9b}.dental-findings__btn--ghost[data-v-ffc4cd10]{border-color:transparent;background:transparent}.dental-findings__more[data-v-ffc4cd10]{position:relative}.dental-findings__menu[data-v-ffc4cd10]{position:absolute;right:0;top:calc(100% + .25rem);z-index:5;min-width:9rem;padding:.25rem;border:1px solid rgba(216,224,230,.95);border-radius:.45rem;background:#fff;box-shadow:0 8px 24px #1e3d581f}.dental-findings__menu-item[data-v-ffc4cd10]{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:.3rem;padding:.45rem .55rem;font-size:.78rem;font-weight:650;color:#7a1f2b;cursor:pointer}.dental-findings__menu-item[data-v-ffc4cd10]:hover,.dental-findings__menu-item[data-v-ffc4cd10]:focus-visible{background:#c4404d14}.dental-findings__state[data-v-ffc4cd10]{padding:.55rem .15rem .25rem}.dental-findings__empty-title[data-v-ffc4cd10],.dental-findings__state p[data-v-ffc4cd10]{margin:0;font-size:.82rem;color:#1e3d58}.dental-findings__empty-copy[data-v-ffc4cd10],.dental-findings__error-detail[data-v-ffc4cd10]{margin:.35rem 0 .65rem;font-size:.76rem;color:#6a8094}.dental-findings__state--error .dental-findings__empty-title[data-v-ffc4cd10],.dental-findings__state--error>p[data-v-ffc4cd10]:first-child{color:#7a1f2b}.dental-findings__skeleton[data-v-ffc4cd10]{height:4.2rem;border-radius:.55rem;background:linear-gradient(90deg,#eef3f6,#f7fafb,#eef3f6);background-size:200% 100%;animation:dental-findings-shimmer-ffc4cd10 1.2s linear infinite}.sr-only[data-v-ffc4cd10]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes dental-findings-shimmer-ffc4cd10{0%{background-position:100% 0}to{background-position:-100% 0}}@layer components{.endo-test-editor[data-v-f4d69a55]{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;background:#fff;border-left:1px solid var(--color-border, #e5e7eb)}.endo-test-editor__header[data-v-f4d69a55]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--color-border, #e5e7eb);flex-shrink:0}.endo-test-editor__icon[data-v-f4d69a55]{width:1.5rem;height:1.5rem;object-fit:contain;flex-shrink:0}.endo-test-editor__title[data-v-f4d69a55]{flex:1;font-size:.9375rem;font-weight:600;color:var(--color-text, #111827);text-align:center}.endo-test-editor__close[data-v-f4d69a55]{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;background:transparent;border-radius:.375rem;cursor:pointer;color:var(--color-text-secondary, #6b7280);font-size:1.25rem;line-height:1}.endo-test-editor__close[data-v-f4d69a55]:hover:not(:disabled){background:var(--color-surface-hover, #f3f4f6);color:var(--color-text, #111827)}.endo-test-editor__body[data-v-f4d69a55]{flex:1;min-height:0;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.endo-test-editor__label[data-v-f4d69a55]{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.05em;color:var(--color-text-secondary, #6b7280)}.endo-test-editor__choices[data-v-f4d69a55]{display:flex;flex-direction:column;gap:.375rem}.endo-test-editor__grid[data-v-f4d69a55]{display:grid;grid-template-columns:repeat(5,1fr);gap:.375rem}.endo-test-editor__choice[data-v-f4d69a55]{width:100%;padding:.5625rem 1rem;font-size:.875rem;font-weight:500;text-align:center;background:#fff;color:var(--color-text, #111827);border:1.5px solid var(--color-action-primary, #2563eb);border-radius:.5rem;cursor:pointer}.endo-test-editor__choice[data-v-f4d69a55]:hover:not(:disabled){background:color-mix(in srgb,var(--color-action-primary, #2563eb) 8%,transparent);color:var(--color-action-primary, #2563eb)}.endo-test-editor__choice--active[data-v-f4d69a55],.endo-test-editor__choice--active[data-v-f4d69a55]:hover:not(:disabled){background:var(--color-action-primary, #2563eb);border-color:var(--color-action-primary, #2563eb);color:#fff}.endo-test-editor__choice[data-v-f4d69a55]:disabled{opacity:.5;cursor:default}.endo-test-editor__error[data-v-f4d69a55]{margin:.5rem 0 0;color:#b91c1c;font-size:.8125rem}.endo-test-editor__footer[data-v-f4d69a55]{flex-shrink:0;padding:1rem;border-top:1px solid var(--color-border, #e5e7eb);display:flex;flex-direction:column;gap:.5rem}.endo-test-editor__clear[data-v-f4d69a55]{width:100%;padding:.625rem 1rem;font-size:.875rem;font-weight:600;letter-spacing:.04em;color:#b91c1c;background:#fff;border:1.5px solid #b91c1c;border-radius:.5rem;cursor:pointer}.endo-test-editor__clear[data-v-f4d69a55]:hover:not(:disabled){background:color-mix(in srgb,#b91c1c 8%,transparent)}.endo-test-editor__clear[data-v-f4d69a55]:disabled{opacity:.4;cursor:default}.endo-test-editor__save[data-v-f4d69a55]{width:100%;padding:.625rem 1rem;font-size:.875rem;font-weight:700;letter-spacing:.06em;color:#fff;background:var(--color-action-primary, #2563eb);border:none;border-radius:.5rem;cursor:pointer}.endo-test-editor__save[data-v-f4d69a55]:hover:not(:disabled){background:#1d4ed8}.endo-test-editor__save[data-v-f4d69a55]:disabled{opacity:.4;cursor:default}}.patho-editor[data-v-35a2acaf]{display:flex;flex-direction:column;gap:.75rem}.patho-editor__type-list[data-v-35a2acaf]{display:flex;flex-direction:column;gap:.375rem}.patho-editor__type-btn[data-v-35a2acaf]{width:100%;padding:.625rem 1rem;font-size:.875rem;font-weight:500;text-align:center;background:var(--color-surface-muted, #f3f4f6);color:var(--color-action-primary, #2563eb);border:1.5px solid transparent;border-radius:.5rem;cursor:pointer}.patho-editor__type-btn[data-v-35a2acaf]:hover:not(:disabled){background:#fff;border-color:var(--color-action-primary, #2563eb)}.patho-editor__summary-row[data-v-35a2acaf]{display:flex;align-items:baseline;gap:.375rem;padding:.375rem 0;border-bottom:1px solid var(--color-border, #e5e7eb);background:none;border-top:none;border-left:none;border-right:none;text-align:left;width:100%}.patho-editor__summary-row--link[data-v-35a2acaf]{cursor:pointer}.patho-editor__meta-label[data-v-35a2acaf]{font-size:.75rem;font-weight:700;color:var(--color-text, #111827);letter-spacing:.04em;flex-shrink:0}.patho-editor__link-value[data-v-35a2acaf]{font-size:.875rem;font-weight:500;color:var(--color-action-primary, #2563eb)}.patho-editor__summary-row--link:hover .patho-editor__link-value[data-v-35a2acaf]{text-decoration:underline}.patho-editor__section-label[data-v-35a2acaf]{font-size:.75rem;font-weight:700;color:var(--color-text, #111827);letter-spacing:.04em;margin:.25rem 0 0}.patho-editor__anatomy[data-v-35a2acaf]{display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem}.patho-editor__surface-btn[data-v-35a2acaf]{padding:.875rem .375rem;font-size:.75rem;font-weight:500;text-align:center;line-height:1.3;background:#fff;color:var(--color-text, #111827);border:1.5px solid var(--color-action-primary, #2563eb);border-radius:.625rem;cursor:pointer}.patho-editor__surface-btn--tall[data-v-35a2acaf]{min-height:5rem;display:flex;align-items:center;justify-content:center}.patho-editor__surface-btn--active[data-v-35a2acaf],.patho-editor__surface-btn--active[data-v-35a2acaf]:hover{background:var(--color-action-primary, #2563eb);color:#fff}.patho-editor__add-details-btn[data-v-35a2acaf]{width:100%;padding:.625rem 1rem;font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-align:center;background:#fff;color:var(--color-action-primary, #2563eb);border:1.5px solid var(--color-action-primary, #2563eb);border-radius:.5rem;cursor:pointer}.patho-editor__choice-col[data-v-35a2acaf]{display:flex;flex-direction:column;gap:.375rem}.patho-editor__choice-grid[data-v-35a2acaf]{display:grid;grid-template-columns:repeat(2,1fr);gap:.375rem}.patho-editor__choice-full[data-v-35a2acaf]{width:100%;padding:.5625rem 1rem;font-size:.875rem;font-weight:500;text-align:center;background:#fff;color:var(--color-text, #111827);border:1.5px solid var(--color-action-primary, #2563eb);border-radius:.5rem;cursor:pointer}.patho-editor__choice-full--active[data-v-35a2acaf],.patho-editor__choice-full--active[data-v-35a2acaf]:hover{background:var(--color-action-primary, #2563eb);color:#fff}.patho-editor button[data-v-35a2acaf]:disabled{opacity:.55;cursor:not-allowed}.ppp[data-v-59e99cd7]{position:absolute;inset:0;z-index:20;background:#fff;display:flex;flex-direction:column;overflow-y:auto;padding-bottom:4.5rem}.ppp__header[data-v-59e99cd7]{display:flex;align-items:center;padding:.875rem 1.5rem;border-bottom:1px solid var(--color-border, #e5e7eb);flex-shrink:0}.ppp__title-wrap[data-v-59e99cd7]{flex:1;display:flex;align-items:baseline;gap:.75rem;min-width:0}.ppp__title[data-v-59e99cd7]{font-size:1.125rem;font-weight:700;color:#1e3d58}.ppp__tooth[data-v-59e99cd7]{font-size:.875rem;color:#6b7280}.ppp__close[data-v-59e99cd7]{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;background:transparent;border-radius:.375rem;cursor:pointer;color:#6b7280;font-size:1.25rem;line-height:1}.ppp__close[data-v-59e99cd7]:hover{background:#f3f4f6;color:#111827}.ppp__empty[data-v-59e99cd7]{padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:flex-start;gap:1rem;color:#374151}.ppp__start[data-v-59e99cd7]{padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;color:#fff;background:var(--color-action-primary, #2563eb);border:none;border-radius:.5rem;cursor:pointer}.ppp__start[data-v-59e99cd7]:disabled{opacity:.5;cursor:not-allowed}.ppp__positions[data-v-59e99cd7]{display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem;padding:.875rem 1.25rem;border-bottom:1px solid var(--color-border, #e5e7eb);flex-shrink:0}.ppp__pos-card[data-v-59e99cd7]{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.625rem .25rem .5rem;border:1.5px solid #d1d5db;border-radius:.5rem;background:#fff;cursor:pointer;transition:border-color .1s}.ppp__pos-card[data-v-59e99cd7]:hover{border-color:#9ca3af}.ppp__pos-card--active[data-v-59e99cd7]{border-color:var(--color-action-primary, #2563eb);background:color-mix(in srgb,var(--color-action-primary, #2563eb) 6%,#fff)}.ppp__pos-card--unavailable[data-v-59e99cd7],.ppp__pos-card--unavailable[data-v-59e99cd7]:hover{opacity:.45;cursor:not-allowed;background:#f9fafb;border-color:#e5e7eb}.ppp__pos-depth[data-v-59e99cd7]{font-size:1.625rem;font-weight:600;color:#1e3d58;line-height:1}.ppp__pos-gm-row[data-v-59e99cd7]{width:100%;display:flex;align-items:center;justify-content:center;position:relative}.ppp__pos-gm-row[data-v-59e99cd7]:before{content:"";position:absolute;left:.25rem;right:.25rem;height:1px;background:#d1d5db}.ppp__pos-gm-pill[data-v-59e99cd7]{position:relative;z-index:1;background:#fff;border:1px solid #d1d5db;border-radius:2rem;font-size:.75rem;font-weight:500;color:#6b7280;padding:.15rem .5rem;line-height:1.4}.ppp__pos-label[data-v-59e99cd7]{font-size:.625rem;color:#6b7280;text-align:center;line-height:1.2}.ppp__grids[data-v-59e99cd7]{display:grid;grid-template-columns:1fr 1fr;flex-shrink:0}.ppp__grid-section[data-v-59e99cd7]{padding:.625rem 1.25rem .75rem}.ppp__grid-section[data-v-59e99cd7]:first-child{border-right:1px solid var(--color-border, #e5e7eb)}.ppp__grid-label[data-v-59e99cd7]{margin:0 0 .375rem;font-size:.625rem;font-weight:700;letter-spacing:.07em;color:#9ca3af}.ppp__grid[data-v-59e99cd7]{display:grid;grid-template-columns:repeat(5,1fr);gap:.375rem}.ppp__num[data-v-59e99cd7],.ppp__sign[data-v-59e99cd7]{padding:.875rem 0;font-size:.875rem;font-weight:500;border:1.5px solid var(--color-border, #e5e7eb);border-radius:.5rem;background:#fff;color:var(--color-text, #111827);cursor:pointer;text-align:center;transition:border-color .12s,background .12s,color .12s}.ppp__num[data-v-59e99cd7]:hover,.ppp__sign[data-v-59e99cd7]:hover{border-color:var(--color-action-primary, #2563eb)}.ppp__num--selected[data-v-59e99cd7],.ppp__num--selected[data-v-59e99cd7]:hover{background:var(--color-action-primary, #2563eb);border-color:var(--color-action-primary, #2563eb);color:#fff}.ppp__num--disabled[data-v-59e99cd7],.ppp__num--disabled[data-v-59e99cd7]:hover{opacity:.28;cursor:not-allowed;border-color:var(--color-border, #e5e7eb);background:#fff;color:#6b7280}.ppp__empty-cell[data-v-59e99cd7]{display:block;border-radius:.5rem;background:var(--color-surface-muted, #f3f4f6);opacity:.4;min-height:2.75rem}.ppp__sign[data-v-59e99cd7]{font-size:.8125rem;font-weight:600;color:#6b7280}.ppp__sign--negative[data-v-59e99cd7]{background:var(--color-surface-muted, #f3f4f6);border-color:#6b7280;color:#111827}.ppp__issues[data-v-59e99cd7]{display:grid;grid-template-columns:repeat(4,1fr);gap:.375rem;padding:.625rem 1.25rem;border-top:1px solid var(--color-border, #e5e7eb);flex-shrink:0}.ppp__issue[data-v-59e99cd7]{display:flex;align-items:center;justify-content:center;gap:.4375rem;padding:.5625rem .375rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border:1.5px solid var(--color-border, #e5e7eb);border-radius:.5rem;background:#fff;color:#6b7280;cursor:pointer}.ppp__issue--active[data-v-59e99cd7]{background:var(--color-surface-muted, #f3f4f6);color:#111827}.ppp__dot[data-v-59e99cd7]{display:inline-block;flex-shrink:0;width:.5625rem;height:.5625rem;border-radius:50%;border:1.5px solid}.ppp__row-label[data-v-59e99cd7]{padding:.375rem 1.25rem .25rem;font-size:.625rem;font-weight:700;letter-spacing:.07em;color:#9ca3af;flex-shrink:0}.ppp__option-row[data-v-59e99cd7]{display:grid;grid-template-columns:repeat(3,1fr);gap:.375rem;padding:.625rem 1.25rem;border-top:1px solid var(--color-border, #e5e7eb);flex-shrink:0}.ppp__option-btn[data-v-59e99cd7]{display:flex;align-items:center;justify-content:center;padding:.5625rem .625rem;border:1.5px solid var(--color-border, #e5e7eb);border-radius:.5rem;background:#fff;cursor:pointer;font-size:.75rem;font-weight:500;color:#374151}.ppp__option-btn[data-v-59e99cd7]:hover{border-color:var(--color-action-primary, #2563eb)}.ppp__option-btn--active[data-v-59e99cd7]{background:color-mix(in srgb,var(--color-action-primary, #2563eb) 10%,#fff);color:var(--color-action-primary, #2563eb);font-weight:600}.ppp__error[data-v-59e99cd7]{margin:.75rem 1.25rem 0;color:#b91c1c;font-size:.875rem}.ppp__footer[data-v-59e99cd7]{position:absolute;bottom:0;left:0;right:0;padding:1rem 1.25rem;border-top:1px solid var(--color-border, #e5e7eb);background:#fff}.ppp__save[data-v-59e99cd7]{width:auto;min-width:10%;padding:.875rem 1.5rem;font-size:1rem;font-weight:700;letter-spacing:.06em;color:#fff;background:var(--color-action-primary, #2563eb);border:none;border-radius:.5rem;cursor:pointer}.ppp__save[data-v-59e99cd7]:hover:not(:disabled){background:#1d4ed8}.ppp__save[data-v-59e99cd7]:disabled{opacity:.45;cursor:not-allowed}.rp[data-v-fab58bf9]{position:absolute;inset:0;z-index:20;background:#fff;display:flex;flex-direction:column;overflow:hidden}.rp__header[data-v-fab58bf9]{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.5rem;border-bottom:1px solid var(--color-border, #e5e7eb);flex-shrink:0}.rp__title[data-v-fab58bf9]{font-size:1.125rem;font-weight:700;color:#1e3d58}.rp__tooth[data-v-fab58bf9]{flex:1;font-size:.875rem;color:#6b7280}.rp__close[data-v-fab58bf9]{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;background:transparent;border-radius:.375rem;cursor:pointer;color:#6b7280;font-size:1.5rem;line-height:1}.rp__close[data-v-fab58bf9]:hover{background:#f3f4f6;color:#111827}.rp__body[data-v-fab58bf9]{flex:1;min-height:0;display:flex;flex-direction:row;overflow:hidden}.rp__grid-wrap[data-v-fab58bf9]{flex:none;width:30rem;border-right:1px solid var(--color-border, #e5e7eb);padding:.75rem;overflow:hidden;display:flex}.rp__grid[data-v-fab58bf9]{flex:1;display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(16,1fr);gap:.25rem}.rp__surface[data-v-fab58bf9]{display:flex;align-items:center;justify-content:center;text-align:center;font-size:.625rem;font-weight:600;letter-spacing:.03em;line-height:1.25;border:1.5px solid var(--color-border, #e5e7eb)!important;border-radius:.375rem;background:#fff;color:#374151;cursor:pointer;padding:.25rem;transition:border-color .12s,background .12s,color .12s}.rp__surface[data-v-fab58bf9]:not(.rp__surface--phantom):not(.rp__surface--forced):not(:disabled):hover{border-color:var(--color-action-primary, #2563eb)!important;background:color-mix(in srgb,var(--color-action-primary, #2563eb) 5%,#fff)}.rp__surface--active[data-v-fab58bf9]{border-color:var(--color-action-primary, #2563eb)!important;background:var(--color-action-primary, #2563eb);color:#fff!important}.rp__surface--forced[data-v-fab58bf9]{background:var(--color-action-primary, #2563eb)!important;border-color:var(--color-action-primary, #2563eb)!important;color:#fff!important;cursor:default}.rp__surface--phantom[data-v-fab58bf9]{background:#f9fafb!important;border-color:#f3f4f6!important;color:#d1d5db!important;cursor:default}.rp__surface--cervical-buccal[data-v-fab58bf9]{grid-row:1 / 3;grid-column:1 / 7}.rp__surface--buccal[data-v-fab58bf9]{grid-row:3 / 5;grid-column:3 / 5}.rp__surface--mesial[data-v-fab58bf9]{grid-row:5 / 7;grid-column:1 / 3}.rp__surface--occlusal[data-v-fab58bf9],.rp__surface--incisal[data-v-fab58bf9]{grid-row:5 / 7;grid-column:3 / 5}.rp__surface--distal[data-v-fab58bf9]{grid-row:5 / 7;grid-column:5 / 7}.rp__surface--palatal[data-v-fab58bf9]{grid-row:7 / 9;grid-column:3 / 5}.rp__surface--cervical-palatal[data-v-fab58bf9]{grid-row:9 / 11;grid-column:1 / 7}.rp__surface--mesio-buccal-cusp[data-v-fab58bf9]{grid-row:11 / 14;grid-column:1 / 4}.rp__surface--disto-buccal-cusp[data-v-fab58bf9]{grid-row:11 / 14;grid-column:4 / 7}.rp__surface--mesio-palatal-cusp[data-v-fab58bf9]{grid-row:14 / 17;grid-column:1 / 4}.rp__surface--disto-palatal-cusp[data-v-fab58bf9]{grid-row:14 / 17;grid-column:4 / 7}.rp__surface--buccal-cusp[data-v-fab58bf9]{grid-row:11 / 14;grid-column:1 / 4}.rp__surface--palatal-cusp[data-v-fab58bf9]{grid-row:11 / 14;grid-column:4 / 7}.rp__surface--buccal-surface[data-v-fab58bf9]{grid-row:14 / 17;grid-column:1 / 4}.rp__surface--palatal-surface[data-v-fab58bf9]{grid-row:14 / 17;grid-column:4 / 7}.rp__surface--class-4-mesial[data-v-fab58bf9]{grid-row:11 / 14;grid-column:1 / 4}.rp__surface--class-4-distal[data-v-fab58bf9]{grid-row:11 / 14;grid-column:4 / 7}.rp__right[data-v-fab58bf9]{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.rp__content[data-v-fab58bf9]{flex:1;min-height:0;overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.rp__empty[data-v-fab58bf9]{margin:0;color:#6b7280;font-size:.875rem}.rp__error[data-v-fab58bf9]{margin:.5rem 0 0;color:#b91c1c;font-size:.8125rem;line-height:1.4}.rp__type-list[data-v-fab58bf9]{display:flex;flex-direction:column;gap:.375rem}.rp__type-btn[data-v-fab58bf9]{width:100%;padding:.625rem 1rem;font-size:.875rem;font-weight:500;text-align:center;background:var(--color-surface-muted, #f3f4f6);color:var(--color-action-primary, #2563eb);border:1.5px solid transparent!important;border-radius:.5rem;cursor:pointer;transition:border-color .12s,background .12s}.rp__type-btn[data-v-fab58bf9]:hover{background:#fff;border-color:var(--color-action-primary, #2563eb)!important}.rp__summary-row[data-v-fab58bf9]{display:flex;align-items:baseline;gap:.375rem;padding:.375rem 0;border-bottom:1px solid var(--color-border, #e5e7eb);background:none;border-top:none;border-left:none;border-right:none;text-align:left;width:100%}.rp__summary-row--link[data-v-fab58bf9]{cursor:pointer}.rp__meta-label[data-v-fab58bf9]{font-size:.75rem;font-weight:700;color:#111827;letter-spacing:.04em;flex-shrink:0}.rp__link-value[data-v-fab58bf9]{font-size:.875rem;font-weight:500;color:var(--color-action-primary, #2563eb)}.rp__summary-row--link:hover .rp__link-value[data-v-fab58bf9]{text-decoration:underline}.rp__section-label[data-v-fab58bf9]{font-size:.75rem;font-weight:700;color:#111827;letter-spacing:.04em;margin:.25rem 0 0}.rp__surface-hint[data-v-fab58bf9]{font-size:.8125rem;color:#6b7280;margin:0;font-style:italic}.rp__add-details-btn[data-v-fab58bf9]{width:100%;padding:.625rem 1rem;font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-align:center;background:#fff;color:var(--color-action-primary, #2563eb);border:1.5px solid var(--color-action-primary, #2563eb)!important;border-radius:.5rem;cursor:pointer;transition:background .12s,color .12s}.rp__add-details-btn[data-v-fab58bf9]:hover{background:var(--color-action-primary, #2563eb);color:#fff!important}.rp__choice-col[data-v-fab58bf9]{display:flex;flex-direction:column;gap:.375rem}.rp__choice-full[data-v-fab58bf9]{width:100%;padding:.5625rem 1rem;font-size:.875rem;font-weight:500;text-align:center;background:#fff;color:#111827;border:1.5px solid var(--color-action-primary, #2563eb)!important;border-radius:.5rem;cursor:pointer;transition:background .12s,color .12s}.rp__choice-full[data-v-fab58bf9]:hover{background:color-mix(in srgb,var(--color-action-primary, #2563eb) 8%,transparent);color:var(--color-action-primary, #2563eb)!important}.rp__footer[data-v-fab58bf9]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.625rem;padding:.875rem 1.25rem;border-top:1px solid var(--color-border, #e5e7eb);flex-shrink:0;background:#fff}.rp__footer-btn[data-v-fab58bf9]{padding:.75rem 1rem;font-size:.875rem;font-weight:700;letter-spacing:.05em;border:none;border-radius:.5rem;cursor:pointer;transition:background .15s,opacity .15s}.rp__footer-btn[data-v-fab58bf9]:disabled{opacity:.35;cursor:not-allowed}.rp__footer-btn--monitor[data-v-fab58bf9]{background:#eab308;color:#fff!important;border:none!important}.rp__footer-btn--monitor[data-v-fab58bf9]:not(:disabled):hover{background:#ca8a04}.rp__footer-btn--treat[data-v-fab58bf9]{background:#ef4444;color:#fff!important;border:none!important}.rp__footer-btn--treat[data-v-fab58bf9]:not(:disabled):hover{background:#dc2626}.rp__footer-btn--save[data-v-fab58bf9]{background:var(--color-action-primary, #2563eb);color:#fff!important}.rp__footer-btn--save[data-v-fab58bf9]:not(:disabled):hover{background:#1d4ed8}@keyframes tooth-slide-left-9ac6dcd2{0%{transform:translate(-100%);opacity:0}to{opacity:1}}@keyframes tooth-fade-in-9ac6dcd2{0%{opacity:0;transform:translate(1.5rem)}to{opacity:1}}@keyframes tooth-panel-rise-9ac6dcd2{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tooth-view[data-v-9ac6dcd2]{display:flex;flex-direction:row;height:100%;width:100%;min-width:0;min-height:0;overflow:hidden;background:radial-gradient(ellipse 50% 40% at 100% 0%,rgba(5,125,205,.05),transparent 55%),#f4f7f8}.tooth-view__chart[data-v-9ac6dcd2]{flex:none;width:calc(3.5rem + 22.8vh);height:100%;position:relative;opacity:0;overflow:hidden;background:#fff;box-shadow:8px 0 28px #1e3d580a}.tooth-view__panel[data-v-9ac6dcd2]{position:relative;flex:1;min-width:0;height:100%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto minmax(0,1fr) minmax(22rem,44%);background:#fffffff5;overflow:hidden;border-left:1px solid rgba(216,224,230,.95);opacity:0}.tooth-view--ready .tooth-view__chart[data-v-9ac6dcd2]{animation:tooth-slide-left-9ac6dcd2 .38s cubic-bezier(.25,.46,.45,.94) both}.tooth-view--ready .tooth-view__panel[data-v-9ac6dcd2]{animation:tooth-fade-in-9ac6dcd2 .38s .06s cubic-bezier(.25,.46,.45,.94) both}.tdp-topbar[data-v-9ac6dcd2]{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.25rem;padding:.55rem 1.25rem;background:linear-gradient(145deg,rgba(5,125,205,.06),transparent 46%),#fff;border-bottom:1px solid rgba(216,224,230,.9)}.tdp-topbar__title-wrap[data-v-9ac6dcd2]{display:flex;align-items:center;gap:.75rem;min-width:0}.sr-only[data-v-9ac6dcd2]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tdp-dental-title[data-v-9ac6dcd2]{font-family:var(--font-display, "Montserrat", "Avenir Next", "Segoe UI", sans-serif);font-size:.95rem;font-weight:800;color:#1e3d58;letter-spacing:.12em;line-height:1}.tdp-historical-badge[data-v-9ac6dcd2]{padding:.28rem .7rem;border-radius:999px;background:#1e3d58;color:#fff;font-size:.6875rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.tdp-actions[data-v-9ac6dcd2]{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.35rem}.tdp-action-btn[data-v-9ac6dcd2]{display:inline-flex;align-items:center;gap:.4rem;min-height:2rem;padding:0 .8rem;font-size:.78rem;font-weight:700;letter-spacing:.01em;color:#1e3d58;background:#fff;border:1px solid rgba(216,224,230,.95);cursor:pointer;white-space:nowrap;border-radius:.5rem;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.tdp-action-btn[data-v-9ac6dcd2]:hover:not(:disabled){background:#e8f3fb;border-color:#057dcd59;color:#057dcd}.tdp-action-btn[data-v-9ac6dcd2]:disabled{opacity:.45;cursor:not-allowed}.tdp-action-btn--muted[data-v-9ac6dcd2]{color:#66717d}.tdp-action-btn--active[data-v-9ac6dcd2]{background:#fef2f2;border-color:#ef444447;color:#dc2626}.tdp-main[data-v-9ac6dcd2]{grid-column:1 / -1;grid-row:2;border-bottom:1px solid rgba(216,224,230,.9);overflow-y:auto;min-height:0;background:#fff;display:flex;flex-direction:column}.tdp-records[data-v-9ac6dcd2]{display:flex;flex-direction:column;gap:.5rem;padding:.85rem 1.15rem .75rem}.tdp-record[data-v-9ac6dcd2]{display:flex;align-items:center;gap:.75rem;padding:.7rem .85rem;border:1px solid rgba(216,224,230,.9);border-left-width:3px;background:#f8fbfd;border-radius:.7rem;animation:tooth-panel-rise-9ac6dcd2 .28s cubic-bezier(.22,1,.36,1) both}.tdp-record--status[data-v-9ac6dcd2]{border-left-color:#94a3b8}.tdp-record--pathology[data-v-9ac6dcd2]{border-left-color:#ef4444}.tdp-record--restoration[data-v-9ac6dcd2]{border-left-color:#057dcd}.tdp-record--empty[data-v-9ac6dcd2]{border-left-color:transparent;background:transparent;border-style:dashed}.tdp-record__kind[data-v-9ac6dcd2]{flex:0 0 auto;min-width:4.75rem;padding:.18rem .45rem;border-radius:999px;background:#ffffffe6;color:#66717d;font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:center}.tdp-record--pathology .tdp-record__kind[data-v-9ac6dcd2]{color:#b91c1c;background:#fef2f2}.tdp-record--restoration .tdp-record__kind[data-v-9ac6dcd2]{color:#057dcd;background:#e8f3fb}.tdp-record__summary[data-v-9ac6dcd2]{font-size:.875rem;color:#526071;flex:1;line-height:1.35}.tdp-record__summary strong[data-v-9ac6dcd2]{color:#1e3d58;font-weight:700}.tdp-endo[data-v-9ac6dcd2]{grid-column:1;grid-row:3;display:flex;flex-direction:column;padding:.85rem 1rem 1rem;border-right:1px solid rgba(216,224,230,.9);overflow:hidden;min-height:0;background:#fff}.tdp-perio[data-v-9ac6dcd2]{grid-column:2;grid-row:3;display:flex;flex-direction:column;padding:.85rem 1rem 1rem;overflow:hidden;position:relative;gap:.65rem;min-height:0;background:linear-gradient(180deg,#f8fbfd,#fff 28%)}.tdp-perio-header[data-v-9ac6dcd2]{display:flex;align-items:flex-start;justify-content:space-between;flex-shrink:0;gap:.75rem}.tdp-section-title-wrap[data-v-9ac6dcd2]{display:grid;gap:.1rem;margin-bottom:.45rem;flex-shrink:0}.tdp-section-eyebrow[data-v-9ac6dcd2]{margin:0;color:#66717d;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tdp-perio-title[data-v-9ac6dcd2],.tdp-section-title[data-v-9ac6dcd2]{display:block;margin:0;font-size:.98rem;font-weight:700;color:#1e3d58;letter-spacing:-.02em}.tdp-probing-btn[data-v-9ac6dcd2]{display:inline-flex;align-items:center;gap:.35rem;min-height:2rem;font-size:.75rem;font-weight:700;letter-spacing:.02em;color:#057dcd;background:#fff;border:1px solid rgba(5,125,205,.28);cursor:pointer;padding:0 .75rem;border-radius:999px;transition:background .14s ease,border-color .14s ease}.tdp-probing-btn[data-v-9ac6dcd2]:hover{background:#e8f3fb;border-color:#057dcd73}.tdp-probing-btn[data-v-9ac6dcd2]:disabled{opacity:.45;cursor:not-allowed}.tdp-endo-list[data-v-9ac6dcd2]{display:flex;flex-direction:column;flex:1;min-height:0;gap:.4rem;justify-content:flex-start}.tdp-endo-row[data-v-9ac6dcd2]{display:flex;align-items:center;flex:0 0 auto;gap:.7rem;min-height:4rem;height:4rem;padding:0 .75rem;border:1px solid rgba(216,224,230,.85);border-radius:.65rem;background:#f8fbfd;transition:border-color .14s ease,background .14s ease}.tdp-endo-row[data-v-9ac6dcd2]:hover{background:#fff;border-color:#057dcd47}.tdp-endo-icon[data-v-9ac6dcd2]{width:1.5rem;height:1.5rem;object-fit:contain;flex-shrink:0}.tdp-endo-label[data-v-9ac6dcd2]{flex:1;font-size:1rem;font-weight:600;color:#1e3d58;letter-spacing:-.01em}.tdp-endo-result[data-v-9ac6dcd2]{font-size:.875rem;color:#94a3b8;text-align:right;max-width:42%}.tdp-endo-test-btn[data-v-9ac6dcd2]{flex-shrink:0;min-height:2rem;padding:0 .65rem;border:1px solid transparent;border-radius:999px;background:transparent;color:#057dcd;font-size:.8125rem;font-weight:700;cursor:pointer}.tdp-endo-test-btn[data-v-9ac6dcd2]:hover:not(:disabled){background:#e8f3fb;border-color:#057dcd33}.tdp-endo-test-btn[data-v-9ac6dcd2]:disabled{opacity:.45;cursor:not-allowed}.tdp-endo-row--active[data-v-9ac6dcd2]{background:#e8f3fb;border-color:#057dcd59}.tdp-endo-row--active .tdp-endo-label[data-v-9ac6dcd2]{color:#057dcd}.tdp-endo-note[data-v-9ac6dcd2]{margin:.75rem 0 0;color:#94a3b8;font-size:.8125rem;line-height:1.4}.tdp-perio-grid[data-v-9ac6dcd2]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;flex:1;align-content:start;min-height:0}.tdp-perio-cell[data-v-9ac6dcd2]{background:#fff;border:1px solid rgba(216,224,230,.95);border-radius:.75rem;display:flex;flex-direction:column;align-items:center;padding:.85rem .45rem .65rem;gap:.28rem;position:relative;min-width:0;box-sizing:border-box;box-shadow:0 8px 18px #1e3d5808}.tdp-perio-issues[data-v-9ac6dcd2]{position:absolute;top:.4rem;right:.4rem;display:grid;grid-template-columns:1fr 1fr;gap:3px}.tdp-perio-issue-dot[data-v-9ac6dcd2]{width:9px;height:9px;border-radius:50%;border:1px solid #e5e7eb}.tdp-perio-depth[data-v-9ac6dcd2]{font-size:1.7rem;font-weight:700;color:#1e3d58;line-height:1;letter-spacing:-.03em}.tdp-perio-gm-row[data-v-9ac6dcd2]{width:100%;display:flex;align-items:center;justify-content:center;position:relative}.tdp-perio-gm-row[data-v-9ac6dcd2]:before{content:"";position:absolute;left:.45rem;right:.45rem;height:1px;background:#d8e0e6}.tdp-perio-gm-pill[data-v-9ac6dcd2]{position:relative;z-index:1;margin:0;background:#fff;border:1px solid #d8e0e6;border-radius:2rem;font-size:.65rem;font-weight:600;color:#66717d;padding:.12rem .5rem;line-height:1.4}.tdp-perio-cal[data-v-9ac6dcd2]{font-size:.65rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#66717d}.tdp-perio-label[data-v-9ac6dcd2]{margin-top:.15rem;font-size:.65rem;font-weight:700;color:#057dcd;text-align:center;line-height:1.2}.tooth-view-editor-overlay[data-v-9ac6dcd2]{position:absolute;inset:0;z-index:20;background:linear-gradient(160deg,rgba(5,125,205,.04),transparent 30%),#fff;display:flex;flex-direction:column;overflow:hidden;animation:tooth-fade-in-9ac6dcd2 .22s cubic-bezier(.22,1,.36,1) both}.tooth-view-editor-overlay__header[data-v-9ac6dcd2]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.35rem;border-bottom:1px solid rgba(216,224,230,.95);flex-shrink:0;background:#f8fbfde6}.tooth-view-editor-overlay__title-wrap[data-v-9ac6dcd2]{display:flex;align-items:baseline;gap:.75rem;min-width:0}.tooth-view-editor-overlay__title[data-v-9ac6dcd2]{margin:0;font-size:1.1rem;font-weight:700;color:#1e3d58;letter-spacing:-.02em}.tooth-view-editor-overlay__tooth[data-v-9ac6dcd2]{display:inline-flex;align-items:center;min-height:1.4rem;padding:0 .55rem;border-radius:999px;background:#e8f3fb;font-size:.75rem;font-weight:700;color:#057dcd}.tooth-view-editor-overlay__close[data-v-9ac6dcd2]{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid transparent;background:transparent;border-radius:.5rem;cursor:pointer;color:#66717d;font-size:1.35rem;line-height:1}.tooth-view-editor-overlay__close[data-v-9ac6dcd2]:hover{background:#fff;border-color:#d8e0e6f2;color:#1e3d58}.tooth-view-editor-overlay__body[data-v-9ac6dcd2]{flex:1;min-height:0;overflow:auto;padding:1rem 1.25rem}.tooth-view-editor-overlay__empty[data-v-9ac6dcd2],.tooth-view-editor-overlay__error[data-v-9ac6dcd2]{margin:0;color:#66717d;font-size:.9rem}.tooth-view-editor-overlay__error[data-v-9ac6dcd2]{margin-top:.75rem;color:#b91c1c}.tooth-view-editor-overlay__footer[data-v-9ac6dcd2]{flex-shrink:0;display:flex;justify-content:flex-end;padding:.85rem 1.25rem;border-top:1px solid rgba(216,224,230,.95);background:#f8fbfd}.tooth-view-editor-overlay__save[data-v-9ac6dcd2]{min-width:7rem;min-height:2.35rem;padding:0 1.2rem;border:none;border-radius:.55rem;background:#057dcd;color:#fff;font-size:.82rem;font-weight:700;letter-spacing:.03em;cursor:pointer;box-shadow:0 8px 18px #057dcd38}.tooth-view-editor-overlay__save[data-v-9ac6dcd2]:hover:not(:disabled){background:#046bb0}.tooth-view-editor-overlay__save[data-v-9ac6dcd2]:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}@media(prefers-reduced-motion:reduce){.tooth-view--ready .tooth-view__chart[data-v-9ac6dcd2],.tooth-view--ready .tooth-view__panel[data-v-9ac6dcd2],.tdp-record[data-v-9ac6dcd2],.tooth-view-editor-overlay[data-v-9ac6dcd2]{animation:none}}.patient-chart-route-slot[data-v-6d60949a]{display:none}.patient-files-drawer-backdrop[data-v-45f9c307]{position:fixed;inset:0;background:#10182059;z-index:60;display:flex;justify-content:flex-end}.patient-files-drawer-backdrop--fullscreen[data-v-45f9c307]{background:#101820e6}.patient-files-drawer[data-v-45f9c307]{width:min(720px,100vw);height:100%;background:#fff;display:flex;flex-direction:column;box-shadow:-8px 0 24px #00000014}.patient-files-drawer--fullscreen[data-v-45f9c307]{width:100vw}.patient-files-drawer__header[data-v-45f9c307]{display:flex;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid var(--line)}.patient-files-drawer__header-actions[data-v-45f9c307]{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-end;gap:8px}.patient-files-drawer__header-actions .patient-files-destructive-action[data-v-45f9c307]{margin-left:4px;padding:0 12px;min-height:40px;border:1px solid #b91c1c;border-radius:6px;background:#fff;color:#b91c1c;font:inherit;font-weight:600;cursor:pointer}.patient-files-drawer__header-actions .patient-files-destructive-action[data-v-45f9c307]:hover{background:#fef2f2}.patient-files-drawer__header h2[data-v-45f9c307]{margin:0;font-size:1.25rem}.patient-files-drawer__header p[data-v-45f9c307]{margin:4px 0 0;color:var(--muted)}.patient-files-drawer__preview[data-v-45f9c307]{flex:1;min-height:240px;overflow:auto;background:#f6f7f8;padding:16px}.patient-files-preview-toolbar[data-v-45f9c307]{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.patient-files-image-stage[data-v-45f9c307]{overflow:auto;display:flex;justify-content:center;align-items:flex-start;min-height:280px}.patient-files-image-stage img[data-v-45f9c307]{max-width:100%;transform-origin:center center;transition:transform .15s ease}.patient-files-pdf-launch[data-v-45f9c307]{min-height:280px;display:grid;place-items:center;padding:8px}.patient-files-pdf-launch__card[data-v-45f9c307]{width:min(460px,100%);background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:0 10px 28px #1c25300f}.patient-files-pdf-thumb[data-v-45f9c307]{position:relative;display:grid;place-items:center;min-height:220px;border-radius:10px;background:linear-gradient(180deg,#eef2f5,#e4eaef);border:1px solid var(--line);overflow:hidden}.patient-files-pdf-thumb__state[data-v-45f9c307],.patient-files-pdf-thumb__fallback[data-v-45f9c307],.patient-files-pdf-thumb__placeholder[data-v-45f9c307]{margin:0;padding:24px;color:var(--muted);font-size:.92rem;text-align:center}.patient-files-pdf-thumb__button[data-v-45f9c307]{appearance:none;border:0;background:transparent;padding:12px;width:100%;cursor:pointer;display:grid;place-items:center;min-height:220px}.patient-files-pdf-thumb__button[data-v-45f9c307]:disabled{cursor:default}.patient-files-pdf-thumb__button.is-ready:hover .patient-files-pdf-thumb__canvas[data-v-45f9c307]{transform:translateY(-1px);box-shadow:0 14px 28px #101c2829}.patient-files-pdf-thumb__canvas[data-v-45f9c307]{display:block;max-width:100%;height:auto;background:#fff;box-shadow:0 8px 22px #101c281f;border-radius:2px;opacity:0;transition:opacity .18s ease,transform .18s ease,box-shadow .18s ease}.patient-files-pdf-thumb__canvas.is-visible[data-v-45f9c307]{opacity:1}.patient-files-pdf-launch__actions[data-v-45f9c307]{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.patient-files-model3d-launch[data-v-45f9c307]{min-height:280px;display:grid;place-items:center;padding:8px}.patient-files-model3d-launch__card[data-v-45f9c307]{width:min(460px,100%);background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:0 10px 28px #1c25300f}.patient-files-model3d-launch__visual[data-v-45f9c307]{display:grid;gap:8px;justify-items:start;min-height:160px;padding:22px 20px;border-radius:10px;border:1px solid var(--line);background:radial-gradient(circle at 20% 20%,rgba(5,125,205,.16),transparent 42%),linear-gradient(165deg,#eef3f7,#e2e8ee)}.patient-files-model3d-launch__badge[data-v-45f9c307]{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#ffffffe0;border:1px solid var(--line);color:var(--accent-dark);font-size:.75rem;font-weight:700;letter-spacing:.04em}.patient-files-model3d-launch__title[data-v-45f9c307]{margin:8px 0 0;font-size:1.2rem;font-weight:650;color:var(--ink)}.patient-files-model3d-launch__hint[data-v-45f9c307]{margin:0;color:var(--muted);font-size:.92rem;line-height:1.45;max-width:28rem}.patient-files-model3d-launch__actions[data-v-45f9c307]{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.patient-files-docx-launch[data-v-45f9c307],.patient-files-dicom-launch[data-v-45f9c307]{min-height:280px;display:grid;place-items:center;padding:8px}.patient-files-docx-launch__card[data-v-45f9c307],.patient-files-dicom-launch__card[data-v-45f9c307]{width:min(460px,100%);background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:0 10px 28px #1c25300f}.patient-files-docx-preview[data-v-45f9c307]{min-height:180px;max-height:260px;overflow:auto;padding:16px 18px;border-radius:10px;border:1px solid var(--line);background:#fff;font-size:.9rem;line-height:1.45;color:var(--ink)}.patient-files-docx-preview__state[data-v-45f9c307]{margin:0;color:var(--muted);text-align:center;padding:36px 12px}.patient-files-docx-preview__html[data-v-45f9c307] p{margin:0 0 .7em}.patient-files-docx-preview__html[data-v-45f9c307] img{max-width:100%;height:auto}.patient-files-docx-launch__actions[data-v-45f9c307],.patient-files-dicom-launch__actions[data-v-45f9c307]{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.patient-files-dicom-launch__visual[data-v-45f9c307]{display:grid;gap:8px;justify-items:start;min-height:160px;padding:22px 20px;border-radius:10px;border:1px solid var(--line);background:radial-gradient(circle at 80% 20%,rgba(5,125,205,.18),transparent 40%),linear-gradient(165deg,#101820,#1c2834);color:#e8eef4}.patient-files-dicom-launch__badge[data-v-45f9c307]{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.22);color:#d7e8f7;font-size:.75rem;font-weight:700;letter-spacing:.04em}.patient-files-dicom-launch__title[data-v-45f9c307]{margin:8px 0 0;font-size:1.2rem;font-weight:650}.patient-files-dicom-launch__hint[data-v-45f9c307]{margin:0;color:#e8eef4c7;font-size:.92rem;line-height:1.45;max-width:28rem}.patient-files-drawer__meta[data-v-45f9c307]{padding:20px 24px;border-top:1px solid var(--line);overflow:auto}.patient-files-meta-list[data-v-45f9c307]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin:0}.patient-files-meta-list div[data-v-45f9c307]{display:grid;gap:4px}.patient-files-meta-list dt[data-v-45f9c307]{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.patient-files-meta-list dd[data-v-45f9c307]{margin:0}.patient-files-meta-note[data-v-45f9c307]{grid-column:1 / -1}.patient-files-upload-modal[data-v-06edc763]{width:min(920px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:14px;box-shadow:0 1px #ffffffb3 inset,0 28px 64px #0f172a2e}.patient-files-upload-lede[data-v-06edc763]{margin:6px 0 0;color:var(--muted);font-size:.92rem;line-height:1.4}.patient-files-upload-close[data-v-06edc763]{min-height:40px;padding-inline:14px;flex:none}.patient-files-upload-body[data-v-06edc763]{display:flex;flex-direction:column;gap:18px;padding:18px 22px 20px;background:linear-gradient(180deg,color-mix(in srgb,var(--page, #f4f6fa) 55%,white),#fff 48%)}.patient-files-upload-shared[data-v-06edc763]{padding:16px 16px 18px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.patient-files-upload-section-head[data-v-06edc763]{margin-bottom:14px}.patient-files-upload-section-head h3[data-v-06edc763]{margin:0;color:var(--accent-dark);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.patient-files-upload-section-head p[data-v-06edc763]{margin:4px 0 0;color:var(--muted);font-size:.84rem;line-height:1.35}.patient-files-form-grid[data-v-06edc763]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.patient-files-form-grid label[data-v-06edc763]{display:flex;flex-direction:column;gap:7px;color:var(--accent-dark);font-size:.8rem;font-weight:700;letter-spacing:.01em}.patient-files-form-grid input[data-v-06edc763],.patient-files-form-grid select[data-v-06edc763],.patient-files-form-grid textarea[data-v-06edc763]{width:100%;min-height:42px;box-sizing:border-box;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fbfcfd;color:var(--ink);font:inherit;font-size:.92rem;font-weight:500;line-height:1.3;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}.patient-files-form-grid textarea[data-v-06edc763]{min-height:84px;resize:vertical;line-height:1.45}.patient-files-form-grid input[data-v-06edc763]:hover,.patient-files-form-grid select[data-v-06edc763]:hover,.patient-files-form-grid textarea[data-v-06edc763]:hover{border-color:color-mix(in srgb,var(--line) 55%,var(--accent));background:#fff}.patient-files-form-grid input[data-v-06edc763]:focus,.patient-files-form-grid select[data-v-06edc763]:focus,.patient-files-form-grid textarea[data-v-06edc763]:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.patient-files-form-span[data-v-06edc763]{grid-column:1 / -1}.patient-files-teeth-picker[data-v-06edc763]{margin-top:14px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--line) 85%,transparent)}.patient-files-teeth-picker p[data-v-06edc763]{margin:0 0 10px;color:var(--accent-dark);font-size:.8rem;font-weight:700}.patient-files-teeth-grid[data-v-06edc763]{display:flex;flex-wrap:wrap;gap:6px}.patient-files-tooth-chip[data-v-06edc763]{min-width:38px;min-height:34px;padding:4px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--accent-dark);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.patient-files-tooth-chip[data-v-06edc763]:hover{border-color:color-mix(in srgb,var(--line) 50%,var(--accent));background:#f8fbfd}.patient-files-tooth-chip.active[data-v-06edc763]{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft, #e8f3fb) 80%,white);color:var(--accent-dark)}.patient-files-dropzone[data-v-06edc763]{display:grid;justify-items:center;gap:8px;padding:28px 20px;border:1.5px dashed color-mix(in srgb,var(--line) 70%,var(--accent));border-radius:14px;text-align:center;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft, #e8f3fb) 35%,white),#fff 70%);transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.patient-files-dropzone--active[data-v-06edc763]{border-color:var(--accent);border-style:solid;background:color-mix(in srgb,var(--accent-soft, #e8f3fb) 70%,white);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.patient-files-dropzone--disabled[data-v-06edc763]{opacity:.72;border-color:var(--line);background:#f7f8f9}.patient-files-dropzone-icon[data-v-06edc763]{display:grid;place-items:center;width:56px;height:56px;margin-bottom:2px;border-radius:14px;background:color-mix(in srgb,var(--accent-soft, #e8f3fb) 75%,white);color:var(--accent)}.patient-files-dropzone-title[data-v-06edc763]{margin:0;color:var(--ink);font-size:1rem;font-weight:700;letter-spacing:-.01em}.patient-files-dropzone-hint[data-v-06edc763]{margin:0 0 6px;color:var(--muted);font-size:.84rem;line-height:1.35}.patient-files-file-label[data-v-06edc763]{display:inline-flex;min-height:40px;margin-top:4px;padding-inline:16px;cursor:pointer}.patient-files-file-label.is-disabled[data-v-06edc763]{opacity:.5;cursor:not-allowed;pointer-events:none}.patient-files-upload-queue[data-v-06edc763]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.patient-files-upload-item[data-v-06edc763]{padding:14px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.patient-files-upload-item[data-status=done][data-v-06edc763]{border-color:color-mix(in srgb,#16a34a 35%,var(--line));background:color-mix(in srgb,#ecfdf5 55%,white)}.patient-files-upload-item[data-status=error][data-v-06edc763]{border-color:color-mix(in srgb,#dc2626 35%,var(--line));background:color-mix(in srgb,#fef2f2 55%,white)}.patient-files-upload-item-main[data-v-06edc763]{display:grid;gap:6px}.patient-files-upload-item-main strong[data-v-06edc763]{color:var(--ink);font-size:.95rem}.patient-files-upload-item-main span[data-v-06edc763]{color:var(--muted);font-size:.8rem}.patient-files-upload-item-main input[data-v-06edc763]{width:100%;box-sizing:border-box;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:#fbfcfd;font:inherit}.patient-files-upload-item-main input[data-v-06edc763]:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.patient-files-upload-progress[data-v-06edc763]{margin-top:10px;height:6px;background:color-mix(in srgb,var(--line) 70%,white);border-radius:999px;overflow:hidden}.patient-files-upload-progress-bar[data-v-06edc763]{height:100%;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 70%,#38bdf8));border-radius:inherit;transition:width .16s ease}.patient-files-upload-item-actions[data-v-06edc763]{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.patient-files-upload-item-actions .secondary-action[data-v-06edc763]{min-height:36px;padding-inline:12px}@media(max-width:720px){.patient-files-form-grid[data-v-06edc763]{grid-template-columns:1fr}}.patient-files-page[data-v-8e789268]{display:flex;flex-direction:column;gap:16px;padding:24px}.patient-files-tabs[data-v-8e789268]{align-self:flex-start}.patient-files-toolbar[data-v-8e789268]{gap:10px}.patient-files-filter select[data-v-8e789268],.patient-files-filter input[data-v-8e789268]{min-height:40px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:#fff}.patient-files-view-toggle[data-v-8e789268]{margin-left:auto}.patient-files-selection-toolbar[data-v-8e789268]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}.patient-files-selection-count[data-v-8e789268]{margin:0;color:var(--accent-dark);font-weight:700}.patient-files-selection-actions[data-v-8e789268]{display:flex;flex-wrap:wrap;gap:8px}.patient-files-destructive-action[data-v-8e789268]{min-height:40px;padding:0 12px;border:1px solid #b91c1c;border-radius:6px;background:#fff;color:#b91c1c;font:inherit;font-weight:600;cursor:pointer}.patient-files-destructive-action[data-v-8e789268]:hover:not(:disabled){background:#fef2f2}.patient-files-destructive-action[data-v-8e789268]:disabled{opacity:.55;cursor:not-allowed}.patient-files-select-col[data-v-8e789268]{width:40px}.patient-files-select[data-v-8e789268]{display:inline-flex;align-items:center;justify-content:center;margin:0;cursor:pointer}.patient-files-select input[data-v-8e789268]{width:16px;height:16px;margin:0;accent-color:var(--accent-dark, #1e3d58)}.patient-files-table tr.is-selected td[data-v-8e789268]{background:color-mix(in srgb,var(--accent-soft, #e8f3fb) 55%,white)}.patient-files-grid[data-v-8e789268]{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.patient-files-grid-card[data-v-8e789268]{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}.patient-files-grid-card.is-selected[data-v-8e789268]{border-color:color-mix(in srgb,var(--line) 40%,var(--accent, #2f6fed));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent, #2f6fed) 35%,transparent)}.patient-files-grid-card>.patient-files-select[data-v-8e789268]{position:absolute;top:10px;left:10px;z-index:2;padding:4px;border-radius:6px;background:#ffffffeb}.patient-files-grid-card__body[data-v-8e789268]{display:flex;flex-direction:column;gap:8px;padding:12px;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit}.patient-files-grid-thumb[data-v-8e789268]{display:grid;place-items:center;min-height:120px;border-radius:8px;background:#f3f4f6;font-size:2rem}.patient-files-delete-summary[data-v-8e789268]{display:flex;flex-direction:column;gap:4px;margin:8px 0}.patient-files-delete-summary span[data-v-8e789268]{color:var(--muted)}.patient-files-delete-check[data-v-8e789268]{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px;font-weight:500!important}.patient-files-delete-check input[data-v-8e789268]{margin-top:3px;width:16px;height:16px}.patient-files-delete-modal .clinical-modal-footer .patient-files-destructive-action[data-v-8e789268]{min-height:40px}.patient-files-title-link[data-v-8e789268]{padding:0;border:0;background:none;color:var(--accent-dark);font-weight:600;cursor:pointer;text-align:left}.patient-files-filename[data-v-8e789268]{display:block;color:var(--muted);font-size:.8125rem}.patient-files-series-badge[data-v-8e789268]{color:var(--muted);font-size:.8125rem}.patient-files-form-grid[data-v-8e789268]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.patient-files-form-grid label[data-v-8e789268]{display:flex;flex-direction:column;gap:7px;color:var(--accent-dark);font-size:.8rem;font-weight:700;letter-spacing:.01em}.patient-files-form-grid input[data-v-8e789268],.patient-files-form-grid select[data-v-8e789268],.patient-files-form-grid textarea[data-v-8e789268]{width:100%;min-height:42px;box-sizing:border-box;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fbfcfd;color:var(--ink);font:inherit;font-size:.92rem;font-weight:500;line-height:1.3;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}.patient-files-form-grid textarea[data-v-8e789268]{min-height:84px;resize:vertical;line-height:1.45}.patient-files-form-grid input[data-v-8e789268]:hover,.patient-files-form-grid select[data-v-8e789268]:hover,.patient-files-form-grid textarea[data-v-8e789268]:hover{border-color:color-mix(in srgb,var(--line) 55%,var(--accent));background:#fff}.patient-files-form-grid input[data-v-8e789268]:focus,.patient-files-form-grid select[data-v-8e789268]:focus,.patient-files-form-grid textarea[data-v-8e789268]:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.patient-files-form-span[data-v-8e789268]{grid-column:1 / -1}.patient-files-edit-modal[data-v-8e789268]{width:min(840px,calc(100vw - 32px));overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:14px;box-shadow:0 1px #ffffffb3 inset,0 28px 64px #0f172a2e}.patient-files-edit-lede[data-v-8e789268]{margin:6px 0 0;color:var(--muted);font-size:.92rem;line-height:1.4}.patient-files-edit-body[data-v-8e789268]{display:flex;flex-direction:column;gap:14px;padding:18px 22px 20px;background:linear-gradient(180deg,color-mix(in srgb,var(--page, #f4f6fa) 55%,white),#fff 48%)}.patient-files-edit-panel[data-v-8e789268]{padding:16px 16px 18px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.patient-files-teeth-picker[data-v-8e789268]{margin-top:14px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--line) 85%,transparent)}.patient-files-teeth-picker p[data-v-8e789268]{margin:0 0 10px;color:var(--accent-dark);font-size:.8rem;font-weight:700}.patient-files-teeth-grid[data-v-8e789268]{display:flex;flex-wrap:wrap;gap:6px}.patient-files-tooth-chip[data-v-8e789268]{min-width:38px;min-height:34px;padding:4px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--accent-dark);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.patient-files-tooth-chip[data-v-8e789268]:hover{border-color:color-mix(in srgb,var(--line) 50%,var(--accent));background:#f8fbfd}.patient-files-tooth-chip.active[data-v-8e789268]{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft, #e8f3fb) 80%,white);color:var(--accent-dark)}@media(max-width:720px){.patient-files-form-grid[data-v-8e789268]{grid-template-columns:1fr}}.patient-report-print-root[data-v-41acc7e3]{min-height:100vh;background:#fff;padding:0}.timeline-event-row[data-v-ec5b6f28]{display:flex;align-items:flex-start;gap:14px;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease}.timeline-event-row[data-v-ec5b6f28]:hover,.timeline-event-row[data-v-ec5b6f28]:focus-visible{border-color:color-mix(in srgb,var(--line) 55%,var(--accent));box-shadow:0 4px 14px #0f172a0f;outline:none}.timeline-event-row--child[data-v-ec5b6f28]{background:#fafcfd;box-shadow:none}.timeline-event-row--upcoming[data-v-ec5b6f28]{background:#fbfdff}.timeline-event-row__time[data-v-ec5b6f28]{flex:0 0 auto;min-width:76px;padding-top:2px;color:var(--muted);font-size:.8rem;font-weight:600;white-space:nowrap}.timeline-event-row__body[data-v-ec5b6f28]{flex:1 1 auto;min-width:0;display:grid;gap:4px}.timeline-event-row__title[data-v-ec5b6f28]{margin:0;color:var(--ink);font-weight:600}.timeline-event-row__summary[data-v-ec5b6f28],.timeline-event-row__secondary[data-v-ec5b6f28],.timeline-event-row__related[data-v-ec5b6f28],.timeline-event-row__meta[data-v-ec5b6f28]{margin:0;color:var(--muted);font-size:.85rem}.timeline-event-row__secondary[data-v-ec5b6f28]{color:#475569}.timeline-event-row__related[data-v-ec5b6f28]{font-style:italic}.timeline-event-row__action[data-v-ec5b6f28]{flex:0 0 auto;align-self:center}.timeline-visit-group[data-v-de178752]{display:grid;gap:8px}.timeline-visit-group__toggle[data-v-de178752]{align-self:flex-start;margin-left:90px}.timeline-visit-group__children[data-v-de178752]{display:grid;gap:8px;margin:0 0 0 24px;padding:10px 0 10px 14px;border-left:2px solid var(--line);list-style:none}.timeline-visit-group__more[data-v-de178752]{padding:4px 14px;color:var(--muted);font-size:.85rem;font-weight:600}.timeline-date-group[data-v-b62a1697]{display:grid;gap:10px}.timeline-date-group__heading[data-v-b62a1697]{margin:0;color:var(--accent-dark);font-size:.95rem;font-weight:700}.timeline-date-group__list[data-v-b62a1697]{display:grid;gap:10px;margin:0;padding:0;list-style:none}.timeline-details-drawer__historical[data-v-35e2fda1]{margin:0 0 4px;color:var(--accent-dark);font-size:.78rem;font-weight:700}.timeline-details-drawer__category[data-v-35e2fda1]{margin:0;color:var(--muted);font-size:.8rem}.timeline-details-drawer__section[data-v-35e2fda1]{display:grid;gap:10px}.timeline-details-drawer__section h3[data-v-35e2fda1]{margin:0;font-size:.95rem}.timeline-details-drawer__meta-list[data-v-35e2fda1],.timeline-details-drawer__tests[data-v-35e2fda1]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0}.timeline-details-drawer__meta-list dt[data-v-35e2fda1],.timeline-details-drawer__tests dt[data-v-35e2fda1]{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.timeline-details-drawer__meta-list dd[data-v-35e2fda1],.timeline-details-drawer__tests dd[data-v-35e2fda1]{margin:0}.timeline-details-drawer__lines[data-v-35e2fda1]{margin:0;padding-left:1.1rem}.timeline-details-drawer__actions[data-v-35e2fda1]{display:flex;flex-wrap:wrap;gap:8px}.timeline-details-drawer__skeleton[data-v-35e2fda1]{display:grid;gap:8px}.timeline-details-drawer__error[data-v-35e2fda1]{display:grid;gap:8px;justify-items:start}.patient-timeline-toolbar[data-v-a083ffeb]{display:grid;gap:10px}.patient-timeline-toolbar__extra[data-v-a083ffeb]{display:flex;flex-wrap:wrap;gap:10px}.patient-timeline-toolbar__field input[data-v-a083ffeb],.patient-timeline-toolbar__field select[data-v-a083ffeb]{min-height:40px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:#fff;font:inherit}.patient-timeline-toolbar[data-v-a083ffeb] .text-action:disabled{opacity:.45;cursor:not-allowed}.timeline-upcoming[data-v-d4174870]{display:grid;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#f8fbfd}.timeline-upcoming__heading[data-v-d4174870]{margin:0;color:var(--accent-dark);font-size:.95rem;font-weight:700}.timeline-upcoming__list[data-v-d4174870]{display:grid;gap:8px;margin:0;padding:0;list-style:none}.timeline-upcoming__card[data-v-d4174870]{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.timeline-upcoming__label[data-v-d4174870]{margin:0;color:var(--accent-dark);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.timeline-upcoming__title[data-v-d4174870]{margin:0;font-weight:600}.timeline-upcoming__meta[data-v-d4174870]{margin:0;color:var(--muted);font-size:.85rem}.timeline-upcoming__actions[data-v-d4174870]{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.patient-timeline-page[data-v-f255447f]{display:flex;flex-direction:column;gap:16px;padding:24px}.timeline-skeleton[data-v-f255447f]{display:grid;gap:12px}.patient-timeline-feed[data-v-f255447f]{display:grid;gap:18px}.tcci-context[data-v-dda8dcc8]{display:grid;gap:.5rem;margin-bottom:.75rem}.tcci-context p[data-v-dda8dcc8],.tcci-restoration-summary[data-v-dda8dcc8]{margin:0;font-size:.9rem}.tcci-label[data-v-dda8dcc8]{display:block;font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:#6b7280;margin-bottom:.15rem}.tcci-badge[data-v-dda8dcc8]{display:inline-block;padding:.15rem .5rem;border-radius:.25rem;font-size:.8rem;font-weight:600}.tcci-badge--monitor[data-v-dda8dcc8]{background:#e0f2fe;color:#075985}.tcci-badge--treat[data-v-dda8dcc8]{background:#ffedd5;color:#9a3412}.tcci-restoration-summary[data-v-dda8dcc8]{margin-bottom:.75rem;color:#374151}.clinical-issues-hint[data-v-dda8dcc8]{margin:0 0 .75rem;font-size:.85rem;color:#6b7280}.qs-editor__selected[data-v-31532ca6]{display:flex;flex-direction:column;gap:.25rem;margin:0 0 .75rem}.qs-editor__selected strong[data-v-31532ca6]{color:var(--ink, #1f2937);font-size:.95rem;font-weight:600;text-transform:none;letter-spacing:0}.qs-editor__locked[data-v-31532ca6]{margin:0 0 .75rem}.qs-editor__hint[data-v-31532ca6]{margin:.75rem 0 0;font-size:.8125rem}.resto-editor[data-v-31532ca6]{display:flex;flex-direction:column;gap:.75rem}.resto-editor__section-label[data-v-31532ca6]{margin:.25rem 0 0;font-size:.6875rem;font-weight:700;letter-spacing:.06em;color:var(--muted, #6b7280)}.resto-editor__choice-col[data-v-31532ca6]{display:flex;flex-direction:column;gap:.375rem}.resto-editor__choice-full[data-v-31532ca6]{width:100%;padding:.625rem 1rem;font-size:.875rem;font-weight:500;text-align:center;background:var(--color-surface-muted, #f3f4f6);color:var(--color-action-primary, #2563eb);border:1.5px solid transparent;border-radius:.5rem;cursor:pointer}.resto-editor__choice-full[data-v-31532ca6]:hover:not(:disabled){background:#fff;border-color:var(--color-action-primary, #2563eb)}.resto-editor__choice-full--active[data-v-31532ca6]{background:#fff;border-color:var(--color-action-primary, #2563eb);box-shadow:inset 0 0 0 1px var(--color-action-primary, #2563eb)}.resto-editor__choice-full[data-v-31532ca6]:disabled{opacity:.55;cursor:not-allowed}.qs-endo[data-v-012d57b2]{display:grid;gap:14px;padding:4px 2px 12px}.qs-endo__meta[data-v-012d57b2]{margin:0;color:var(--muted);font-size:12px;font-weight:700}.qs-endo__label[data-v-012d57b2]{margin:0;font-size:11px;font-weight:850;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-dark)}.qs-endo__grid[data-v-012d57b2]{display:grid;gap:8px}.qs-endo__choice[data-v-012d57b2]{display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--accent-dark);font-size:13px;font-weight:700;text-align:left;cursor:pointer}.qs-endo__choice.active[data-v-012d57b2],.qs-endo__value.active[data-v-012d57b2]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,white)}.qs-endo__choice[data-v-012d57b2]:disabled,.qs-endo__value[data-v-012d57b2]:disabled{opacity:.55;cursor:not-allowed}.qs-endo__values[data-v-012d57b2]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.qs-endo__value[data-v-012d57b2]{min-height:40px;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:800;cursor:pointer}.qs-endo__footer[data-v-012d57b2]{display:flex;justify-content:flex-end;padding-top:8px}.qs-eruption[data-v-f0fab6aa]{display:flex;flex-direction:column;gap:.5rem;min-height:0}.qs-eruption__meta[data-v-f0fab6aa]{margin:0;font-size:.8125rem;color:var(--color-text-secondary, #5b6472)}.qs-eruption__label[data-v-f0fab6aa]{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.05em;color:var(--color-text-secondary, #6b7280)}.qs-eruption__label--mt[data-v-f0fab6aa]{margin-top:.5rem}.qs-eruption__choice-col[data-v-f0fab6aa]{display:flex;flex-direction:column;gap:.375rem}.qs-eruption__choice-btn[data-v-f0fab6aa]{text-align:left;padding:.55rem .75rem;border:1px solid var(--color-border, #d7dde5);border-radius:.375rem;background:#fff;cursor:pointer;font-size:.875rem}.qs-eruption__choice-btn--active[data-v-f0fab6aa]{border-color:var(--color-accent, #1f6feb);background:color-mix(in srgb,var(--color-accent, #1f6feb) 10%,white)}.qs-eruption__choice-btn[data-v-f0fab6aa]:disabled{opacity:.55;cursor:not-allowed}.qs-eruption__previews[data-v-f0fab6aa]{margin-top:.5rem}.qs-eruption__preview-row[data-v-f0fab6aa]{display:flex;flex-wrap:wrap;gap:.5rem}.qs-eruption__preview[data-v-f0fab6aa]{margin:0;text-align:center;font-size:.7rem;color:var(--color-text-secondary, #6b7280)}.qs-eruption__preview img[data-v-f0fab6aa]{display:block;object-fit:contain;background:transparent}.qs-eruption__clear-btn[data-v-f0fab6aa]{align-self:flex-start;margin-top:.5rem;border:none;background:transparent;color:var(--color-text-secondary, #6b7280);font-size:.75rem;font-weight:700;letter-spacing:.04em;cursor:pointer}.qs-eruption__error[data-v-f0fab6aa]{margin:0;color:var(--color-danger, #b42318);font-size:.8125rem}.qs-eruption__footer[data-v-f0fab6aa]{display:flex;gap:.5rem;margin-top:auto;padding-top:.75rem}.qs-eruption__close[data-v-f0fab6aa],.qs-eruption__save-btn[data-v-f0fab6aa]{flex:1;min-height:2.5rem;border-radius:.375rem;border:1px solid var(--color-border, #d7dde5);cursor:pointer;font-weight:600}.qs-eruption__save-btn[data-v-f0fab6aa]{background:var(--color-accent, #1f6feb);border-color:var(--color-accent, #1f6feb);color:#fff}.qs-eruption__save-btn[data-v-f0fab6aa]:disabled,.qs-eruption__close[data-v-f0fab6aa]:disabled{opacity:.55;cursor:not-allowed}@layer components{.resto-editor[data-v-984dbeaf]{display:flex;flex-direction:column;gap:.75rem}.resto-editor__type-list[data-v-984dbeaf]{display:flex;flex-direction:column;gap:.375rem}.resto-editor__type-btn[data-v-984dbeaf],.resto-editor__clear-btn[data-v-984dbeaf],.resto-editor__add-details-btn[data-v-984dbeaf],.resto-editor__choice-full[data-v-984dbeaf]{width:100%;padding:.625rem 1rem;font-size:.875rem;font-weight:500;text-align:center;border-radius:.5rem;cursor:pointer}.resto-editor__type-btn[data-v-984dbeaf]{background:var(--color-surface-muted, #f3f4f6);color:var(--color-action-primary, #2563eb);border:1.5px solid transparent}.resto-editor__type-btn[data-v-984dbeaf]:hover:not(:disabled){background:#fff;border-color:var(--color-action-primary, #2563eb)}.resto-editor__clear-btn[data-v-984dbeaf]{background:#fff;color:#b91c1c;border:1.5px solid #fecaca}.resto-editor__summary-row[data-v-984dbeaf]{display:flex;align-items:baseline;gap:.375rem;padding:.375rem 0;border-bottom:1px solid var(--color-border, #e5e7eb);background:none;border-top:none;border-left:none;border-right:none;text-align:left;width:100%}.resto-editor__summary-row--link[data-v-984dbeaf]{cursor:pointer}.resto-editor__meta-label[data-v-984dbeaf]{font-size:.75rem;font-weight:700;color:var(--color-text, #111827);letter-spacing:.04em;flex-shrink:0}.resto-editor__link-value[data-v-984dbeaf]{font-size:.875rem;font-weight:500;color:var(--color-action-primary, #2563eb)}.resto-editor__section-label[data-v-984dbeaf]{font-size:.75rem;font-weight:700;color:var(--color-text, #111827);letter-spacing:.04em;margin:.25rem 0 0}.resto-editor__anatomy[data-v-984dbeaf]{display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem}.resto-editor__add-details-btn[data-v-984dbeaf]{font-size:.8125rem;font-weight:700;letter-spacing:.06em;background:#fff;color:var(--color-action-primary, #2563eb);border:1.5px solid var(--color-action-primary, #2563eb)}.resto-editor__choice-col[data-v-984dbeaf]{display:flex;flex-direction:column;gap:.375rem}.resto-editor__choice-full[data-v-984dbeaf]{background:#fff;color:var(--color-text, #111827);border:1.5px solid var(--color-action-primary, #2563eb)}.resto-editor__surface-btn[data-v-984dbeaf]{padding:.875rem .375rem;font-size:.75rem;font-weight:500;text-align:center;line-height:1.3;background:#fff;color:var(--color-text, #111827);border:1.5px solid var(--color-action-primary, #2563eb);border-radius:.625rem;cursor:pointer}.resto-editor__surface-btn--tall[data-v-984dbeaf]{min-height:5rem;display:flex;align-items:center;justify-content:center}.resto-editor__surface-btn--active[data-v-984dbeaf],.resto-editor__surface-btn--forced[data-v-984dbeaf]{background:var(--color-action-primary, #2563eb);color:#fff}.resto-editor__surface-btn--forced[data-v-984dbeaf]{cursor:default}.resto-editor__surface-btn--phantom[data-v-984dbeaf]{border-color:var(--color-border, #e5e7eb);background:var(--color-surface-muted, #f3f4f6);pointer-events:none;cursor:default}}.patient-workspace-main[data-v-40e65300]{position:relative}.patient-chart-persistent-host[data-v-40e65300]{display:flex;flex:1;min-height:0;min-width:0;flex-direction:column}.patient-chart-persistent-host--hidden[data-v-40e65300]{position:absolute;inset:0;flex:0 0 0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0;opacity:0;pointer-events:none;z-index:-1}:root{color-scheme:light;--page: #f4f7f8;--panel: #ffffff;--ink: #1c2530;--muted: #66717d;--line: #d8e0e6;--accent: #057dcd;--accent-dark: #1e3d58;--accent-soft: #e8f3fb;--success: #2e7d63;--font-display: "Montserrat", "Avenir Next", "Segoe UI", sans-serif;--font-ui: "Montserrat", "Avenir Next", "Segoe UI", sans-serif;--tooth-scale: .34;--periodontal-plaque: #4a90e2;--periodontal-bleeding: #d0021b;--periodontal-pus: #f8e71c;--periodontal-tartar: #64748b}.medical-history-page{width:100%;max-width:1480px;margin:0 auto;padding:28px 32px 40px;animation:dashboard-enter .52s cubic-bezier(.22,1,.36,1) both}.medical-history-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px;padding:22px 24px;border:1px solid rgba(216,224,230,.95);border-radius:16px;background:linear-gradient(145deg,rgba(5,125,205,.07),transparent 42%),#fffffff5;box-shadow:0 12px 32px #1e3d580d}.medical-history-header__copy{min-width:0}.medical-history-header h1{margin:4px 0 8px;color:var(--accent-dark);font-family:var(--font-display);font-size:clamp(1.7rem,2.2vw,2.15rem);font-weight:700;letter-spacing:-.03em;line-height:1.1}.medical-history-header__meta{margin:0;color:var(--muted);font-size:13px;font-weight:500;line-height:1.45}.medical-history-header__meta--pending{color:#9a5b12}.medical-history-header__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.medical-history-status{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;border:1px solid transparent;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.medical-history-status[data-state=reviewed]{color:var(--success);background:#2e7d631a;border-color:#2e7d632e}.medical-history-status[data-state=pending]{color:#9a5b12;background:#fff7ed;border-color:#f2d09b}.module-eyebrow{margin:0;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.medical-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.medical-card{padding:20px 22px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff5;box-shadow:0 10px 28px #1e3d580a}.medical-card h2,.medical-review-panel h2{margin:0 0 14px;color:var(--accent-dark);font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.medical-card--callout{padding:0;overflow:hidden;border-color:#057dcd38;background:linear-gradient(120deg,rgba(5,125,205,.1),transparent 55%),#fff}.medical-callout{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px}.medical-callout h2{margin:0 0 6px;font-size:1.05rem;font-weight:700;letter-spacing:-.02em;text-transform:none}.medical-callout p{margin:0;max-width:52ch;color:var(--muted);font-size:14px;line-height:1.5}.full-medical-card{grid-column:1 / -1}.muted-copy{margin:0;color:var(--muted);font-size:13.5px;line-height:1.5}.medical-chip-list{display:flex;flex-wrap:wrap;gap:10px}.medical-alert-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #f2d09b;border-radius:999px;color:#8a4b06;background:#fff7ed;font-size:13px;font-weight:700}.medical-alert-chip[data-level=critical]{border-color:#fecaca;color:#991b1b;background:#fef2f2}.medical-list{display:grid;gap:10px}.medical-list-item{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start;padding:10px 12px;border-radius:10px;background:#f4f7f8b8}.medical-list-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--accent-soft);color:var(--accent-dark)}.medical-list-item strong{display:block;color:var(--ink);font-size:14px;font-weight:700;letter-spacing:-.01em}.medical-list-item span{display:block;margin-top:3px;color:var(--muted);font-size:12.5px;line-height:1.4}.medical-issue-svg{width:18px;height:18px;color:currentColor}.medical-definition-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}.medical-definition-list>div{padding:12px 14px;border-radius:10px;background:#f4f7f8b8}.medical-definition-list dt{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.medical-definition-list dd{margin:6px 0 0;color:var(--ink);font-weight:700}.medical-notes{margin:0;color:var(--ink);line-height:1.6;white-space:pre-wrap}.revision-list{display:grid;gap:10px}.revision-list button{display:grid;gap:3px;width:100%;padding:14px 16px;border:1px solid rgba(216,224,230,.95);border-radius:12px;background:#fff;color:var(--ink);text-align:left;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease}.revision-list button:hover{border-color:#057dcd59;box-shadow:0 8px 20px #1e3d580f}.revision-list span{color:var(--muted);font-size:13px}.medical-review-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:start}.medical-review-nav{position:sticky;top:24px;display:grid;gap:6px;padding:10px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff5;box-shadow:0 10px 28px #1e3d580a}.medical-review-nav button{padding:10px 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);text-align:left;font-weight:700;cursor:pointer;transition:background .14s ease,color .14s ease}.medical-review-nav button:hover{color:var(--accent-dark);background:var(--accent-soft)}.medical-review-nav button.active{border-color:#057dcd2e;background:var(--accent-soft);color:var(--accent-dark)}.medical-review-panel{padding:24px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff5;box-shadow:0 10px 28px #1e3d580a}.issue-category{margin-top:22px}.issue-category h3{margin:0 0 12px;color:var(--muted);font-size:12px;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.issue-catalog,.repeat-editor{display:grid;gap:12px}.issue-editor-row{display:grid;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--line)}.issue-editor-row>button{display:inline-flex;align-items:center;gap:10px;width:fit-content;padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);cursor:pointer}.issue-editor-row>button.selected{border-color:var(--accent-dark);background:#edf8f6}.issue-details-grid,.repeat-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.issue-details-grid{display:grid;gap:12px}.issue-details-grid label,.repeat-editor label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.issue-details-grid input,.issue-details-grid select,.repeat-editor input,.repeat-editor select,.repeat-editor textarea,.medical-notes-input{width:100%;padding:10px 11px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff}.checkbox-line{display:flex!important;align-items:center;gap:8px}.checkbox-line input{width:auto}.repeat-editor{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:8px}.medical-notes-input{min-height:180px}.medical-review-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.revision-drawer{position:fixed;inset:0;z-index:50;display:flex;justify-content:flex-end;background:#0f172a73}.revision-drawer__panel{display:flex;flex-direction:column;width:min(640px,100%);height:100%;background:#fff;box-shadow:-8px 0 28px #0f172a1f}.revision-drawer__header{position:sticky;top:0;z-index:1;flex-shrink:0;padding:22px 24px 16px;border-bottom:1px solid #e2e8f0;background:#fff}.revision-drawer__header h2{margin:4px 0 8px;font-size:1.35rem}.revision-drawer__when{margin:0;font-weight:600;color:var(--ink)}.revision-drawer__meta{margin:4px 0 0;color:#475569;font-size:.92rem}.revision-drawer__meta--quiet{color:#64748b;font-size:.85rem}.revision-drawer__tabs{display:flex;gap:8px;margin-top:16px}.revision-drawer__tabs button{border:1px solid #cbd5e1;border-radius:8px;padding:6px 12px;background:#fff;color:#334155;font:inherit;cursor:pointer}.revision-drawer__tabs button.active{border-color:#0f172a;background:#0f172a;color:#fff}.revision-drawer__body{flex:1;min-height:0;padding:20px 24px 32px;overflow:auto;overflow-x:hidden}.revision-drawer__state{display:grid;gap:12px;justify-items:start}.revision-drawer__skeleton{width:100%;height:14px;border-radius:6px;background:linear-gradient(90deg,#e2e8f0,#f1f5f9,#e2e8f0);background-size:200% 100%;animation:revision-skeleton 1.2s ease-in-out infinite}.revision-drawer__skeleton--short{width:55%}@keyframes revision-skeleton{0%{background-position:100% 0}to{background-position:-100% 0}}.revision-change-group{margin-bottom:28px}.revision-change-group__label{margin:0 0 12px;letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:700;color:#0f172a}.revision-section-block{margin-bottom:18px}.revision-section-block h3,.revision-section-block h4{margin:0 0 10px;font-size:.95rem;color:#334155}.revision-change-item{margin-bottom:12px;padding:12px 14px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;overflow-wrap:anywhere}.revision-change-item strong{display:block;margin-bottom:6px;color:var(--ink)}.revision-change-item__summary{margin:0;color:#475569;font-size:.92rem}.revision-change-item--removed{border-style:dashed;background:#fff}.revision-value-list{margin:0;padding-left:1.1rem;color:#475569;font-size:.92rem}.revision-before-after{margin:0}.revision-before-after__row{display:grid;gap:4px;margin-top:8px}.revision-before-after__row dt{font-size:.8rem;font-weight:600;color:#64748b}.revision-before-after__row dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin:0;color:#0f172a;font-size:.92rem}.revision-before{color:#64748b;text-decoration:line-through}.revision-after{font-weight:600}.revision-arrow{color:#94a3b8}@media(max-width:720px){.revision-drawer__panel{width:100%}}.clinical-overview-page{width:auto;min-height:100%;margin:-22px;padding:0}.clinical-overview-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);align-items:start;width:100%;min-height:100%}.clinical-overview-main{min-width:0;padding:32px}.clinical-overview-header{margin-bottom:24px}.clinical-overview-header h1{margin:4px 0 0;color:var(--ink);font-size:28px}.clinical-main-empty{max-width:760px;padding:16px 0;border-top:1px solid var(--line);color:var(--muted)}.clinical-overview-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid var(--line)}.clinical-overview-tab{display:inline-flex;align-items:center;padding:8px 12px;border-radius:8px;color:var(--muted);font-size:14px;font-weight:700;text-decoration:none}.clinical-overview-tab:hover{color:var(--ink);background:#0000000a}.clinical-overview-tab.router-link-active{color:var(--accent-dark);background:color-mix(in srgb,var(--accent) 14%,white)}.clinical-overview-tab-panel{min-width:0}.clinical-overview-placeholder{max-width:640px;padding:8px 0 24px}.clinical-overview-placeholder h2{margin:0 0 8px;font-size:22px;color:var(--ink)}.clinical-overview-placeholder p{margin:0 0 10px;color:var(--muted);line-height:1.5}.clinical-overview-placeholder-aside{font-size:13px}.clinical-issues-tab,.clinical-notes-tab{display:grid;gap:16px}.clinical-issues-header,.clinical-notes-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.clinical-issues-header h2,.clinical-notes-header h2{margin:0 0 6px;font-size:22px}.clinical-issues-header p,.clinical-notes-header p{margin:0;color:var(--muted)}.clinical-issues-banner,.clinical-issues-success,.clinical-notes-banner,.clinical-notes-success{margin:0;padding:10px 12px;border-radius:8px;font-size:14px}.clinical-issues-banner,.clinical-notes-banner{background:#fff7ed;color:#9a3412}.clinical-issues-banner--warn,.clinical-notes-banner--warn{background:#fef2f2;color:#991b1b}.clinical-issues-success,.clinical-notes-success{background:#ecfdf5;color:#065f46}.clinical-issues-filters,.clinical-notes-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.clinical-issues-status-filters,.clinical-notes-status-filters{display:flex;flex-wrap:wrap;gap:8px}.clinical-issues-status-filters button,.clinical-notes-status-filters button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700;color:var(--muted);cursor:pointer}.clinical-issues-status-filters button.active,.clinical-notes-status-filters button.active{border-color:var(--accent);color:var(--accent-dark);background:color-mix(in srgb,var(--accent) 12%,white)}.clinical-issues-extra-filters,.clinical-notes-extra-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.clinical-notes-search input,.clinical-notes-tooth-filter select,.clinical-issues-class-filter select,.clinical-history-search input,.clinical-history-tooth-filter select,.clinical-history-domain-filter select{min-width:168px;appearance:none;-webkit-appearance:none;border:1px solid var(--line);border-radius:999px;padding:7px 34px 7px 14px;color:var(--accent-dark);font:inherit;font-size:13px;font-weight:700;line-height:1.2;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 16px) calc(50% - 2px),calc(100% - 11px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;box-shadow:0 1px #1c253008;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease,color .14s ease}.clinical-notes-search input:hover,.clinical-notes-tooth-filter select:hover,.clinical-issues-class-filter select:hover,.clinical-history-search input:hover,.clinical-history-tooth-filter select:hover,.clinical-history-domain-filter select:hover{border-color:color-mix(in srgb,var(--line) 45%,var(--accent));background-color:color-mix(in srgb,var(--accent-soft) 35%,white)}.clinical-notes-search input:focus,.clinical-notes-tooth-filter select:focus,.clinical-issues-class-filter select:focus,.clinical-history-search input:focus,.clinical-history-tooth-filter select:focus,.clinical-history-domain-filter select:focus{outline:none;border-color:var(--accent);background-color:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.clinical-issues-class-filter select,.clinical-issues-tab label select,.clinical-issues-tab label textarea,.clinical-notes-tab label select,.clinical-notes-tab label textarea,.clinical-notes-tab label input[type=datetime-local]{width:100%}.clinical-issues-list,.clinical-notes-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.clinical-issues-item,.clinical-notes-item{display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff}.clinical-issues-item--highlighted{border-color:#057dcd8c;box-shadow:0 0 0 3px #057dcd1f;outline:none}.clinical-issues-item-main,.clinical-notes-item-main{min-width:0;display:grid;gap:8px}.clinical-issues-badges,.clinical-notes-badges{display:flex;flex-wrap:wrap;gap:6px}.clinical-issues-badge,.clinical-notes-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:#f3f4f6;color:#374151}.clinical-issues-badge[data-classification=monitor]{background:#eff6ff;color:#1d4ed8}.clinical-issues-badge[data-classification=treat]{background:#fff7ed;color:#c2410c}.clinical-notes-badge--edited{background:#e5e7eb;color:#4b5563}.clinical-issues-description,.clinical-notes-description{margin:0;color:var(--ink);line-height:1.45}.clinical-issues-meta,.clinical-issues-note,.clinical-issues-hint,.clinical-issues-empty,.clinical-issues-loading,.clinical-issues-denied,.clinical-notes-meta,.clinical-notes-note,.clinical-notes-hint,.clinical-notes-empty,.clinical-notes-loading,.clinical-notes-denied{margin:0;color:var(--muted);font-size:13px}.clinical-issues-actions,.clinical-notes-actions{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.clinical-issues-actions .text-action,.clinical-notes-actions .text-action{border:0;background:transparent;color:var(--accent-dark);font-weight:700;cursor:pointer;padding:0}.clinical-issues-actions .text-action:disabled,.clinical-notes-actions .text-action:disabled{opacity:.45;cursor:not-allowed}.clinical-issues-actions .text-action--danger,.clinical-notes-actions .text-action--danger{color:#b91c1c}.clinical-history-tab{display:grid;gap:16px}.clinical-history-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.clinical-history-header h2{margin:0 0 6px;font-size:22px}.clinical-history-header p{margin:0;color:var(--muted)}.clinical-history-banner,.clinical-history-success{margin:0;padding:10px 12px;border-radius:8px;font-size:14px}.clinical-history-banner{background:#fff7ed;color:#9a3412}.clinical-history-banner--warn{background:#fef2f2;color:#991b1b}.clinical-history-success{background:#ecfdf5;color:#065f46}.clinical-history-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.clinical-history-status-filters{display:flex;flex-wrap:wrap;gap:8px}.clinical-history-status-filters button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700;color:var(--muted);cursor:pointer}.clinical-history-status-filters button.active{border-color:var(--accent);color:var(--accent-dark);background:color-mix(in srgb,var(--accent) 12%,white)}.clinical-history-extra-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.clinical-history-tab label select,.clinical-history-tab label textarea,.clinical-history-tab label input[type=datetime-local]{width:100%}.clinical-history-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.clinical-history-item{display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff}.clinical-history-item[data-entry-type=automatic]{background:#fafafa}.clinical-history-item-main{min-width:0;display:grid;gap:8px}.clinical-history-badges{display:flex;flex-wrap:wrap;gap:6px}.clinical-history-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:#f3f4f6;color:#374151}.clinical-history-badge--automatic{background:#eef2f6;color:#475569}.clinical-history-badge--manual{background:#eef9f1;color:#1f7a43}.clinical-history-badge--domain{background:#f3f4f6;color:#374151}.clinical-history-badge--edited{background:#e5e7eb;color:#4b5563}.clinical-history-description{margin:0;color:var(--ink);line-height:1.45}.clinical-history-meta,.clinical-history-note,.clinical-history-hint,.clinical-history-empty,.clinical-history-loading,.clinical-history-denied{margin:0;color:var(--muted);font-size:13px}.clinical-history-actions{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.clinical-history-actions .text-action{border:0;background:transparent;color:var(--accent-dark);font-weight:700;cursor:pointer;padding:0}.clinical-history-actions .text-action:disabled{opacity:.45;cursor:not-allowed}.oral-soft-tissue-tab{display:grid;gap:16px}.oral-soft-tissue-header h2{margin:0 0 6px;font-size:22px}.oral-soft-tissue-header p{margin:0;color:var(--muted)}.oral-soft-tissue-banner,.oral-soft-tissue-success{margin:0;padding:10px 12px;border-radius:8px;font-size:14px}.oral-soft-tissue-banner{background:#fff7ed;color:#9a3412}.oral-soft-tissue-banner--warn{background:#fef2f2;color:#991b1b}.oral-soft-tissue-success{background:#ecfdf5;color:#065f46}.oral-soft-tissue-denied,.oral-soft-tissue-loading,.oral-soft-tissue-empty{margin:0;color:var(--muted);font-size:13px}.oral-soft-tissue-segmented{display:flex;flex-wrap:wrap;gap:8px}.oral-soft-tissue-segmented button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:700;color:var(--muted);cursor:pointer}.oral-soft-tissue-segmented button.active{border-color:var(--accent);color:var(--accent-dark);background:color-mix(in srgb,var(--accent) 12%,white)}.oral-soft-tissue-current{display:grid;gap:18px}.oral-soft-tissue-group{display:grid;gap:12px;padding:16px 16px 14px;border:1px solid color-mix(in srgb,var(--line) 88%,var(--accent-dark));border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 28%,white),#fff 56px),#fff;box-shadow:0 10px 28px #1e3d580a}.oral-soft-tissue-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.oral-soft-tissue-group-title{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.oral-soft-tissue-group-count{color:var(--muted);font-size:12px;font-weight:600}.oral-soft-tissue-zone-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.oral-soft-tissue-zone-row{position:relative;display:grid;gap:12px;min-height:148px;padding:14px 14px 12px;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fcfdfe,#fff 42%),#fff;box-shadow:0 1px #fffc inset,0 8px 20px #1e3d580a;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}.oral-soft-tissue-zone-row:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:color-mix(in srgb,var(--line) 40%,var(--muted))}.oral-soft-tissue-zone-row[data-state=normal]:before,.oral-soft-tissue-zone-row[data-draft=normal]:before{background:#2e7d63}.oral-soft-tissue-zone-row[data-state=finding]:before,.oral-soft-tissue-zone-row[data-draft=finding]:before{background:#b42318}.oral-soft-tissue-zone-row[data-changed=true]{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 70%,white),#fff 48%),#fff;box-shadow:0 1px #fffc inset,0 12px 28px #057dcd1a}.oral-soft-tissue-zone-row:hover{border-color:color-mix(in srgb,var(--line) 55%,var(--accent));box-shadow:0 1px #fffc inset,0 14px 30px #1e3d5814}.oral-soft-tissue-zone-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-left:6px}.oral-soft-tissue-zone-heading{min-width:0;display:grid;gap:4px}.oral-soft-tissue-zone-label{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:-.01em;line-height:1.25}.oral-soft-tissue-zone-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;flex-shrink:0}.oral-soft-tissue-zone-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:#eef2f5;color:#516070}.oral-soft-tissue-zone-badge[data-state=never_recorded]{background:#eef2f5;color:#66717d}.oral-soft-tissue-zone-badge[data-state=normal]{background:color-mix(in srgb,var(--success) 14%,white);color:#1f6b54}.oral-soft-tissue-zone-badge[data-state=finding]{background:#fdeceb;color:#912018}.oral-soft-tissue-zone-badge--changed{background:var(--accent-soft);color:var(--accent-dark)}.oral-soft-tissue-zone-meta,.oral-soft-tissue-zone-current-description{margin:0;color:var(--muted);font-size:12px;font-weight:500;line-height:1.4}.oral-soft-tissue-zone-meta--empty{font-style:italic;color:color-mix(in srgb,var(--muted) 85%,white)}.oral-soft-tissue-zone-current-description{margin-left:6px;padding:8px 10px;border-left:2px solid color-mix(in srgb,#b42318 55%,var(--line));border-radius:0 8px 8px 0;background:color-mix(in srgb,#fdeceb 55%,white);color:var(--ink);font-size:13px}.oral-soft-tissue-zone-controls{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:auto;margin-left:6px;padding:3px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--page) 70%,white)}.oral-soft-tissue-zone-button{border:0;border-radius:999px;background:transparent;padding:8px 10px;color:var(--muted);font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .14s ease,color .14s ease,box-shadow .14s ease}.oral-soft-tissue-zone-button:hover:not(:disabled):not(.active){color:var(--accent-dark);background:#ffffffb3}.oral-soft-tissue-zone-button.active{color:#1f6b54;background:#fff;box-shadow:0 1px 3px #1e3d581a}.oral-soft-tissue-zone-button--finding.active{color:#912018;background:#fff;box-shadow:0 1px 3px #1e3d581a}.oral-soft-tissue-zone-button:disabled{opacity:.45;cursor:not-allowed}.oral-soft-tissue-zone-description{width:100%;box-sizing:border-box;margin-left:6px;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fbfcfd;color:var(--ink);font:inherit;font-size:13px;line-height:1.45;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.oral-soft-tissue-zone-description:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.oral-soft-tissue-save-bar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid color-mix(in srgb,var(--line) 80%,var(--accent-dark));border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 35%,white),#fff);box-shadow:0 -8px 28px #1e3d580f;position:sticky;bottom:0;z-index:2}.oral-soft-tissue-save-meta{display:flex;flex-wrap:wrap;gap:12px;flex:1;min-width:240px}.oral-soft-tissue-field{display:grid;gap:4px;font-size:12px;font-weight:700;color:var(--muted)}.oral-soft-tissue-field--note{flex:1;min-width:200px}.oral-soft-tissue-field input,.oral-soft-tissue-field textarea{font:inherit;border:1px solid var(--line);border-radius:8px;padding:6px 10px}.oral-soft-tissue-save-actions{display:flex;align-items:center;gap:12px}.oral-soft-tissue-changed-count{font-size:13px;font-weight:700;color:var(--muted)}.oral-soft-tissue-examinations-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.oral-soft-tissue-examination-item{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.oral-soft-tissue-examination-summary{width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit}.oral-soft-tissue-examination-date{font-weight:700;color:var(--ink)}.oral-soft-tissue-examination-count,.oral-soft-tissue-examination-by,.oral-soft-tissue-examination-studio{color:var(--muted);font-size:13px}.oral-soft-tissue-examination-detail{display:grid;gap:10px;padding:0 16px 16px;border-top:1px solid var(--line)}.oral-soft-tissue-examination-note{margin:10px 0 0;color:var(--muted);font-size:13px}.oral-soft-tissue-finding-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.oral-soft-tissue-finding-row{display:grid;gap:4px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fafafa}.oral-soft-tissue-pagination{display:flex;align-items:center;justify-content:center;gap:12px;font-size:13px;color:var(--muted)}.oral-soft-tissue-snapshot-modal{max-width:560px}.clinical-record-modal-backdrop{background:radial-gradient(ellipse 80% 50% at 50% 40%,rgb(5 125 205 / 12%),transparent 70%),#0f172a85;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:clinical-record-backdrop-in .18s ease-out both}.clinical-modal.clinical-record-modal{width:min(520px,100%);overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 80%,var(--accent-dark));border-radius:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 55%,white),#fff 88px),#fff;box-shadow:0 1px #ffffffb3 inset,0 28px 64px #1e3d5838;animation:clinical-record-modal-in .22s cubic-bezier(.22,1,.36,1) both}.clinical-record-modal__header{align-items:flex-start;padding:22px 22px 16px;border-bottom:1px solid color-mix(in srgb,var(--line) 85%,transparent);background:transparent}.clinical-record-modal__heading{min-width:0;flex:1}.clinical-record-modal__eyebrow{margin:0 0 6px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.clinical-record-modal__header h2{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:1.35rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.clinical-record-modal__lede{margin:8px 0 0;max-width:38ch;color:var(--muted);font-size:13px;font-weight:500;line-height:1.45}.clinical-record-modal__close{flex-shrink:0;width:36px;height:36px;border-color:color-mix(in srgb,var(--line) 70%,var(--accent));color:var(--accent-dark);font-size:22px;font-weight:400;line-height:1;transition:background .14s ease,border-color .14s ease,color .14s ease}.clinical-record-modal__close:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.clinical-record-modal__body{display:grid;gap:16px;padding:18px 22px 8px}.clinical-record-modal__meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.clinical-record-field{display:grid;gap:7px;margin:0;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.02em}.clinical-record-field span{color:var(--accent-dark)}.clinical-record-field select,.clinical-record-field input[type=datetime-local],.clinical-record-field textarea{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fbfcfd;color:var(--ink);font:inherit;font-size:14px;font-weight:500;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.clinical-record-field select:hover,.clinical-record-field input[type=datetime-local]:hover,.clinical-record-field textarea:hover{border-color:color-mix(in srgb,var(--line) 55%,var(--accent));background:#fff}.clinical-record-field select:focus,.clinical-record-field input[type=datetime-local]:focus,.clinical-record-field textarea:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.clinical-record-field--description textarea{min-height:132px;resize:vertical;line-height:1.5}.clinical-record-field--description textarea::placeholder{color:color-mix(in srgb,var(--muted) 72%,white);font-weight:500}.clinical-record-modal__footer{gap:10px;padding:14px 22px 18px;border-top:1px solid color-mix(in srgb,var(--line) 85%,transparent);background:color-mix(in srgb,var(--page) 65%,white)}.clinical-record-modal__footer .primary-action,.clinical-record-modal__footer .secondary-action{min-height:40px;padding-inline:16px;border-radius:10px;font-weight:700}.clinical-record-preview{margin:0;padding:12px 14px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:color-mix(in srgb,var(--accent-soft) 70%,white);color:var(--ink);font-size:14px;font-weight:500;line-height:1.45}.clinical-record-preview__meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px;color:var(--accent-dark);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.clinical-record-preview__meta span{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,white)}.clinical-record-void-confirm{background:#b42318;border-color:#b42318}.clinical-record-void-confirm:hover:not(:disabled){background:#912018;border-color:#912018}@keyframes clinical-record-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes clinical-record-modal-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:560px){.clinical-record-modal__meta{grid-template-columns:1fr}}.clinical-history-actions .text-action--danger{color:#b91c1c}.clinical-summary-rail{position:sticky;top:0;align-self:start;display:grid;gap:18px;align-content:start;box-sizing:border-box;width:100%;min-width:0;min-height:0;max-height:none;padding:18px;overflow:visible;border-left:1px solid var(--line);background:#fff}.clinical-summary-historical-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin:0;padding:10px 12px;border-radius:8px;font-size:13px;line-height:1.35;background:#fff7ed;color:#9a3412}.summary-widget-header,.clinical-modal-header,.clinical-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.summary-widget-header{margin-bottom:14px}.bpe-widget-header{display:grid;align-items:start;justify-content:stretch;gap:8px}.bpe-header-actions{display:flex;align-items:center;gap:14px}.summary-widget-header h2{margin:0;color:var(--accent-dark);font-size:12px;font-weight:950;letter-spacing:.055em;text-transform:uppercase}.text-action{border:0;background:transparent;color:var(--accent);font:inherit;font-weight:900;cursor:pointer}.medical-issues-summary{min-width:0}.oral-health-summary{min-width:0;padding-bottom:18px;border-bottom:1px solid var(--line)}.oral-health-content,.oral-readonly-indices,.oral-issues-editor,.oral-issue-form{display:grid;gap:12px}.oral-index-row{display:grid;gap:6px}.oral-index-row>div:first-child,.oral-readonly-indices article>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.oral-index-row span,.oral-readonly-indices span{color:var(--muted);font-size:11px;font-weight:950;letter-spacing:.045em;text-transform:uppercase}.oral-index-row strong,.oral-readonly-indices strong{color:var(--ink);font-size:18px}.oral-progress{height:7px;overflow:hidden;border-radius:999px;background:#e5e7eb}.oral-progress span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.oral-source,.oral-empty-copy{margin:0;color:var(--muted);font-size:12px;font-weight:700;line-height:1.35}.oral-issue-list{display:grid;gap:9px}.oral-issue-item,.oral-editor-row{display:grid;gap:4px;min-width:0}.oral-issue-item strong,.oral-editor-row strong{color:var(--ink);font-size:13px;line-height:1.3;overflow-wrap:anywhere}.oral-health-level-indicator{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;width:100%;min-width:0;height:8px;overflow:hidden;border-radius:4px;background:#fff}.oral-health-level-segment{min-width:0;background:#e5e7eb}.oral-health-level-indicator[data-level="1"] .oral-health-level-segment.is-filled,.oral-health-level-indicator[data-level="2"] .oral-health-level-segment.is-filled{background:#a3d554}.oral-health-level-indicator[data-level="3"] .oral-health-level-segment.is-filled{background:#12cbcb}.oral-health-level-indicator[data-level="4"] .oral-health-level-segment.is-filled{background:#ffd00a}.oral-health-level-indicator[data-level="5"] .oral-health-level-segment.is-filled{background:#e13830}.oral-editor-issue-main{display:flex;align-items:center;gap:12px;min-width:0;width:100%}.oral-editor-issue-main strong{flex:0 1 auto;min-width:0}.oral-editor-issue-main .oral-health-level-indicator{flex:1 1 auto;width:auto;min-width:72px;gap:3px;background:transparent;border-radius:0;overflow:visible}.oral-editor-issue-main .oral-health-level-segment{border-radius:2px}.oral-health-modal{width:min(620px,calc(100vw - 32px))}.oral-health-modal-body{display:grid;gap:18px}.oral-readonly-indices{grid-template-columns:repeat(2,minmax(0,1fr))}.oral-readonly-indices article{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.oral-readonly-indices small{color:var(--muted);font-weight:800}.oral-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.oral-editor-heading h3{margin:0;color:var(--muted);font-size:12px;font-weight:950;letter-spacing:.055em;text-transform:uppercase}.oral-editor-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px 0;border-top:1px solid var(--line)}.oral-issue-form{padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.oral-issue-form label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:900}.oral-issue-form input{min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);font:inherit}.oral-level-picker{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.oral-level-picker button{min-height:48px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:950;cursor:pointer}.oral-level-picker button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark)}.oral-form-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.medical-issues-rail-list{display:grid;gap:11px}.medical-issues-rail-item{display:flex;align-items:flex-start;gap:10px;min-width:0;color:var(--ink);font-weight:800;line-height:1.35}.medical-issues-rail-item .medical-issue-svg{flex:0 0 auto;margin-top:1px}.medical-issues-rail-item span{min-width:0;overflow-wrap:anywhere}.bpe-summary{min-width:0;padding-bottom:18px;border-bottom:1px solid var(--line)}.bpe-summary-content{display:grid;gap:11px}.bpe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bpe-score-cell{min-width:0;min-height:82px;padding:11px 6px 8px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;text-align:center}.bpe-score-cell strong{display:inline-flex;align-items:flex-start;justify-content:center;gap:2px;color:var(--ink);font-size:30px;line-height:1}.bpe-score-cell sup{margin-top:-2px;color:currentColor;font-size:14px;font-weight:950;line-height:1}.bpe-score-cell>span{display:block;margin-top:8px;color:var(--muted);font-size:10.5px;font-weight:800;line-height:1.2}.bpe-score-cell--low{border-color:color-mix(in srgb,#16a34a 42%,var(--line));background:color-mix(in srgb,#16a34a 12%,#fff)}.bpe-score-cell--medium{border-color:color-mix(in srgb,#d97706 44%,var(--line));background:color-mix(in srgb,#d97706 13%,#fff)}.bpe-score-cell--high{border-color:color-mix(in srgb,#dc2626 42%,var(--line));background:color-mix(in srgb,#dc2626 12%,#fff)}.bpe-score-cell--neutral strong{color:var(--muted)}.bpe-score-cell--not-recorded{background:#f8fafc;border-color:#e5e7eb}.bpe-score-cell--not-recorded strong,.bpe-score-cell--empty strong{color:#94a3b8;font-size:18px;line-height:1.15}.bpe-score-cell--not-recordable{border-style:dashed;background:#f3f4f6}.bpe-score-cell--not-recordable strong{color:#64748b;font-size:21px;line-height:1.1}.bpe-meta{display:grid;gap:2px;color:var(--muted);font-size:12px;font-weight:700}.bpe-empty-action{justify-self:start}.bpe-empty{display:grid;gap:12px}.bpe-empty p,.bpe-empty-copy{margin:0;color:var(--muted)}.bpe-modal{width:min(440px,calc(100vw - 32px))}.bpe-modal-body{display:grid;gap:14px}.bpe-editor{display:grid;gap:10px}.bpe-editor-grid{gap:8px}.bpe-editor-cell{min-height:84px;padding:11px 6px 8px;cursor:pointer;appearance:none}.bpe-editor-cell strong{font-size:31px}.bpe-editor-cell.selected{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.bpe-controls{display:grid;gap:10px}.bpe-selected-score{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.bpe-control-label{grid-column:1 / -1;color:var(--muted);font-size:11px;font-weight:950;letter-spacing:.055em;text-transform:uppercase}.bpe-selected-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bpe-score-button,.bpe-asterisk-button,.bpe-recordability-button{min-height:48px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:900;cursor:pointer}.bpe-score-button,.bpe-asterisk-button{width:100%;min-width:0;padding:0 12px;font-size:15px}.bpe-recordability-button{padding:0 11px;color:var(--muted)}.bpe-selected-actions .bpe-recordability-button{width:100%;min-height:48px}.bpe-asterisk-button.active,.bpe-recordability-button.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,#fff);color:var(--accent-dark)}.bpe-score-button.active{border-color:var(--ink);box-shadow:0 0 0 2px color-mix(in srgb,var(--ink) 12%,transparent)}.bpe-score-button--filled-low{background:color-mix(in srgb,#16a34a 16%,#fff);border-color:color-mix(in srgb,#16a34a 52%,var(--line));color:#166534}.bpe-score-button--filled-medium{background:color-mix(in srgb,#d97706 17%,#fff);border-color:color-mix(in srgb,#d97706 54%,var(--line));color:#92400e}.bpe-score-button--filled-high{background:color-mix(in srgb,#dc2626 16%,#fff);border-color:color-mix(in srgb,#dc2626 52%,var(--line));color:#991b1b}.bpe-score-button--filled:hover{filter:saturate(1.05)}.bpe-controls-divider{height:1px;background:var(--line)}.bpe-asterisk-button:disabled{opacity:.45;cursor:not-allowed}.bpe-notes{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:900}.bpe-notes textarea{min-height:82px;resize:vertical;padding:11px;border:1px solid var(--line);border-radius:8px;color:var(--ink);font:inherit}.bpe-modal .clinical-modal-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bpe-modal .clinical-modal-footer .primary-action,.bpe-modal .clinical-modal-footer .secondary-action{width:100%;min-height:50px}.bpe-history-drawer{width:min(620px,100%);max-height:88vh;display:grid;grid-template-rows:auto minmax(0,1fr);border-radius:10px;background:#fff;box-shadow:0 24px 70px #0f172a33}.bpe-history-body{overflow:auto;padding:18px 22px 22px}.bpe-history-list{display:grid;gap:12px}.bpe-history-item{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:8px}.bpe-history-item>div:first-child,.bpe-history-meta{display:grid;gap:3px;color:var(--muted);font-size:12px}.bpe-history-item strong{color:var(--ink);font-size:14px}.bpe-history-mini-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.bpe-history-mini-grid span{padding:6px 4px;border-radius:6px;background:#f8fafc;color:var(--ink);text-align:center;font-weight:900}.bpe-history-detail{display:grid;gap:18px}.bpe-history-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.bpe-history-meta div{display:grid;gap:3px}.bpe-history-meta dt{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.bpe-history-meta dd{margin:0;color:var(--ink);font-weight:800}.bpe-history-notes h3{margin:0 0 6px;color:var(--muted);font-size:12px;font-weight:950;letter-spacing:.055em;text-transform:uppercase}.bpe-history-notes p{margin:0;white-space:pre-wrap;color:var(--ink)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.clinical-modal-backdrop{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:24px;background:#0f172a73}.clinical-modal{width:min(840px,100%);max-height:85vh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border-radius:10px;background:#fff;box-shadow:0 24px 70px #0f172a33}.clinical-modal.bpe-modal{width:min(440px,calc(100vw - 32px))}.clinical-modal-header,.clinical-modal-footer{padding:18px 22px;border-bottom:1px solid var(--line)}.clinical-modal-footer{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end}.clinical-modal-header h2{margin:0;color:var(--ink);font-size:22px}.icon-button{width:34px;height:34px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);cursor:pointer}.clinical-modal-body{padding:18px 22px 8px;overflow:auto}.clinical-search{display:grid;gap:6px;margin-bottom:16px;color:var(--muted);font-size:12px;font-weight:800}.clinical-search input,.clinical-disposition select{width:100%;padding:10px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.clinical-category{display:grid;gap:8px;margin-top:18px}.clinical-category h3{margin:0;color:var(--muted);font-size:12px;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.clinical-definition-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.clinical-definition-row.disabled{color:var(--muted)}.clinical-definition-main{display:flex;align-items:center;gap:10px;min-width:0}.clinical-definition-main strong{display:block;color:var(--ink)}.clinical-definition-main small{display:block;margin-top:2px;color:var(--muted)}.clinical-definition-row input[type=checkbox]{width:20px;height:20px}.clinical-disposition{grid-column:1 / -1;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.clinical-disposition label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800}*{box-sizing:border-box}html,body,#app{width:100%;min-height:100%}body{margin:0;font-family:var(--font-ui);background:var(--page);color:var(--ink)}body:has(.main-app-shell){height:100%;overflow:hidden}body:has(.main-app-shell) #app{height:100%;overflow:hidden}button,input{font:inherit}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.authenticated-placeholder{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(180deg,#f7fafb,#edf3f6)}.authenticated-placeholder>section{width:min(100%,420px);padding:32px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 18px 48px #1e3d5814}.auth-page{position:relative;isolation:isolate;min-height:100vh;display:grid;overflow:hidden;background:#0f2436;font-family:var(--font-ui)}.auth-atmosphere{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse 70% 55% at 18% 28%,rgba(5,125,205,.42),transparent 62%),radial-gradient(ellipse 55% 45% at 78% 72%,rgba(120,186,222,.18),transparent 68%),linear-gradient(145deg,#0f2436,#1e3d58 48%,#16324a);animation:auth-atmosphere-drift 18s ease-in-out infinite alternate}.auth-atmosphere:after{content:"";position:absolute;inset:0;opacity:.35;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(circle at 30% 40%,#000 20%,transparent 72%);mask-image:radial-gradient(circle at 30% 40%,#000 20%,transparent 72%)}.auth-stage{position:relative;z-index:1;display:grid;grid-template-columns:minmax(280px,.92fr) minmax(340px,1.08fr);min-height:100vh;width:100%}.auth-brand-panel{display:flex;flex-direction:column;justify-content:flex-end;gap:18px;padding:clamp(32px,6vw,72px);color:#f4f8fb;animation:auth-brand-enter .7s cubic-bezier(.22,1,.36,1) both}.auth-brand-panel .auth-brand{margin:0;color:#fff;font-family:var(--font-display);font-size:clamp(2.85rem,6vw,4.75rem);font-weight:700;letter-spacing:-.04em;line-height:.95}.auth-brand-line{margin:0;max-width:16ch;color:#e8f3fbc7;font-size:clamp(1.05rem,1.6vw,1.35rem);font-weight:500;line-height:1.45;animation:auth-brand-enter .7s cubic-bezier(.22,1,.36,1) .12s both}.auth-panel{display:flex;flex-direction:column;justify-content:center;width:100%;max-width:none;margin:0;padding:clamp(28px,5vw,56px) clamp(24px,5vw,64px);border:0;border-radius:0;background:linear-gradient(180deg,#fffffffa,#f7fafc);box-shadow:-24px 0 64px #0818282e;animation:auth-panel-enter .75s cubic-bezier(.22,1,.36,1) 80ms both}.auth-panel>*{width:min(100%,420px);margin-left:auto;margin-right:auto}.auth-panel h1{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:clamp(1.75rem,2.2vw,2.15rem);font-weight:700;letter-spacing:-.03em;line-height:1.15}.auth-brand{margin:0 0 18px;color:var(--accent-dark);font-size:18px;font-weight:900;letter-spacing:0}.auth-copy{margin:10px 0 26px;color:var(--muted);font-size:1.02rem;line-height:1.55}.auth-form{display:grid;gap:16px}.auth-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.auth-form label{display:grid;gap:7px;color:var(--accent-dark);font-size:13px;font-weight:700;letter-spacing:.01em}.auth-form input{width:100%;min-height:46px;padding:0 14px;border:1px solid #c9d5df;border-radius:8px;background:#fff;color:var(--ink);transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.auth-form input:hover{border-color:#a9bccb}.auth-form input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #057dcd29;background:#fff}.primary-action,.secondary-action{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;box-sizing:border-box;min-height:46px;padding:0 16px;border-radius:8px;border:1px solid transparent;font:inherit;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease}.primary-action{color:#fff;background:var(--accent);box-shadow:0 10px 24px #057dcd38}.primary-action:hover:not(:disabled){background:#046db4;transform:translateY(-1px)}.auth-button-link{display:inline-grid;place-items:center;text-decoration:none}.auth-button-link:hover{text-decoration:none}.primary-action:disabled{cursor:wait;opacity:.72;transform:none;box-shadow:none}.secondary-action{color:var(--accent-dark);background:#fff;border-color:var(--line)}.secondary-action:hover{border-color:#b7c6d2;background:#f8fbfd;text-decoration:none}a.secondary-action:visited{color:var(--accent-dark)}.auth-links,.auth-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-top:20px}.auth-page .auth-links a{color:var(--accent);font-weight:600;text-underline-offset:3px}.auth-page .auth-links a:hover{color:var(--accent-dark)}.auth-actions{align-items:stretch}.auth-email{margin:-10px 0 18px;color:var(--accent-dark);font-weight:700}@keyframes auth-atmosphere-drift{0%{transform:scale(1) translateZ(0)}to{transform:scale(1.04) translate3d(-1.5%,1%,0)}}@keyframes auth-brand-enter{0%{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes auth-panel-enter{0%{opacity:0;transform:translate3d(24px,0,0)}to{opacity:1;transform:translateZ(0)}}@media(max-width:860px){.auth-stage{grid-template-columns:1fr;grid-template-rows:auto 1fr}.auth-brand-panel{justify-content:flex-end;min-height:34vh;padding:36px 24px 28px}.auth-brand-panel .auth-brand{font-size:clamp(2.6rem,12vw,3.6rem)}.auth-brand-line{max-width:22ch}.auth-panel{border-radius:24px 24px 0 0;box-shadow:0 -18px 48px #08182838;animation-name:auth-panel-enter-mobile}.auth-form-row{grid-template-columns:1fr}}@keyframes auth-panel-enter-mobile{0%{opacity:0;transform:translate3d(0,24px,0)}to{opacity:1;transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){.auth-atmosphere,.auth-brand-panel,.auth-brand-line,.auth-panel{animation:none}.primary-action:hover:not(:disabled){transform:none}}.form-error,.form-success{margin:0;padding:10px 12px;border-radius:6px;font-size:14px;line-height:1.35}.form-error{color:#8a1f1f;background:#fdecec}.form-success{color:var(--success);background:#e9f6f1}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 28px;background:var(--panel);border-bottom:1px solid var(--line)}.eyebrow{margin:0 0 2px;font-size:12px;font-weight:700;color:var(--success);text-transform:uppercase;letter-spacing:0}h1{margin:0;font-size:24px;line-height:1.15;letter-spacing:0}.view-switcher{display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:#f9fbfc}.view-button{min-width:96px;min-height:36px;padding:0 14px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:14px;font-weight:700;cursor:pointer}.view-button:hover{color:var(--accent-dark);background:var(--accent-soft)}.view-button.is-active{color:#fff;background:var(--accent)}.patient-chart-page{display:flex;flex-direction:column;gap:0;min-width:0;min-height:0;width:100%;height:100%;max-height:100%;margin:0;padding:0;box-sizing:border-box;overflow:hidden;background:#fff}.patient-workspace-main:has(.patient-chart-persistent-host[data-chart-visible=true] .patient-chart-page){align-content:stretch;min-height:0;height:100%;width:100%;max-width:none;padding:0;gap:0;overflow:hidden;background:#fff}.patient-chart-page--overview-tooth{width:100%;padding-top:0;height:100%;min-width:0;min-height:0;margin:0}.patient-workspace-shell:has(.patient-chart-persistent-host[data-chart-visible=true] .patient-chart-page--overview-tooth){height:100vh;min-height:100vh;overflow:hidden}.patient-workspace-shell:has(.patient-chart-persistent-host[data-chart-visible=true] .patient-chart-page--overview-tooth) .patient-sidebar{height:100%;min-height:0}.patient-workspace-main:has(.patient-chart-persistent-host[data-chart-visible=true] .patient-chart-page--overview-tooth){align-content:stretch;min-height:0;height:100%;width:100%;padding:0;gap:0;overflow:hidden}.patient-chart-page--overview-tooth .chart-shell{border-top:0;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden}.patient-chart-page--overview-tooth .chart-canvas{width:100%;height:100%;min-width:0;min-height:0;overflow:hidden}.chart-top-controls{position:relative;z-index:20;display:flex;justify-content:center;padding:10px 16px 8px;background:transparent;border-bottom:0;flex:0 0 auto}.chart-mode-cluster{position:relative;display:grid;gap:0;width:fit-content;max-width:100%;padding:5px;border:1px solid rgba(216,224,230,.95);border-radius:12px;background:linear-gradient(180deg,#f7fafc,#eef3f7);box-shadow:inset 0 1px #fffc,0 8px 20px #1e3d580f;transition:min-width .24s cubic-bezier(.22,1,.36,1),border-radius .18s ease,box-shadow .18s ease}.chart-mode-cluster--with-tools{border-bottom-left-radius:0;border-bottom-right-radius:0;box-shadow:inset 0 1px #fffc;min-width:min(980px,calc(100vw - 48px))}.chart-mode-cluster--with-tools .chart-mode-switcher{width:100%}.chart-header,.periodontal-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.chart-header h1,.periodontal-toolbar h2{margin:4px 0 0;color:var(--ink)}.chart-mode-switcher{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;width:fit-content;max-width:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.chart-mode-switcher button,.periodontal-measurement-tabs button{min-height:36px;padding:0 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-family:var(--font-ui);font-size:12.5px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:background .14s ease,color .14s ease,box-shadow .14s ease,border-color .14s ease}.chart-mode-switcher button:hover:not(:disabled):not(.active),.periodontal-measurement-tabs button:hover:not(:disabled):not(.active){color:var(--accent-dark);background:#ffffffb3}.chart-mode-switcher button.active,.periodontal-measurement-tabs button.active{border-color:#057dcd2e;background:#fff;color:var(--accent-dark);box-shadow:0 4px 12px #1e3d581a}.chart-mode-switcher button:disabled{opacity:.45;cursor:not-allowed}.chart-quickselect-actions{position:absolute;top:calc(100% - 1px);left:-1px;right:-1px;z-index:21;display:block;padding:8px 10px 10px;border:1px solid rgba(216,224,230,.95);border-top-color:#d8e0e6a6;border-radius:0 0 12px 12px;background:linear-gradient(180deg,#eef3f7,#fff 55%);box-shadow:0 14px 28px #1e3d581f;transform-origin:top center;animation:chart-quickselect-reveal .26s cubic-bezier(.22,1,.36,1) both}.chart-quickselect-actions__group{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:100%;min-width:0;animation:chart-quickselect-content .28s cubic-bezier(.22,1,.36,1) both}.chart-quickselect-actions__commands{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;overflow-x:auto;padding-bottom:1px}.chart-quickselect-actions__btn{flex:0 0 auto;min-height:32px;padding:0 12px;border:1px solid rgba(216,224,230,.95);border-radius:8px;background:#fff;color:var(--accent-dark);font-family:var(--font-ui);font-size:12px;font-weight:700;letter-spacing:.01em;cursor:pointer;white-space:nowrap;opacity:0;transform:translateY(-4px);animation:chart-quickselect-chip .32s cubic-bezier(.22,1,.36,1) both;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.chart-quickselect-actions__btn:nth-child(1){animation-delay:40ms}.chart-quickselect-actions__btn:nth-child(2){animation-delay:55ms}.chart-quickselect-actions__btn:nth-child(3){animation-delay:70ms}.chart-quickselect-actions__btn:nth-child(4){animation-delay:85ms}.chart-quickselect-actions__btn:nth-child(5){animation-delay:.1s}.chart-quickselect-actions__btn:nth-child(6){animation-delay:115ms}.chart-quickselect-actions__btn:nth-child(7){animation-delay:.13s}.chart-quickselect-actions__btn:nth-child(8){animation-delay:145ms}.chart-quickselect-actions__btn:hover:not(:disabled){background:var(--accent-soft);border-color:#057dcd59;color:var(--accent)}.chart-quickselect-actions__btn.active{border-color:#057dcd66;background:var(--accent-soft);color:var(--accent-dark);box-shadow:inset 0 -2px 0 var(--accent)}.chart-quickselect-actions__btn:disabled{animation-name:chart-quickselect-chip-disabled;cursor:not-allowed}.chart-quickselect-actions__count{margin:0;flex:0 0 auto;min-height:32px;display:inline-flex;align-items:center;padding:0 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent-dark);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;animation:chart-quickselect-chip .32s cubic-bezier(.22,1,.36,1) .16s both}@keyframes chart-quickselect-reveal{0%{opacity:0;transform:translateY(-8px) scaleY(.92)}to{opacity:1;transform:translateY(0) scaleY(1)}}@keyframes chart-quickselect-content{0%{opacity:0}to{opacity:1}}@keyframes chart-quickselect-chip{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes chart-quickselect-chip-disabled{0%{opacity:0;transform:translateY(-6px)}to{opacity:.42;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.chart-mode-cluster,.chart-quickselect-actions,.chart-quickselect-actions__group,.chart-quickselect-actions__btn,.chart-quickselect-actions__count{animation:none;transition:none;opacity:1;transform:none}}.chart-placeholder-panel{padding:22px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted)}.chart-error{margin:0 18px}.chart-shell{flex:1;min-height:0;min-width:0;position:relative;display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden;background:#fff}.chart-shell--with-sidebar{grid-template-columns:minmax(0,1fr)}.chart-canvas{min-width:0;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff}.chart-odontogram-viewport{min-width:0;max-width:calc(100% - 48px);max-height:calc(100% - 10px);display:grid;place-items:center;position:relative;width:100%;height:100%}.chart-odontogram-viewport--embedded{max-width:none;max-height:none;flex:1;min-height:0}.chart-viewport-loading{position:absolute;inset:0;z-index:6;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 42%,#e8f3fbb8,#fffffff0 58%),#fffffff0;pointer-events:auto;animation:chart-preloader-fade .22s ease both}.chart-viewport-loading--error{background:#fffffff5}.chart-viewport-error{display:grid;gap:16px;justify-items:center}.chart-preloader{display:grid;justify-items:center;gap:10px;text-align:center}.chart-preloader__orbit{position:relative;width:72px;height:72px;display:grid;place-items:center}.chart-preloader__ring{position:absolute;inset:0;border-radius:50%;border:2px solid transparent;border-top-color:var(--accent);border-right-color:#057dcd47;animation:chart-preloader-spin 1.05s cubic-bezier(.55,.1,.35,.95) infinite}.chart-preloader__ring--delayed{inset:10px;border-top-color:var(--accent-dark);border-right-color:#1e3d5833;animation-duration:1.55s;animation-direction:reverse}.chart-preloader__core{width:14px;height:14px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 6px #057dcd1f;animation:chart-preloader-pulse 1.2s ease-in-out infinite}.chart-preloader__core--error{background:#b91c1c;box-shadow:0 0 0 6px #b91c1c1f;animation:none}.chart-preloader__label{margin:4px 0 0;color:var(--accent-dark);font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:-.01em}.chart-preloader__hint{margin:0;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.02em}.chart-preloader--error .chart-preloader__label{color:#991b1b}@keyframes chart-preloader-spin{to{transform:rotate(360deg)}}@keyframes chart-preloader-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.82);opacity:.7}}@keyframes chart-preloader-fade{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.chart-preloader__ring,.chart-preloader__ring--delayed,.chart-preloader__core,.chart-viewport-loading{animation:none}}.patient-chart-engine-host--blocked{pointer-events:none}.patient-chart-engine-host{width:100%;height:100%}.chart-loading-banner{margin:0;padding:10px 16px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--accent-dark);font-size:13px;font-weight:700}.chart-full-mouth{--periodontal-scale: .49;display:grid;justify-items:center;gap:0}.chart-full-jaw{display:grid;gap:0;justify-items:center}.chart-jaw-selector{position:absolute;top:50%;right:14px;transform:translateY(-50%);display:grid;gap:8px;z-index:12}.chart-jaw-selector button{width:68px;min-height:48px;padding:5px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--accent-dark);font-size:10px;font-weight:950;line-height:1.1;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 18px #1e3d5814}.chart-jaw-selector button.active{border-color:var(--accent);background:var(--accent);color:#fff}.chart-rollback-panel{position:absolute;left:16px;bottom:16px;z-index:12}.chart-rollback-panel__toggle{min-width:64px;min-height:64px;padding:8px 10px 7px;display:grid;justify-items:center;align-content:center;gap:3px;border:1px solid rgba(216,224,230,.95);border-radius:16px;background:#fffffff5;color:var(--accent-dark);cursor:pointer;box-shadow:0 10px 24px #1e3d581a;transition:border-color .14s ease,color .14s ease,box-shadow .14s ease,transform .14s ease}.chart-rollback-panel__toggle-label{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1}.chart-rollback-panel__toggle:hover:not(:disabled){border-color:#057dcd73;color:var(--accent);box-shadow:0 12px 28px #057dcd24;transform:translateY(-1px)}.chart-rollback-panel__toggle:disabled{opacity:.42;cursor:not-allowed}.chart-rollback-panel__expanded{display:grid;gap:12px;width:min(360px,calc(100vw - 40px));padding:14px 14px 12px;border:1px solid rgba(216,224,230,.95);border-radius:16px;background:linear-gradient(160deg,rgba(5,125,205,.08),transparent 42%),#fffffffa;box-shadow:0 18px 40px #1e3d5824,0 2px #fffc inset;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transform-origin:bottom left;animation:chart-rollback-enter .24s cubic-bezier(.22,1,.36,1) both}.chart-rollback-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.chart-rollback-panel__heading{display:grid;gap:2px;min-width:0}.chart-rollback-panel__eyebrow{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.chart-rollback-panel__title{color:var(--accent-dark);font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:-.02em;line-height:1.2}.chart-rollback-panel__controls{display:flex;align-items:stretch;gap:8px}.chart-rollback-panel__nav{flex:0 0 auto;align-self:end;width:36px;height:40px;display:grid;place-items:center;margin-bottom:0;border:1px solid rgba(216,224,230,.95);border-radius:10px;background:#fff;color:var(--accent-dark);font-size:18px;font-weight:700;cursor:pointer;transition:border-color .14s ease,color .14s ease,background .14s ease}.chart-rollback-panel__nav:hover:not(:disabled){border-color:#057dcd66;background:var(--accent-soft);color:var(--accent)}.chart-rollback-panel__nav:disabled{opacity:.35;cursor:not-allowed}.chart-rollback-panel__body{flex:1;min-width:0;display:grid;gap:6px}.chart-rollback-panel__field-label{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.chart-rollback-panel__select{width:100%;min-width:0;min-height:40px;padding:0 12px;border:1px solid rgba(216,224,230,.95);border-radius:10px;background:#fff;color:var(--ink);font-family:var(--font-ui);font-size:13px;font-weight:600;box-shadow:inset 0 1px #ffffffe6}.chart-rollback-panel__select:focus{outline:none;border-color:#057dcd8c;box-shadow:0 0 0 3px #057dcd1f}.chart-rollback-panel__status{margin:0;font-size:11px;font-weight:600;color:var(--muted);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-rollback-panel__status--error{color:#b91c1c}.chart-rollback-panel__status--preview{color:var(--accent-dark)}.chart-rollback-panel__close{flex:0 0 auto;width:30px;height:30px;display:grid;place-items:center;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer;transition:background .14s ease,color .14s ease,border-color .14s ease}.chart-rollback-panel__close:hover{border-color:#d8e0e6f2;background:#fff;color:var(--accent-dark)}@keyframes chart-rollback-enter{0%{opacity:0;transform:translate3d(0,10px,0) scale(.96)}to{opacity:1;transform:translateZ(0) scale(1)}}@media(prefers-reduced-motion:reduce){.chart-rollback-panel__expanded{animation:none}}.chart-historical-indicator{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:12;display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;background:var(--accent-dark);color:#fff;font-size:12px;font-weight:700;letter-spacing:.02em;box-shadow:0 8px 18px #1e3d582e;pointer-events:none;white-space:nowrap}.chart-context-sidebar{position:fixed;top:0;right:0;bottom:0;height:100dvh;z-index:80;width:clamp(360px,20vw,400px);max-width:min(400px,92vw);min-height:0;display:flex;flex-direction:column;gap:12px;padding:16px;border-left:1px solid var(--line);background:#fff;box-shadow:-18px 0 34px #0f172a1a;overflow:hidden;transform:translate(100%);transition:transform .22s ease-out;will-change:transform}.chart-context-sidebar--open{transform:translate(0)}.chart-context-sidebar__body{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.chart-context-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-shrink:0}.chart-context-header--periodontal{align-items:center}.chart-context-header__nav{display:flex;gap:4px;flex-shrink:0}.chart-context-header__nav-btn{width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--accent-dark);font-size:16px;font-weight:800;cursor:pointer}.chart-context-header__nav-btn:hover{border-color:var(--accent);color:var(--accent)}.chart-context-header__title-wrap{flex:1;min-width:0;text-align:center}.chart-context-header--periodontal .chart-context-header__title-wrap{text-align:center}.chart-context-sidebar__footer{flex-shrink:0;display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.chart-context-sidebar__toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.chart-context-sidebar__toggle-label{font-size:12px;font-weight:800;color:var(--ink)}.chart-context-sidebar__toggle{position:relative;width:40px;height:22px;border:none;border-radius:999px;background:#cbd5e1;cursor:pointer;padding:0}.chart-context-sidebar__toggle--on{background:var(--accent)}.chart-context-sidebar__toggle-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0f172a33;transition:transform .2s ease}.chart-context-sidebar__toggle--on .chart-context-sidebar__toggle-thumb{transform:translate(18px)}.chart-context-sidebar__next-tooth{width:100%;min-height:44px;border:none;border-radius:10px;background:var(--accent);color:#fff;font-size:13px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.chart-context-sidebar__next-tooth:hover{background:var(--accent-dark)}.chart-context-sidebar__footer--pathology{display:flex;flex-direction:column;gap:10px}.chart-context-sidebar__save-pathology{width:100%;min-height:44px;border:none;border-radius:10px;background:var(--accent);color:#fff;font-size:13px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.chart-context-sidebar__save-pathology:hover:not(:disabled){background:var(--accent-dark)}.chart-context-sidebar__save-pathology:disabled{opacity:.55;cursor:not-allowed}.pathology-panel{display:flex;flex-direction:column;gap:12px}.periodontal-panel__meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.chart-context-header h2{margin:4px 0 0;color:var(--ink);font-size:20px}.chart-context-actions{display:flex;flex-wrap:wrap;gap:8px}.chart-context-actions .secondary-action,.chart-context-actions .primary-action{min-height:34px;padding-inline:10px;font-size:12px}.chart-context-meta{margin:-4px 0 0;color:var(--muted);font-size:12px;font-weight:800}.chart-sidebar-placeholder{display:grid;align-content:start;gap:8px;color:var(--muted)}.chart-sidebar-placeholder h3{margin:0;color:var(--ink)}.periodontal-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,360px);gap:16px;align-items:start}.periodontal-panel,.periodontal-history-drawer{border:1px solid var(--line);border-radius:8px;background:#fff}.periodontal-main{min-width:0;padding:0;background:transparent}.periodontal-toolbar{margin-bottom:12px;padding-right:16px}.periodontal-toolbar p{margin:5px 0 0;color:var(--muted);font-size:13px;font-weight:700}.periodontal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.periodontal-summary-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:16px}.periodontal-summary-strip div{display:grid;gap:2px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.periodontal-summary-strip span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.periodontal-summary-strip strong{color:var(--ink);font-size:18px}.periodontal-chart-stage{min-width:0;overflow:auto;padding:2px 12px 4px 0}.periodontal-reference-chart{--periodontal-scale: .49;--periodontal-legend-width: 72px;width:max-content;min-width:1320px;display:grid;gap:0;padding:0 10px 12px 0}.chart-full-mouth .periodontal-tooth-row{margin-left:0}.chart-full-mouth .periodontal-tooth-row--root{margin-bottom:-4px}.chart-full-mouth .periodontal-tooth-row--occlusal{margin-top:-2px}.periodontal-jaw-block{display:grid;justify-items:start;gap:0}.periodontal-jaw-block h3{width:calc((var(--jaw-width) * var(--periodontal-scale)) + var(--periodontal-legend-width));margin:0 0 18px;color:#334155;font-size:26px;font-weight:400;letter-spacing:0;text-align:center;text-transform:none}.periodontal-jaw-block--lower{margin-top:2px}.periodontal-indicator-region,.periodontal-graph-field,.periodontal-tooth-row{width:calc(var(--jaw-width) * var(--periodontal-scale));margin-left:var(--periodontal-legend-width)}.periodontal-projection-graph{position:relative;width:calc(var(--jaw-width) * var(--periodontal-scale));margin-left:var(--periodontal-legend-width);isolation:isolate}.chart-full-mouth .periodontal-projection-graph{margin-left:0}.periodontal-projection-graph .periodontal-tooth-row{position:relative;z-index:2;margin-left:0}.periodontal-indicator-region{position:relative;display:grid;grid-template-columns:var(--periodontal-legend-width) max-content;gap:0;width:calc((var(--jaw-width) * var(--periodontal-scale)) + var(--periodontal-legend-width));margin-left:0}.periodontal-indicator-legend{display:grid;grid-template-rows:repeat(3,12px);align-content:end;gap:6px;padding:13px 11px 0 0;color:var(--muted);font-size:8px;font-weight:800;line-height:1;text-align:right}.periodontal-indicator-legend span:nth-child(1){color:#4a90e2}.periodontal-indicator-legend span:nth-child(2){color:#d0021b}.periodontal-indicator-legend span:nth-child(3){color:#f8c400}.periodontal-indicator-rows{display:grid;gap:3px}.periodontal-indicator-row,.periodontal-tooth-row{display:flex;align-items:center;gap:0;padding:0;margin-block:0;list-style:none}.periodontal-indicator-slot,.periodontal-tooth-slot{flex:0 0 calc(var(--slot-width) * var(--periodontal-scale));width:calc(var(--slot-width) * var(--periodontal-scale));min-width:calc(var(--slot-width) * var(--periodontal-scale));position:relative;display:grid;justify-items:center}.periodontal-indicator-side{min-height:11px;color:#94a3b8;font-size:7px;font-weight:900;line-height:1}.periodontal-graph-field{position:relative;height:calc(576px * var(--periodontal-scale));background:transparent;overflow:hidden}.periodontal-graph-field--projection{position:absolute;inset:0;z-index:3;width:100%;height:100%;margin-left:0;background:transparent;overflow:visible;pointer-events:none}.periodontal-graph-field--buccal{margin-top:-2px}.periodontal-graph-overlay{width:100%;height:100%;display:block}.periodontal-ruler line{stroke:#7a84994f;stroke-dasharray:8 4;stroke-width:3;vector-effect:non-scaling-stroke}.periodontal-ruler .periodontal-ruler-line--major{stroke:#7a84996b;stroke-dasharray:none;stroke-width:5}.periodontal-ruler-label{fill:#7a84994d;font:26px Arial,sans-serif;pointer-events:none;-webkit-user-select:none;user-select:none}.periodontal-curve-area{fill:#33a6de73}.periodontal-curve-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:6;vector-effect:non-scaling-stroke}.periodontal-curve-line--probing{stroke:#33a5de}.periodontal-curve-line--margin{stroke:#e13830}.periodontal-tooth-row{align-items:stretch}.periodontal-tooth-row--root{align-items:end}.periodontal-tooth-row--occlusal{align-items:start}.periodontal-tooth-row--numbers{margin-top:2px}.periodontal-tooth-slot.missing{opacity:.42}.periodontal-tooth-button{width:100%;min-height:34px;display:grid;justify-items:center;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer}.periodontal-tooth-slot.selected .periodontal-tooth-button{border-color:transparent;background:transparent;box-shadow:none}.periodontal-tooth-row .tooth-projection[data-projection=buccal],.periodontal-tooth-row .tooth-projection[data-projection=lingual],.periodontal-tooth-row .tooth-projection[data-projection=palatal]{height:calc(576px * var(--periodontal-scale))}.periodontal-tooth-row .tooth-projection[data-projection=incisal]{height:calc(260px * var(--periodontal-scale))}.periodontal-tooth-row .tooth-canvas{width:100%;height:100%;object-fit:contain}.periodontal-tooth-number{display:grid;place-items:center;width:28px;height:28px;margin:6px 0;border:0;border-radius:999px;background:transparent;color:#4d5565;font-size:12px;font-weight:500}.periodontal-mini-grid{display:grid;grid-template-columns:repeat(3,12px);grid-auto-rows:12px;gap:6px 4px}.periodontal-indicator{width:12px;height:12px;border:2px solid #4d5565;border-radius:999px;background:transparent;box-sizing:border-box}.periodontal-indicator--unknown{opacity:.35}.periodontal-indicator--negative{opacity:.95;background:#fff}.periodontal-indicator--positive{opacity:1;border-color:transparent}.periodontal-indicator--plaque{background:#4a90e2}.periodontal-indicator--bleeding{background:#d0021b}.periodontal-indicator--pus{background:#f8e71c}.periodontal-indicator--not-applicable{border-style:dashed;background:transparent;opacity:.24}.periodontal-panel{position:sticky;top:18px;display:grid;gap:16px;padding:18px}.chart-context-sidebar .periodontal-panel{position:static;border:0;border-radius:0;padding:0;background:transparent}.periodontal-panel.readonly{background:#f8fafc}.periodontal-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.periodontal-panel h2{margin:4px 0 0;color:var(--ink)}.status-pill{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent-dark);font-size:12px;font-weight:900}.status-pill.neutral{background:#e5e7eb;color:#475569}.periodontal-site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.periodontal-site-card{min-height:76px;display:grid;gap:4px;place-items:center;padding:9px 6px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;text-align:center}.periodontal-site-card strong{color:var(--ink);font-size:24px;line-height:1}.periodontal-site-card span{color:var(--muted);font-size:11px;font-weight:850;line-height:1.15}.periodontal-site-card small{min-height:10px;display:flex;gap:4px}.periodontal-site-card.selected{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.periodontal-site-card--not-applicable{border-style:dashed;background:#f3f4f6}.dot{width:8px;height:8px;border-radius:999px}.dot.plaque{background:var(--periodontal-plaque)}.dot.bleeding{background:var(--periodontal-bleeding)}.dot.pus{background:var(--periodontal-pus)}.dot.tartar{background:var(--periodontal-tartar)}.periodontal-measurement-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.periodontal-value-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.periodontal-value-grid--margin{grid-template-columns:repeat(5,minmax(0,1fr));max-height:190px;overflow:auto}.periodontal-empty{min-height:44px;border:1px solid var(--line);border-radius:8px;background:#f3f4f6;opacity:.4}.periodontal-site-card__gm-row{width:100%;display:flex;justify-content:center}.periodontal-gm-pill{display:inline-flex;align-items:center;justify-content:center;min-height:18px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:11px;font-weight:900;line-height:1.1}.periodontal-value-grid button{min-height:44px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:900;cursor:pointer}.periodontal-value-grid button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark)}.periodontal-value-grid button:disabled,.periodontal-finding:disabled{cursor:not-allowed;opacity:.58}.periodontal-findings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.periodontal-finding{position:relative;min-height:44px;display:flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);cursor:pointer}.periodontal-finding--bleeding{grid-column:1 / -1;--periodontal-finding-color: var(--periodontal-bleeding)}.periodontal-finding--plaque{--periodontal-finding-color: var(--periodontal-plaque)}.periodontal-finding--pus{--periodontal-finding-color: var(--periodontal-pus)}.periodontal-finding--tartar{--periodontal-finding-color: var(--periodontal-tartar)}.periodontal-finding[aria-pressed=true]{border-color:var(--periodontal-finding-color);background:color-mix(in srgb,var(--periodontal-finding-color) 12%,#fff)}.periodontal-finding[aria-pressed=true]:after{content:"";position:absolute;top:8px;right:8px;width:10px;height:10px;border-radius:50%;background:var(--periodontal-finding-color)}.periodontal-finding strong{font-size:13px;font-weight:700;line-height:1.2;text-align:center}.periodontal-tooth-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.periodontal-curve{width:100%;height:80px;border:1px solid var(--line);border-radius:8px;background:#fff}.periodontal-history-drawer{width:min(680px,100%);max-height:88vh;display:grid;grid-template-rows:auto minmax(0,1fr);box-shadow:0 24px 70px #0f172a33}.periodontal-history-body{display:grid;gap:12px;overflow:auto;padding:18px 22px 22px}.periodontal-history-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:8px}.periodontal-history-item div:first-child{display:grid;gap:3px;color:var(--muted);font-size:12px}.periodontal-history-item strong{color:var(--ink);font-size:14px}.periodontal-history-stats{display:flex;flex-wrap:wrap;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.periodontal-finalize-modal{width:min(620px,100%)}.periodontal-finalize-body{display:grid;gap:14px}.periodontal-completion-option{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-weight:800}.empty-text{margin:0;color:var(--muted)}.chart-workspace{min-width:0;min-height:0;display:grid;place-items:center;padding:22px;overflow:auto}.chart-workspace{min-height:0;overflow:auto}.chart-workspace--embedded,.chart-odontogram-viewport--embedded{position:relative;width:100%;min-height:min(78vh,920px);height:min(78vh,920px)}.odontogram--embedded{width:100%;height:100%}.patient-chart-engine{position:relative;display:grid;place-items:center;width:100%;height:100%;min-height:0;background:#fff;overflow:hidden}.patient-chart-engine__frame{display:block;width:100%;height:100%;border:0;background:transparent}.chart-loading-banner{position:absolute;top:12px;left:12px;z-index:2;margin:0;padding:8px 12px;border-radius:6px;background:#ffffffeb;color:var(--muted);font-size:13px;box-shadow:0 8px 18px #1e3d5814}.odontogram{width:max-content;max-width:100%}.jaw-stage{width:max-content;max-width:100%;padding:24px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 18px 48px #1e3d5814;overflow:auto}.jaw-stage[data-layout=single]{padding-block:30px}.jaw{display:flex;align-items:center;justify-content:center;gap:0;padding:0;margin:0;list-style:none}.jaw+.jaw{margin-top:28px}.tooth{flex:0 0 calc(var(--slot-width) * var(--tooth-scale));width:calc(var(--slot-width) * var(--tooth-scale));min-width:calc(var(--slot-width) * var(--tooth-scale));display:flex;flex-direction:column;align-items:center;position:relative}.tooth-view{display:flex;flex-direction:column;align-items:center;width:100%;padding:0;border:0;background:transparent;cursor:pointer}.tooth-view:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:6px}.tooth-projection{width:100%;display:grid;place-items:center;background:transparent}.tooth-projection[data-projection=buccal],.tooth-projection[data-projection=lingual],.tooth-projection[data-projection=palatal]{height:calc(532px * var(--tooth-scale))}.tooth-projection[data-projection=incisal]{height:calc(260px * var(--tooth-scale))}.tooth-canvas{display:block;width:100%;height:auto;-webkit-user-select:none;user-select:none;pointer-events:none}.tooth-number{display:grid;place-items:center;width:34px;height:34px;margin:8px 0;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--accent-dark);font-size:14px;font-weight:800;line-height:1}.tooth:focus-within .tooth-number,.tooth:hover .tooth-number{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.jaw-label{margin:0 0 12px;color:var(--muted);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0}@media(max-width:900px){:root{--tooth-scale: .28}.topbar{align-items:stretch;flex-direction:column;padding:16px}.view-switcher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.view-button{min-width:0;padding:0 8px;font-size:13px}.chart-workspace{padding:12px;place-items:start center}.jaw-stage{padding:16px}}@media(min-width:1400px){:root{--tooth-scale: .38}}@media(max-width:1500px){.chart-full-mouth,.periodontal-reference-chart{--periodontal-scale: .33}.chart-context-sidebar{width:clamp(360px,20vw,400px);max-width:min(400px,92vw)}}.past-due-banner{width:min(720px,calc(100vw - 32px));margin:0 auto 16px;padding:12px 14px;border:1px solid #c77700;border-radius:8px;background:#fff7e6;color:#5f3b00;font-weight:600}.onboarding-shell{min-height:100vh;padding:40px 16px;display:grid;place-items:start center;background:#f7f8fb}.onboarding-panel{width:min(760px,100%);padding:28px;border:1px solid #d7dce5;border-radius:8px;background:#fff}.onboarding-steps{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:18px 0 24px;list-style:none}.onboarding-steps li{padding:6px 10px;border:1px solid #d7dce5;border-radius:999px;font-size:13px}.onboarding-steps li.active{border-color:#1d4ed8;color:#1d4ed8;font-weight:700}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.choice-card{min-height:140px;padding:18px;border:1px solid #d7dce5;border-radius:8px;background:#fff;text-align:left;cursor:pointer}.choice-card strong,.choice-card span{display:block}.choice-card span{margin-top:8px;color:#526071}.review-stack{display:grid;gap:10px}.main-app-shell{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;display:grid;grid-template-columns:248px minmax(0,1fr);overflow:hidden;background:radial-gradient(ellipse 80% 50% at 100% 0%,rgba(5,125,205,.07),transparent 55%),linear-gradient(180deg,#eef3f6,#f4f7f8 42%,#eef2f5);font-family:var(--font-ui)}.app-sidebar{position:relative;height:100%;min-height:0;display:flex;flex-direction:column;padding:22px 14px;overflow:hidden;border-right:1px solid rgba(216,224,230,.9);background:linear-gradient(180deg,#fff,#f8fbfd);box-shadow:8px 0 28px #1e3d580a}.sidebar-brand{padding:4px 12px 26px}.sidebar-brand-mark{color:var(--accent-dark);font-family:var(--font-display);font-size:1.35rem;font-weight:700;letter-spacing:-.04em;line-height:1}.sidebar-nav{display:grid;gap:4px}.sidebar-bottom{margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}.sidebar-link{position:relative;display:flex;align-items:center;min-height:42px;padding:0 12px;border-radius:8px;color:#405468;font-weight:600;letter-spacing:-.01em;text-decoration:none;transition:background-color .16s ease,color .16s ease}.sidebar-link:hover{background:#e8f3fbd9;color:var(--accent-dark);text-decoration:none}.sidebar-link.router-link-active{background:var(--accent-soft);color:var(--accent-dark);font-weight:700;text-decoration:none}.sidebar-link.router-link-active:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:999px;background:var(--accent)}.sidebar-button{width:100%;border:0;background:transparent;cursor:pointer;text-align:left}.app-main{min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden}.app-context-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0;padding:14px 28px;border-bottom:1px solid rgba(216,224,230,.95);background:#ffffffdb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.context-selectors{min-width:0;display:flex;flex-wrap:wrap;gap:22px}.context-selectors label,.context-selectors div{display:grid;gap:3px}.context-selectors span{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.context-selectors strong,.context-selectors select{color:var(--ink);font-weight:600;letter-spacing:-.01em}.context-selectors select{min-height:34px;min-width:180px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff}.profile-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:10px;padding:6px 10px 6px 6px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--accent-dark);font-weight:600;letter-spacing:-.01em}.profile-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(145deg,var(--accent),#1e3d58);color:#fff;font-size:12px;font-weight:700}.profile-avatar-image{width:32px;height:32px;border-radius:50%;object-fit:cover}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.panel-card{padding:20px 22px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:14px;background:#fff;box-shadow:0 1px 2px #0f172a0a,0 10px 28px #1e3d580a}.my-profile-page{max-width:1120px;margin:0 auto;display:grid;gap:22px}.my-profile-page-header .module-eyebrow{margin-bottom:8px;color:var(--accent);font-weight:800}.my-profile-page-header h1{margin:0 0 8px;color:var(--accent-dark);font-family:var(--font-display, inherit);font-size:clamp(1.75rem,2.2vw,2.2rem);font-weight:700;letter-spacing:-.03em;line-height:1.15}.my-profile-page-header p{margin:0;color:var(--muted);max-width:40rem;font-size:.98rem;line-height:1.5}.my-profile-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;flex-wrap:wrap;padding:22px 24px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 8%,white),transparent 46%),#fff;box-shadow:0 12px 32px #1e3d580d}.my-profile-identity{display:flex;gap:18px;align-items:center;min-width:0}.my-profile-identity h2{margin:0 0 6px;color:var(--accent-dark);font-family:var(--font-display, inherit);font-size:clamp(1.35rem,1.8vw,1.55rem);font-weight:700;letter-spacing:-.02em;line-height:1.2}.my-profile-avatar,.my-profile-avatar-image{width:76px;height:76px;border-radius:50%;flex:0 0 auto}.my-profile-avatar{display:grid;place-items:center;background:linear-gradient(145deg,var(--accent),#0f2a3f);color:#fff;font-weight:700;font-size:1.25rem;letter-spacing:.02em;box-shadow:inset 0 0 0 1px #057dcd2e}.my-profile-avatar-image{object-fit:cover;border:1px solid var(--line)}.my-profile-subline{display:flex;flex-wrap:wrap;gap:0;margin:0 0 4px;color:var(--muted);font-size:.92rem;line-height:1.4}.my-profile-subline>*+*:before{content:"·";margin:0 .45rem;color:var(--line-strong, #b8c2cc)}.my-profile-specialization{margin:8px 0 0;color:var(--ink);font-size:.92rem;font-weight:600}.my-profile-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 0;font-size:.88rem}.my-profile-status-label{color:var(--muted);font-weight:600}.my-profile-status-badge{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;font-size:.78rem;font-weight:800;letter-spacing:.02em}.my-profile-status-badge[data-status=active]{color:#166534;background:#ecfdf5;border:1px solid #a7f3d0}.my-profile-status-badge[data-status=inactive]{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa}.my-profile-actions{display:flex;flex-wrap:wrap;gap:10px}.my-profile-actions .primary-action,.my-profile-actions .secondary-action{min-height:42px;padding-inline:16px;border-radius:10px}.my-profile-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.my-profile-layout .panel-card{display:flex;flex-direction:column;gap:4px;min-height:100%}.my-profile-layout .panel-card h2{margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid color-mix(in srgb,var(--line) 85%,transparent);color:var(--accent-dark);font-family:var(--font-display, inherit);font-size:.78rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.my-profile-dl{display:grid;gap:0;margin:0}.my-profile-dl>div{display:grid;grid-template-columns:minmax(128px,36%) minmax(0,1fr);gap:12px 16px;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 75%,transparent)}.my-profile-dl>div:last-child{border-bottom:0;padding-bottom:0}.my-profile-dl>div:first-child{padding-top:0}.my-profile-dl dt{color:var(--muted);font-size:.84rem;font-weight:700;line-height:1.4}.my-profile-dl dd{margin:0;display:grid;gap:4px;color:var(--ink);font-size:.95rem;font-weight:500;line-height:1.45;word-break:break-word}.my-profile-dl a{color:var(--accent);font-weight:600;text-decoration:none}.my-profile-dl a:hover{text-decoration:underline;text-underline-offset:2px}.my-profile-managed{color:var(--muted);font-size:.8rem;font-weight:500;line-height:1.35}.my-profile-list{margin:0;padding-left:1.1rem}.my-profile-layout .panel-card .secondary-action{align-self:flex-start;margin-top:16px;min-height:40px}.my-profile-skeleton-wrap{display:grid;gap:16px}.my-profile-skeleton{min-height:140px;border-radius:14px;background:linear-gradient(90deg,#eef2f5 25%,#f7f9fb,#eef2f5 75%);background-size:200% 100%;animation:my-profile-shimmer 1.2s linear infinite}.my-profile-skeleton.hero-skeleton{min-height:128px}.my-profile-skeleton-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@keyframes my-profile-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.my-profile-error{display:grid;gap:10px;max-width:420px}.my-profile-drawer-backdrop,.my-profile-modal-backdrop{position:fixed;inset:0;z-index:60;background:#0f172a73;display:grid;justify-items:end}.my-profile-modal-backdrop{place-items:center;justify-items:center;align-content:safe center;padding:24px 16px;overflow-y:auto;overscroll-behavior:contain;position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-height:100dvh!important;z-index:200}.my-profile-drawer{width:min(540px,100vw);height:100%;overflow:auto;background:#fff;padding:22px 24px 36px;box-shadow:-16px 0 48px #0f172a29}.my-profile-modal{width:min(440px,calc(100vw - 32px));background:#fff;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:14px;padding:22px;display:grid;gap:14px;box-shadow:0 28px 64px #0f172a2e}.my-profile-drawer-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid color-mix(in srgb,var(--line) 85%,transparent)}.my-profile-drawer-header h2{margin:0;color:var(--accent-dark);font-size:1.2rem;letter-spacing:-.02em}.my-profile-edit-form{display:grid;gap:18px}.my-profile-edit-form fieldset{margin:0;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;padding:16px;display:grid;gap:12px;background:#fbfcfd}.my-profile-edit-form legend{padding:0 8px;color:var(--accent-dark);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.my-profile-edit-form label{display:grid;gap:7px;color:var(--accent-dark);font-weight:700;font-size:.82rem}.my-profile-edit-form input,.my-profile-edit-form select,.my-profile-edit-form textarea{width:100%;box-sizing:border-box;min-height:42px;font:inherit;font-size:.92rem;font-weight:500;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);transition:border-color .14s ease,box-shadow .14s ease}.my-profile-edit-form textarea{min-height:96px;resize:vertical;line-height:1.45}.my-profile-edit-form input:focus,.my-profile-edit-form select:focus,.my-profile-edit-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.my-profile-edit-form input:disabled{background:#f3f6f8;color:var(--muted)}.my-profile-check-group{margin:0;padding:12px 14px 14px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:10px;background:#fff}.my-profile-check-group>legend{padding:0 6px;color:var(--accent-dark);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.my-profile-check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.my-profile-check{display:flex!important;align-items:flex-start;gap:10px;margin:0;min-height:36px;padding:8px 10px;border:1px solid transparent;border-radius:8px;color:var(--ink);font-size:.9rem!important;font-weight:500!important;line-height:1.35;cursor:pointer;transition:background-color .14s ease,border-color .14s ease}.my-profile-check:hover{border-color:color-mix(in srgb,var(--line) 70%,var(--accent));background:#f8fbfd}.my-profile-check input[type=checkbox]{width:16px!important;min-width:16px;max-width:16px;height:16px!important;min-height:16px!important;margin:2px 0 0;padding:0!important;flex:0 0 auto;accent-color:var(--accent);border-radius:4px;box-shadow:none!important}.my-profile-check span{flex:1 1 auto;min-width:0;text-align:left}@media(max-width:520px){.my-profile-check-list{grid-template-columns:1fr}}.my-profile-drawer-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:8px;padding-top:16px;border-top:1px solid color-mix(in srgb,var(--line) 85%,transparent)}.my-profile-error h2{margin:0}@media(max-width:900px){.my-profile-layout,.my-profile-skeleton-grid{grid-template-columns:1fr}.my-profile-dl>div,.my-profile-dl>div.my-profile-span{grid-template-columns:1fr}}.app-content{min-width:0;min-height:0;padding:28px 32px 40px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.app-content:has(.patient-workspace-shell){padding:0}.module-placeholder{max-width:720px;padding:26px;border:1px solid var(--line);border-radius:8px;background:#fff}.module-placeholder h1{margin-bottom:10px}.module-placeholder p{margin:0;color:var(--muted);line-height:1.5}.placeholder-kicker{margin-bottom:8px!important;color:var(--accent)!important;font-size:13px;font-weight:900;text-transform:uppercase}.profile-summary{display:grid;gap:12px;margin:20px 0 0}.profile-summary div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px}.profile-summary dt{color:var(--muted);font-weight:800}.profile-summary dd{margin:0;font-weight:700}.settings-list{margin:18px 0 0;padding-left:20px}.settings-shell{width:100%;max-width:1180px;margin:0 auto;display:grid;gap:22px;animation:dashboard-enter .52s cubic-bezier(.22,1,.36,1) both}.settings-shell__header{padding:22px 24px;border:1px solid rgba(216,224,230,.95);border-radius:16px;background:linear-gradient(145deg,rgba(5,125,205,.08),transparent 44%),#fffffff5;box-shadow:0 12px 32px #1e3d580d}.settings-shell__header .module-eyebrow{margin:0 0 8px;color:var(--accent);font-weight:800}.settings-shell__header h1{margin:0 0 8px;color:var(--accent-dark);font-family:var(--font-display);font-size:clamp(1.75rem,2.2vw,2.2rem);font-weight:700;letter-spacing:-.03em;line-height:1.15}.settings-shell__header p{margin:0;max-width:42rem;color:var(--muted);font-size:.98rem;line-height:1.5;font-weight:500}.settings-shell__layout{display:grid;grid-template-columns:minmax(188px,220px) minmax(0,1fr);gap:18px;align-items:start}.settings-shell__nav{position:sticky;top:16px;display:grid;gap:4px;padding:10px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff5;box-shadow:0 10px 28px #1e3d580a}.settings-shell__nav-link{display:flex;align-items:center;min-height:42px;padding:0 12px;border-radius:10px;color:var(--muted);text-decoration:none;font-weight:700;font-size:13.5px;letter-spacing:-.01em;transition:background-color .14s ease,color .14s ease}.settings-shell__nav-link:hover{background:#057dcd12;color:var(--accent-dark);text-decoration:none}.settings-shell__nav-link.router-link-active{background:var(--accent-soft);color:var(--accent-dark);box-shadow:inset 3px 0 0 var(--accent)}.settings-shell__main,.settings-panel{min-width:0}.settings-panel{display:grid;gap:18px;padding:22px 24px 24px;border:1px solid rgba(216,224,230,.95);border-radius:16px;background:#fffffff5;box-shadow:0 12px 32px #1e3d580d}.settings-panel__header h2{margin:0 0 6px;color:var(--accent-dark);font-family:var(--font-display);font-size:clamp(1.25rem,1.6vw,1.45rem);font-weight:700;letter-spacing:-.02em;line-height:1.2}.settings-section-title{margin:0 0 12px;color:var(--accent-dark);font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.settings-panel__header p{margin:0;color:var(--muted);font-size:.94rem;line-height:1.45;font-weight:500}.settings-panel__header--row{display:flex;justify-content:space-between;gap:16px;align-items:start;flex-wrap:wrap}.settings-section-block{display:grid;gap:12px}.settings-banner{margin:0;padding:12px 14px;border-radius:10px;border:1px solid transparent;font-size:.92rem;line-height:1.45;font-weight:600}.settings-banner--success{color:var(--success);background:#2e7d631a;border-color:#2e7d632e}.settings-banner--error,.settings-banner.form-error{color:#b42318;background:#fef3f2;border-color:#fecdca}.settings-banner--info{color:var(--accent-dark);background:var(--accent-soft);border-color:#057dcd2e}.settings-meta-bar{display:flex;flex-wrap:wrap;gap:14px 22px;padding:14px 16px;border:1px solid rgba(216,224,230,.95);border-radius:12px;background:linear-gradient(145deg,rgba(5,125,205,.05),transparent 50%),#f8fbfd}.settings-meta-bar__item{display:grid;gap:6px;min-width:0}.settings-meta-bar__label{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.settings-mono-chip,.settings-pill{display:inline-flex;align-items:center;max-width:100%;min-height:28px;padding:0 10px;border-radius:8px;border:1px solid rgba(216,224,230,.95);background:#fff;color:var(--ink);font-size:12px;font-weight:700}.settings-mono-chip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,monospace;letter-spacing:-.02em}.settings-pill{text-transform:capitalize}.settings-form{display:grid;gap:16px;width:100%}.settings-form fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin:0;padding:18px 20px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff5;box-shadow:0 8px 22px #1e3d5808}.settings-form legend{padding:0 4px;color:var(--accent-dark);font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.settings-form label{display:grid;gap:7px;color:var(--accent-dark);font-size:13px;font-weight:700;letter-spacing:.01em}.settings-form label>span:first-child{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.02em}.settings-form input,.settings-form select,.settings-form textarea{width:100%;min-height:44px;padding:0 12px;border:1px solid #c9d5df;border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-weight:500;transition:border-color .16s ease,box-shadow .16s ease}.settings-form input:hover,.settings-form select:hover,.settings-form textarea:hover{border-color:#a9bccb}.settings-form input:focus,.settings-form select:focus,.settings-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #057dcd29}.settings-form input:disabled,.settings-form input[readonly],.settings-form select:disabled{background:#f4f7f8;color:var(--muted);cursor:default}.settings-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}.settings-form__full{grid-column:1 / -1}.settings-form__actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:4px;padding-top:4px}.settings-form--compact fieldset,.settings-check-fieldset{box-shadow:none}.settings-check-fieldset{display:grid;gap:8px 14px;grid-template-columns:repeat(2,minmax(0,1fr))}.settings-field-hint{display:block;margin-top:6px;color:var(--muted);font-size:.82rem;font-weight:500;line-height:1.4}.settings-check-fieldset .settings-field-hint{grid-column:1 / -1;margin:0 0 4px}.settings-optional{color:var(--muted);font-weight:600;text-transform:none;letter-spacing:0;font-size:.85em}.settings-required{color:var(--accent)}.settings-usage-card{display:grid;gap:10px;padding:14px 16px;border:1px solid rgba(216,224,230,.95);border-radius:12px;background:linear-gradient(145deg,rgba(5,125,205,.06),transparent 48%),#f8fbfd}.settings-usage-card__top{display:flex;justify-content:space-between;gap:12px;align-items:baseline;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.settings-usage-card__top strong{color:var(--accent-dark);font-family:var(--font-display);font-size:1.05rem;letter-spacing:-.02em;text-transform:none}.settings-usage-card__hint,.settings-usage__hint,.settings-muted{margin:0;color:var(--muted);font-size:.9rem;font-weight:600}.settings-usage-track{height:8px;overflow:hidden;border-radius:999px;background:#d8e0e6d9}.settings-usage-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#0b5f9a);transition:width .28s ease}.settings-usage-fill.is-full{background:linear-gradient(90deg,#c2410c,#9a3412)}.settings-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.settings-entity-list,.settings-list-cards,.settings-source-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.settings-entity-card,.settings-list-card,.settings-source-row{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;padding:14px 16px;border:1px solid rgba(216,224,230,.95);border-radius:12px;background:#fff;transition:border-color .14s ease,box-shadow .14s ease}.settings-entity-card:hover,.settings-list-card:hover{border-color:#057dcd47;box-shadow:0 10px 24px #1e3d580d}.settings-entity-card__main{display:flex;gap:14px;align-items:center;min-width:0;flex:1 1 280px}.settings-entity-avatar{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;border-radius:12px;background:linear-gradient(145deg,var(--accent),#0f2a3f);color:#fff;font-size:.85rem;font-weight:800;letter-spacing:.02em}.settings-entity-avatar--invite{background:linear-gradient(145deg,#64748b,#334155)}.settings-entity-card__body{min-width:0}.settings-entity-card__title{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.settings-entity-card__title strong{color:var(--accent-dark);font-size:.98rem;font-weight:700;letter-spacing:-.01em}.settings-entity-card__email{margin:4px 0 0;color:var(--ink);font-size:.9rem;font-weight:600}.settings-entity-card__meta{display:flex;flex-wrap:wrap;gap:0;margin:6px 0 0;color:var(--muted);font-size:.86rem;font-weight:600;line-height:1.4}.settings-entity-card__meta>*+*:before{content:"·";margin:0 .45rem;color:#b8c2cc}.settings-entity-card__actions,.settings-list-card__actions{display:flex;gap:8px;flex-wrap:wrap}.settings-source-row{align-items:flex-start;flex-direction:column;gap:4px}.settings-source-row strong{color:var(--accent-dark);font-size:.92rem}.settings-source-row p{margin:0;color:var(--muted);font-size:.9rem;font-weight:600;line-height:1.45}.settings-check{display:flex;gap:8px;align-items:center;font-weight:600}.settings-form label.settings-check{display:flex;grid-template-columns:none;gap:8px;align-items:center;color:var(--ink);font-size:13px;font-weight:600;letter-spacing:0}.settings-check input,.settings-form label.settings-check input{width:auto;min-width:16px;min-height:16px;margin:0;padding:0;flex:0 0 auto;accent-color:var(--accent)}.settings-plan-hero{display:grid;gap:18px;padding:20px 22px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:linear-gradient(145deg,rgba(5,125,205,.09),transparent 46%),#fff;box-shadow:0 10px 28px #1e3d580a}.settings-plan-hero__title-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:6px 0 8px}.settings-plan-hero__title-row h3{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:clamp(1.45rem,2vw,1.85rem);font-weight:700;letter-spacing:-.03em;line-height:1.15}.settings-plan-hero__subline{display:flex;flex-wrap:wrap;gap:0;margin:0;color:var(--muted);font-size:.9rem;font-weight:600}.settings-plan-hero__subline>*+*:before{content:"·";margin:0 .45rem;color:#b8c2cc}.settings-plan-hero__facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding-top:14px;border-top:1px solid rgba(216,224,230,.9)}.settings-plan-hero__facts>div{display:grid;gap:4px;min-width:0}.settings-plan-hero__facts dt{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.settings-plan-hero__facts dd{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--accent-dark);font-size:.92rem;font-weight:700}.settings-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.settings-metric-card{display:grid;gap:10px;padding:16px;border:1px solid rgba(216,224,230,.95);border-radius:12px;background:#fff;box-shadow:0 8px 22px #1e3d5808}.settings-metric-card__label{margin:0;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.settings-metric-card__value{color:var(--accent-dark);font-family:var(--font-display);font-size:1.2rem;font-weight:700;letter-spacing:-.02em;line-height:1.15}.settings-metric-card__hint{margin:0;color:var(--muted);font-size:.82rem;font-weight:600}.my-profile-modal.settings-modal{width:min(100%,560px);max-height:min(920px,calc(100dvh - 32px));display:flex;flex-direction:column;gap:0;overflow:hidden;padding-bottom:0}.settings-modal__header{flex:0 0 auto;margin-bottom:12px}.settings-modal__error{flex:0 0 auto;margin:0 0 10px}.settings-modal__form.settings-form{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:0}.settings-modal__body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;display:grid;gap:14px;padding-right:2px;padding-bottom:4px;scrollbar-gutter:stable}.settings-check-fieldset--grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}.settings-check-fieldset--grid legend{grid-column:1 / -1}.settings-modal__footer{flex:0 0 auto;margin:0;padding:16px 0 22px;border-top:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:#fff}.settings-modal__header h3{margin:0 0 6px;color:var(--accent-dark);font-family:var(--font-display);font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.settings-modal__header p{margin:0;color:var(--muted);font-size:.92rem;line-height:1.45;font-weight:500}.my-profile-modal.settings-modal--confirm{width:min(100%,460px);padding-bottom:22px;overflow:visible;max-height:none}.my-profile-modal.settings-modal--confirm .settings-form__actions{margin-top:8px}.settings-panel .status-badge[data-status=active],.settings-panel .status-badge[data-status=trialing]{background:#2e7d631f;color:var(--success)}.settings-panel .status-badge[data-status=invited],.settings-panel .status-badge[data-status=pending]{background:#fff7ed;color:#9a5b12}.settings-panel .status-badge[data-status=deactivated],.settings-panel .status-badge[data-status=archived],.settings-panel .status-badge[data-status=revoked]{background:#eef1f4;color:var(--muted)}@media(max-width:980px){.settings-metric-grid,.settings-plan-hero__facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:860px){.settings-shell__layout{grid-template-columns:1fr}.settings-shell__nav{position:static;grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto}.settings-shell__nav-link.router-link-active{box-shadow:inset 0 -3px 0 var(--accent)}.settings-form fieldset,.settings-form__grid,.settings-metric-grid,.settings-plan-hero__facts{grid-template-columns:1fr}}.context-selection-page{min-height:100vh;display:grid;place-items:center;padding:24px}.context-selection-panel{width:min(100%,560px);padding:28px;border:1px solid var(--line);border-radius:8px;background:#fff}.selection-list{display:grid;gap:10px;margin-top:20px}.selection-card{min-height:72px;display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:left;cursor:pointer}.selection-card:hover{border-color:var(--accent);background:var(--accent-soft)}.selection-card span{color:var(--muted)}.patients-page,.patient-form-page{display:grid;gap:18px}.patients-page{animation:patients-page-enter .52s cubic-bezier(.22,1,.36,1) both}@keyframes patients-page-enter{0%{opacity:0}to{opacity:1}}.patients-toolbar{padding:14px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff0;box-shadow:0 10px 28px #1e3d580a}.patients-table-wrap{overflow:auto;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff5;box-shadow:0 10px 28px #1e3d580a}.data-table-wrap.patients-table-wrap{overflow-x:auto;overflow-y:visible}.patients-table{min-width:920px}.patients-table th{font-weight:700;letter-spacing:.06em}.patients-table th,.patients-table td{padding-top:14px;padding-bottom:14px}.patients-table td{font-weight:500;vertical-align:middle}.patients-table tbody tr.patients-row{cursor:pointer;transition:background-color .14s ease}.patients-table tbody tr.patients-row:hover,.patients-table tbody tr.patients-row:focus-visible{background:#e8f3fb8c;outline:none}.patients-table tbody tr.patients-row:focus-visible td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.patients-table tbody tr:last-child td{border-bottom:0}.patients-name-cell{display:inline-flex;align-items:center;gap:12px;min-width:0}.patients-avatar{display:inline-grid;place-items:center;width:36px;height:36px;flex:0 0 auto;border-radius:999px;background:linear-gradient(145deg,var(--accent-soft),#dceef8);color:var(--accent-dark);font-size:12px;font-weight:700;letter-spacing:-.02em}.patients-name-cell strong{color:var(--accent-dark);font-weight:700;letter-spacing:-.01em}.patients-actions-col{width:64px;text-align:right}.row-actions-menu{position:relative;display:inline-flex;justify-content:flex-end;width:100%}.row-actions-trigger{display:inline-grid;place-items:center;width:36px;min-height:36px;padding:0;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--accent-dark);font-size:1.25rem;font-weight:700;line-height:1;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,box-shadow .14s ease}.row-actions-trigger:hover,.row-actions-menu[data-open=true] .row-actions-trigger{border-color:#b7c6d2;background:#f8fbfd;box-shadow:0 6px 16px #1e3d5814}.row-actions-dropdown{z-index:80;display:grid;min-width:188px;padding:6px;border:1px solid rgba(216,224,230,.95);border-radius:12px;background:#fff;box-shadow:0 16px 36px #1e3d5824;animation:auth-brand-enter .18s cubic-bezier(.22,1,.36,1) both}.row-actions-menu>.row-actions-dropdown{position:absolute;top:calc(100% + 6px);right:0}.row-actions-dropdown button{display:flex;align-items:center;min-height:38px;width:100%;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--accent-dark);font:inherit;font-weight:600;letter-spacing:-.01em;text-align:left;cursor:pointer;transition:background-color .14s ease}.row-actions-dropdown button:hover{background:var(--accent-soft)}.row-actions-dropdown .row-actions-danger{color:#8a1f1f}.row-actions-dropdown .row-actions-danger:hover{background:#fdecec}.row-actions-dropdown .row-actions-separator{height:1px;margin:6px 4px;background:#d8e0e6f2}.module-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.module-header h1{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:clamp(1.75rem,2vw,2.1rem);font-weight:700;letter-spacing:-.03em;line-height:1.15}.module-header p{margin:6px 0 0;color:var(--muted);font-weight:500}.patient-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.patient-toolbar input{flex:1 1 280px;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:6px}.segmented-control{display:inline-flex;padding:4px;border:1px solid var(--line);border-radius:8px;background:#fff}.segmented-control button{min-height:32px;padding:0 12px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.segmented-control button.active,.segmented-control button.is-selected{color:#fff;background:var(--accent)}.data-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.data-table{width:100%;border-collapse:collapse;min-width:860px}.data-table th,.data-table td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.data-table th{color:var(--muted);font-size:12px;text-transform:uppercase}.status-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#e9f6f1;color:var(--success);font-size:12px;font-weight:900;text-transform:capitalize}.status-badge[data-status=archived]{background:#eef1f4;color:var(--muted)}.row-actions{display:flex;flex-wrap:wrap;gap:6px}.row-actions button,.pagination button{min-height:30px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--accent-dark);font-weight:800;cursor:pointer}.list-state{padding:24px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted)}.pagination{display:flex;gap:12px;align-items:center;justify-content:flex-end}.patient-form-page{display:grid;gap:18px;animation:patients-page-enter .52s cubic-bezier(.22,1,.36,1) both}.patient-form{display:grid;gap:16px;max-width:920px}.polished-form{width:100%}.patient-form fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin:0;padding:20px 22px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff5;box-shadow:0 10px 28px #1e3d580a}.patient-form legend{padding:0 4px;color:var(--accent-dark);font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.patient-form label{display:grid;gap:7px;color:var(--accent-dark);font-size:13px;font-weight:700;letter-spacing:.01em}.patient-form label>span{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.02em}.form-field-row{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.patient-form input,.patient-form select,.patient-form textarea{width:100%;min-height:44px;padding:0 12px;border:1px solid #c9d5df;border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-weight:500;transition:border-color .16s ease,box-shadow .16s ease}.patient-form textarea{min-height:110px;padding:12px;resize:vertical}.patient-form input:hover,.patient-form select:hover,.patient-form textarea:hover{border-color:#a9bccb}.patient-form input:focus,.patient-form select:focus,.patient-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #057dcd24}.patient-form small{color:#8a1f1f;font-weight:600}.full-field{grid-column:1 / -1}.form-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding-top:4px}.appointments-module,.appointment-panel{display:grid;gap:16px}.appointments-module,.appointment-form-panel{animation:patients-page-enter .52s cubic-bezier(.22,1,.36,1) both}.workspace-tabs{display:inline-flex;flex-wrap:wrap;gap:6px;padding:5px;border:1px solid rgba(216,224,230,.95);border-radius:12px;background:#fffffff0;box-shadow:0 8px 22px #1e3d580a}.workspace-tabs a{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:8px;color:#405468;font-weight:600;letter-spacing:-.01em;text-decoration:none;transition:background-color .14s ease,color .14s ease}.workspace-tabs a:hover{background:#e8f3fbd9;color:var(--accent-dark);text-decoration:none}.workspace-tabs a.router-link-active{background:var(--accent-soft);color:var(--accent-dark);font-weight:700}.calendar-panel{gap:14px}.calendar-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff5;box-shadow:0 10px 28px #1e3d580a}.calendar-nav{display:flex;flex-wrap:wrap;gap:8px}.calendar-nav button{min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--accent-dark);font-weight:600;cursor:pointer;transition:background-color .14s ease,border-color .14s ease}.calendar-nav button:hover{border-color:#b7c6d2;background:#f8fbfd}.calendar-range-label{color:var(--accent-dark);font-family:var(--font-display);font-weight:700;letter-spacing:-.02em}.calendar-list{display:grid;gap:10px}.calendar-event{display:grid;grid-template-columns:108px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 16px;border:1px solid rgba(216,224,230,.95);border-radius:12px;background:#fffffff5;box-shadow:0 8px 22px #1e3d580a;color:var(--ink);text-align:left;cursor:pointer;transition:border-color .14s ease,transform .14s ease,box-shadow .14s ease}.calendar-event:hover{border-color:#057dcd73;box-shadow:0 12px 28px #1e3d5814;transform:translateY(-1px)}.calendar-event-time{display:grid;gap:2px;color:var(--accent);font-family:var(--font-display);font-size:1.05rem;font-weight:700;letter-spacing:-.03em;line-height:1.15}.calendar-event-time small{color:var(--muted);font-family:var(--font-ui);font-size:12px;font-weight:600}.calendar-event-main{display:grid;gap:4px;min-width:0}.calendar-event-main strong{color:var(--accent-dark);font-weight:700;letter-spacing:-.01em}.calendar-event-main span{color:var(--muted);font-size:13px;font-weight:500}.patient-workspace-shell{min-width:0;width:100%;max-width:100%;height:100dvh;min-height:100dvh;max-height:100dvh;display:grid;grid-template-columns:248px minmax(0,1fr);overflow:hidden;background:radial-gradient(ellipse 70% 40% at 100% 0%,rgba(5,125,205,.06),transparent 55%),linear-gradient(180deg,#eef3f6,#f4f7f8);font-family:var(--font-ui)}.patient-workspace-loading{grid-column:1 / -1;align-self:start;margin:24px}.patient-sidebar{position:relative;align-self:stretch;min-width:0;min-height:0;height:100%;max-height:100%;display:flex;flex-direction:column;gap:16px;padding:20px 14px;overflow-x:hidden;overflow-y:auto;border-right:1px solid rgba(216,224,230,.9);background:linear-gradient(180deg,#fff,#f8fbfd);box-shadow:8px 0 28px #1e3d580a}.patient-back-button{min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--accent-dark);font-weight:600;letter-spacing:-.01em;cursor:pointer;text-align:left;padding:0 12px;transition:background-color .16s ease,border-color .16s ease}.patient-back-button:hover,.patient-sidebar-nav a:hover{background:#e8f3fbe6;border-color:#c5d5e1;text-decoration:none}.patient-sidebar-identity{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px 12px;align-items:center;padding:14px 4px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.patient-avatar,.patient-profile-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:linear-gradient(145deg,var(--accent-soft),#dceef8);color:var(--accent-dark);font-weight:700;letter-spacing:-.02em}.patient-avatar{width:48px;height:48px;font-size:15px}.patient-sidebar-identity strong{color:var(--accent-dark);font-family:var(--font-display);font-size:1.05rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.patient-sidebar-identity div{min-width:0;display:grid;gap:3px}.patient-sidebar-identity div span,.patient-sidebar-status{color:var(--muted);font-size:12px;font-weight:500}.patient-sidebar-status{grid-column:2;justify-self:start;display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;background:#e9f6f1;color:var(--success);font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:capitalize}.patient-sidebar-nav{display:grid;gap:16px}.patient-nav-group{display:grid;gap:4px}.patient-nav-group p{margin:0 0 3px;padding:0 12px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.patient-sidebar-nav a{position:relative;min-height:40px;display:flex;align-items:center;padding:0 12px;border-radius:8px;color:#405468;font-weight:600;letter-spacing:-.01em;text-decoration:none;transition:background-color .16s ease,color .16s ease}.patient-sidebar-nav a.router-link-active{color:var(--accent-dark);background:var(--accent-soft);font-weight:700}.patient-sidebar-nav a.router-link-active:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:999px;background:var(--accent)}.patient-workspace-main{min-width:0;min-height:0;max-width:100%;height:100%;display:grid;align-content:start;gap:16px;padding:24px 28px 36px;overflow-x:hidden;overflow-y:auto}.patient-workspace-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff0;box-shadow:0 10px 28px #1e3d580a}.patient-workspace-header p{margin:8px 0 0;color:var(--muted)}.patient-header-meta{display:grid;justify-items:end;gap:10px}.patient-workspace-actions{display:flex;flex-wrap:wrap;gap:10px}.patient-profile-page{width:100%;max-width:1400px;min-width:0;display:grid;gap:18px;margin:0 auto;animation:dashboard-enter .52s cubic-bezier(.22,1,.36,1) both}.patient-profile-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 28px;align-items:center;padding:24px 26px;border:1px solid rgba(216,224,230,.95);border-radius:16px;background:linear-gradient(145deg,rgba(5,125,205,.07),transparent 42%),#fffffff5;box-shadow:0 12px 32px #1e3d580d}.patient-profile-identity{min-width:0;display:flex;align-items:center;gap:16px}.patient-profile-avatar{width:68px;height:68px;flex:0 0 auto;font-size:22px;box-shadow:inset 0 0 0 1px #057dcd1f}.patient-profile-identity .module-eyebrow{margin:0 0 6px}.patient-profile-identity h1{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:clamp(1.7rem,2.2vw,2.15rem);font-weight:700;letter-spacing:-.03em;line-height:1.1}.patient-profile-subline{display:flex;flex-wrap:wrap;align-items:center;gap:6px 0;margin-top:10px;color:var(--muted);font-size:13px;font-weight:500}.patient-profile-subline>*+*:before{content:"?";margin:0 10px;color:#b0bec9}.patient-profile-subline strong{color:var(--accent-dark);font-weight:700}.patient-profile-aside{display:grid;justify-items:end;gap:14px}.patient-profile-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:14px 18px}.patient-profile-summary div{display:grid;gap:3px;text-align:right}.patient-profile-summary span{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.patient-profile-summary strong{color:var(--ink);font-size:14px;font-weight:600;letter-spacing:-.01em}.patient-profile-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.patient-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.profile-section,.workspace-placeholder{padding:20px 22px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff5;box-shadow:0 10px 28px #1e3d580a}.profile-section h2,.workspace-placeholder h2{margin:0 0 16px;font-size:18px}.patient-record-card h2{color:var(--accent-dark);font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.profile-section dl{display:grid;gap:10px;margin:0}.profile-section div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px}.profile-section dt{color:var(--muted);font-weight:700}.profile-section dd{margin:0}.patient-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}.patient-field-grid div{display:grid;grid-template-columns:1fr;gap:5px}.patient-field-grid dt{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.02em}.patient-field-grid dd{min-height:24px;color:var(--ink);font-size:14px;font-weight:500;line-height:1.45;white-space:pre-line}.patient-field-grid dd.empty-value:after{content:"?";color:var(--muted)}.wide-field{grid-column:1 / -1}.empty-group{color:var(--muted)}.formatted-address{line-height:1.55}.care-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.care-admin-column{display:grid;align-content:start;gap:14px}.care-admin-column h3{margin:0;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.care-admin-column .patient-field-grid{grid-template-columns:1fr;gap:16px}.patient-notes{margin:0;color:var(--ink);font-size:14px;font-weight:500;line-height:1.6;white-space:pre-line}.patient-notes--empty{color:var(--muted);font-style:normal}.full-profile-section{grid-column:1 / -1}.patient-profile-page-header h1{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:clamp(1.7rem,2.2vw,2.15rem);font-weight:700;letter-spacing:-.03em}.patient-profile-page-header p{margin:6px 0 0;color:var(--muted)}.patient-profile-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.9fr);gap:18px;align-items:start}.patient-profile-main,.patient-profile-side{display:grid;gap:18px}.patient-profile-banner{padding:12px 16px;border-radius:12px;border:1px solid rgba(176,120,40,.28);background:#ffecb373;color:#6a4b12;font-size:14px}.patient-profile-preferred{margin:4px 0 0;color:var(--muted);font-size:13px}.patient-profile-identity h2{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:clamp(1.45rem,1.8vw,1.85rem);font-weight:700;letter-spacing:-.03em}.patient-profile-more{position:relative}.patient-profile-more-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:20;min-width:220px;display:grid;gap:2px;padding:8px;border:1px solid rgba(216,224,230,.95);border-radius:12px;background:#fff;box-shadow:0 16px 32px #1e3d581f}.patient-profile-more-menu a,.patient-profile-more-menu button{display:block;width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:var(--ink);font:inherit;font-size:14px;text-align:left;text-decoration:none;cursor:pointer}.patient-profile-more-menu a:hover,.patient-profile-more-menu button:hover{background:#057dcd14}.patient-profile-note-help{margin:0 0 10px;color:var(--muted);font-size:13px;line-height:1.45}.patient-profile-skeleton{min-height:140px;border-radius:16px;background:linear-gradient(90deg,#e2e8f0b3,#f1f5f9f2,#e2e8f0b3);background-size:200% 100%;animation:patient-profile-shimmer 1.2s linear infinite}.patient-profile-skeleton.hero-skeleton{min-height:120px}.patient-profile-skeleton-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.patient-profile-edit-panel{width:min(720px,100%)}.checkbox-field{display:flex!important;flex-direction:row!important;align-items:center;gap:10px}.checkbox-field input{width:auto}@keyframes patient-profile-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(max-width:980px){.patient-profile-layout,.patient-profile-skeleton-grid{grid-template-columns:1fr}}.patient-sidebar-actions{display:grid;gap:8px;padding:0 0 8px}.patient-sidebar-actions .secondary-action{width:100%;font-size:13px}.workspace-placeholder p{margin:0;color:var(--muted)}.today-board{display:grid;gap:14px}.today-panel-header h2{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:clamp(1.35rem,1.8vw,1.7rem);font-weight:700;letter-spacing:-.03em}.today-group{display:grid;gap:10px;padding:14px;border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#ffffffb8;box-shadow:0 8px 22px #1e3d5808}.today-group__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.today-group__header h3{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:.95rem;font-weight:700;letter-spacing:-.02em}.today-group__header span{display:inline-grid;place-items:center;min-width:28px;min-height:28px;padding:0 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent-dark);font-size:12px;font-weight:700}.today-group[data-group=completed] .today-group__header span{background:#e9f6f1;color:var(--success)}.today-group[data-group=no_show] .today-group__header span{background:#fdecec;color:#8a1f1f}.today-group[data-group=in_treatment] .today-group__header span{background:#e8f3fb;color:var(--accent-dark)}.list-state--compact{padding:10px 0}.appointments-toolbar select{min-height:40px;min-width:180px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-weight:500}.appointments-when{display:grid;gap:2px}.appointments-when strong{color:var(--accent-dark);font-weight:700;letter-spacing:-.01em}.appointments-when span{color:var(--muted);font-size:13px;font-weight:500}.appointments-patient-name{color:var(--accent-dark);font-weight:700;letter-spacing:-.01em}.appointments-table-wrap{box-shadow:none}.visit-plan-banner,.chart-visit-banner{margin:0;padding:8px 16px;border:0;border-bottom:1px solid rgba(216,224,230,.9);border-radius:0;background:#f7fafc;color:var(--muted);font-size:12.5px;font-weight:600;letter-spacing:.01em;text-align:center}.chart-visit-banner[data-active=true]{border-bottom-color:#2e7d6338;background:#eef8f1;color:var(--success)}.chart-clinical-issue-success{margin:0;padding:8px 16px;border:0;border-bottom:1px solid rgba(46,125,99,.22);background:#eef8f1;color:var(--success);font-size:12.5px;font-weight:600;letter-spacing:.01em;text-align:center}.visit-plan-page{display:flex;flex-direction:column;gap:12px;min-height:0;height:100%;padding:12px 16px 16px;box-sizing:border-box}.visit-plan-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}.visit-plan-header__title{display:grid;gap:2px;min-width:0}.visit-plan-header__title h2{margin:0;font-size:1.25rem}.visit-plan-header__title p{margin:0;color:var(--muted);font-size:.875rem}.visit-plan-workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:0}.visit-plan-tooth-main{min-width:0;min-height:0;height:100%;overflow:hidden}.visit-plan-sidebar{position:relative;height:100%;max-height:none;overflow:hidden;display:flex;flex-direction:column;border-left:1px solid var(--line);background:#fff}.visit-plan-sidebar__tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid var(--line)}.visit-plan-sidebar__tabs button{min-height:44px;border:0;background:transparent;color:var(--ink);font-weight:700;cursor:pointer}.visit-plan-sidebar__tabs button.active{background:var(--accent-soft);color:var(--accent-dark);box-shadow:inset 0 -2px 0 var(--accent)}.visit-plan-sidebar__body{overflow:auto;padding:14px;display:grid;gap:12px;align-content:start}.visit-plan-search,.visit-plan-note{display:grid;gap:6px}.visit-plan-catalog{display:grid;gap:6px;max-height:220px;overflow:auto}.visit-plan-catalog__group{display:grid;gap:6px}.visit-plan-catalog__group-title{margin:8px 0 0;font-size:.72rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase;color:var(--muted, #64748b)}.visit-plan-catalog__group:first-child .visit-plan-catalog__group-title{margin-top:0}.visit-plan-catalog__item{text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:650;cursor:pointer}.visit-plan-catalog__item.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark)}.visit-plan-catalog__item:disabled{opacity:.55;cursor:not-allowed}.visit-plan-summary{display:grid;gap:8px;padding-top:8px;border-top:1px solid var(--line)}.visit-plan-summary__item{display:grid;gap:2px;width:100%;padding:0;border:0;background:transparent;text-align:left;color:inherit;cursor:pointer}.visit-plan-legend{position:absolute;left:14px;bottom:14px;z-index:12;display:inline-flex;align-items:center;gap:8px;margin:0;padding:6px 10px;border:1px solid var(--line);border-radius:6px;background:#ffffffeb;font-size:12px;font-weight:700;color:var(--accent-dark)}.visit-plan-legend__swatch{width:12px;height:12px;border-radius:999px;background:#0d9488}.visit-plan-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:18px;align-items:start}.visit-plan-picker,.visit-plan-items{display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff}.visit-plan-item-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.visit-plan-item-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.visit-plan-item-list li div{display:grid;gap:2px}.visit-plan-item-list span{color:var(--muted);font-size:12px}.visit-plan-locked{margin:0;color:#8a1f1f;font-weight:700}.active-visit-bar{display:grid;gap:0;border-bottom:1px solid rgba(46,125,99,.18);background:linear-gradient(180deg,#f3faf6,#eef8f1)}.active-visit-bar__main{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;min-height:52px;padding:8px 16px}.active-visit-bar__copy{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;min-width:0}.active-visit-bar__pulse{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px #2e7d6324;animation:active-visit-pulse 1.6s ease-in-out infinite}.active-visit-bar__status{color:var(--success);font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.active-visit-bar__sep{width:1px;height:16px;background:#2e7d6338}.active-visit-bar__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 0;margin:0;min-width:0;color:var(--muted);font-size:13px;font-weight:500}.active-visit-bar__meta strong{color:var(--accent-dark);font-weight:700}.active-visit-bar__meta>*+*:before{content:"?";margin:0 8px;color:#a7b4bf}.active-visit-bar__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.active-visit-bar__plan-toggle{min-height:34px;padding:0 12px;border:1px solid rgba(46,125,99,.22);border-radius:8px;background:#ffffffb8;color:var(--accent-dark);font-size:12px;font-weight:700;cursor:pointer;transition:background .14s ease,border-color .14s ease}.active-visit-bar__plan-toggle:hover,.active-visit-bar__plan-toggle[aria-expanded=true]{background:#fff;border-color:#2e7d6366}.active-visit-bar__actions .primary-action{min-height:34px;padding:0 14px}.active-visit-bar__plan{padding:0 16px 12px;border-top:1px solid rgba(46,125,99,.12)}.active-visit-bar__plan ul{display:grid;gap:8px;margin:10px 0 0;padding:0;list-style:none}.active-visit-bar__plan li{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,180px);gap:10px;align-items:center;padding:8px 10px;border:1px solid rgba(216,224,230,.9);border-radius:10px;background:#ffffffdb}.active-visit-bar__plan li strong{display:block;color:var(--accent-dark);font-size:13px}.active-visit-bar__plan li span{color:var(--muted);font-size:12px}.active-visit-bar__plan select{min-height:34px;padding:0 10px;border:1px solid rgba(216,224,230,.95);border-radius:8px;background:#fff;color:var(--ink);font:inherit}.active-visit-bar__plan .muted-copy{margin:10px 0 0;font-size:13px}.active-visit-bar__error{margin:0;padding:0 16px 10px}@keyframes active-visit-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.86)}}@media(prefers-reduced-motion:reduce){.active-visit-bar__pulse{animation:none}}.active-visit-panel{display:grid;gap:12px;padding:14px 16px;border:1px solid #9ec5b0;border-radius:8px;background:#eef8f1}.active-visit-panel__header{display:flex;flex-wrap:wrap;align-items:start;justify-content:space-between;gap:12px}.active-visit-panel__header p{margin:2px 0 0;color:var(--muted)}.active-visit-panel__checklist ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.active-visit-panel__checklist li{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,180px);gap:10px;align-items:center}.appointment-detail{max-width:980px}.dashboard-page{display:grid;gap:20px;animation:dashboard-enter .52s cubic-bezier(.22,1,.36,1) both}.dashboard-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.dashboard-card,.dashboard-panel{border:1px solid rgba(216,224,230,.95);border-radius:14px;background:#fffffff0;box-shadow:0 10px 28px #1e3d580a}.dashboard-card{display:grid;gap:14px;padding:18px 18px 16px;overflow:hidden;animation:dashboard-card-enter .56s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--reveal-delay, 0ms)}.dashboard-card:before{content:"";display:block;width:28px;height:3px;border-radius:999px;background:var(--accent)}.dashboard-card[data-tone=waiting]:before{background:#d97706}.dashboard-card[data-tone=treatment]:before{background:var(--accent-dark)}.dashboard-card[data-tone=completed]:before{background:var(--success)}.dashboard-card span{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.dashboard-card strong{color:var(--accent-dark);font-family:var(--font-display);font-size:2rem;font-weight:700;letter-spacing:-.04em;line-height:1}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px}.dashboard-panel{display:grid;gap:14px;padding:18px}.next-patient-panel{background:linear-gradient(165deg,rgba(5,125,205,.08),transparent 42%),#fffffff5}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-heading h2{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:-.02em}.panel-heading span{color:var(--muted);font-size:12px;font-weight:500}.next-patient{display:grid;gap:8px;align-content:start}.next-time{color:var(--accent);font-family:var(--font-display);font-size:clamp(1.8rem,2.4vw,2.35rem);font-weight:700;letter-spacing:-.04em;line-height:1}.next-patient h3{margin:2px 0 0;color:var(--accent-dark);font-family:var(--font-display);font-size:1.45rem;font-weight:700;letter-spacing:-.03em}.next-patient p,.next-meta,.next-reason,.next-dentist{margin:0;color:var(--muted);font-weight:500}.next-reason{color:var(--ink);font-weight:600}.next-patient-action{justify-self:start;margin-top:10px;min-width:148px;text-decoration:none}.recent-patient-list{display:grid;gap:0}.recent-patient-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.recent-patient-row:first-child{border-top:0;padding-top:2px}.recent-patient-row div{display:grid;gap:3px}.recent-patient-row strong{color:var(--accent-dark);font-weight:700;letter-spacing:-.01em}.recent-patient-row span{color:var(--muted);font-size:13px;font-weight:500}.recent-patient-meta{text-align:right;justify-items:end}.recent-patient-meta a{font-weight:600;text-underline-offset:3px}.dashboard-schedule-panel{padding-bottom:10px}.dashboard-schedule-table{min-width:720px}.dashboard-schedule-table th{font-weight:700;letter-spacing:.06em}.dashboard-schedule-table td{font-weight:500}.dashboard-schedule-table a{font-weight:600;text-underline-offset:3px}.dashboard-schedule-table small{display:block;margin-top:2px;color:var(--muted);font-weight:500}.dashboard-page .table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff}.dashboard-page .data-table th,.dashboard-page .data-table td{padding:13px 14px}.dashboard-page .data-table tbody tr:last-child td{border-bottom:0}.status-pill[data-tone=completed]{background:#e9f6f1;color:var(--success)}.status-pill[data-tone=waiting]{background:#fff7ed;color:#9a3412}.status-pill[data-tone=treatment]{background:#e8f3fb;color:var(--accent-dark)}.status-pill[data-tone=missed]{background:#fdecec;color:#8a1f1f}.status-pill[data-tone=scheduled]{background:var(--accent-soft);color:var(--accent-dark)}.list-state--embedded{padding:18px;border-style:dashed;background:#f8fbfd;box-shadow:none}@keyframes dashboard-enter{0%{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes dashboard-card-enter{0%{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){.dashboard-page,.dashboard-card{animation:none}}.appointment-actions{display:flex;flex-wrap:wrap;gap:10px}.cancel-form{display:flex;flex-wrap:wrap;align-items:end;gap:10px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.cancel-form label{flex:1 1 280px;display:grid;gap:6px;color:var(--accent-dark);font-weight:800}.cancel-form input,.patient-toolbar select{min-height:40px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:#fff;font:inherit}@media(max-width:780px){.main-app-shell{grid-template-columns:1fr}.app-sidebar{min-height:auto;border-right:0;border-bottom:1px solid var(--line)}.sidebar-nav,.sidebar-bottom{display:flex;flex-wrap:wrap}.sidebar-bottom{margin-top:12px}.app-context-bar{align-items:flex-start;flex-direction:column}.app-content{padding:18px}.patient-workspace-shell{grid-template-columns:1fr;height:auto;min-height:100dvh;max-height:none;overflow:visible}.patient-sidebar{position:static;height:auto;max-height:none;min-height:auto;overflow:visible;border-right:0;border-bottom:1px solid var(--line);box-shadow:none}.patient-sidebar-nav{display:flex;flex-wrap:wrap;gap:12px 18px}.patient-nav-group{min-width:140px}.patient-workspace-main{height:auto;overflow:visible;padding:18px}.module-header,.patient-workspace-header{flex-direction:column}.patient-header-meta{justify-items:start}.patient-form fieldset,.patient-profile-grid,.patient-profile-hero,.care-admin-grid,.clinical-overview-layout,.medical-history-grid,.medical-review-layout,.issue-details-grid,.repeat-editor,.medical-definition-list,.periodontal-layout{grid-template-columns:1fr}.medical-history-page{padding:20px}.clinical-overview-page{min-height:auto;margin:-18px;padding:0}.clinical-overview-layout{min-height:auto}.clinical-overview-main{padding:20px}.clinical-summary-rail{position:static;max-height:none;overflow:visible;border-left:0;border-top:1px solid var(--line)}.chart-header,.periodontal-toolbar{flex-direction:column}.patient-chart-page{height:calc(100dvh - 32px);width:calc(100% + 32px);margin:-16px}.chart-shell,.chart-shell--with-sidebar{grid-template-columns:1fr}.chart-canvas{min-height:58dvh}.chart-full-mouth,.periodontal-reference-chart{--periodontal-scale: .24}.chart-context-sidebar{top:auto;left:0;width:100%;max-width:none;max-height:42dvh;border-left:0;border-top:1px solid var(--line)}.chart-jaw-selector{right:8px}.periodontal-actions{justify-content:flex-start}.periodontal-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.periodontal-panel{position:static}.periodontal-history-item{grid-template-columns:1fr}.medical-history-header,.medical-history-header__actions,.medical-callout,.summary-widget-header,.medical-review-actions{flex-direction:column;align-items:stretch}.medical-history-header__actions{justify-content:flex-start}.medical-callout .primary-action{width:100%}.oral-readonly-indices,.oral-editor-row,.oral-form-actions,.bpe-history-meta{grid-template-columns:1fr}.bpe-editor-grid{gap:8px}.clinical-modal-backdrop{padding:10px}.medical-review-nav{position:static}.patient-profile-hero,.patient-profile-aside,.patient-profile-summary,.patient-profile-actions{justify-content:flex-start;justify-items:start;grid-column:1}.patient-profile-aside{width:100%}.profile-section div,.form-field-row,.patient-form fieldset,.calendar-event,.visit-plan-layout,.active-visit-bar__plan li,.active-visit-panel__checklist li,.dashboard-summary-grid,.dashboard-grid{grid-template-columns:1fr}}@media(max-width:420px){.bpe-modal .clinical-modal-footer,.bpe-selected-actions{grid-template-columns:1fr}}@media(max-width:380px){.bpe-selected-score{grid-template-columns:repeat(3,minmax(0,1fr))}}.patient-report-page{display:flex;flex-direction:column;gap:16px;min-width:0}.patient-report-action-bar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 16px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.patient-report-action-bar h1{margin:0;font-size:1.25rem}.patient-report-temporal{margin:4px 0 0;color:#475569;font-size:.92rem}.patient-report-action-bar__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.report-preview-zoom{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;padding:4px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}.report-preview-zoom__btn,.report-preview-zoom__action{min-width:2rem;min-height:2rem;padding:0 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;font:inherit;cursor:pointer}.report-preview-zoom__btn:disabled,.report-preview-zoom__action:disabled{opacity:.45;cursor:not-allowed}.report-preview-zoom__value{min-width:3.25rem;text-align:center;font-variant-numeric:tabular-nums;font-weight:600;color:#334155}.patient-report-workspace{overflow:auto;padding:20px 12px 48px;background:linear-gradient(180deg,#e8edf5,#f4f6fa 40%,#e8edf5);border-radius:12px}.patient-report-preview-spacer{position:relative;margin:0 auto}.patient-report-preview-layer{position:absolute;top:0;left:50%;margin-left:-105mm}.patient-report-document{width:210mm;margin:0 auto;padding:0}.report-page{display:flex;flex-direction:column;box-sizing:border-box;width:210mm;min-height:297mm;margin:0 auto 24px;padding:16mm;background:#fff;box-shadow:0 10px 30px #0f172a14;border:1px solid #e2e8f0;break-after:page;page-break-after:always}.report-page:last-of-type{break-after:auto;page-break-after:auto;margin-bottom:0}.report-page__body{flex:1 1 auto;min-height:auto;overflow:visible}.report-document-title{margin:0 0 22px}.report-document-title__heading{margin:0;color:#0f172a;font-size:1.55rem;line-height:1.2}.report-document-title__subtitle{margin:6px 0 0;color:#475569;font-size:.95rem}.report-page h3,.report-section h3{margin:0 0 12px;color:#0f172a;font-size:1.05rem}.report-brand{margin:0 0 8px;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:700;color:#334155}.report-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:0}.report-meta-grid div{break-inside:avoid;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.report-meta-grid dt{margin:0;color:#64748b;font-size:.8rem}.report-meta-grid dd{margin:2px 0 0;font-weight:600;color:#0f172a}.report-section{margin-top:22px}.report-medical-group{margin-bottom:14px}.report-medical-group__title{margin:0 0 8px;color:#64748b;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.report-alert-list,.report-medical-list,.report-clinical-issues{margin:0;padding:0;list-style:none}.report-alert-list{display:flex;flex-wrap:wrap;gap:8px}.report-alert{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid #fecaca;border-radius:8px;background:#fef2f2;color:#7f1d1d;font-size:.9rem}.report-alert__level{font-weight:700;text-transform:uppercase;font-size:.72rem;letter-spacing:.04em}.report-medical-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 24px}.report-medical-list li{break-inside:avoid;padding:6px 0;border-bottom:1px solid #e2e8f0;color:#334155}.report-clinical-issue{break-inside:avoid;margin:0 0 8px;padding:6px 10px 6px 12px;border:1px solid #e2e8f0;border-left-width:4px;border-radius:6px;background:#fff;min-height:0}.report-clinical-issue[data-classification=monitor]{border-left-color:#eab308}.report-clinical-issue[data-classification=treat]{border-left-color:#dc2626}.report-clinical-issue__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px}.report-clinical-issue__head .clinical-issues-badge{flex:none}.report-clinical-issue__head strong{flex:1 1 auto;color:#0f172a}.report-clinical-issue__head time{margin-left:auto;color:#64748b;font-size:.85rem}.report-clinical-issue__desc{margin:4px 0 0;color:#334155;line-height:1.35}.report-chart-panel{position:relative;break-inside:avoid;overflow:visible;border:0;border-radius:0;background:#fff;padding:0}.report-chart-panel__engine{display:block;width:100%}.report-chart-panel__engine .patient-chart-engine,.report-chart-panel__engine .patient-chart-engine__frame,.report-chart-panel .patient-chart-engine,.report-chart-panel .patient-chart-engine__frame{display:block;width:100%;height:100%;border:0;pointer-events:none;overflow:visible;background:#fff}.report-chart-panel__loading,.report-chart-panel__error{margin:12px;color:#475569}.report-page-footer{flex:none;margin-top:18px;padding-top:10px;border-top:1px solid #e2e8f0;color:#64748b;font-size:.78rem;line-height:1.4}.report-page-footer p{margin:2px 0}.report-action-toast{margin:0;padding:10px 14px;border-radius:10px;font-size:.92rem}.report-action-toast--success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.report-action-toast--error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.report-pdf-spinner{display:inline-block;width:.85rem;height:.85rem;margin-right:.4rem;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-.15em;animation:report-pdf-spin .7s linear infinite}@keyframes report-pdf-spin{to{transform:rotate(360deg)}}.patient-report-print-root .patient-report-document{width:210mm;margin:0 auto}.patient-report-print-root .report-page{box-shadow:none;border:0;margin:0}@media(max-width:720px){.report-meta-grid,.report-medical-list{grid-template-columns:1fr}}@page{size:A4 portrait;margin:0}@media print{body{background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.app-shell,.patient-workspace-shell,.patient-sidebar,.app-sidebar,.no-print,.patient-report-action-bar,.report-preview-zoom{display:none!important}.patient-report-workspace{background:#fff!important;overflow:visible!important;padding:0!important;border-radius:0!important}.patient-report-preview-spacer,.patient-report-preview-layer{position:static!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;transform:none!important}.patient-report-document{width:210mm!important;max-width:none!important;padding:0!important}.report-page{box-shadow:none!important;border:0!important;margin:0!important;width:210mm!important;min-height:297mm!important}.report-chart-panel{overflow:visible!important}.report-chart-panel__engine,.report-chart-panel .patient-chart-engine{max-height:none!important;overflow:visible!important}.report-chart-panel .patient-chart-engine__frame{width:100%!important;height:100%!important;overflow:visible!important}}body:has(.developer-shell){height:100%;overflow:hidden}body:has(.developer-shell) #app{height:100%;overflow:hidden}.developer-shell{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;display:grid;grid-template-columns:248px minmax(0,1fr);overflow:hidden;background:linear-gradient(180deg,#e8edf2,#eef2f5 45%,#e8edf2);font-family:var(--font-ui);color:var(--ink)}.developer-sidebar{display:flex;flex-direction:column;height:100%;min-height:0;padding:22px 14px;overflow:hidden;border-right:1px solid rgb(15 23 42 / 35%);background:linear-gradient(180deg,#151c26,#1c2530 55%,#151c26);color:#cbd5e1;box-shadow:10px 0 28px #0f172a1f}.developer-brand{display:grid;gap:4px;padding:4px 12px 24px}.developer-brand-mark{color:#fff;font-family:var(--font-display);font-size:1.2rem;font-weight:700;letter-spacing:-.03em}.developer-brand-label{color:#8a96a6;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.developer-nav{display:grid;gap:2px;overflow-y:auto}.developer-sidebar-bottom{display:grid;gap:2px;margin-top:auto;padding-top:14px;border-top:1px solid rgba(255,255,255,.1)}.developer-link{display:flex;align-items:center;min-height:40px;padding:0 12px;border:0;border-radius:8px;width:100%;background:transparent;color:#cbd5e1;font:inherit;font-weight:600;font-size:13.5px;letter-spacing:-.01em;text-align:left;text-decoration:none;cursor:pointer;transition:background-color .14s ease,color .14s ease}.developer-link:hover{background:#ffffff14;color:#fff;text-decoration:none}.developer-link.is-active{background:#057dcd;color:#fff}.developer-main{min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.developer-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 28px;border-bottom:1px solid color-mix(in srgb,var(--line) 90%,transparent);background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.developer-operator{color:var(--muted);font-weight:600;font-size:13px}.env-badge{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;border:1px solid var(--line);background:#eef1f4;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.env-badge[data-env=production]{border-color:#f2c6c6;background:#fdecec;color:#8a1f1f}.env-badge[data-env=development]{border-color:#bfe0f2;background:#e8f3fb;color:var(--accent-dark)}.developer-content{min-height:0;overflow:auto;padding:26px 32px 40px;overscroll-behavior:contain}.developer-page{width:100%;max-width:1320px;margin:0 auto;display:grid;gap:18px}.developer-page .module-header h1{margin:0 0 6px;color:var(--accent-dark);font-family:var(--font-display);font-size:clamp(1.55rem,2vw,1.9rem);font-weight:700;letter-spacing:-.03em}.developer-page .module-header p:not(.module-eyebrow){margin:0;color:var(--muted);max-width:46rem;line-height:1.45}.developer-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.developer-toolbar select,.developer-toolbar input{min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fbfcfd;color:var(--ink);font:inherit}.developer-toolbar select:focus,.developer-toolbar input:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.developer-toolbar input[type=search]{min-width:220px}.developer-page .data-table-wrap{border-radius:12px;box-shadow:0 1px 2px #0f172a0a}.developer-page .secondary-action,.detail-drawer .secondary-action{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--accent-dark);font-weight:700;cursor:pointer}.developer-page .secondary-action:hover:not(:disabled),.detail-drawer .secondary-action:hover:not(:disabled){border-color:#b7c6d2;background:#f8fbfd}.developer-page .secondary-action:disabled,.developer-page .primary-action:disabled,.detail-drawer .secondary-action:disabled,.detail-drawer .primary-action:disabled{opacity:.6;cursor:not-allowed}.developer-page .danger-action,.detail-drawer .danger-action{min-height:36px;padding:0 12px;border:1px solid #f2c6c6;border-radius:8px;background:#fdecec;color:#8a1f1f;font-weight:700;cursor:pointer}.developer-page .danger-action:hover:not(:disabled),.detail-drawer .danger-action:hover:not(:disabled){background:#fadcdc}.error-code-tag{display:inline-flex;align-items:center;min-height:22px;margin-left:8px;padding:0 8px;border-radius:4px;background:#fdecec;color:#8a1f1f;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:700}.mono-chip{display:inline-block;max-width:100%;padding:2px 8px;border-radius:6px;background:#eef1f4;color:var(--accent-dark);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;font-weight:600;word-break:break-all}.developer-page .stat-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.developer-page .stat-table-wrap{padding:16px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.developer-page .stat-table-wrap h2{margin:0 0 10px;color:var(--accent-dark);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.developer-page .stat-table{width:100%;border-collapse:collapse;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.developer-page .stat-table td{padding:10px 12px;border-bottom:1px solid var(--line);font-size:13px}.developer-page .stat-table tr:last-child td{border-bottom:0}.developer-page .stat-table td:first-child{color:var(--muted);font-weight:500}.developer-page .stat-table td:last-child{text-align:right;color:var(--ink);font-weight:800;font-variant-numeric:tabular-nums}.developer-page .clickable-row{cursor:pointer}.developer-page .clickable-row:hover{background:#e8f3fb8c}.developer-page .status-badge,.detail-drawer .status-badge{text-transform:none;letter-spacing:.01em}.developer-page .status-badge[data-status=claimed],.detail-drawer .status-badge[data-status=claimed]{background:#ecfdf5;color:#166534}.developer-page .status-badge[data-status=unclaimed],.developer-page .status-badge[data-status=activation_link_sent],.developer-page .status-badge[data-status=claim_in_progress],.developer-page .status-badge[data-status=awaiting_account],.developer-page .status-badge[data-status=awaiting_account_email_verification],.developer-page .status-badge[data-status=awaiting_organization],.developer-page .status-badge[data-status=awaiting_organization_approval],.developer-page .status-badge[data-status=ready_to_activate],.detail-drawer .status-badge[data-status=unclaimed],.detail-drawer .status-badge[data-status=activation_link_sent],.detail-drawer .status-badge[data-status=claim_in_progress],.detail-drawer .status-badge[data-status=awaiting_account],.detail-drawer .status-badge[data-status=awaiting_account_email_verification],.detail-drawer .status-badge[data-status=awaiting_organization],.detail-drawer .status-badge[data-status=awaiting_organization_approval],.detail-drawer .status-badge[data-status=ready_to_activate]{background:#e8f3fb;color:var(--accent-dark)}.developer-page .status-badge[data-status=conflict],.detail-drawer .status-badge[data-status=conflict]{background:#fff7ed;color:#9a3412}.developer-page .status-badge[data-status=rejected],.developer-page .status-badge[data-status=refunded],.developer-page .status-badge[data-status=chargeback],.developer-page .status-badge[data-status=revoked],.detail-drawer .status-badge[data-status=rejected],.detail-drawer .status-badge[data-status=refunded],.detail-drawer .status-badge[data-status=chargeback],.detail-drawer .status-badge[data-status=revoked]{background:#fef2f2;color:#991b1b}.developer-page .definition-list,.detail-drawer .definition-list{display:grid;gap:0;margin:0;padding:4px 14px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:12px;background:#fbfcfd}.developer-page .definition-row,.detail-drawer .definition-row{display:grid;grid-template-columns:minmax(132px,38%) minmax(0,1fr);gap:12px 16px;padding:11px 2px;border-bottom:1px solid color-mix(in srgb,var(--line) 75%,transparent);font-size:13px}.developer-page .definition-row:last-child,.detail-drawer .definition-row:last-child{border-bottom:0}.developer-page .definition-row dt,.detail-drawer .definition-row dt{color:var(--muted);font-weight:700;line-height:1.4}.developer-page .definition-row dd,.detail-drawer .definition-row dd{margin:0;color:var(--ink);font-weight:600;line-height:1.4;word-break:break-word}.detail-drawer-backdrop{position:fixed;inset:0;z-index:90;display:flex;justify-content:flex-end;background:#0f172a6b}.detail-drawer{width:min(560px,100%);height:100%;overflow-y:auto;background:#fff;box-shadow:-18px 0 48px #0f172a2e;animation:auth-brand-enter .2s cubic-bezier(.22,1,.36,1) both}.detail-drawer-header{position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 24px;border-bottom:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:#fffffff5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.detail-drawer-header h2{margin:0;color:var(--accent-dark);font-family:var(--font-display);font-size:1.3rem;font-weight:700;letter-spacing:-.02em}.detail-drawer-close{display:inline-grid;place-items:center;min-width:34px;min-height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--accent-dark);font-size:1.1rem;line-height:1;cursor:pointer}.detail-drawer-close:hover{background:#f8fbfd}.detail-drawer-body{display:grid;gap:18px;padding:20px 24px 32px;background:linear-gradient(180deg,color-mix(in srgb,var(--page, #f4f6fa) 45%,white),#fff 40%)}.detail-drawer-lede{margin:0 0 1rem;color:#5b6570;font-size:.95rem;line-height:1.45}.detail-drawer-section{padding:16px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.detail-drawer-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.detail-drawer-section>h3,.detail-drawer-section>h4{margin:0 0 12px;color:var(--accent-dark);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.detail-drawer-title-row>h3{margin:0}.detail-drawer-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.detail-drawer .auth-form{display:grid;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--line) 85%,transparent)}.detail-drawer .auth-form label{display:grid;gap:6px;color:var(--accent-dark);font-size:.82rem;font-weight:700}.detail-drawer .auth-form input,.detail-drawer .auth-form select,.detail-drawer .auth-form textarea{min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fbfcfd;font:inherit}.detail-drawer .auth-form input:focus,.detail-drawer .auth-form select:focus,.detail-drawer .auth-form textarea:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.developer-page .entitlement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.developer-page .entitlement-tile{padding:16px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.developer-page .entitlement-tile[data-over=true]{border-color:#f2c6c6;background:#fff8f8}.developer-page .entitlement-tile h3{margin:0 0 6px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.developer-page .entitlement-tile strong{display:block;margin-bottom:8px;color:var(--accent-dark);font-size:1.35rem;font-weight:800}.developer-page .entitlement-meter{height:6px;border-radius:999px;background:#eef1f4;overflow:hidden}.developer-page .entitlement-meter-fill{height:100%;background:var(--accent)}.developer-page .entitlement-tile[data-over=true] .entitlement-meter-fill{background:#c0392b}.developer-page>.detail-drawer{width:min(420px,100%);height:auto;max-height:calc(100vh - 140px);border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;box-shadow:0 12px 32px #0f172a14}.entitlement-detail-drawer{width:min(480px,100%)}.entitlement-detail-drawer .detail-drawer-lede{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0}.entitlement-meta-pill{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;background:#eef1f4;color:var(--accent-dark);font-size:12px;font-weight:700}.entitlement-resource-list{display:grid;gap:10px}.entitlement-resource-card{padding:12px 14px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:10px;background:#fbfcfd}.entitlement-resource-card[data-over=true]{border-color:#f2c6c6;background:#fff8f8}.entitlement-resource-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.entitlement-resource-card__head h4{margin:0;color:var(--accent-dark);font-size:.92rem;font-weight:800}.entitlement-resource-state{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.02em}.entitlement-resource-card[data-over=true] .entitlement-resource-state{color:#991b1b}.entitlement-resource-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;margin:0}.entitlement-resource-metrics>div{display:grid;gap:2px;min-width:0}.entitlement-resource-metrics dt{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.entitlement-resource-metrics dd{margin:0;color:var(--ink);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;word-break:break-word}.entitlement-stack-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.entitlement-stack-list li{display:grid;gap:2px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:10px;background:#fbfcfd}.entitlement-stack-list strong{color:var(--accent-dark);font-size:.9rem}.entitlement-stack-meta{color:var(--muted);font-size:12px;word-break:break-word}.detail-drawer .list-state--compact{margin:0;padding:12px 14px;border:1px dashed color-mix(in srgb,var(--line) 80%,transparent);border-radius:10px;background:#f8fafc;color:var(--muted);font-size:.9rem}.detail-drawer-section{overflow-x:hidden}.detail-drawer .primary-action{width:100%}.wizard-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;background:var(--page)}.wizard-panel{width:min(560px,100%);padding:32px 34px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 12px 32px #1e3d580f}.wizard-panel h1{margin:8px 0 4px;color:var(--accent-dark);font-family:var(--font-display);font-size:1.6rem;font-weight:700}.wizard-steps{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0 22px;padding:0;list-style:none}.wizard-steps li{padding:4px 10px;border-radius:999px;background:#eef1f4;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.wizard-steps li.active{background:var(--accent-soft);color:var(--accent-dark)}.wizard-steps li.done{background:#e9f6f1;color:var(--success)}.wizard-summary{display:grid;gap:8px;margin-bottom:20px;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fafcfd}.plain-list{margin:0;padding-left:1.2rem;display:grid;gap:4px}.wizard-mode-options{display:grid;gap:10px;margin-bottom:16px}.wizard-mode-option{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.wizard-mode-option:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.wizard-mode-option input{margin-top:3px}
