/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}}:root{--blue:#2373e8;--blue-dark:#125fc8;--ink:#172033;--muted:#6d788d;--line:#dfe5ed;--surface:#fff;--canvas:#f4f7fa;--green:#188a55;--font-ui:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--text-caption:11px;--text-support:12px;--text-body:14px;--text-title:18px}*{box-sizing:border-box}html{background:var(--canvas)}body{background:var(--canvas);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-body);margin:0;line-height:1.4}button,input,select,textarea{font:inherit;font-family:var(--font-ui)}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--line);z-index:30;background:#fff;align-items:center;gap:34px;height:76px;padding:0 32px;display:flex;position:sticky;top:0}.brand{min-width:210px;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:11px;padding:0;display:flex}.brand-mark{background:var(--blue);color:#fff;border-radius:11px;place-items:center;width:42px;height:42px;font-size:24px;font-weight:800;display:grid;box-shadow:inset 0 -5px #0a3a7e29}.brand strong,.brand small{display:block}.brand strong{letter-spacing:-.03em;font-size:20px}.brand small{color:var(--muted);margin-top:1px;font-size:11px}.main-nav{align-self:stretch;gap:4px;display:flex}.nav-button{color:#4e5a6e;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:8px;padding:0 16px;font-weight:650;display:flex}.nav-button:hover{color:var(--ink);background:#f8fafc}.nav-button.active{color:var(--blue);border-bottom-color:var(--blue);background:#f7faff}.account-menu{flex:none;margin-left:auto;position:relative}.user-menu{min-height:50px;color:var(--ink);text-align:left;background:0 0;border:1px solid #0000;border-radius:11px;align-items:center;gap:10px;padding:6px 8px;display:flex}.user-menu:hover,.account-menu.open .user-menu{background:#f7faff;border-color:#d9e3ef}.user-menu:focus-visible{border-color:#75aaf0;outline:3px solid #d9e9ff}.user-avatar{width:36px;height:36px;color:var(--blue-dark);background:#dbeaff;border-radius:50%;flex:0 0 36px;place-items:center;font-size:13px;font-weight:800;display:grid}.account-menu-chevron{color:#637188;place-items:center;width:20px;height:20px;font-size:17px;line-height:1;transition:transform .16s;display:grid}.account-menu.open .account-menu-chevron{transform:rotate(180deg)}.account-dropdown{z-index:50;background:#fff;border:1px solid #dce4ee;border-radius:12px;width:286px;padding:8px;animation:.15s ease-out accountMenuIn;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 18px 48px #1b2b422e}@keyframes accountMenuIn{0%{opacity:0;transform:translateY(-5px)}}.account-dropdown-profile{border-bottom:1px solid #e8edf3;align-items:center;gap:10px;min-width:0;padding:9px 10px 12px;display:flex}.account-dropdown-profile>span:last-child{min-width:0}.account-dropdown-profile small,.account-dropdown-profile strong,.account-dropdown-profile em{display:block}.account-dropdown-profile small{color:#8490a1;letter-spacing:.07em;font-size:7px;font-weight:850}.account-dropdown-profile strong{color:#25334a;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:12px;overflow:hidden}.account-dropdown-profile em{color:#7a8799;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8px;font-style:normal;overflow:hidden}.account-dropdown-role{background:#f5f8fc;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;margin:7px 5px;padding:8px 7px;display:flex}.account-dropdown-role span{color:#7c899b;font-size:8px}.account-dropdown-role strong{color:#4d6079;font-size:9px}.account-signout{color:#b93642;border-radius:8px;align-items:center;gap:10px;min-height:48px;padding:8px 10px;text-decoration:none;display:flex}.account-signout:hover,.account-signout:focus-visible{background:#fff1f2;outline:none}.account-signout>span strong,.account-signout>span small{display:block}.account-signout>span strong{font-size:11px}.account-signout>span small{color:#9b6970;margin-top:2px;font-size:8px}.user-copy strong,.user-copy small{display:block}.user-copy strong{font-size:13px}.user-copy small{color:var(--muted);margin-top:2px;font-size:11px}.workspace{max-width:1760px;margin:0 auto;padding:34px clamp(24px,4vw,64px) 64px}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.page-heading h1{letter-spacing:-.035em;margin:5px 0 7px;font-size:32px;line-height:1.15}.page-heading p:last-child{color:var(--muted);margin:0;font-size:14px}.eyebrow{letter-spacing:.08em;align-items:center;gap:8px;font-weight:750;display:flex;color:#65738b!important;font-size:12px!important}.eyebrow span{background:var(--blue);border-radius:50%;width:8px;height:8px}.primary-button{border:1px solid var(--blue);background:var(--blue);color:#fff;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-weight:750;display:inline-flex;box-shadow:0 5px 14px #2373e82e}.primary-button:hover{background:var(--blue-dark)}.secondary-button{min-height:42px;color:var(--ink);background:#fff;border:1px solid #cfd7e2;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:700;display:flex}.ghost-button{color:var(--blue);background:0 0;border:0;padding:0 10px;font-weight:700}.stats-row{background:var(--surface);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px;display:grid}.stat+.stat{border-left:1px solid var(--line)}.stat span,.stat small{display:block}.stat span{color:var(--muted);font-size:12px;font-weight:650}.stat strong{letter-spacing:-.03em;margin:5px 0 2px;font-size:25px;display:block}.stat small{color:#8590a2;font-size:11px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 4px 16px #23344a0a}.patient-panel{overflow:hidden}.panel-tabs{border-bottom:1px solid var(--line);gap:8px;padding:12px 18px 0;display:flex}.tab{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:11px 12px 13px;font-weight:700}.tab.active{color:var(--blue);border-bottom-color:var(--blue)}.tab span{color:#68758a;background:#eef2f7;border-radius:10px;margin-left:4px;padding:3px 6px;font-size:10px}.filters{border-bottom:1px solid var(--line);background:#fbfcfd;align-items:flex-end;gap:12px;padding:18px;display:flex}.search-field{color:#7f8a9e;background:#fff;border:1px solid #cfd7e2;border-radius:8px;flex:340px;align-items:center;gap:10px;max-width:480px;height:45px;padding:0 13px;display:flex}.search-field:focus-within{border-color:#82b6ff;box-shadow:0 0 0 3px #e8f2ff}.search-field input{width:100%;color:var(--ink);border:0;outline:0}.search-field input::placeholder{color:#98a2b3}.field-label{flex-direction:column;gap:6px;min-width:200px;display:flex}.field-label span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:700}.field-label select{height:45px;color:var(--ink);background:#fff;border:1px solid #cfd7e2;border-radius:8px;outline:none;padding:0 34px 0 12px}.compact-filter{min-width:165px}.table-scroll{overflow-x:auto}.patients-table{border-collapse:collapse;width:100%;min-width:1060px}.patients-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:#79859a;border-bottom:1px solid var(--line);background:#f4f7fa;height:43px;padding:0 16px;font-size:10px}.patients-table td{color:#384457;border-bottom:1px solid #e9edf2;padding:13px 16px;font-size:13px}.patients-table tbody tr{transition:background .12s}.patients-table tbody tr:hover{background:#f5f9ff}.patient-cell{align-items:center;gap:11px;min-width:255px;display:flex}.patient-cell strong,.patient-cell small{display:block}.patient-cell strong{color:var(--ink);font-size:14px}.patient-cell small{color:var(--muted);margin-top:4px;font-size:11px}.initials{width:37px;height:37px;color:var(--blue-dark);background:#eaf3ff;border-radius:50%;flex:0 0 37px;place-items:center;font-weight:800;display:grid}.status-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:5px;margin-right:6px;padding:3px 7px;font-size:9px;font-weight:800;display:inline-flex}.status-badge.active{color:#137247;background:#e5f6ed}.status-badge.followup{color:#a75015;background:#fff0df}.status-badge.new{color:#1766cd;background:#e8f2ff}.status-badge.completed{color:#657184;background:#edf0f4}.note-text{white-space:nowrap}.row-action{width:34px;height:34px;color:var(--blue);background:#fff;border:1px solid #d6dde7;border-radius:7px;place-items:center;display:grid}.table-footer{min-height:57px;color:var(--muted);justify-content:space-between;align-items:center;padding:0 18px;font-size:12px;display:flex}.table-footer div{gap:4px;display:flex}.table-footer button{color:#637087;background:#fff;border:1px solid #d7dee8;border-radius:6px;width:30px;height:30px}.table-footer button.current{background:var(--blue);color:#fff;border-color:var(--blue)}.empty-state{color:var(--muted);place-items:center;gap:5px;padding:60px 20px;display:grid}.empty-state strong{color:var(--ink)}.calendar-layout{grid-template-columns:260px minmax(0,1fr);gap:16px;display:grid}.doctors-sidebar{align-self:start;padding:16px}.sidebar-title{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.sidebar-title button{border:1px solid var(--line);color:#637087;background:#fff;border-radius:7px;width:31px;height:31px;font-size:22px}.doctor-filter{text-align:left;width:100%;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:12px 9px;display:flex}.doctor-filter:hover,.doctor-filter.selected{background:#f3f8ff;border-color:#bbd6fb}.doctor-filter>span:nth-child(2){overflow:hidden}.doctor-filter strong,.doctor-filter small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.doctor-filter strong{font-size:13px}.doctor-filter small{color:var(--muted);margin-top:3px;font-size:10px}.doctor-filter em{background:#edf1f6;border-radius:11px;place-items:center;min-width:24px;height:21px;margin-left:auto;font-size:10px;font-style:normal;font-weight:800;display:grid}.doctor-color{border-radius:3px;flex:0 0 5px;width:5px;height:35px}.all-dot{border:3px solid var(--blue);border-radius:50%;width:11px;height:11px;margin:0 2px}.calendar-panel{overflow:hidden}.calendar-toolbar{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;height:68px;padding:0 16px;display:grid}.calendar-toolbar>div:first-child{gap:5px;display:flex}.calendar-toolbar button{color:#526078;background:#fff;border:1px solid #d7dee8;border-radius:6px;min-width:34px;height:34px;font-weight:650}.calendar-toolbar button.today-button{margin-left:4px;padding:0 12px}.view-switch{border:1px solid #d7dee8;border-radius:7px;justify-self:end;padding:3px;display:flex}.view-switch button{border:0;height:30px;padding:0 10px}.view-switch button.active{background:var(--blue);color:#fff}.month-grid{grid-template-columns:repeat(7,minmax(100px,1fr));display:grid}.weekdays{border-bottom:1px solid var(--line);background:#f5f7fa}.weekdays span{text-align:center;color:#5f6c81;text-transform:uppercase;padding:9px 10px;font-size:11px;font-weight:800}.date-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;min-height:104px;padding:7px}.date-cell:nth-child(7n){border-right:0}.date-cell.muted{color:#b4bdc9;background:#fafbfc}.date-cell.today{background:#fffbea;box-shadow:inset 0 0 0 1px #f1d984}.day-number{text-align:right;margin:0 2px 5px 0;font-size:11px;font-weight:750;display:block}.calendar-event{text-align:left;background:#f2f5f8;border:0;border-left:4px solid;border-radius:4px;align-items:center;gap:5px;width:100%;margin-top:4px;padding:5px 6px;font-size:9px;display:flex;overflow:hidden}.calendar-event strong{color:#37445a}.calendar-event span{white-space:nowrap;text-overflow:ellipsis;color:#647187;overflow:hidden}.doctors-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.doctor-card-top{display:inline-block;position:relative}.doctor-avatar{color:#fff;border-radius:13px;place-items:center;width:56px;height:56px;font-weight:800;display:grid}.online-dot{background:#2bb673;border:3px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;bottom:-3px;right:-3px}.doctor-card>p,.availability-card>p{color:var(--muted);margin:0 0 20px;font-size:12px;line-height:1.55}.doctor-card dl{border-top:1px solid var(--line);margin:0;padding-top:8px}.doctor-card dl div{justify-content:space-between;padding:8px 0;display:flex}.doctor-card dt{color:var(--muted);font-size:11px}.doctor-card dd{margin:0;font-size:11px;font-weight:750}.load-bar{background:#eef1f5;border-radius:3px;height:5px;margin:10px 0 18px;overflow:hidden}.load-bar span{height:100%;display:block}.doctor-card .secondary-button,.availability-card .secondary-button{width:100%}.availability-card{background:#f7faff;border-color:#c9ddfb}.availability-icon{width:56px;height:56px;color:var(--blue);background:#dcecff;border-radius:13px;place-items:center;display:grid}.availability-card>div{background:#fff;border:1px solid #dce5f1;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:18px;padding:12px;display:flex}.availability-card>div span{color:var(--muted);font-size:11px}.availability-card .availability-note{color:#718097;margin:-7px 0 0;font-size:10px;line-height:1.5}.doctor-workspace-modal{grid-template-rows:auto minmax(0,1fr);width:min(1320px,97vw);max-height:95vh;display:grid}.doctor-workspace-body{grid-template-columns:300px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.doctor-profile-editor{border-right:1px solid var(--line);background:#f8fafc;padding:22px;overflow-y:auto}.doctor-profile-preview{align-items:center;gap:12px;margin-bottom:22px;display:flex}.doctor-profile-avatar{color:#fff;border-radius:14px;flex:0 0 58px;place-items:center;width:58px;height:58px;font-size:17px;font-weight:850;display:grid;box-shadow:0 7px 18px #22375229}.doctor-profile-preview strong,.doctor-profile-preview small{display:block}.doctor-profile-preview strong{font-size:14px}.doctor-profile-preview small{color:var(--muted);margin-top:5px;font-size:9px;line-height:1.4}.doctor-profile-editor label{gap:7px;margin-top:15px;display:grid}.doctor-profile-editor label>span{color:#637087;text-transform:uppercase;letter-spacing:.05em;font-size:9px;font-weight:800}.doctor-profile-editor select,.doctor-profile-editor input{width:100%;height:42px;color:var(--ink);background:#fff;border:1px solid #ccd6e2;border-radius:8px;outline:none;padding:0 10px}.doctor-profile-editor select:focus,.doctor-profile-editor input:focus{border-color:#82b6ff;box-shadow:0 0 0 3px #e8f2ff}.profile-color-field>div{align-items:center;gap:10px;display:flex}.profile-color-field input[type=color]{width:50px;padding:4px}.profile-color-field strong{color:#59677c;font-size:11px}.profile-color-swatches{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.profile-color-swatches button{border:3px solid #fff;border-radius:50%;width:26px;height:26px;box-shadow:0 0 0 1px #cfd8e4}.profile-color-swatches button.selected{box-shadow:0 0 0 2px #1f78ec}.profile-color-swatches button:disabled{opacity:.7}.profile-save-button{width:100%;margin-top:20px}.doctor-profile-editor .form-error{margin-top:14px}.doctor-profile-editor .form-hint{margin-top:18px;line-height:1.5;display:block}.doctor-schedule-panel{background:#fff;min-width:0;padding:22px;overflow:auto}.doctor-schedule-toolbar{justify-content:space-between;align-items:flex-start;gap:18px;min-width:840px;margin-bottom:16px;display:flex}.doctor-schedule-toolbar h3{margin:0;font-size:18px}.doctor-schedule-toolbar p{color:var(--muted);margin:5px 0 0;font-size:10px}.doctor-week-grid{grid-template-columns:repeat(7,minmax(108px,1fr));gap:8px;min-width:840px;display:grid}.doctor-day-card{min-height:184px;color:var(--ink);text-align:left;background:#fff;border:1px solid #dce3ec;border-radius:9px;flex-direction:column;align-items:stretch;padding:11px 9px;display:flex}.doctor-day-card:hover{background:#f9fbff;border-color:#a8cafa}.doctor-day-card>span{color:#7a8799;text-transform:uppercase;font-size:8px;font-weight:800}.doctor-day-card>strong{margin:4px 0 14px;font-size:20px}.doctor-shift-block,.doctor-shift-empty{border-radius:7px;align-content:center;gap:6px;min-height:88px;margin-top:auto;padding:10px 8px;display:grid}.doctor-shift-block{background:#eef5ff;border:1px solid #c9dbf4;border-left:4px solid}.doctor-shift-block b{color:#30425c;font-size:10px}.doctor-shift-block small{color:#65758d;font-size:8px}.doctor-shift-empty{color:#8894a5;text-align:center;background:#fafbfc;border:1px dashed #ccd6e2;place-items:center}.doctor-shift-empty b{font-size:10px}.doctor-shift-empty small{font-size:8px}.doctor-schedule-summary{color:#758195;border-top:1px solid #e7ebf0;justify-content:space-between;gap:12px;min-width:840px;margin-top:14px;padding-top:14px;font-size:9px;display:flex}.doctor-schedule-summary span{align-items:center;gap:7px;display:flex}.doctor-schedule-summary i{border-radius:50%;width:8px;height:8px}.drawer-layer{z-index:80;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#18212f61;border:0;position:absolute;inset:0}.patient-drawer{background:#f6f8fb;flex-direction:column;width:min(720px,92vw);height:100%;animation:.2s ease-out slideIn;display:flex;position:relative;box-shadow:-12px 0 40px #111f332e}@keyframes slideIn{0%{opacity:.7;transform:translate(30px)}}.drawer-header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:flex-start;padding:22px 26px 17px;display:flex}.drawer-header span{color:var(--muted);letter-spacing:.08em;font-size:10px;font-weight:800}.drawer-header h2{margin:4px 0 0;font-size:24px}.icon-button{border:1px solid var(--line);color:#647187;background:#fff;border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.patient-summary{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:13px;padding:18px 26px;display:flex}.large-initials{width:48px;height:48px;color:var(--blue-dark);background:#e3efff;border-radius:50%;place-items:center;font-weight:800;display:grid}.patient-summary div{gap:2px;display:grid}.patient-summary strong{font-size:12px}.patient-summary span:not(.large-initials){color:var(--muted);font-size:11px}.drawer-tabs{border-bottom:1px solid var(--line);background:#fff;gap:18px;padding:0 26px;display:flex}.drawer-tabs button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:13px 2px;font-size:12px;font-weight:700}.drawer-tabs button.active{color:var(--blue);border-bottom-color:var(--blue)}.drawer-tabs em{color:#6c798d;background:#edf2f8;border-radius:9px;place-items:center;min-width:17px;height:17px;margin-left:4px;padding:0 5px;font-size:8px;font-style:normal;display:inline-grid}.drawer-content{flex:1;padding:18px 26px;overflow-y:auto}.next-visit{background:#eaf3ff;border:1px solid #c3dcff;border-radius:10px;align-items:center;gap:12px;padding:15px;display:flex}.next-visit>span{width:39px;height:39px;color:var(--blue);background:#fff;border-radius:8px;flex:0 0 39px;place-items:center;display:grid}.next-visit div{flex:1}.next-visit small,.next-visit strong{display:block}.next-visit small{color:#4c72a5;font-size:9px;font-weight:800}.next-visit strong{margin-top:3px;font-size:14px}.next-visit p{color:#60718a;margin:3px 0 0;font-size:10px}.next-visit button,.section-title button{color:var(--blue);background:0 0;border:0;font-size:10px;font-weight:750}.doctor-assignment-card{background:#fff;border:1px solid #d5e1ef;border-radius:10px;margin-bottom:12px;padding:14px}.assigned-doctor-current{align-items:center;gap:11px;display:flex}.assigned-doctor-avatar{color:#fff;border-radius:10px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:11px;font-weight:850;display:grid}.assigned-doctor-current>div{min-width:0}.assigned-doctor-current small,.assigned-doctor-current strong,.assigned-doctor-current div>span{display:block}.assigned-doctor-current small{color:#6f7f95;letter-spacing:.05em;font-size:8px;font-weight:850}.assigned-doctor-current strong{margin-top:3px;font-size:12px}.assigned-doctor-current div>span{color:#7b8799;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8px;overflow:hidden}.doctor-assignment-controls{border-top:1px solid #e8edf3;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin-top:11px;padding-top:11px;display:grid}.doctor-assignment-controls label{gap:5px;min-width:0;display:grid}.doctor-assignment-controls label>span{color:#66758a;text-transform:uppercase;font-size:8px;font-weight:850}.doctor-assignment-controls select{width:100%;height:38px;color:var(--ink);background:#fff;border:1px solid #cfd9e5;border-radius:7px;outline:none;padding:0 30px 0 10px;font-size:9px}.doctor-assignment-controls select:focus{border-color:#82b6ff;box-shadow:0 0 0 2px #e8f2ff}.doctor-assignment-controls .secondary-button{min-height:38px;font-size:9px}.doctor-assignment-controls .secondary-button:disabled{opacity:.55;cursor:not-allowed}.doctor-assignment-success{color:#16804e;margin:8px 0 0;font-size:8px;font-weight:750}@media (width<=650px){.doctor-assignment-controls{grid-template-columns:1fr}.doctor-assignment-controls .secondary-button{width:100%}}.drawer-section{border:1px solid var(--line);background:#fff;border-radius:10px;margin-top:16px;padding:16px}.section-title{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.section-title h3{margin:0;font-size:14px}.teeth-row{grid-template-columns:repeat(8,1fr);gap:6px;display:grid}.tooth{color:#a5afbd;background:#fff;border:1px solid #dfe5ed;border-radius:6px;place-items:center;gap:2px;min-height:55px;display:grid}.tooth span{color:#7b8798;font-size:9px}.tooth.watch{color:#dc791f;background:#fff5e7;border-color:#f2c995}.tooth.treated{color:var(--blue);background:#eaf3ff;border-color:#b8d6ff}.tooth.crown{color:#a87300;background:#fff8dc;border-color:#e6ca67}.tooth.missing{color:#7a8494;background:#f3f4f6;border-style:dashed}.tooth.implant{color:#7153c6;background:#f2efff;border-color:#cbbdf4}.teeth-legend{color:var(--muted);flex-wrap:wrap;gap:12px 17px;margin-top:12px;font-size:9px;display:flex}.teeth-legend span{align-items:center;gap:5px;display:flex}.teeth-legend i{background:#cbd2dc;border-radius:50%;width:7px;height:7px}.teeth-legend i.watch{background:#dc791f}.teeth-legend i.treated{background:var(--blue)}.teeth-legend i.crown{background:#c39116}.teeth-legend i.missing{background:#7a8494}.teeth-legend i.implant{background:#7153c6}.dental-chart-cta{background:linear-gradient(135deg,#f6faff,#fff);border:1px solid #cfe0f8;border-radius:10px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:13px;margin-top:16px;padding:15px 16px;display:grid}.dental-cta-icon{width:44px;height:44px;color:var(--blue);background:#e5f0ff;border-radius:10px;place-items:center;display:grid}.dental-chart-cta h3{margin:0;font-size:14px}.dental-chart-cta p{color:var(--muted);margin:4px 0 0;font-size:9px;line-height:1.45}.dental-chart-cta .secondary-button{white-space:nowrap;min-height:37px}.visit-list>div{border-top:1px solid #edf0f4;align-items:center;gap:12px;padding:12px 0;display:flex}.visit-list>div:first-child{border-top:0;padding-top:0}.visit-date{border:1px solid #dbe2eb;border-radius:7px;flex:0 0 40px;place-items:center;width:40px;height:45px;font-weight:800;display:grid}.visit-date small{color:var(--muted);font-size:7px}.visit-list p{flex:1;margin:2px 0 0}.visit-list p strong,.visit-list p span{display:block}.visit-list p strong{font-size:12px}.visit-list p span{color:var(--muted);margin-top:4px;font-size:9px}.drawer-footer{border-top:1px solid var(--line);background:#fff;justify-content:flex-end;gap:9px;padding:14px 26px;display:flex}.detail-loading{min-height:260px;color:var(--muted);align-content:center;place-items:center;gap:13px;font-size:11px;display:grid}.detail-loading span{border:3px solid #d9e7f9;border-top-color:var(--blue);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.history-empty{color:#8792a3;text-align:center;align-content:center;place-items:center;gap:5px;min-height:150px;display:grid}.history-empty strong{color:#526078;font-size:12px}.history-empty span{font-size:9px}.history-status{color:#68758a;white-space:nowrap;background:#edf2f7;border-radius:10px;padding:4px 7px;font-size:8px;font-style:normal;font-weight:800}.history-status.completed{color:#177548;background:#e7f7ee}.history-status.cancelled,.history-status.no_show{color:#b23a3a;background:#fff0f0}.history-panel{border:1px solid var(--line);background:#fff;border-radius:10px;padding:17px}.history-heading{border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;margin-bottom:4px;padding-bottom:15px;display:flex}.history-heading>div{align-items:center;gap:10px;display:flex}.history-heading h3{margin:0;font-size:14px}.history-heading p{color:var(--muted);margin:4px 0 0;font-size:9px}.history-heading>strong{color:var(--blue-dark);background:#eef4ff;border-radius:12px;padding:5px 8px;font-size:9px}.history-icon{width:36px;height:36px;color:var(--blue);background:#eaf3ff;border-radius:8px;place-items:center;display:grid}.documents-panel{text-align:center;border:1px solid var(--line);background:#fff;border-radius:10px;align-content:center;place-items:center;min-height:320px;padding:30px;display:grid}.documents-panel>span{width:56px;height:56px;color:var(--blue);background:#eaf3ff;border-radius:13px;place-items:center;display:grid}.documents-panel h3{margin:14px 0 6px;font-size:15px}.documents-panel p{max-width:360px;color:var(--muted);margin:0 0 18px;font-size:10px;line-height:1.6}.modal-layer{z-index:90;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#18212f75;border:0;position:absolute;inset:0}.patient-modal{background:#fff;border-radius:13px;width:min(560px,100%);animation:.18s ease-out modalIn;position:relative;overflow:hidden;box-shadow:0 24px 70px #0f1d3040}@keyframes modalIn{0%{opacity:.65;transform:translateY(8px)}}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding:21px 23px 17px;display:flex}.modal-header span{color:var(--muted);letter-spacing:.08em;font-size:9px;font-weight:800}.modal-header h2{margin:4px 0 0;font-size:22px}.modal-body{gap:16px;padding:22px 23px;display:grid}.modal-body label{gap:7px;display:grid}.modal-body label>span{color:#637087;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:800}.modal-body input,.modal-body select{width:100%;height:44px;color:var(--ink);background:#fff;border:1px solid #cfd7e2;border-radius:8px;outline:none;padding:0 12px}.modal-body input:focus,.modal-body select:focus{border-color:#82b6ff;box-shadow:0 0 0 3px #e8f2ff}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-error{color:#b53030;background:#fff0f0;border-radius:7px;margin:0;padding:9px 11px;font-size:11px}.form-hint{color:#8590a2;margin:0;font-size:10px}.modal-footer{border-top:1px solid var(--line);background:#f8fafc;justify-content:flex-end;gap:9px;padding:14px 23px;display:flex}.primary-button:disabled{opacity:.65;cursor:wait}.nested-modal{z-index:110}.appointment-patient{border-bottom:1px solid var(--line);background:#f8fafc;align-items:center;gap:11px;padding:14px 23px;display:flex}.appointment-patient strong,.appointment-patient small{display:block}.appointment-patient strong{font-size:12px}.appointment-patient small{color:var(--muted);margin-top:3px;font-size:9px}.clinical-visit-modal{grid-template-rows:auto auto minmax(0,1fr) auto;width:min(1040px,100vw - 40px);max-height:calc(100dvh - 40px);display:grid;overflow:hidden}.visit-patient,.visit-patient>div{min-width:0}.visit-patient small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.visit-link-badge{color:#42658f;white-space:nowrap;background:#fff;border:1px solid #ccdcf1;border-radius:14px;margin-left:auto;padding:6px 10px;font-size:9px;font-weight:800}.visit-modal-body{overscroll-behavior:contain;min-height:0;padding:20px 23px 16px;overflow-y:auto}.visit-form-grid{grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:16px;display:grid}.visit-form-grid label{align-content:start;gap:7px;min-width:0;display:grid}.visit-form-grid label>span{color:#637087;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:800}.visit-form-grid label>span b,.visit-required-note b{color:#d14a4a}.visit-form-grid .full-field{grid-column:1/-1}.visit-form-grid input,.visit-form-grid textarea{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd7e2;border-radius:8px;outline:none;font-size:11px}.visit-form-grid input{text-transform:uppercase;height:44px;padding:0 12px}.visit-form-grid textarea{resize:vertical;min-height:92px;padding:11px 12px;line-height:1.55}.visit-form-grid .full-field textarea{min-height:86px}.visit-form-grid input:focus,.visit-form-grid textarea:focus{border-color:#82b6ff;box-shadow:0 0 0 3px #e8f2ff}.visit-modal-body .form-error{margin-top:14px}.visit-required-note{color:#7f8b9d;margin:12px 0 0;font-size:9px}.visit-modal-footer{justify-content:space-between;align-items:center}.visit-modal-footer>div{gap:9px;display:flex}.clinical-visit-header-actions{align-items:center;gap:8px;display:flex}.ai-assistant-trigger{color:#4f56a7;background:linear-gradient(135deg,#f7f4ff,#edf5ff);border:1px solid #b9cbed;border-radius:8px;align-items:center;gap:6px;min-height:36px;padding:0 9px;font-size:9px;font-weight:850;display:flex}.ai-assistant-trigger:hover,.ai-assistant-trigger.active{background:linear-gradient(135deg,#eee9ff,#e5f1ff);border-color:#8f96df;box-shadow:0 4px 12px #4e52a71f}.ai-assistant-trigger em{color:#fff;letter-spacing:.04em;text-transform:uppercase;background:#7563ca;border-radius:8px;padding:3px 5px;font-size:6px;font-style:normal}.clinical-ai-shade{z-index:4;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#1f2b3e42;border:0;position:absolute;inset:0}.clinical-ai-panel{z-index:5;background:#f7f9fc;border-left:1px solid #d8e0ec;border-radius:0 13px 13px 0;grid-template-rows:auto minmax(0,1fr) auto;width:min(410px,92%);animation:.18s ease-out clinicalAiIn;display:grid;position:absolute;top:0;bottom:0;right:0;overflow:hidden;box-shadow:-18px 0 48px #1c2b422e}@keyframes clinicalAiIn{0%{opacity:.5;transform:translate(24px)}}.clinical-ai-panel>header{background:#fff;border-bottom:1px solid #dfe5ed;justify-content:space-between;align-items:center;gap:12px;min-height:67px;padding:12px 14px;display:flex}.clinical-ai-title{align-items:center;gap:10px;min-width:0;display:flex}.clinical-ai-title>span{color:#fff;background:linear-gradient(135deg,#7655d6,#2373e8);border-radius:10px;flex:0 0 37px;place-items:center;width:37px;height:37px;display:grid;box-shadow:0 6px 16px #484db233}.clinical-ai-title small,.clinical-ai-title h3{display:block}.clinical-ai-title small{color:#7466b7;letter-spacing:.08em;font-size:7px;font-weight:900}.clinical-ai-title h3{margin:3px 0 0;font-size:15px}.clinical-ai-body{overscroll-behavior:contain;align-content:start;gap:10px;min-height:0;padding:11px;display:grid;overflow-y:auto}.clinical-ai-body>section{background:#fff;border:1px solid #dfe5ee;border-radius:10px;padding:12px;box-shadow:0 3px 10px #23344a09}.clinical-ai-section-head{align-items:center;gap:8px;min-width:0;display:flex}.clinical-ai-section-head>span{color:#5276b1;background:#eef4ff;border-radius:8px;flex:0 0 29px;place-items:center;width:29px;height:29px;display:grid}.clinical-ai-section-head>div{min-width:0}.clinical-ai-section-head strong,.clinical-ai-section-head small{display:block}.clinical-ai-section-head strong{color:#35445a;font-size:10px}.clinical-ai-section-head small{color:#8793a5;margin-top:2px;font-size:7px}.clinical-ai-summary ul{gap:7px;margin:10px 0 0;padding:0;list-style:none;display:grid}.clinical-ai-summary li{color:#5f6d81;padding-left:11px;font-size:8px;line-height:1.45;position:relative}.clinical-ai-summary li:before{content:"";background:#6d87b4;border-radius:50%;width:4px;height:4px;position:absolute;top:5px;left:0}.clinical-ai-summary li span{color:#8994a4;margin-top:2px;display:block}.clinical-ai-summary li.clinical-ai-acute{color:#a64048;background:#fff2f2;border-radius:7px;padding:7px 8px 7px 21px;font-weight:800}.clinical-ai-summary li.clinical-ai-acute:before{background:#ce4853;top:11px;left:9px}.clinical-ai-check .clinical-ai-section-head em{color:#2373e8;margin-left:auto;font-size:11px;font-style:normal;font-weight:900}.clinical-ai-progress{background:#e8edf4;border-radius:4px;height:5px;margin:10px 0 9px;overflow:hidden}.clinical-ai-progress i{background:linear-gradient(90deg,#2874eb,#16a17b);border-radius:4px;height:100%;transition:width .2s;display:block}.clinical-ai-checks{grid-template-columns:1fr 1fr;gap:5px;display:grid}.clinical-ai-checks span{color:#6a778a;align-items:center;gap:5px;min-width:0;font-size:7px;display:flex}.clinical-ai-checks span i{border-radius:50%;flex:0 0 15px;place-items:center;width:15px;height:15px;font-size:7px;font-style:normal;font-weight:900;display:grid}.clinical-ai-checks span.ready i{color:#16774b;background:#e4f5ec}.clinical-ai-checks span.missing i{color:#b85f1f;background:#fff0e5}.clinical-ai-check>p{color:#896b39;background:#fff8e9;border-radius:7px;margin:9px 0 0;padding:7px 8px;font-size:7px;line-height:1.45}.clinical-ai-icd>.clinical-ai-section-head{margin-bottom:9px}.clinical-ai-icd>div:last-child{gap:5px;display:grid}.clinical-ai-icd article{background:#fbfcfd;border:1px solid #e1e6ed;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:7px 7px 7px 9px;display:grid}.clinical-ai-icd article.selected{background:#eef5ff;border-color:#9fc1ef}.clinical-ai-icd article>span{min-width:0}.clinical-ai-icd article strong,.clinical-ai-icd article small{display:block}.clinical-ai-icd article strong{color:#315b94;font-size:9px}.clinical-ai-icd article small{color:#717e91;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:7px;overflow:hidden}.clinical-ai-icd article button{color:#326fc6;background:#fff;border:1px solid #b8cef0;border-radius:7px;min-height:27px;padding:0 8px;font-size:7px;font-weight:850}.clinical-ai-icd article.selected button{color:#17764a;background:#e7f6ed;border-color:#9fc4a9}.clinical-ai-empty{color:#778598;text-align:center;background:#fafbfc;border:1px dashed #cfd9e7;border-radius:8px;margin:0;padding:10px;font-size:8px;line-height:1.5}.clinical-ai-panel>footer{color:#67758a;background:#fff;border-top:1px solid #dfe5ed;align-items:center;gap:8px;min-height:55px;padding:10px 13px;display:flex}.clinical-ai-panel>footer svg{color:#775fc4;flex:none}.clinical-ai-panel>footer strong,.clinical-ai-panel>footer small{display:block}.clinical-ai-panel>footer strong{font-size:8px}.clinical-ai-panel>footer small{margin-top:2px;font-size:7px;line-height:1.35}.visit-status-field{background:#f8fafc;border:1px solid #dce5f0;border-radius:9px;gap:8px;padding:14px;display:grid}.visit-status-field>span{color:#536178;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:800}.visit-status-field>small{color:#7d899b;font-size:9px}.visit-status-options{flex-wrap:wrap;gap:8px;display:flex}.visit-status-options button{color:#68758a;background:#fff;border:1px solid #d3dbe5;border-radius:18px;min-height:35px;padding:0 13px;font-size:10px;font-weight:800}.visit-status-options button.selected.active{color:#137247;background:#e8f7ef;border-color:#9fd4b8}.visit-status-options button.selected.followup{color:#a75015;background:#fff4e5;border-color:#efc795}.visit-status-options button.selected.new{color:#1766cd;background:#eaf3ff;border-color:#a9cdfb}.visit-status-options button.selected.completed{color:#526075;background:#e9edf2;border-color:#bdc7d3}.visit-status-options button:disabled{opacity:1;cursor:default}.dental-modal{width:min(1440px,98vw);max-height:96vh}.dental-editor-layout{grid-template-columns:minmax(0,1fr) 270px;min-height:520px;max-height:calc(96vh - 80px);display:grid;overflow:auto}.full-dental-chart{min-width:0;padding:18px;overflow:hidden}.jaw-label{color:#7a8699;text-align:center;grid-template-columns:1fr 1fr;align-items:end;width:100%;margin-bottom:7px;font-size:8px;display:grid}.jaw-label span{color:#4e5b70;grid-column:1/-1;margin-bottom:3px;font-size:11px;font-weight:800}.dental-grid-row{grid-template-columns:repeat(16,minmax(0,1fr));gap:3px;width:100%;display:grid}.tooth-large{color:#a0aab8;background:#fff;border:1px solid #dce3ec;border-radius:6px;align-content:center;place-items:center;gap:2px;min-width:0;min-height:76px;padding:4px 1px;display:grid;overflow:hidden}.tooth-large svg{width:clamp(19px,2.2vw,27px);height:clamp(19px,2.2vw,27px)}.tooth-large>span{color:#667388;font-size:8px;font-weight:800}.tooth-large small{color:#7b8798;text-overflow:ellipsis;white-space:nowrap;width:100%;min-height:17px;padding:0 1px;font-size:6px;line-height:1.2;overflow:hidden}.tooth-large:nth-child(9){margin-left:5px}.tooth-large.selected{border-color:#6ca8f5;box-shadow:inset 0 0 0 2px #6ca8f5,0 0 0 2px #d8e9ff}.tooth-large.watch{color:#db7a22;background:#fff7eb;border-color:#efc993}.tooth-large.treated{color:var(--blue);background:#edf5ff;border-color:#b9d6fc}.tooth-large.crown{color:#a87300;background:#fff8dc;border-color:#e6ca67}.tooth-large.missing{color:#7a8494;background:#f3f4f6;border-style:dashed}.tooth-large.implant{color:#7153c6;background:#f3f0ff;border-color:#cbbdf4}.jaw-divider{background:#cfd8e4;width:100%;height:1px;margin:13px 0 10px;position:relative}.jaw-divider:after{content:"";background:#aeb9c7;width:1px;height:11px;position:absolute;top:-5px;left:50%}.tooth-editor{border-left:1px solid var(--line);background:#f8fafc;padding:22px}.selected-tooth-icon{color:#a0aab8;background:#fff;border:1px solid #dbe3ec;border-radius:14px;place-items:center;width:68px;height:68px;display:grid;position:relative}.selected-tooth-icon strong{font-size:10px;position:absolute;bottom:5px;right:6px}.selected-tooth-icon.watch{color:#db7a22;background:#fff7eb}.selected-tooth-icon.treated{color:var(--blue);background:#edf5ff}.selected-tooth-icon.crown{color:#a87300;background:#fff8dc}.selected-tooth-icon.missing{color:#7a8494;background:#f3f4f6}.selected-tooth-icon.implant{color:#7153c6;background:#f3f0ff}.tooth-editor h3{margin:14px 0 4px;font-size:17px}.tooth-editor>p{color:var(--muted);margin:0 0 18px;font-size:9px}.tooth-editor label{gap:7px;margin-bottom:12px;display:grid}.tooth-editor label>span{color:#637087;text-transform:uppercase;font-size:9px;font-weight:800}.tooth-editor select,.tooth-editor input,.tooth-editor textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #ccd6e2;border-radius:8px;outline:none}.tooth-editor select,.tooth-editor input{height:40px;font:inherit;padding:0 10px;font-size:10px}.tooth-editor textarea{resize:vertical;min-height:82px;font:inherit;padding:10px;font-size:10px;line-height:1.5}.tooth-editor .primary-button{width:100%}.tooth-history-panel{background:#fff;border:1px solid #dce4ee;border-radius:10px;margin-top:15px;overflow:hidden}.tooth-history-head{background:#f8fafc;border-bottom:1px solid #e8edf3;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 12px;display:flex}.tooth-history-head>div{align-items:center;gap:9px;display:flex}.tooth-history-head h3{margin:0;font-size:12px}.tooth-history-head p{color:#7c889a;margin:3px 0 0;font-size:8px}.tooth-history-head>strong{color:#2369c8;white-space:nowrap;background:#e9f2ff;border-radius:12px;padding:5px 8px;font-size:8px}.tooth-history-icon{color:#9aa5b4;background:#fff;border:1px solid #dbe3ec;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.tooth-history-icon.watch{color:#db7a22;background:#fff7eb}.tooth-history-icon.treated{color:var(--blue);background:#edf5ff}.tooth-history-icon.crown{color:#a87300;background:#fff8dc}.tooth-history-icon.missing{color:#7a8494;background:#f3f4f6}.tooth-history-icon.implant{color:#7153c6;background:#f3f0ff}.tooth-history-table-wrap{max-height:170px;overflow:auto}.tooth-history-table{border-collapse:collapse;width:100%;font-size:9px}.tooth-history-table th{z-index:1;color:#68758a;text-align:left;text-transform:uppercase;letter-spacing:.03em;background:#f4f7fa;padding:8px 10px;font-size:7px;position:sticky;top:0}.tooth-history-table td{color:#5f6c80;vertical-align:middle;border-top:1px solid #edf1f5;padding:9px 10px}.tooth-history-table td:first-child{white-space:nowrap;color:#344257;width:92px;font-weight:750}.tooth-state-badge{color:#667388;white-space:nowrap;background:#edf1f5;border-radius:10px;padding:4px 7px;font-size:8px;font-weight:800;display:inline-flex}.tooth-state-badge.watch{color:#a75516;background:#fff0dc}.tooth-state-badge.treated{color:#1767cf;background:#e5f1ff}.tooth-state-badge.crown{color:#8b6500;background:#fff4c9}.tooth-state-badge.missing{color:#596678;background:#e9edf2}.tooth-state-badge.implant{color:#654ab7;background:#eee9ff}.tooth-history-empty{color:#748195;text-align:center;align-content:center;place-items:center;gap:4px;min-height:82px;padding:15px;font-size:9px;display:grid}.tooth-history-empty small{color:#9aa5b4}@media (width<=1180px){.topbar{gap:16px;padding:0 20px}.brand{min-width:auto}.brand small{display:none}.stats-row{grid-template-columns:repeat(2,1fr)}.stat:nth-child(3){border-left:0;border-top:1px solid var(--line)}.stat:nth-child(4){border-top:1px solid var(--line)}.doctors-grid{grid-template-columns:repeat(2,1fr)}.compact-filter{display:none}}@media (width<=900px){.topbar{height:66px}.brand span:last-child,.user-copy{display:none}.main-nav{flex:1;justify-content:center}.nav-button{padding:0 12px}.workspace{padding:24px 16px 48px}.calendar-layout{grid-template-columns:1fr}.doctors-sidebar{gap:8px;display:flex;overflow-x:auto}.sidebar-title{display:none}.doctor-filter{min-width:200px}.calendar-panel{overflow-x:auto}.month-grid{min-width:800px}.dental-editor-layout{grid-template-columns:1fr}.tooth-editor{border-left:0;border-top:1px solid var(--line)}.dental-modal{max-height:96vh}.tooth-history-table{min-width:620px}}@media (width<=650px){.topbar{padding:0 10px}.nav-button span{display:none}.nav-button{padding:0 14px}.account-menu .user-menu{gap:3px;min-height:42px;padding:4px}.account-menu .user-avatar{flex-basis:32px;width:32px;height:32px;font-size:11px}.account-menu-chevron{width:15px}.account-dropdown{width:min(286px,100vw - 16px);right:-2px}.page-heading{align-items:flex-start}.page-heading h1{font-size:27px}.page-heading .primary-button{width:44px;padding:0;font-size:0}.stats-row{grid-template-columns:1fr 1fr}.stat{padding:15px}.stat strong{font-size:21px}.filters{flex-wrap:wrap}.search-field{flex-basis:100%;max-width:none}.field-label{flex:1;min-width:150px}.panel-tabs{overflow-x:auto}.tab{white-space:nowrap}.doctors-grid{grid-template-columns:1fr}.patient-drawer{width:100vw}.drawer-content,.drawer-header,.patient-summary,.drawer-next-visit-wrap{padding-left:17px;padding-right:17px}.drawer-footer{padding:12px 17px}.teeth-row{grid-template-columns:repeat(4,1fr)}.next-visit{flex-wrap:wrap;align-items:flex-start}.next-visit div{min-width:calc(100% - 55px)}.next-visit button{margin-left:52px}.dental-modal{border-radius:0;width:100vw;max-height:100vh}.dental-editor-layout{min-height:0}.full-dental-chart,.tooth-editor{padding:14px}.dental-grid-row{grid-template-columns:repeat(8,minmax(0,1fr))}.tooth-large:nth-child(9){margin-top:4px;margin-left:0}.tooth-large{min-height:68px}.tooth-large small{font-size:7px}.jaw-label small,.history-status{display:none}}.admin-stats{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:20px;display:grid}.admin-stats .stat+.stat{border-left:1px solid var(--line)}.admin-panel{overflow:hidden}.admin-tabs{border-bottom:1px solid var(--line);background:#fff;gap:6px;padding:12px 18px 0;display:flex}.admin-tabs button{min-height:45px;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:0 14px 11px;font-weight:750;display:flex}.admin-tabs button.active{color:var(--blue);border-bottom-color:var(--blue)}.admin-table-wrap,.shift-wrap,.roles-wrap{padding:22px}.admin-section-head{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.admin-section-head h2{letter-spacing:-.02em;margin:0;font-size:18px}.admin-section-head p{color:var(--muted);margin:5px 0 0;font-size:11px}.admin-section-head>span{color:var(--blue-dark);background:#edf4ff;border-radius:14px;padding:6px 10px;font-size:10px;font-weight:800}.staff-table{border-collapse:collapse;border:1px solid var(--line);border-radius:9px;width:100%;min-width:860px;overflow:hidden}.staff-table th{text-align:left;color:#79859a;text-transform:uppercase;letter-spacing:.05em;background:#f4f7fa;height:42px;padding:0 15px;font-size:10px}.staff-table td{color:#384457;border-top:1px solid #e8edf3;padding:13px 15px;font-size:12px}.staff-table tbody tr:hover{background:#f8fbff}.contact-phone{color:var(--muted);margin-top:4px;font-size:10px;font-weight:500;display:block}.role-select{color:#3c4960;background:#fff;border:1px solid #d5dee9;border-radius:7px;outline:none;min-width:145px;height:36px;padding:0 30px 0 10px;font-size:11px;font-weight:750}.role-select.administrator{color:#1766cd;background:#f0f6ff;border-color:#b9d4ff}.role-select.dentist{color:#137247;background:#effaf4;border-color:#bde3ce}.role-select.assistant{color:#77429a;background:#faf3ff;border-color:#e7d2f5}.role-select.registrar{color:#9a5a1b;background:#fff8ed;border-color:#f2d4ac}.status-toggle{color:#6f7b8e;background:#fff;border:1px solid #d7dee8;border-radius:17px;align-items:center;gap:7px;min-width:105px;height:34px;padding:0 10px;font-size:10px;font-weight:800;display:inline-flex}.status-toggle i{background:#aeb7c4;border-radius:50%;width:8px;height:8px}.status-toggle.active{color:#137247;background:#f1fbf5;border-color:#bfe2cf}.status-toggle.active i{background:#28a56a}.status-toggle:disabled,.role-select:disabled,.danger-icon-button:disabled{opacity:.48;cursor:not-allowed}.danger-icon-button{color:#c43b3b;background:#fff;border:1px solid #f0c8c8;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.danger-icon-button:not(:disabled):hover{background:#fff1f1;border-color:#e79b9b}.week-nav{border:1px solid #d7dee8;border-radius:7px;display:flex;overflow:hidden}.week-nav button{color:#5e6b80;background:#fff;border:0;border-left:1px solid #e2e7ed;min-height:33px;padding:0 10px;font-size:11px;font-weight:700}.week-nav button:first-child{border-left:0}.shift-grid{border:1px solid var(--line);border-radius:9px;grid-template-columns:240px repeat(7,minmax(110px,1fr));min-width:1060px;display:grid;overflow:hidden}.shift-grid-head{border-left:1px solid var(--line);color:#6b778b;background:#f4f7fa;place-items:center;gap:2px;min-height:58px;padding:9px 8px;display:grid}.shift-grid-head.employee-col{border-left:0;place-items:center start;padding-left:15px}.shift-grid-head span{text-transform:uppercase;font-size:9px;font-weight:800}.shift-grid-head strong{color:var(--ink);font-size:16px}.shift-row{display:contents}.shift-employee,.shift-cell{border-top:1px solid var(--line);background:#fff;min-height:88px}.shift-employee{align-items:center;gap:10px;padding:13px;display:flex}.shift-employee strong,.shift-employee small{display:block}.shift-employee strong{font-size:11px}.shift-employee small{color:var(--muted);margin-top:4px;font-size:9px}.shift-cell{border-left:1px solid var(--line);place-items:center;padding:8px;display:grid}.shift-chip{border:1px solid #b8d4fb;border-left:4px solid var(--blue);width:100%;min-height:60px;color:var(--blue-dark);background:#eef5ff;border-radius:7px;place-content:center;gap:4px;padding:8px;display:grid}.shift-chip strong{font-size:10px}.shift-chip span{color:#657795;font-size:9px}.shift-chip em{opacity:0;color:#1766cd;font-size:8px;font-style:normal;font-weight:800;transition:opacity .12s}.shift-chip:hover em,.shift-chip:focus-visible em{opacity:1}.empty-shift{color:#8c98aa;background:#fff;border:1px dashed #cbd4e0;border-radius:7px;width:30px;height:30px}.empty-shift:hover{color:var(--blue);background:#f3f8ff;border-color:#84b5f8}.role-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;display:grid}.role-cards article{border:1px solid var(--line);background:#fff;border-radius:10px;padding:18px}.role-cards h3{margin:14px 0 5px;font-size:14px}.role-cards p{min-height:32px;color:var(--muted);margin:0 0 13px;font-size:10px;line-height:1.5}.role-cards ul{color:#536076;border-top:1px solid #edf0f4;gap:8px;margin:0;padding:12px 0 0;font-size:10px;list-style:none;display:grid}.role-icon{width:40px;height:40px;color:var(--blue);background:#eef4ff;border-radius:9px;place-items:center;display:grid}.role-icon.dentist{color:#188a55;background:#ebf8f1}.role-icon.assistant{color:#7c4b9c;background:#f7effd}.role-icon.registrar{color:#a86119;background:#fff4e5}.role-flow{color:#6b778b;align-items:center;gap:8px;margin:-3px 0 17px;font-size:10px;font-weight:800;display:flex}.role-flow span{background:#f8fafc;border:1px solid #dce4ee;border-radius:14px;padding:6px 9px}.role-flow b{color:#9aa5b5}.role-inherits{min-height:28px;color:var(--blue-dark);margin:0 0 10px;font-size:9px;line-height:1.4;display:block}.split-footer{justify-content:space-between;align-items:center}.split-footer>div{gap:9px;display:flex}.danger-button{color:#bc3131;background:#fff;border:1px solid #c93f3f;border-radius:8px;min-height:42px;padding:0 15px;font-weight:750}.danger-button:hover{background:#fff0f0}.danger-button:disabled{opacity:.6;cursor:wait}.confirm-modal{width:min(480px,100%)}.danger-confirm-icon{color:#c83b3b;background:#fff0f0;border-radius:11px;place-items:center;width:48px;height:48px;display:grid}.confirm-copy{color:#647187;margin:0;font-size:12px;line-height:1.65}.confirm-copy strong{color:var(--ink)}@media (width<=1180px){.role-cards{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.admin-tabs{overflow-x:auto}.admin-table-wrap,.shift-wrap,.roles-wrap{padding:17px}}@media (width<=650px){.admin-stats{grid-template-columns:1fr}.admin-stats .stat+.stat{border-left:0;border-top:1px solid var(--line)}.role-cards{grid-template-columns:1fr}.admin-section-head{flex-direction:column;align-items:flex-start}.week-nav{align-self:stretch}.week-nav button{flex:1}.role-flow{overflow-x:auto}.split-footer{flex-direction:column-reverse;align-items:stretch}.split-footer>div{width:100%}.split-footer>div button{flex:1}.danger-button{width:100%}}@media (width<=700px){.dental-chart-cta{grid-template-columns:40px minmax(0,1fr)}.dental-cta-icon{width:40px;height:40px}.dental-chart-cta .secondary-button{grid-column:1/-1;width:100%}.clinical-visit-modal{border-radius:0;width:100vw;max-height:100vh}.visit-form-grid{grid-template-columns:1fr}.visit-form-grid .full-field{grid-column:auto}.visit-patient{flex-wrap:wrap}.visit-link-badge{width:100%;margin-left:51px}.visit-modal-footer{flex-direction:column-reverse;align-items:stretch}.visit-modal-footer>div{grid-template-columns:1fr;display:grid}.visit-modal-footer button{width:100%}}@media (width<=900px){.doctor-workspace-modal{border-radius:0;width:100vw;max-height:100vh}.doctor-workspace-body{grid-template-columns:1fr;overflow-y:auto}.doctor-profile-editor{border-right:0;border-bottom:1px solid var(--line)}.doctor-schedule-panel{overflow:visible}}@media (width<=650px){.doctor-schedule-panel,.doctor-profile-editor{padding:16px}.doctor-schedule-panel{overflow-x:auto}.doctor-workspace-modal .modal-header{z-index:2;background:#fff;position:sticky;top:0}}.doctor-workspace-modal{width:calc(100vw - 40px);max-width:none;height:calc(100vh - 40px);max-height:none}.doctor-workspace-body{grid-template-columns:280px minmax(0,1fr)}.doctor-schedule-panel{flex-direction:column;display:flex}.doctor-schedule-toolbar{min-width:980px}.doctor-week-grid{flex:1;grid-auto-rows:minmax(260px,1fr);min-width:980px}.doctor-shift-block,.doctor-shift-empty{min-height:145px}.doctor-schedule-summary{min-width:980px}.calendar-panel{min-width:0}.sidebar-title>span{color:#5b6b82;background:#edf3fb;border-radius:11px;place-items:center;min-width:25px;height:22px;font-size:10px;font-weight:800;display:grid}.calendar-day-button{width:26px;height:23px;color:inherit;background:0 0;border:0;border-radius:5px;margin-left:auto;padding:0}.calendar-day-button:hover{color:var(--blue);background:#e9f2ff}.calendar-event{min-height:29px}.calendar-event strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.calendar-event .appointment-time{color:#40506a;flex:none;font-weight:800}.calendar-appointment-card{width:100%;min-width:0;color:var(--ink);text-align:left;background:#f8fafc;border:1px solid #dce4ee;border-left:5px solid;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 9px;padding:11px 10px;display:grid}.calendar-appointment-card:hover{background:#f1f6fd;border-top-color:#c7d5e6;border-bottom-color:#c7d5e6;border-right-color:#c7d5e6}.calendar-appointment-card .appointment-time{color:#34445d;white-space:nowrap;background:#fff;border-radius:6px;grid-row:1/3;padding:5px 7px;font-size:10px;font-weight:850}.calendar-appointment-card strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;overflow:hidden}.calendar-appointment-card small{text-overflow:ellipsis;white-space:nowrap;color:#718097;min-width:0;font-size:8px;overflow:hidden}.appointment-doctor{color:#627188;grid-column:1/-1;align-items:center;gap:6px;margin-top:4px;font-size:8px;font-weight:750;display:flex}.appointment-doctor i{border-radius:50%;flex:0 0 7px;width:7px;height:7px}.week-calendar-grid{background:#f6f8fb;grid-template-columns:repeat(7,minmax(155px,1fr));min-height:570px;display:grid;overflow-x:auto}.week-calendar-day{border-right:1px solid var(--line);background:#fff;min-width:155px}.week-calendar-day:last-child{border-right:0}.week-calendar-day.today{background:#fffdf2}.week-day-head{border:0;border-bottom:1px solid var(--line);color:#5b687d;text-align:left;background:#f7f9fc;grid-template-columns:1fr auto;align-items:center;width:100%;min-height:70px;padding:10px;display:grid}.week-day-head span{text-transform:uppercase;font-size:9px;font-weight:850}.week-day-head strong{color:var(--ink);grid-area:1/2/3;font-size:22px}.week-day-head small{color:#8792a2;font-size:8px}.week-calendar-day.today .week-day-head strong{color:var(--blue)}.week-day-events{flex-direction:column;gap:8px;min-height:495px;padding:8px;display:flex}.calendar-empty{color:#98a2b1;margin:auto;font-size:9px}.day-agenda{background:#f8fafc;min-height:570px;padding:18px}.agenda-row{border-bottom:1px solid #e4e9ef;grid-template-columns:76px minmax(0,1fr);gap:12px;padding:10px 0;display:grid}.agenda-time{text-align:right;padding-top:8px}.agenda-time strong,.agenda-time span{display:block}.agenda-time strong{font-size:13px}.agenda-time span{color:#8a95a5;margin-top:3px;font-size:9px}.day-agenda .calendar-appointment-card{max-width:900px}.calendar-empty-state{color:#8793a5;text-align:center;align-content:center;place-items:center;gap:7px;min-height:520px;display:grid}.calendar-empty-state>span{width:54px;height:54px;color:var(--blue);background:#eaf3ff;border-radius:13px;place-items:center;display:grid}.calendar-empty-state strong{color:#435169;font-size:13px}.calendar-empty-state small{font-size:10px}.appointment-modal{grid-template-rows:auto minmax(0,1fr) auto;width:min(640px,100%);max-height:calc(100dvh - 32px);display:grid;overflow:hidden}.appointment-modal>.modal-body{overscroll-behavior:contain;min-height:0;overflow-y:auto}.appointment-modal .modal-header p{color:var(--muted);margin:5px 0 0;font-size:10px}.appointment-patient-search{z-index:6;position:relative}.appointment-patient-combobox{color:#7a8799;background:#fff;border:1px solid #cfd7e2;border-radius:8px;align-items:center;gap:8px;height:44px;padding:0 10px;display:flex}.appointment-patient-combobox:focus-within{border-color:#82b6ff;box-shadow:0 0 0 3px #e8f2ff}.modal-body .appointment-patient-combobox>input{min-width:0;height:40px;box-shadow:none;border:0;border-radius:0;padding:0}.appointment-patient-combobox>button{color:#718097;background:#f0f3f7;border:0;border-radius:6px;flex:0 0 27px;place-items:center;width:27px;height:27px;display:grid}.appointment-patient-results{z-index:8;background:#fff;border:1px solid #cfd9e5;border-radius:9px;max-height:260px;padding:5px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 14px 32px #1f30482b}.appointment-patient-results>button{width:100%;min-height:51px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;padding:7px 8px;display:flex}.appointment-patient-results>button:hover,.appointment-patient-results>button[aria-selected=true]{background:#eef5ff}.appointment-patient-results .initials{flex-basis:31px;width:31px;height:31px;font-size:9px}.appointment-patient-results>button>span:nth-child(2){flex:1;min-width:0}.appointment-patient-results strong,.appointment-patient-results small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.appointment-patient-results strong{font-size:10px}.appointment-patient-results small{color:#7c899b;margin-top:3px;font-size:8px}.appointment-patient-results>button>svg{color:#2373e8}.appointment-patient-results>p{color:#7c899b;text-align:center;margin:0;padding:18px 10px;font-size:9px}@media (width<=900px){.doctor-workspace-modal{border-radius:0;width:100vw;height:100vh;max-height:100vh}.doctor-week-grid,.doctor-schedule-toolbar,.doctor-schedule-summary{min-width:900px}.calendar-toolbar{min-width:720px}.week-calendar-grid{min-width:1085px}}@media (width<=650px){.agenda-row{grid-template-columns:52px minmax(0,1fr);gap:8px}.day-agenda{min-width:620px;padding:12px}.appointment-modal{border-radius:0;width:100vw;max-height:100vh;overflow-y:auto}}.calendar-layout{grid-template-columns:220px minmax(0,1fr);gap:12px;width:100%;max-width:1320px;margin:0 auto}.doctors-sidebar{padding:12px}.doctor-filter{padding:9px 7px}.doctor-filter small{font-size:9px}.calendar-toolbar{height:56px;padding:0 12px}.calendar-toolbar>strong{font-size:16px}.calendar-toolbar button{min-width:30px;height:30px;font-size:11px}.calendar-toolbar button.today-button{padding:0 9px}.view-switch button{height:26px;padding:0 8px}.appointment-status-legend{border-bottom:1px solid var(--line);background:#fbfcfe;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px 12px;min-height:35px;padding:6px 12px;display:flex}.appointment-status-legend span{color:#6e7b8e;white-space:nowrap;align-items:center;gap:5px;font-size:8px;font-weight:750;display:flex}.appointment-status-legend i,.appointment-status-dot{background:var(--visit-color);border-radius:50%;flex:0 0 7px;width:7px;height:7px}.status-scheduled{--visit-color:#d68a16;--visit-soft:#fff8e9;--visit-border:#efd7aa}.status-confirmed{--visit-color:#2373e8;--visit-soft:#edf5ff;--visit-border:#b9d6ff}.status-completed{--visit-color:#188a55;--visit-soft:#edf9f2;--visit-border:#b9dfca}.status-cancelled{--visit-color:#7b8797;--visit-soft:#f3f5f7;--visit-border:#d5dbe2}.status-no_show{--visit-color:#cf3f4f;--visit-soft:#fff0f1;--visit-border:#efbdc3}.date-cell{min-height:82px;padding:5px}.calendar-day-button{height:19px}.calendar-event{background:var(--visit-soft);min-height:24px;box-shadow:inset 0 0 0 1px var(--visit-border);gap:4px;margin-top:3px;padding:3px 5px;font-size:8px}.calendar-event .appointment-status-dot{display:block}.calendar-event .appointment-time{font-size:8px}.calendar-appointment-card{background:var(--visit-soft);border-top-color:var(--visit-border);border-right-color:var(--visit-border);border-bottom-color:var(--visit-border);gap:4px 8px;padding:9px}.calendar-appointment-card:hover{background:var(--visit-soft);filter:brightness(.985);border-top-color:var(--visit-color);border-right-color:var(--visit-color);border-bottom-color:var(--visit-color)}.calendar-appointment-card .appointment-time{grid-row:1;padding:4px 6px}.appointment-card-copy{gap:4px;min-width:0;display:grid}.appointment-card-copy>span{align-items:center;gap:7px;min-width:0;display:flex}.appointment-card-copy strong{flex:1}.appointment-card-copy small{color:#718097;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:8px;overflow:hidden}.appointment-status-badge{background:var(--visit-color);color:#fff;border-radius:9px;flex:none;padding:3px 6px;font-size:7px;font-style:normal;font-weight:850}.appointment-doctor{margin-top:2px}.week-calendar-grid{grid-template-columns:repeat(7,minmax(135px,1fr));min-height:420px}.week-calendar-day{min-width:135px}.week-day-head{min-height:58px;padding:8px}.week-day-head strong{font-size:19px}.week-day-events{gap:6px;min-height:360px;padding:6px}.day-agenda{min-height:420px;padding:12px 16px}.agenda-row{padding:7px 0}.calendar-empty-state{min-height:380px}@media (width<=900px){.calendar-layout{grid-template-columns:1fr;max-width:none}.appointment-status-legend{justify-content:flex-start;min-width:720px}.week-calendar-grid{min-width:945px}}.today-patients{background:#f8fafc;min-height:420px}.today-patients-head{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:18px;min-height:68px;padding:13px 18px;display:flex}.today-patients-head span{color:#728096;letter-spacing:.08em;font-size:8px;font-weight:850}.today-patients-head h2{margin:4px 0 0;font-size:16px}.today-patients-head>strong{color:var(--blue-dark);background:#eaf3ff;border-radius:14px;padding:6px 10px;font-size:9px}.today-timeline{background:#fff}.today-time-row{border-bottom:1px solid #e1e7ee;grid-template-columns:66px 12px minmax(0,1fr);align-items:center;gap:10px;min-height:88px;padding:9px 16px;display:grid}.today-time{align-self:start;padding-top:8px}.today-time strong,.today-time span{display:block}.today-time strong{color:#43526b;font-size:14px}.today-time span{color:#8a96a8;margin-top:3px;font-size:8px}.today-time-dot{background:var(--blue);border-radius:50%;align-self:start;width:8px;height:8px;margin-top:13px}.today-appointment-grid{grid-template-columns:repeat(2,minmax(280px,1fr));gap:9px;min-width:0;display:grid}.today-patient-card{border:1px solid var(--visit-border);background:var(--visit-soft);min-width:0;min-height:67px;color:var(--ink);text-align:left;border-left:5px solid;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:8px 10px;display:grid}.today-patient-card:hover{filter:brightness(.985);box-shadow:0 4px 12px #27416214}.today-patient-card:disabled{opacity:.7;cursor:not-allowed}.today-card-time{color:var(--visit-color);white-space:nowrap;font-size:9px;font-weight:850}.today-patient-card>div{min-width:0}.today-patient-card>div strong,.today-patient-card>div small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.today-patient-card>div strong{font-size:12px}.today-patient-card>div small{color:#68778d;margin-top:4px;font-size:8px}.today-patient-card>div>span{color:#68778d;align-items:center;gap:5px;margin-top:5px;font-size:8px;font-weight:700;display:flex}.today-patient-card>div>span i{border-radius:50%;width:7px;height:7px}.today-acute-label{color:#b83b3b;background:#ffe3e3;border-radius:8px;margin-left:3px;padding:2px 5px;font-size:7px}.today-patient-card>em{background:var(--visit-color);color:#fff;white-space:nowrap;border-radius:9px;padding:3px 6px;font-size:7px;font-style:normal;font-weight:850}.today-patient-card>svg{color:#7c899c}.today-empty{min-height:350px}.appointment-modal-footer{justify-content:space-between;align-items:center}.appointment-modal-footer>div{gap:9px;display:flex}.start-visit-button{color:#fff;background:#188a55;border:1px solid #188a55;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 15px;font-weight:800;display:inline-flex}.start-visit-button:hover{background:#117244}.dental-modal{width:min(1320px,98vw)}.dental-editor-layout{min-height:0;max-height:calc(96vh - 80px);display:block;overflow-y:auto}.full-dental-chart{padding:16px 18px 18px;overflow:visible}.dental-selection-hint{background:#f7faff;border:1px dashed #bfd3ee;border-radius:9px;align-items:center;gap:10px;margin-top:13px;padding:10px 12px;display:flex}.dental-selection-hint>span{width:34px;height:34px;color:var(--blue);background:#e6f0ff;border-radius:8px;flex:0 0 34px;place-items:center;display:grid}.dental-selection-hint strong,.dental-selection-hint small{display:block}.dental-selection-hint strong{color:#35445b;font-size:10px}.dental-selection-hint small{color:#7b8799;margin-top:3px;font-size:8px}.tooth-editor{background:#f7faff;border:1px solid #cbdcf2;border-radius:10px;margin-top:13px;padding:13px}.tooth-editor-heading{align-items:center;gap:10px;margin-bottom:11px;display:flex}.tooth-editor-heading>div:nth-child(2){min-width:0}.tooth-editor-heading h3{margin:0;font-size:14px}.tooth-editor-heading p{color:var(--muted);margin:3px 0 0;font-size:8px}.tooth-editor-heading .secondary-button{white-space:nowrap;min-height:34px;margin-left:auto;padding:0 11px;font-size:9px}.selected-tooth-icon{border-radius:9px;flex:0 0 42px;width:42px;height:42px}.selected-tooth-icon strong{font-size:8px;bottom:3px;right:4px}.tooth-editor-fields{grid-template-columns:150px 145px minmax(190px,1fr) minmax(230px,1.35fr) 142px;align-items:end;gap:9px;display:grid}.tooth-editor label{gap:5px;min-width:0;margin:0}.tooth-editor label>span{font-size:8px}.tooth-editor select,.tooth-editor input,.tooth-editor textarea{height:38px;min-height:38px}.tooth-editor textarea{resize:none;padding:8px 10px;line-height:1.35}.tooth-editor .tooth-save-button{width:100%;min-height:38px;padding:0 10px;font-size:10px}.tooth-editor-error{margin-top:9px}.tooth-readonly-hint{align-self:center}.tooth-history-panel{margin-top:13px}.tooth-history-head{min-height:54px}.tooth-history-head>strong{display:none}.tooth-history-actions{align-items:center;gap:8px!important;display:flex!important}.tooth-history-actions button{color:#2a6dc6;background:#fff;border:1px solid #cbd8e8;border-radius:7px;min-height:29px;padding:0 9px;font-size:8px;font-weight:800}.tooth-history-actions strong{color:#2369c8;white-space:nowrap;background:#e9f2ff;border-radius:12px;padding:5px 8px;font-size:8px}.tooth-history-icon.all-teeth{color:var(--blue);background:#eef4ff}.tooth-history-table-wrap{max-height:230px}.tooth-history-table td:nth-child(2){color:#263449;min-width:0}.history-tooth-link{color:#1767cf;background:#eef5ff;border:1px solid #b9d3f5;border-radius:7px;min-width:31px;height:27px;padding:0 7px;font-size:9px;font-weight:850}.history-tooth-link:hover{background:#dcecff}@media (width<=1050px){.tooth-editor-fields{grid-template-columns:140px 140px minmax(190px,1fr) minmax(220px,1fr)}.tooth-save-button,.tooth-readonly-hint{grid-column:4}}@media (width<=760px){.dental-modal{border-radius:0;width:100vw;max-height:100vh}.dental-editor-layout{max-height:calc(100vh - 78px)}.full-dental-chart{padding:13px}.tooth-editor-fields{grid-template-columns:1fr 1fr}.tooth-action-field,.tooth-note-field,.tooth-save-button,.tooth-readonly-hint{grid-column:1/-1}.tooth-editor-heading{flex-wrap:wrap;align-items:flex-start}.tooth-editor-heading .secondary-button{margin-left:auto}.tooth-history-head{align-items:flex-start}.tooth-history-actions{flex-direction:column;align-items:flex-end}.tooth-history-table{min-width:680px}}.visit-loading-modal{width:min(440px,100%)}.visit-loading-modal .detail-loading{min-height:180px}@media (width<=1050px){.today-appointment-grid{grid-template-columns:1fr}}@media (width<=650px){.today-time-row{grid-template-columns:58px 10px minmax(0,1fr);min-width:650px}.today-patients{overflow-x:auto}.appointment-modal-footer{flex-direction:column;align-items:stretch}.appointment-modal-footer>div{grid-template-columns:1fr 1fr;display:grid}.start-visit-button{width:100%}}.history-row-button{width:100%;min-height:62px;color:var(--ink);text-align:left;background:0 0;border:0;border-top:1px solid #edf0f4;align-items:center;gap:12px;padding:10px 0;display:flex}.history-row-button:first-child{border-top:0}.history-row-button:hover{background:#f7faff}.history-row-button p{min-width:0}.history-row-button p strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-row-button>svg{color:#8290a3;flex:none}.history-visit-modal{grid-template-rows:auto auto minmax(0,1fr) auto;width:min(980px,96vw);max-height:94vh;display:grid}.history-visit-patient,.history-visit-patient>div{min-width:0}.history-visit-patient .history-status{margin-left:auto}.history-visit-body{min-height:0;overflow-y:auto}.history-visit-body .visit-form-grid textarea:disabled,.history-visit-body .visit-form-grid input:disabled{opacity:1;color:#3f4c60;cursor:default;background:#f8fafc;border-color:#e1e6ed}.history-dental-summary{background:#f8fbff;border:1px solid #d7e2ef;border-radius:10px;margin-bottom:14px;padding:12px}.history-dental-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.history-dental-head>div{align-items:center;gap:9px;display:flex}.history-dental-head>div>span{width:31px;height:31px;color:var(--blue);background:#e6f0ff;border-radius:8px;place-items:center;display:grid}.history-dental-head strong,.history-dental-head small{display:block}.history-dental-head strong{font-size:11px}.history-dental-head small{color:#78869a;margin-top:2px;font-size:8px}.history-dental-head>em{color:#2369c8;white-space:nowrap;background:#e7f1ff;border-radius:12px;padding:4px 8px;font-size:8px;font-style:normal;font-weight:850}.history-dental-formula{gap:4px;display:grid;overflow-x:auto}.history-dental-jaw{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:6px;min-width:650px;display:grid}.history-dental-jaw>span{color:#8290a3;text-transform:uppercase;font-size:7px;font-weight:850}.history-dental-teeth{grid-template-columns:repeat(16,minmax(0,1fr));gap:3px;display:grid}.history-dental-tooth{color:#9ca7b6;background:#fff;border:1px solid #dbe2eb;border-radius:5px;align-content:center;place-items:center;min-width:0;height:34px;display:grid}.history-dental-tooth small{color:#647389;font-size:7px;font-weight:850;line-height:1}.history-dental-tooth svg{width:13px;height:13px}.history-dental-tooth.inactive{opacity:.32;filter:grayscale()}.history-dental-tooth.ok{color:#188a55;background:#edf9f2;border-color:#93d0af}.history-dental-tooth.watch{color:#d47720;background:#fff6e8;border-color:#edc78f}.history-dental-tooth.treated{color:#2373e8;background:#eaf3ff;border-color:#b8d4fa}.history-dental-tooth.crown{color:#a87300;background:#fff8dc;border-color:#e3ca72}.history-dental-tooth.missing{color:#778294;background:#f0f2f5;border-style:dashed}.history-dental-tooth.implant{color:#7153c6;background:#f2efff;border-color:#cbbdf4}.history-dental-actions{gap:5px;margin-top:9px;display:grid}.history-dental-actions>div{background:#fff;border:1px solid #e0e7ef;border-radius:7px;grid-template-columns:30px minmax(120px,1fr) auto minmax(100px,1fr);align-items:center;gap:8px;min-height:30px;padding:5px 7px;display:grid}.history-dental-actions>div>strong{color:#2168c8;background:#edf4ff;border-radius:6px;place-items:center;width:27px;height:22px;font-size:8px;display:grid}.history-dental-actions>div>span{color:#344258;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:9px;font-weight:750;overflow:hidden}.history-dental-actions>div>em{white-space:nowrap;margin:0;font-style:normal}.history-dental-actions>div>small{color:#7a8798;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:8px;overflow:hidden}.history-patient-status{color:#68768a;align-items:center;gap:8px;margin:14px 0 0;font-size:9px;display:flex}.history-patient-status .status-badge{margin:0}.history-access-note{color:#6f7c8e;background:#f8fafc;border:1px solid #dce4ee;border-radius:8px;align-items:center;gap:8px;margin:14px 0 0;padding:10px 12px;font-size:9px;display:flex}.history-visit-footer{justify-content:space-between;align-items:center}.history-visit-footer>div{gap:9px;display:flex}.history-event-summary{background:#f8fafc;justify-content:center;align-items:center;gap:15px;min-height:260px;padding:30px;display:flex}.history-event-summary>span{width:56px;height:56px;color:var(--blue);background:#eaf3ff;border-radius:13px;flex:0 0 56px;place-items:center;display:grid}.history-event-summary small{color:#748197;letter-spacing:.07em;font-size:8px;font-weight:850}.history-event-summary h3{margin:6px 0;font-size:17px}.history-event-summary p{color:#6d7a8e;margin:0;font-size:10px}@media (width<=700px){.history-visit-modal{border-radius:0;width:100vw;max-height:100vh}.history-dental-actions>div{grid-template-columns:30px minmax(110px,1fr) auto}.history-dental-actions>div>small{grid-column:2/-1}.history-visit-footer{flex-direction:column-reverse;align-items:stretch}.history-visit-footer>div{grid-template-columns:1fr;display:grid}.history-visit-footer button{width:100%}}.control-check-button{color:#16804e;background:#effaf4;border:1px solid #a9d9bf;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.control-check-button:hover{background:#e1f5ea;border-color:#55aa7c}.control-confirm-icon{color:#188a55;background:#e4f7ec;border-radius:12px;place-items:center;width:50px;height:50px;display:grid}.control-confirm-button{color:#fff;background:#188a55;border:1px solid #188a55;border-radius:8px;min-height:42px;padding:0 15px;font-weight:800}.control-confirm-button:hover{background:#117244}.control-confirm-button:disabled{opacity:.65;cursor:wait}.visit-dental-section{background:#f9fbfd;border:1px solid #d4e0ee;border-radius:10px;padding:11px 12px}.visit-dental-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.visit-dental-head>div{align-items:center;gap:9px;display:flex}.visit-dental-icon{width:31px;height:31px;color:var(--blue);background:#e7f1ff;border-radius:8px;flex:0 0 31px;place-items:center;display:grid}.visit-dental-head strong,.visit-dental-head small{display:block}.visit-dental-head small{color:#7a8799;margin-top:2px;font-size:8px}.visit-dental-head>button{color:#617088;background:#fff;border:1px solid #d1dbe7;border-radius:7px;min-height:28px;padding:0 9px;font-size:8px;font-weight:800}.visit-dental-chart{gap:4px;display:grid}.visit-jaw-row{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:6px;min-width:0;display:grid}.visit-jaw-row>span{color:#8190a3;text-transform:uppercase;font-size:7px;font-weight:850}.visit-teeth-row{grid-template-columns:repeat(16,minmax(0,1fr));gap:3px;min-width:0;display:grid}.visit-tooth{color:#a1abb9;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #dbe2eb;border-radius:5px;align-content:center;place-items:center;gap:0;min-width:0;height:36px;padding:2px 0;display:grid}.visit-tooth small{color:#657389;font-size:7px;font-weight:850;line-height:1}.visit-tooth svg{width:13px;height:13px}.visit-tooth:hover{background:#f4f8ff;border-color:#91bdf7}.visit-tooth.selected{z-index:1;border-color:#4d94ee;position:relative;box-shadow:0 0 0 2px #d7e8ff}.visit-tooth.watch,.visit-selected-tooth.watch{color:#d47720;background:#fff6e8;border-color:#edc78f}.visit-tooth.treated,.visit-selected-tooth.treated{color:#2373e8;background:#eaf3ff;border-color:#b8d4fa}.visit-tooth.crown,.visit-selected-tooth.crown{color:#a87300;background:#fff8dc;border-color:#e3ca72}.visit-tooth.missing,.visit-selected-tooth.missing{color:#778294;background:#f0f2f5;border-style:dashed}.visit-tooth.implant,.visit-selected-tooth.implant{color:#7153c6;background:#f2efff;border-color:#cbbdf4}.visit-tooth-inline-editor{border-top:1px solid #e0e7ef;grid-template-columns:66px 135px minmax(170px,1fr) minmax(170px,1fr) 105px;align-items:end;gap:8px;margin-top:9px;padding-top:9px;display:grid}.visit-selected-tooth{color:#58677d;white-space:nowrap;background:#fff;border:1px solid #d8e0ea;border-radius:7px;place-items:center;min-height:36px;padding:4px 5px;font-size:9px;display:grid}.visit-selected-tooth small{color:#7c899b;text-overflow:ellipsis;max-width:58px;font-size:6px;font-weight:750;overflow:hidden}.visit-tooth-inline-editor label{gap:4px;min-width:0;display:grid}.visit-tooth-inline-editor label>span{color:#6b788c;text-transform:uppercase;font-size:7px;font-weight:850}.visit-tooth-inline-editor select,.visit-tooth-inline-editor input{width:100%;height:36px;color:var(--ink);font:inherit;text-transform:none;background:#fff;border:1px solid #cfd8e4;border-radius:7px;outline:none;padding:0 9px;font-size:9px}.visit-tooth-inline-editor select:focus,.visit-tooth-inline-editor input:focus{border-color:#82b6ff;box-shadow:0 0 0 2px #e8f2ff}.visit-tooth-inline-editor .primary-button{min-height:36px;padding:0 10px;font-size:9px}.visit-tooth-success,.visit-tooth-error{margin:7px 0 0;font-size:8px;font-weight:750}.visit-tooth-success{color:#16804e}.visit-tooth-error{color:#b53030}@media (width<=820px){.visit-dental-section{overflow-x:auto}.visit-dental-head,.visit-dental-chart,.visit-tooth-inline-editor,.visit-tooth-success,.visit-tooth-error{min-width:720px}}.role-preview-banner{z-index:29;background:#edf5ff;border-bottom:1px solid #b9d2f3;align-items:center;gap:16px;min-height:58px;padding:9px clamp(20px,4vw,64px);display:flex;position:sticky;top:76px;box-shadow:0 5px 14px #1f508e14}.role-preview-status{align-items:center;gap:10px;display:flex}.role-preview-status>span{width:34px;height:34px;color:var(--blue-dark);background:#d7e9ff;border-radius:9px;place-items:center;display:grid}.role-preview-status small,.role-preview-status strong{display:block}.role-preview-status small{color:#52709a;letter-spacing:.07em;font-size:8px;font-weight:850}.role-preview-status strong{color:#263e60;margin-top:2px;font-size:11px}.role-preview-banner p{color:#617691;margin:0;font-size:10px}.role-preview-banner button{color:#1766cd;white-space:nowrap;background:#fff;border:1px solid #8bb6ee;border-radius:7px;min-height:34px;margin-left:auto;padding:0 12px;font-size:9px;font-weight:850}.self-doctor-field{background:#f1f7ff;border:1px solid #b9d7fb;border-radius:9px;align-items:center;gap:11px;padding:12px;display:flex}.self-doctor-field.missing{background:#fff5f5;border-color:#efc4c4}.self-doctor-icon{width:39px;height:39px;color:var(--blue);background:#dcecff;border-radius:9px;flex:0 0 39px;place-items:center;display:grid}.self-doctor-field.missing .self-doctor-icon{color:#bd3c3c;background:#ffe2e2}.self-doctor-field small,.self-doctor-field strong{display:block}.self-doctor-field small{color:#5f7696;letter-spacing:.05em;font-size:8px;font-weight:850}.self-doctor-field strong{color:#263d5c;margin-top:3px;font-size:12px}.self-doctor-field p{color:#6c7d93;margin:3px 0 0;font-size:9px;line-height:1.4}.role-preview-card{background:linear-gradient(135deg,#f3f8ff,#fff);border:1px solid #bdd6f8;border-radius:11px;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:center;gap:18px;margin-bottom:22px;padding:17px;display:grid}.role-preview-card-copy{align-items:flex-start;gap:11px;display:flex}.role-preview-card-copy>span{width:41px;height:41px;color:var(--blue);background:#dcecff;border-radius:10px;flex:0 0 41px;place-items:center;display:grid}.role-preview-card-copy small{color:#54749d;letter-spacing:.07em;font-size:8px;font-weight:850}.role-preview-card-copy h2{margin:4px 0 5px;font-size:15px}.role-preview-card-copy p{color:#6d7d92;margin:0;font-size:9px;line-height:1.5}.role-preview-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.role-preview-options>button{color:#314056;text-align:left;background:#fff;border:1px solid #d8e2ef;border-radius:8px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;min-height:64px;padding:9px;display:grid}.role-preview-options>button:hover{border-color:#84b5f5;box-shadow:0 4px 12px #245ea914}.role-preview-options .role-icon{width:34px;height:34px}.role-preview-options strong,.role-preview-options small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.role-preview-options strong{font-size:10px}.role-preview-options small{color:#7b8798;margin-top:3px;font-size:7px}.role-preview-options>button>svg{color:#8290a3}.drawer-assignment-wrap{background:#f7f9fc;padding:12px 26px 0}.drawer-assignment-wrap .doctor-assignment-card{margin:0}.drawer-next-visit-wrap{border-bottom:1px solid var(--line);background:#f7f9fc;padding:12px 26px}.documents-workspace{gap:12px;display:grid}.documents-hero{background:linear-gradient(135deg,#f2f7ff,#fff);border:1px solid #cddff8;border-radius:11px;justify-content:space-between;align-items:center;gap:14px;padding:16px;display:flex}.documents-hero>div{align-items:flex-start;gap:11px;min-width:0;display:flex}.documents-hero-icon{width:43px;height:43px;color:var(--blue);background:#dfeeff;border-radius:10px;flex:0 0 43px;place-items:center;display:grid}.documents-hero small{color:#5d79a0;letter-spacing:.07em;font-size:8px;font-weight:850}.documents-hero h3{margin:3px 0 4px;font-size:15px}.documents-hero p{color:var(--muted);margin:0;font-size:9px;line-height:1.45}.documents-hero .primary-button{white-space:nowrap;min-height:38px;padding:0 13px}.plan-summary{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.plan-summary>span{border:1px solid var(--line);background:#fff;border-radius:9px;align-items:baseline;gap:6px;padding:11px 12px;display:flex}.plan-summary strong{color:#24446d;font-size:16px}.plan-summary small{color:var(--muted);font-size:8px}.plan-loading{min-height:160px;color:var(--muted);align-content:center;place-items:center;gap:8px;font-size:10px;display:grid}.plan-loading>span{border:2px solid #dce8f7;border-top-color:var(--blue);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}.treatment-plan-list{gap:10px;display:grid}.treatment-plan-card{border:1px solid var(--line);background:#fff;border-radius:10px;padding:15px;box-shadow:0 3px 12px #2441660a}.treatment-plan-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.treatment-plan-head h4{color:#21334c;margin:6px 0 0;font-size:13px}.treatment-plan-head>small{color:#8995a5;white-space:nowrap;font-size:8px}.plan-status{color:#64748b;letter-spacing:.04em;text-transform:uppercase;background:#edf2f8;border-radius:999px;padding:3px 7px;font-size:7px;font-weight:850;display:inline-flex}.plan-status.approved{color:#2b6cbe;background:#e8f4ff}.plan-status.in_progress{color:#a66400;background:#fff2d9}.plan-status.completed{color:#177a58;background:#e4f6ee}.plan-goal{color:#627087;background:#f7f9fc;border-radius:7px;margin:10px 0;padding:9px 10px;font-size:9px;line-height:1.5}.plan-stages{gap:8px;margin-top:11px;display:grid}.plan-stage{grid-template-columns:26px minmax(0,1fr);align-items:start;gap:9px;display:grid;position:relative}.plan-stage:not(:last-child):after{content:"";background:#cfdef0;width:1px;position:absolute;top:25px;bottom:-9px;left:12px}.plan-stage>span{width:26px;height:26px;color:var(--blue);background:#e7f1ff;border-radius:50%;place-items:center;font-size:9px;font-weight:850;display:grid}.plan-stage strong,.plan-stage small{display:block}.plan-stage small{color:#7a8799;margin-top:3px;font-size:8px}.other-documents{background:#fbfcfe;border:1px dashed #ced9e7;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.other-documents>div{align-items:center;gap:9px;display:flex}.other-documents>div>span{color:#718096;background:#eef3f8;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.other-documents strong,.other-documents small{display:block}.other-documents strong{font-size:10px}.other-documents small{color:var(--muted);margin-top:3px;font-size:8px}.treatment-plan-modal{width:min(720px,100vw - 28px);max-height:92vh}.plan-modal-body{overflow-y:auto}.plan-modal-body textarea{resize:vertical;min-height:72px}.plan-editor-head{justify-content:space-between;align-items:center;gap:12px;margin-top:3px;display:flex}.plan-editor-head strong,.plan-editor-head small{display:block}.plan-editor-head strong{font-size:11px}.plan-editor-head small{color:var(--muted);margin-top:3px;font-size:8px}.plan-editor-head .secondary-button{min-height:34px}.plan-stage-editors{gap:9px;display:grid}.plan-stage-editor{background:#f9fbfd;border:1px solid #d9e3ef;border-radius:9px;grid-template-columns:28px minmax(0,1fr) 30px;align-items:start;gap:9px;padding:11px;display:grid}.plan-stage-number{width:28px;height:28px;color:var(--blue);background:#dfeeff;border-radius:8px;place-items:center;font-size:10px;font-weight:850;display:grid}.plan-stage-editor>div{gap:9px;display:grid}.plan-stage-editor label{gap:5px;display:grid}.plan-stage-editor label>span{color:#59697f;font-size:8px;font-weight:750}.plan-stage-editor input{background:#fff;border:1px solid #cfdae8;border-radius:7px;width:100%;min-height:36px;padding:0 10px;font-size:10px}.personnel-tabs{border:1px solid var(--line);background:#fff;border-radius:10px;gap:4px;width:max-content;margin:-8px 0 18px;padding:4px;display:flex}.personnel-tabs button{color:#68778b;background:0 0;border:0;border-radius:7px;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-size:10px;font-weight:800;display:flex}.personnel-tabs button.active{color:var(--blue);background:#eaf3ff;box-shadow:0 2px 7px #2373e81a}.personnel-tabs button span{color:#6c798c;background:#edf1f6;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:8px;display:grid}.personnel-tabs button.active span{color:var(--blue);background:#fff}.assistants-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.assistant-card{padding:18px}.assistant-card-head{grid-template-columns:46px minmax(0,1fr) 8px;align-items:center;gap:11px;display:grid}.assistant-card-head>span{color:#128266;background:#e9f7f3;border-radius:12px;place-items:center;width:46px;height:46px;font-size:12px;font-weight:850;display:grid}.assistant-card-head small{color:#6f849b;letter-spacing:.08em;font-size:7px;font-weight:850}.assistant-card-head h2{margin:3px 0;font-size:13px}.assistant-card-head p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:8px;overflow:hidden}.assistant-card-head>i{background:#2eba83;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #e3f7ef}.assistant-today,.assistant-unassigned{background:#f6f9fd;border-radius:8px;gap:3px;margin-top:15px;padding:11px 12px;display:grid}.assistant-today{border-left:3px solid var(--blue)}.assistant-today small{color:#66809f;letter-spacing:.06em;font-size:7px;font-weight:850}.assistant-today strong,.assistant-unassigned strong{font-size:10px}.assistant-today span,.assistant-unassigned span{color:#738197;font-size:8px}.assistant-unassigned{background:#fbfcfe;border:1px dashed #ced9e6}.assistant-upcoming{border-top:1px solid #e8edf3;gap:7px;margin-top:14px;padding-top:12px;display:grid}.assistant-upcoming>strong{color:#526178;text-transform:uppercase;letter-spacing:.04em;font-size:8px}.assistant-upcoming>span{color:#4d5b70;grid-template-columns:45px 7px minmax(0,1fr);align-items:center;gap:7px;font-size:8px;display:grid}.assistant-upcoming>span b{color:#718096;font-size:7px}.assistant-upcoming>span i{border-radius:50%;width:7px;height:7px}.assistant-upcoming>small{color:var(--muted);font-size:8px}.visit-access-lock{color:#7a8799;text-align:right;max-width:245px;font-size:8px;line-height:1.35}.assistant-assignment-section{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.assistant-assignment-grid{border:1px solid var(--line);border-radius:9px;grid-template-columns:240px repeat(7,minmax(110px,1fr));min-width:1060px;display:grid;overflow:hidden}.assistant-assignment-row{display:contents}.assistant-assignment-cell{border-top:1px solid var(--line);border-left:1px solid var(--line);background:#fff;align-content:center;gap:5px;min-height:72px;padding:9px 7px;display:grid}.assistant-assignment-cell select{color:#35465d;background:#f9fbfd;border:1px solid #ccd8e6;border-radius:7px;outline:none;width:100%;min-width:0;height:34px;padding:0 24px 0 7px;font-size:8px}.assistant-assignment-cell select:focus{border-color:#83b6f4;box-shadow:0 0 0 2px #e8f2ff}.assistant-assignment-cell select:disabled{opacity:.6}.assistant-assignment-cell small{color:#75849a;text-align:center;font-size:7px}.assistant-assignment-error{margin-top:10px}@media (width<=1180px){.role-preview-card{grid-template-columns:1fr}.role-preview-options>button{min-height:58px}.assistants-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.role-preview-banner{top:66px}.role-preview-banner p{display:none}}@media (width<=650px){.role-preview-options{grid-template-columns:1fr}.role-preview-banner{gap:8px;padding:8px 10px}.role-preview-status>span{display:none}.role-preview-banner button{padding:0 8px}.role-preview-card{padding:13px}.personnel-tabs{width:100%}.personnel-tabs button{flex:1;justify-content:center}.assistants-grid{grid-template-columns:1fr}.visit-access-lock{max-width:170px}.documents-hero{flex-direction:column;align-items:flex-start}.documents-hero .primary-button{width:100%}.plan-summary>span{gap:1px;display:grid}.treatment-plan-modal{border-radius:0;width:100vw;max-height:100vh}.plan-stage-editor{grid-template-columns:28px minmax(0,1fr)}.plan-stage-editor>.danger-icon-button{grid-column:2;justify-self:end}}.shift-wrap{overflow-x:visible}.schedule-week-board{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:14px;display:grid}.schedule-day-card{background:#fff;border:1px solid #dce4ee;border-radius:12px;min-width:0;overflow:hidden;box-shadow:0 4px 14px #22344e0b}.schedule-day-head{background:linear-gradient(135deg,#f4f8fd,#fbfcfe);border-bottom:1px solid #e5eaf1;justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:11px 14px;display:flex}.schedule-day-head>div{align-items:center;gap:10px;display:flex}.schedule-day-head span{color:#6f7e92;text-transform:uppercase;font-size:9px;font-weight:850}.schedule-day-head strong{color:#25354c;background:#fff;border-radius:10px;place-items:center;min-width:37px;height:37px;font-size:18px;display:grid;box-shadow:0 2px 7px #25354c14}.schedule-day-head small{color:#2770d6;background:#e8f2ff;border-radius:11px;padding:5px 8px;font-size:8px;font-weight:800}.schedule-day-body{gap:10px;padding:11px;display:grid}.team-doctor-block{background:#fbfcfe;border:1px solid #dce5f0;border-radius:10px;gap:9px;padding:10px;display:grid}.team-doctor-shift{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;padding:0;display:grid}.team-doctor-avatar{color:#fff;border-radius:9px;place-items:center;width:38px;height:38px;font-size:9px;font-weight:850;display:grid}.team-doctor-shift>span:nth-child(2){min-width:0}.team-doctor-shift strong,.team-doctor-shift small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.team-doctor-shift strong{font-size:10px}.team-doctor-shift small{color:#6f7e93;margin-top:4px;font-size:8px}.team-doctor-shift em{color:#2672db;font-size:8px;font-style:normal;font-weight:800}.team-assistant-list{border-top:1px solid #e7ecf2;gap:7px;padding-top:8px;display:grid}.team-assistant-list>small{color:#718096;letter-spacing:.07em;font-size:7px;font-weight:850}.assistant-chips{flex-wrap:wrap;gap:6px;display:flex}.assistant-chip{color:#16765f;background:#edf9f5;border:1px solid #cbe6dd;border-radius:14px;align-items:center;gap:5px;min-height:27px;padding:0 3px 0 9px;font-size:8px;font-weight:750;display:inline-flex}.assistant-chip button{color:#658479;background:#fff;border:0;border-radius:50%;place-items:center;width:21px;height:21px;font-size:14px;display:grid}.assistant-chip button:hover{color:#b43838}.assistant-chip button:disabled{opacity:.5}.no-assistant{color:#8a95a5;font-size:8px;font-style:italic}.assistant-add-select,.add-doctor-shift{color:#476078;background:#fff;border:1px dashed #bfcddd;border-radius:8px;outline:none;width:100%;height:35px;padding:0 28px 0 10px;font-size:8px;font-weight:750}.assistant-add-select:focus,.add-doctor-shift:focus{border-style:solid;border-color:#78acee;box-shadow:0 0 0 3px #e9f3ff}.assistant-add-select:disabled{opacity:.55}.add-doctor-shift{color:#2770d6;width:calc(100% - 22px);margin:0 11px 11px}.schedule-day-empty{color:#7f8b9d;text-align:center;place-content:center;gap:5px;min-height:82px;display:grid}.schedule-day-empty strong{font-size:10px}.schedule-day-empty span{font-size:8px}.day-unassigned{background:#fafbfc;border-top:1px solid #edf0f4;gap:3px;padding:9px 12px;display:grid}.day-unassigned strong{color:#7b8798;text-transform:uppercase;letter-spacing:.04em;font-size:7px}.day-unassigned span{color:#657287;font-size:8px;line-height:1.45}.assistant-schedule-button{width:100%;margin-top:14px}.assistant-workspace-modal{width:min(1180px,100vw - 36px);max-height:calc(100vh - 40px)}.assistant-workspace-body{padding:22px;overflow-y:auto}.assistant-schedule-toolbar{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;display:flex}.assistant-schedule-toolbar h3{margin:0;font-size:18px}.assistant-schedule-toolbar p{color:var(--muted);margin:5px 0 0;font-size:10px}.assistant-personal-grid{grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:9px;display:grid}.assistant-personal-day{background:#fafbfc;border:1px solid #dce4ee;border-radius:10px;flex-direction:column;min-height:210px;padding:12px 10px;display:flex}.assistant-personal-day.working{background:#fff;box-shadow:0 4px 12px #2437520b}.personal-day-date{justify-content:space-between;align-items:center;gap:8px;display:flex}.personal-day-date span{color:#748195;text-transform:uppercase;font-size:8px;font-weight:850}.personal-day-date strong{font-size:20px}.personal-assignment,.personal-day-off{border-radius:8px;align-content:center;gap:6px;min-height:118px;margin-top:auto;padding:11px 9px;display:grid}.personal-assignment{background:#f4f8fd;border:1px solid #d5e2f1;border-left:4px solid}.personal-assignment small{color:#71829a;letter-spacing:.05em;font-size:7px;font-weight:850}.personal-assignment strong{font-size:10px;line-height:1.35}.personal-assignment span{color:#425672;font-size:9px;font-weight:800}.personal-assignment em{color:#75839a;font-size:8px;font-style:normal}.personal-day-off{color:#8995a6;text-align:center;border:1px dashed #ccd6e2;place-items:center}.personal-day-off strong{font-size:9px}.personal-day-off span{font-size:8px}.assistant-personal-summary{color:#68768a;border-top:1px solid #e6ebf1;justify-content:space-between;gap:14px;margin-top:16px;padding-top:14px;font-size:9px;display:flex}.assistant-personal-summary span{font-weight:800}.assistant-personal-summary small{font-size:9px}.doctor-schedule-toolbar,.doctor-week-grid,.doctor-schedule-summary{min-width:0}.doctor-week-grid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr));grid-auto-rows:auto}.doctor-day-card{min-height:238px}.doctor-shift-block{min-height:72px;margin-top:0}.doctor-shift-empty{min-height:125px}.doctor-day-assistants{border-top:1px solid #e7ecf2;flex-wrap:wrap;align-content:flex-start;gap:5px;min-height:58px;margin-top:8px;padding-top:8px;display:flex}.doctor-day-assistants>small{color:#748297;width:100%;font-size:7px;font-weight:850}.doctor-day-assistants>span{color:#16775f;background:#e9f7f2;border-radius:10px;padding:4px 6px;font-size:7px;font-weight:750}.doctor-day-assistants>em{color:#8a95a6;font-size:7px;font-style:normal}@media (width<=900px){.schedule-week-board{grid-template-columns:repeat(2,minmax(0,1fr))}.doctor-schedule-panel{overflow:visible}.doctor-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.schedule-week-board,.doctor-week-grid,.assistant-personal-grid{grid-template-columns:1fr}.assistant-workspace-modal{border-radius:0;width:100vw;max-height:100vh}.assistant-workspace-body{padding:16px}.assistant-schedule-toolbar{flex-direction:column;align-items:stretch}.assistant-personal-day,.doctor-day-card{min-height:180px}.assistant-personal-summary{flex-direction:column}}.my-shifts-panel{margin:-7px 0 17px;padding:14px 16px}.my-shifts-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:11px;display:flex}.my-shifts-head>div{align-items:center;gap:10px;display:flex}.my-shifts-icon{width:34px;height:34px;color:var(--blue);background:#eaf3ff;border-radius:9px;place-items:center;display:grid}.my-shifts-head small{color:#76849a;letter-spacing:.07em;font-size:7px;font-weight:850;display:block}.my-shifts-head h2{margin:2px 0 0;font-size:14px}.my-shifts-head>strong{color:#16775f;background:#edf7f3;border-radius:12px;padding:6px 9px;font-size:8px}.my-shifts-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;display:grid}.my-shift-day{background:#fafbfc;border:1px solid #e0e6ee;border-radius:8px;flex-direction:column;gap:7px;min-width:0;min-height:98px;padding:8px;display:flex}.my-shift-day.active{background:#fff;border-color:#cfdeef;box-shadow:0 2px 8px #2a3d580a}.my-shift-day header{color:#778498;justify-content:space-between;align-items:center;gap:6px;display:flex}.my-shift-day header span{text-transform:uppercase;font-size:7px;font-weight:850}.my-shift-day header strong{color:#33445d;font-size:13px}.my-shift-details{border-left:3px solid var(--blue);background:#f2f7fd;border-radius:5px;align-content:center;gap:3px;min-height:54px;padding:6px 7px;display:grid;overflow:hidden}.my-shift-details b,.my-shift-details span,.my-shift-details small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.my-shift-details b{color:#344760;font-size:8px}.my-shift-details span{color:#667890;font-size:7px}.my-shift-details small{color:#718096;font-size:6px}.my-shift-off{color:#929cab;text-align:center;margin:auto;font-size:7px}.assistant-day-select{color:#40526a;background:#fff;border:1px solid #cbd7e5;border-radius:7px;outline:none;width:100%;height:34px;margin-top:8px;padding:0 25px 0 7px;font-size:8px;font-weight:750}.assistant-day-select:focus{border-color:#7eafea;box-shadow:0 0 0 3px #e8f2ff}.assistant-day-select:disabled{opacity:.6}.assistant-workspace-error{margin:12px 0 0}@media (width<=1180px){.my-shifts-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=650px){.my-shifts-head{flex-direction:column;align-items:flex-start}.my-shifts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.my-shift-day{min-height:90px}}.doctor-assignment-card{background:linear-gradient(135deg,#fff 45%,#f4f8fd);border-color:#cfddec;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;display:grid;box-shadow:0 3px 12px #2337520a}.doctor-assignment-open{color:#266bc8;background:#fff;border:1px solid #c9d9ed;border-radius:8px;align-items:center;gap:10px;min-height:38px;padding:0 10px 0 12px;font-size:9px;font-weight:800;display:flex}.doctor-assignment-open>span{align-items:center;gap:7px;display:flex}.doctor-assignment-open:hover{background:#f2f7fe;border-color:#8db7ef}.doctor-assignment-open:disabled{opacity:.5;cursor:not-allowed}.doctor-assignment-modal{grid-template-rows:auto minmax(0,1fr) auto;width:min(760px,100vw - 32px);max-height:min(88vh,760px);display:grid}.doctor-assignment-modal-body{background:#f8fafc;padding:20px 22px;overflow-y:auto}.assignment-patient-context{background:#fff;border:1px solid #d7e1ed;border-radius:10px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px;display:grid}.assignment-patient-context>span{color:#2771d5;background:#eaf3ff;border-radius:11px;place-items:center;width:44px;height:44px;font-size:11px;font-weight:850;display:grid}.assignment-patient-context small,.assignment-patient-context strong,.assignment-patient-context em{display:block}.assignment-patient-context small{color:#76859a;letter-spacing:.06em;font-size:7px;font-weight:850}.assignment-patient-context strong{margin-top:3px;font-size:11px}.assignment-patient-context em{color:#7e8b9e;margin-top:3px;font-size:8px;font-style:normal}.assignment-current{border-left:1px solid #e4e9ef;min-width:170px;padding-left:13px}.assignment-current strong{align-items:center;gap:6px;font-size:9px;display:flex}.assignment-current i{border-radius:50%;flex:0 0 8px;width:8px;height:8px}.assignment-choice-head{justify-content:space-between;align-items:flex-end;gap:14px;margin:18px 0 11px;display:flex}.assignment-choice-head h3{margin:0;font-size:14px}.assignment-choice-head p{color:#728096;margin:4px 0 0;font-size:8px;line-height:1.45}.assignment-choice-head>span{color:#2870d2;background:#e8f2ff;border-radius:11px;flex:none;padding:5px 8px;font-size:8px;font-weight:800}.doctor-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.doctor-choice-card{min-width:0;min-height:78px;color:var(--ink);text-align:left;background:#fff;border:1px solid #d8e1ec;border-radius:10px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;transition:border-color .13s,box-shadow .13s,transform .13s;display:grid}.doctor-choice-card:hover{border-color:#99bce9;transform:translateY(-1px)}.doctor-choice-card.selected{background:#f6faff;border-color:#6da6ed;box-shadow:0 0 0 3px #e4f0ff}.doctor-choice-avatar{color:#fff;border-radius:10px;place-items:center;width:42px;height:42px;font-size:10px;font-weight:850;display:grid}.doctor-choice-copy{min-width:0}.doctor-choice-copy strong,.doctor-choice-copy small,.doctor-choice-copy em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.doctor-choice-copy strong{font-size:10px}.doctor-choice-copy small{color:#6e7d92;margin-top:4px;font-size:7px}.doctor-choice-copy em{color:#8792a2;margin-top:4px;font-size:7px;font-style:normal}.doctor-choice-radio,.doctor-choice-check{border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.doctor-choice-radio{border:1px solid #c6d1df}.doctor-choice-check{color:#fff;background:#2874eb}.doctor-current-badge{color:#68768a;background:#edf1f5;border-radius:9px;padding:4px 6px;font-size:7px;font-weight:800}.assignment-selection-summary{background:#edf5ff;border:1px solid #bfd7f5;border-radius:10px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;margin-top:14px;padding:11px 12px;display:grid}.assignment-selection-summary small,.assignment-selection-summary strong{display:block}.assignment-selection-summary small{color:#6980a0;letter-spacing:.06em;font-size:7px;font-weight:850}.assignment-selection-summary strong{margin-top:3px;font-size:10px}.assignment-selection-summary p{color:#6e7f96;margin:3px 0 0;font-size:8px}.doctor-assignment-error{margin:11px 0 0}.doctor-assignment-footer{justify-content:space-between;align-items:center;gap:14px}.doctor-assignment-footer>span{color:#78869a;max-width:300px;font-size:8px;line-height:1.4}.doctor-assignment-footer>div{gap:8px;display:flex}@media (width<=700px){.doctor-assignment-card{grid-template-columns:1fr}.doctor-assignment-open{justify-content:space-between;width:100%}.doctor-assignment-modal{border-radius:0;width:100vw;max-height:100vh}.doctor-assignment-modal-body{padding:16px}.assignment-patient-context{grid-template-columns:44px minmax(0,1fr)}.assignment-current{border-top:1px solid #e4e9ef;border-left:0;grid-column:1/-1;padding:10px 0 0}.doctor-choice-grid{grid-template-columns:1fr}.doctor-assignment-footer{flex-direction:column;align-items:stretch}.doctor-assignment-footer>span{max-width:none}.doctor-assignment-footer>div{grid-template-columns:1fr;display:grid}.doctor-assignment-footer button{width:100%}}@media (width<=650px){html,body{width:100%;overflow-x:hidden}.topbar{gap:5px;height:58px;padding:0 8px}.brand-mark{border-radius:9px;width:36px;height:36px;font-size:20px}.main-nav{justify-content:space-around;gap:0;min-width:0}.nav-button{min-width:42px;padding:0 9px}.workspace{width:100%;padding:18px 10px 36px;overflow:hidden}.page-heading{gap:10px;margin-bottom:17px}.page-heading h1{font-size:24px}.page-heading p:last-child{font-size:11px}.calendar-layout{width:100%;display:block}.doctors-sidebar{width:100%;margin-bottom:10px;padding:8px}.doctor-filter{min-width:165px}.calendar-panel{width:100%;overflow:visible}.calendar-toolbar{grid-template-columns:auto minmax(0,1fr);gap:8px;width:100%;min-width:0;height:auto;padding:9px}.calendar-toolbar>div:first-child{grid-column:1}.calendar-toolbar>strong{text-align:right;text-transform:capitalize;grid-column:2;min-width:0;font-size:13px}.view-switch{grid-column:1/-1;justify-self:stretch;width:100%}.view-switch button{flex:1}.appointment-status-legend{justify-content:flex-start;gap:5px 8px;min-width:0;padding:7px 9px}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));width:100%;min-width:0}.weekdays span{padding:7px 1px;font-size:8px}.date-cell{min-width:0;min-height:58px;padding:3px 2px;overflow:hidden}.calendar-day-button{text-align:center;width:21px;height:21px;margin:0 auto 2px;font-size:9px}.calendar-event{background:var(--visit-color);width:7px;min-width:7px;height:7px;min-height:7px;box-shadow:none;border:0;border-radius:50%;margin:2px auto 0;padding:0}.calendar-event>*{display:none!important}.week-calendar-grid{grid-template-columns:1fr;width:100%;min-width:0;min-height:0;overflow:visible}.week-calendar-day{border-right:0;border-bottom:1px solid var(--line);min-width:0}.week-day-head{min-height:52px}.week-day-events{min-height:90px}.day-agenda{width:100%;min-width:0;min-height:320px;padding:9px}.agenda-row{grid-template-columns:44px minmax(0,1fr);gap:7px}.agenda-time{text-align:left}.calendar-appointment-card{grid-template-columns:1fr;min-width:0;padding:8px 7px}.calendar-appointment-card .appointment-time{grid-row:auto;width:max-content}.appointment-card-copy>span{flex-direction:column;align-items:flex-start;gap:4px}.appointment-status-badge{align-self:flex-start}.my-shifts-grid{grid-template-columns:1fr 1fr}.table-scroll{overflow:visible}.patients-table{min-width:0;display:block}.patients-table thead{display:none}.patients-table tbody{display:grid}.patients-table tr{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:6px 9px;padding:11px;display:grid}.patients-table td{border:0;padding:0;font-size:10px}.patients-table td:first-child{grid-column:1}.patients-table td:nth-child(2){display:none}.patients-table td:nth-child(3),.patients-table td:nth-child(4){color:var(--muted);grid-column:1}.patients-table td:nth-child(5){grid-column:1/-1}.patients-table td:last-child{grid-area:1/2}.patient-cell{min-width:0}.patient-cell strong{font-size:12px}.patient-cell small{font-size:9px}.note-text{white-space:normal}.patient-drawer{width:100vw;height:100dvh}.drawer-header{flex:none}.drawer-content{min-width:0;overflow-x:hidden}.drawer-footer{padding-bottom:max(12px,env(safe-area-inset-bottom));flex-direction:column}.drawer-footer button{width:100%}.modal-layer{padding:0}.patient-modal{border-radius:0;grid-template-rows:auto minmax(0,1fr) auto;width:100vw;max-width:none;max-height:100dvh;display:grid}.modal-body{min-height:0;overflow-y:auto}.form-row{grid-template-columns:1fr}.modal-footer{padding-bottom:max(14px,env(safe-area-inset-bottom));flex-direction:column-reverse;align-items:stretch}.modal-footer>button,.modal-footer>div,.modal-footer>div button{width:100%}.appointment-modal-footer>div{grid-template-columns:1fr;gap:8px;display:grid}}@media (width<=390px){.nav-button{min-width:38px;padding:0 7px}.calendar-toolbar>strong{font-size:12px}.date-cell{min-height:54px}}.staff-row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.edit-icon-button{color:#2870d2;background:#f6f9fd;border:1px solid #cbd9eb;border-radius:7px;place-items:center;width:32px;height:32px;display:grid}.edit-icon-button:hover{background:#edf5ff;border-color:#8cb7ed}.employee-edit-modal{width:min(700px,100vw - 32px)}.history-edit-window{border-radius:8px;align-items:flex-start;gap:8px;margin:14px 0 0;padding:10px 12px;font-size:9px;line-height:1.45;display:flex}.history-edit-window svg,.history-access-note svg{flex:none}.history-edit-window.active{color:#31689f;background:#edf6ff;border:1px solid #bcd9f8}.history-edit-window.admin-override{color:#6844a0;background:#f7f2ff;border:1px solid #d9c8f5}@media (width<=650px){.employee-edit-modal{width:100vw}.staff-row-actions{justify-content:flex-start}}.stats-row{margin-bottom:14px}.stat{padding:12px 16px}.stat span{font-size:10px}.stat strong{margin:3px 0 1px;font-size:21px}.stat small{font-size:9px}.doctor-card,.availability-card{padding:15px}.doctor-avatar,.availability-icon{border-radius:10px;width:44px;height:44px}.doctor-card h2,.availability-card h2{margin:11px 0 3px;font-size:14px}.doctor-card>p,.availability-card>p{margin:0 0 11px;font-size:10px;line-height:1.4}.doctor-card dl{padding-top:5px}.doctor-card dl div{padding:5px 0}.load-bar{height:4px;margin:7px 0 11px}.doctor-card .secondary-button,.availability-card .secondary-button{min-height:36px;font-size:10px}.availability-card>div{margin-bottom:11px;padding:9px 10px}.availability-card>div span{font-size:9px}.availability-card>div strong{font-size:18px}.availability-card .availability-note{margin:-2px 0 0;font-size:8px}.appointment-leading-actions{align-items:center;gap:8px;display:flex}.delete-appointment-button{color:#b53939;background:#fff8f8;border:1px solid #e1b3b3;border-radius:8px;min-height:42px;padding:0 14px;font-weight:750}.delete-appointment-button:hover{background:#fff0f0;border-color:#ce7777}.appointment-delete-warning{color:#a83a3a;background:#fff5f5;border:1px solid #efc2c2;border-radius:8px;align-items:flex-start;gap:9px;margin-top:4px;padding:11px 12px;display:flex}.appointment-delete-warning svg{flex:none}.appointment-delete-warning strong,.appointment-delete-warning span{display:block}.appointment-delete-warning strong{font-size:10px}.appointment-delete-warning span{color:#856060;margin-top:3px;font-size:8px;line-height:1.4}@media (width<=1180px){.doctors-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.doctors-grid{grid-template-columns:1fr}.appointment-leading-actions{grid-template-columns:1fr;display:grid}.delete-appointment-button{width:100%}}.patient-data-loading{color:#718096;text-align:center;place-content:center;justify-items:center;gap:8px;min-height:280px;padding:36px 20px;display:grid}.patient-data-loading>span{border:3px solid #d9e5f4;border-top-color:var(--blue);border-radius:50%;width:28px;height:28px;animation:.75s linear infinite patient-data-spin}.patient-data-loading strong{color:#42516a;font-size:11px}.patient-data-loading small{max-width:360px;font-size:9px;line-height:1.45}@keyframes patient-data-spin{to{transform:rotate(360deg)}}.icd-combobox{z-index:3;position:relative}.icd-combobox:focus-within{z-index:12}.icd-suggestions,.icd-no-results{z-index:20;background:#fff;border:1px solid #bfd2eb;border-radius:9px;position:absolute;top:calc(100% - 1px);left:0;right:0;overflow:hidden;box-shadow:0 12px 30px #27416229}.icd-suggestions{max-height:272px;overflow-y:auto}.icd-suggestions button{color:#34445b;text-align:left;background:#fff;border:0;border-bottom:1px solid #edf1f6;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:8px;width:100%;padding:9px 11px;display:grid}.icd-suggestions button:last-child{border-bottom:0}.icd-suggestions button:hover,.icd-suggestions button:focus{background:#edf5ff;outline:none}.icd-suggestions strong{color:#176bd3;font-size:10px}.icd-suggestions span{color:#4b5a70!important;letter-spacing:0!important;text-transform:none!important;font-size:9px!important;font-weight:650!important}.icd-no-results{color:#748197;padding:10px 11px;font-size:9px}.icd-selected-label{color:#55708f;text-transform:none;margin-top:-2px;font-size:8px;font-weight:650;line-height:1.35}.tooth-action-field span small,.visit-tooth-action span small{color:#6f829a;font-size:inherit;text-transform:none;font-weight:650}.app-boot{color:#68778c;text-align:center;background:#f4f7fb;place-content:center;justify-items:center;gap:10px;min-height:100dvh;display:grid}.app-boot>span{border:3px solid #d6e3f3;border-top-color:var(--blue);border-radius:50%;width:34px;height:34px;animation:.75s linear infinite patient-data-spin}.app-boot strong{color:#34445b;font-size:15px}.app-boot small{font-size:12px}.focus-control-row{border-bottom:1px solid #edf2f8;grid-template-columns:minmax(0,1fr) 40px;align-items:stretch;display:grid}.focus-control-row:last-child{border-bottom:0}.focus-list .focus-control-main{border-bottom:0;min-width:0}.focus-control-complete{color:#178b68;cursor:pointer;background:#f0faf6;border:1px solid #cfe5dc;border-radius:9px;align-self:center;place-items:center;width:32px;height:32px;transition:all .15s;display:grid}.focus-control-complete:hover{background:#dff5ec;border-color:#9dd6c3}.workspace{padding:24px clamp(18px,3vw,46px) 48px}.page-heading{margin-bottom:17px}.page-heading h1{font-size:28px}.page-heading>div>p:last-child{font-size:13px}.compact-stats{grid-template-columns:repeat(4,minmax(0,1fr));min-height:0;margin-bottom:18px}.compact-stats .stat{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;column-gap:8px;min-height:64px;padding:12px 15px;display:grid}.compact-stats .stat span{text-transform:none;letter-spacing:0;font-size:12px}.compact-stats .stat strong{margin:0;font-size:22px;line-height:1}.compact-stats .stat small{margin:0;font-size:11px}.patient-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.patient-focus-card{background:#fff;border:1px solid #d8e1ec;border-radius:12px;min-width:0;overflow:hidden;box-shadow:0 4px 16px #263a540a}.patient-focus-card>header{border-bottom:1px solid #e6ebf1;justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:11px 13px;display:flex}.patient-focus-card>header>div{align-items:center;gap:10px;min-width:0;display:flex}.patient-focus-card header small,.patient-focus-card header h2{display:block}.patient-focus-card header small{color:#6e7f96;letter-spacing:.05em;font-size:10px;font-weight:850}.patient-focus-card header h2{margin:3px 0 0;font-size:15px}.patient-focus-card>header>strong{color:#236ccf;background:#eaf3ff;border-radius:10px;place-items:center;min-width:34px;height:34px;font-size:17px;display:grid}.focus-icon{color:#2874df;background:#e9f3ff;border-radius:9px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.control-focus .focus-icon,.control-focus>header>strong{color:#168052;background:#e9f8f1}.focus-list{display:grid}.focus-list>button{color:#344257;text-align:left;background:#fff;border:0;border-bottom:1px solid #edf1f5;grid-template-columns:auto 5px minmax(0,1fr) auto auto;align-items:center;gap:9px;min-width:0;min-height:51px;padding:7px 11px;display:grid}.focus-list>button:last-child{border-bottom:0}.focus-list>button:hover{background:#f7faff}.focus-list>button:disabled{opacity:.6}.focus-list time{color:#2a6fca;min-width:39px;font-size:13px;font-weight:850}.focus-list>button>span:not(.focus-patient-avatar):not(.status-badge){border-radius:3px;width:5px;height:30px}.focus-list>button>div{min-width:0}.focus-list>button>div strong,.focus-list>button>div small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.focus-list>button>div strong{font-size:13px}.focus-list>button>div small{color:#718096;margin-top:3px;font-size:11px}.focus-list>button>em{color:#65748a;white-space:nowrap;background:#edf2f8;border-radius:10px;padding:4px 7px;font-size:10px;font-style:normal;font-weight:800}.focus-list>button>em.confirmed,.focus-list>button>em.scheduled{color:#1768cf;background:#e8f2ff}.focus-list>button>em.completed{color:#16764d;background:#e7f7ef}.focus-patient-avatar{color:#286dcc;place-items:center;font-size:11px;font-weight:850;display:grid;background:#edf4ff!important;border-radius:9px!important;width:34px!important;height:34px!important}.focus-list .status-badge{margin:0;font-size:10px}.focus-list>button>i{color:#168052;background:#edf9f3;border:1px solid #b8dfca;border-radius:8px;place-items:center;width:30px;height:30px;font-style:normal;display:grid}.focus-list>button>i:hover{background:#dff4e9}.focus-empty,.focus-loading{color:#78869a;text-align:center;place-items:center;min-height:112px;padding:20px;font-size:12px;display:grid}.patient-focus-card>footer{color:#6f7e92;background:#fafbfd;border-top:1px solid #edf1f5;padding:7px 11px;font-size:11px}.registry-panel .panel-tabs{padding-top:4px}.registry-panel .tab{font-size:13px}.registry-panel .filters{padding-top:14px}.patients-table th{font-size:11px}.patients-table td{padding-top:11px;padding-bottom:11px;font-size:13px}.patient-cell small{font-size:11px}.availability-hint,.visit-draft-status{color:#42658d;background:#f1f7ff;border:1px solid #c8dbee;border-radius:8px;margin:8px 0 0;padding:9px 11px;font-size:11px;line-height:1.4}.visit-form-grid .icd-combobox{align-content:start;gap:7px;min-width:0;display:grid;position:relative}.visit-form-grid .icd-combobox>label{color:#637087;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:800}.visit-form-grid label>span,.visit-tooth-inline-editor label>span,.tooth-editor label>span{font-size:11px}.visit-form-grid input,.visit-form-grid textarea{font-size:13px}.visit-required-note,.visit-tooth-success,.visit-tooth-error{font-size:11px}.visit-dental-head strong{font-size:13px}.visit-dental-head small{font-size:11px}.visit-jaw-row>span,.visit-tooth small{font-size:9px}.visit-tooth-inline-editor label>span{font-size:10px}.visit-tooth-inline-editor select,.visit-tooth-inline-editor input,.visit-tooth-inline-editor .primary-button{font-size:11px}.doctors-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.doctor-card{grid-template-columns:58px minmax(0,1fr) auto;grid-template-areas:"avatar name action""avatar specialty action""details details details";align-items:center;column-gap:12px;min-height:0;padding:15px;display:grid}.doctor-card .doctor-card-top{grid-area:avatar;align-self:start}.doctor-card h2{grid-area:name;margin:0;font-size:16px}.doctor-card>p{grid-area:specialty;margin:4px 0 0;font-size:12px}.doctor-card dl{border-top:1px solid #e6ebf1;grid-area:details;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:13px 0 0;padding-top:11px;display:grid}.doctor-card dl>div{border:0;padding:0}.doctor-card dt,.doctor-card dd{font-size:11px}.doctor-card dd{margin-top:4px}.doctor-card .load-bar{display:none}.doctor-card>.secondary-button{grid-area:action;min-height:38px;padding:0 12px;font-size:11px}.availability-card{min-height:0;padding:15px}.availability-card h2{font-size:16px}.availability-card>p,.availability-card .availability-note{font-size:11px}.schedule-day-head span,.team-doctor-shift strong,.team-doctor-shift small,.team-doctor-shift em,.team-assistant-list>small,.assistant-chip,.no-assistant,.assistant-add-select,.add-doctor-shift,.schedule-day-empty span,.day-unassigned strong,.day-unassigned span{font-size:10px}.schedule-day-card{min-width:220px}.schedule-week-board{grid-template-columns:repeat(7,minmax(220px,1fr));overflow-x:auto}.personal-day-date span,.personal-assignment small,.personal-assignment strong,.personal-assignment em,.personal-day-off strong,.personal-day-off span,.doctor-day-card>span,.doctor-shift-block small,.doctor-shift-empty small,.doctor-day-assistants>small,.doctor-day-assistants>span,.doctor-day-assistants>em,.my-shift-day header span,.my-shift-details b,.my-shift-details span,.my-shift-details small,.my-shift-off{font-size:10px}.plan-card-actions{align-items:center;gap:6px;display:flex}.plan-card-actions button{color:#47709f;background:#fff;border:1px solid #cfd9e6;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.plan-card-actions button.danger{color:#b33b3b}.plan-card-actions button:disabled{opacity:.5}.treatment-plan-head h4{font-size:14px}.plan-goal,.plan-stage strong,.plan-stage small,.documents-hero p,.other-documents strong,.other-documents small{font-size:11px}.plan-status{font-size:10px}@media (width<=900px){.patient-focus-grid,.doctors-grid{grid-template-columns:1fr}.compact-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.doctor-card{grid-template-columns:52px minmax(0,1fr);grid-template-areas:"avatar name""avatar specialty""details details""action action"}.doctor-card>.secondary-button{width:100%;margin-top:12px}}@media (width<=650px){.workspace{padding:14px 10px 34px}.page-heading{align-items:flex-start;gap:12px}.page-heading h1{font-size:24px}.page-heading .primary-button{min-height:42px}.compact-stats{gap:8px}.compact-stats .stat{grid-template-columns:minmax(0,1fr) auto;min-height:58px;padding:10px}.compact-stats .stat small{grid-column:1/-1}.compact-stats .stat strong{font-size:19px}.patient-focus-card>header{min-height:58px}.focus-list>button{grid-template-columns:auto minmax(0,1fr) auto;gap:8px}.today-focus .focus-list>button>span:not(.focus-patient-avatar),.focus-list>button>em,.control-focus .focus-list>button .status-badge{display:none}.focus-list>button>div strong{font-size:12px}.focus-list>button>div small{font-size:10px}.registry-panel .filters{grid-template-columns:1fr;display:grid}.registry-panel .search-field,.registry-panel .field-label{width:100%;min-width:0;max-width:none}.doctor-card dl{grid-template-columns:1fr 1fr}.doctor-card dl>div:last-child{grid-column:1/-1}.visit-form-grid label>span,.visit-form-grid .icd-combobox>label{font-size:10px}}.patient-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.patient-registry-tabs{scrollbar-width:thin;align-items:stretch;overflow-x:auto}.patient-registry-tabs .tab{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.patient-registry-tabs .tab svg{color:#6f8097}.patient-registry-tabs .tab.active svg{color:var(--blue)}.patient-row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.control-row-action{color:#16805e;background:#edf9f4;border:1px solid #b9ddce;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.control-row-action:hover{background:#def4ea;border-color:#83c4aa}.personnel-week{margin-bottom:16px;overflow:hidden}.personnel-week-head{background:linear-gradient(120deg,#fff 55%,#f3f8ff);border-bottom:1px solid #dfe6ef;justify-content:space-between;align-items:center;gap:18px;min-height:76px;padding:13px 15px;display:flex}.personnel-week-head>div:first-child{align-items:center;gap:11px;min-width:0;display:flex}.personnel-week-icon{color:#2872d8;background:#e7f2ff;border-radius:10px;flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid}.personnel-week-head small{color:#718198;letter-spacing:.06em;font-size:10px;font-weight:850;display:block}.personnel-week-head h2{margin:2px 0 0;font-size:16px}.personnel-week-head p{color:#738197;margin:3px 0 0;font-size:11px}.personnel-week-actions{align-items:center;gap:12px;display:flex}.personnel-week-actions>strong{color:#15775c;white-space:nowrap;background:#eaf6f1;border-radius:12px;padding:6px 9px;font-size:11px}.personnel-week-scroll{scrollbar-width:thin;overflow-x:auto}.personnel-week-grid{grid-template-columns:repeat(7,minmax(180px,1fr));min-width:1260px;display:grid}.personnel-day{background:#fbfcfd;border-right:1px solid #e2e8f0;min-width:0;min-height:210px}.personnel-day:last-child{border-right:0}.personnel-day.today{background:#fffdf4;box-shadow:inset 0 3px #e5bd39}.personnel-day>header{border-bottom:1px solid #e8edf3;justify-content:space-between;align-items:center;min-height:47px;padding:7px 9px;display:flex}.personnel-day>header>div{align-items:center;gap:8px;display:flex}.personnel-day>header span{color:#718096;text-transform:uppercase;font-size:10px;font-weight:800}.personnel-day>header strong{font-size:18px}.personnel-day>header small{color:#66768c;background:#edf2f7;border-radius:12px;place-items:center;min-width:23px;height:23px;font-size:10px;font-weight:800;display:grid}.personnel-day-shifts{align-content:start;gap:7px;padding:8px;display:grid}.personnel-shift{border:1px solid #d9e2ec;border-left:4px solid var(--blue);color:#334359;text-align:left;background:#fff;border-radius:8px;grid-template-columns:31px minmax(0,1fr) auto;align-items:center;gap:7px;width:100%;min-width:0;padding:8px;display:grid;box-shadow:0 2px 7px #253a5609}.personnel-shift:hover{background:#f8fbff;border-top-color:#b9cce2;border-bottom-color:#b9cce2;border-right-color:#b9cce2}.personnel-shift-avatar{color:#fff;border-radius:8px;place-items:center;width:31px;height:31px;font-size:9px;font-weight:850;display:grid}.personnel-shift-copy{min-width:0}.personnel-shift-copy strong,.personnel-shift-copy small,.personnel-shift-copy em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.personnel-shift-copy strong{font-size:11px}.personnel-shift-copy small{color:#64758c;margin-top:2px;font-size:10px}.personnel-shift-copy em{color:#178064;margin-top:3px;font-size:9px;font-style:normal;font-weight:700}.personnel-shift>svg{color:#8290a3}.personnel-day-empty{color:#8b97a7;text-align:center;place-content:center;justify-items:center;gap:4px;min-height:135px;display:grid}.personnel-day-empty strong{color:#6e7b8f;font-size:11px}.personnel-day-empty span{font-size:10px}.personnel-tabs{margin-top:0}.shift-editor-modal{grid-template-rows:auto minmax(0,1fr) auto;width:min(900px,100vw - 32px);max-height:min(92vh,820px);display:grid}.shift-editor-body{grid-template-columns:minmax(280px,.9fr) minmax(350px,1.1fr);min-height:0;padding:0;display:grid;overflow-y:auto}.shift-editor-fields{border-right:1px solid #e2e8f0;padding:20px}.shift-editor-fields>label,.shift-editor-fields>.form-row{margin-bottom:13px}.shift-context-note{color:#58718f;background:#f1f7ff;border:1px solid #d3e1f2;border-radius:7px;margin:5px 0 0;padding:8px 9px;font-size:10px;line-height:1.4}.shift-assistant-picker{background:#f8fafc;padding:20px}.shift-assistant-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.shift-assistant-head small{color:#718198;letter-spacing:.06em;font-size:9px;font-weight:850}.shift-assistant-head h3{margin:3px 0 0;font-size:15px}.shift-assistant-head p{color:#718096;margin:4px 0 0;font-size:10px;line-height:1.4}.shift-assistant-head>span{color:#246cc9;background:#e8f2ff;border-radius:11px;flex:none;padding:5px 8px;font-size:10px;font-weight:800}.shift-assistant-options{gap:7px;display:grid}.shift-assistant-options>button{color:#34445a;text-align:left;background:#fff;border:1px solid #d5dee9;border-radius:9px;grid-template-columns:35px minmax(0,1fr) 26px;align-items:center;gap:9px;width:100%;min-width:0;padding:9px;display:grid}.shift-assistant-options>button:hover{background:#f8fbff;border-color:#aac5e7}.shift-assistant-options>button.selected{background:#edf5ff;border-color:#83b5f0;box-shadow:0 0 0 2px #dcecff}.shift-assistant-avatar{color:#286bc2;background:#e8f1fd;border-radius:9px;place-items:center;width:35px;height:35px;font-size:10px;font-weight:850;display:grid}.shift-assistant-options strong,.shift-assistant-options small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.shift-assistant-options strong{font-size:11px}.shift-assistant-options small{color:#748398;margin-top:3px;font-size:9px}.shift-assistant-options i{color:#6d7e92;background:#fff;border:1px solid #cdd8e5;border-radius:50%;place-items:center;width:26px;height:26px;font-size:14px;font-style:normal;font-weight:850;display:grid}.shift-assistant-options>button.selected i{color:#fff;background:#2774d8;border-color:#2774d8}.shift-assistant-empty{color:#7d8999;text-align:center;border:1px dashed #ccd7e4;border-radius:9px;place-items:center;min-height:100px;font-size:11px;display:grid}.shift-editor-body>.form-error,.shift-editor-body>.form-hint{grid-column:1/-1;margin:0;padding:10px 20px}.shift-editor-body>.form-error{border-radius:0}@media (width<=900px){.patient-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.personnel-week-head{align-items:flex-start}.personnel-week-actions{flex-direction:column;align-items:flex-end}}@media (width<=650px){.patient-stats{grid-template-columns:1fr;gap:0}.patient-stats .stat{border-top:1px solid var(--line);border-left:0!important}.patient-stats .stat:first-child{border-top:0}.patient-registry-tabs{padding-left:8px;padding-right:8px}.personnel-week-head{flex-direction:column;align-items:stretch}.personnel-week-actions{flex-direction:row;justify-content:space-between;align-items:center}.personnel-week-grid{grid-template-columns:none;grid-auto-columns:minmax(82vw,82vw);grid-auto-flow:column;min-width:0}.personnel-day{scroll-snap-align:start;border-left:1px solid #e2e8f0;min-height:195px}.personnel-week-scroll{scroll-snap-type:x mandatory}.shift-editor-modal{border-radius:0;width:100vw;max-height:100vh}.shift-editor-body{grid-template-columns:1fr}.shift-editor-fields{border-bottom:1px solid #e2e8f0;border-right:0}.shift-assistant-picker{padding:16px}}.patient-registry-tabs{justify-content:space-between;gap:28px}.patient-registry-tabs>div{align-items:stretch;gap:8px;display:flex}.patient-tabs-priority{margin-left:auto}.patient-tabs-priority .tab{color:#4c6686}.patient-tabs-priority .tab span{color:#246aca;background:#e7f1ff}.patient-tabs-priority .tab:last-child span{color:#167858;background:#e8f7f0}.personnel-topbar{justify-content:space-between;align-items:center;gap:14px;min-height:58px;margin:-4px 0 10px;padding:7px 9px 7px 7px;display:flex}.personnel-topbar .personnel-tabs{margin:0}.personnel-shift-action{align-items:center;gap:12px;display:flex}.personnel-shift-action>span{text-align:right;gap:2px;min-width:0;display:grid}.personnel-shift-action small{color:#758398;letter-spacing:.07em;font-size:8px;font-weight:850}.personnel-shift-action strong{color:#33445a;text-overflow:ellipsis;white-space:nowrap;max-width:210px;font-size:10px;overflow:hidden}.personnel-shift-action .primary-button{min-height:38px;padding:0 14px}.personnel-month{margin-bottom:12px;overflow:hidden}.personnel-month-intro{background:linear-gradient(120deg,#fff 58%,#f4f8fe);border-bottom:1px solid #dfe6ef;justify-content:space-between;align-items:center;gap:14px;min-height:50px;padding:8px 12px;display:flex}.personnel-month-intro>div{align-items:flex-start;gap:10px;min-width:0;display:flex}.personnel-month-intro>div>span{background:#2580ed;border-radius:50%;flex:0 0 8px;width:8px;height:8px;margin-top:4px}.personnel-month-intro small{color:#6e7d92;letter-spacing:.07em;font-size:8px;font-weight:850;display:block}.personnel-month-intro h2{margin:2px 0 0;font-size:13px}.personnel-month-intro p{color:#6f7d91;margin:2px 0 0;font-size:9px}.personnel-month-intro>strong{color:#16775b;white-space:nowrap;background:#e9f5f0;border-radius:11px;padding:5px 8px;font-size:9px}.personnel-month-layout{grid-template-columns:210px minmax(0,1fr);min-width:0;display:grid}.personnel-doctor-sidebar{background:#fbfcfd;border-right:1px solid #dfe6ef;min-width:0}.personnel-doctor-sidebar>header{border-bottom:1px solid #e3e8ef;justify-content:space-between;align-items:center;min-height:45px;padding:7px 10px;display:flex}.personnel-doctor-sidebar>header strong,.personnel-doctor-sidebar>header small{display:block}.personnel-doctor-sidebar>header strong{font-size:12px}.personnel-doctor-sidebar>header small{color:#758398;margin-top:2px;font-size:8px}.personnel-doctor-list{align-content:start;gap:5px;max-height:565px;padding:7px;display:grid;overflow-y:auto}.doctor-selector-row{background:#fff;border:1px solid #dce3eb;border-radius:8px;min-width:0;display:block;overflow:hidden}.doctor-selector-row.selected{border-color:#82b5f3;box-shadow:0 0 0 2px #dfedff}.doctor-selector{color:#2f3e53;text-align:left;background:0 0;border:0;grid-template-columns:5px minmax(0,1fr);align-items:center;gap:7px;width:100%;min-width:0;min-height:43px;padding:6px 7px;display:grid}.doctor-selector>i{border-radius:4px;width:5px;height:29px}.doctor-selector strong,.doctor-selector small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.doctor-selector strong{font-size:10px}.doctor-selector small{color:#718096;margin-top:2px;font-size:8px}.doctor-selector.all{color:#35455b;text-align:left;background:#fff;border:1px solid #dce3eb;border-radius:8px;grid-template-columns:29px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:43px;padding:5px 7px;display:grid}.doctor-selector.all.selected{background:#edf5ff;border-color:#82b5f3;box-shadow:0 0 0 2px #dfedff}.doctor-selector-all{color:#2870d2;background:#e7f1ff;border-radius:7px;place-items:center;width:29px;height:29px;display:grid}.doctor-selector.all strong,.doctor-selector.all small{display:block}.doctor-selector.all strong{font-size:10px}.doctor-selector.all small{color:#718096;margin-top:2px;font-size:8px}.doctor-selector.all em{color:#65758a;background:#edf1f6;border-radius:10px;place-items:center;min-width:21px;height:19px;font-size:8px;font-style:normal;font-weight:800;display:grid}.personnel-calendar{background:#fff;min-width:0}.personnel-calendar-toolbar{border-bottom:1px solid #dfe5ed;grid-template-columns:1fr auto 1fr;align-items:center;gap:9px;height:45px;min-height:45px;padding:6px 9px;display:grid}.personnel-calendar-toolbar>strong{text-align:center;margin:0;font-size:15px;font-weight:700}.personnel-calendar-toolbar>span{color:#758399;white-space:nowrap;justify-self:end;font-size:9px}.personnel-calendar-nav{align-items:center;gap:5px;display:flex}.personnel-calendar-nav button{color:#53647a;background:#fff;border:1px solid #d4dce7;border-radius:6px;min-width:29px;height:29px;padding:0 7px;font-weight:750}.personnel-calendar-nav button:hover{background:#f3f8ff;border-color:#a9c4e5}.personnel-calendar-nav .personnel-today-button{color:#2b6fc8;margin-left:4px}.personnel-calendar-scroll{scrollbar-width:thin;overflow:auto}.personnel-month-grid{grid-template-columns:repeat(7,minmax(105px,1fr));min-width:780px;display:grid}.personnel-month-weekdays{background:#f5f7fa;grid-column:1/-1;grid-template-columns:repeat(7,minmax(105px,1fr));display:grid}.personnel-month-weekdays span{color:#5e6c80;text-transform:uppercase;border-right:1px solid #e0e5ec;place-items:center;min-height:29px;font-size:9px;font-weight:850;display:grid}.personnel-month-weekdays span:last-child{border-right:0}.personnel-month-day{background:#fff;border-bottom:1px solid #e0e5ec;border-right:1px solid #e0e5ec;min-width:0;min-height:92px;padding:4px}.personnel-month-day.clickable{cursor:pointer;transition:background .15s,box-shadow .15s;position:relative}.personnel-month-day.clickable:hover{background:#f4f8fe;box-shadow:inset 0 0 0 1px #a9c9f2}.personnel-month-day.clickable:focus-visible{z-index:1;outline-offset:-2px;outline:2px solid #2874eb}.personnel-month-day:nth-child(7n+1){border-right:0}.personnel-month-day.muted{background:#fafbfc}.personnel-month-day.today{background:#fffbea;box-shadow:inset 0 0 0 2px #edcf64}.personnel-month-day>header{justify-content:flex-end;min-height:18px;display:flex}.personnel-month-day>header span{color:#334258;border-radius:50%;place-items:center;width:19px;height:19px;font-size:9px;font-weight:800;display:grid}.personnel-month-day.muted>header span{color:#b0b9c6}.personnel-month-day.today>header span{color:#403710;background:#e9c84d}.personnel-month-events{align-content:start;gap:3px;display:grid}.personnel-month-event{color:#fff;text-align:left;border:0;border-radius:5px;width:100%;min-width:0;min-height:23px;padding:4px 5px;display:block;box-shadow:inset 0 -1px #00000024}.personnel-month-event:hover{filter:brightness(.94)}.personnel-month-event:disabled{cursor:default;opacity:1}.personnel-month-event>span{justify-content:space-between;align-items:center;gap:5px;min-width:0;display:flex}.personnel-month-event strong,.personnel-month-event b,.personnel-month-event small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.personnel-month-event strong{font-size:8px}.personnel-month-event b{flex:none;font-size:7px}.personnel-month-event small{display:none}.personnel-more-events{color:#527096;background:#f7f9fc;border:1px dashed #b9c8da;border-radius:5px;width:100%;min-height:18px;font-size:7px;font-weight:750}.personnel-cell-add{color:#4f78ac;opacity:0;background:#f7faff;border:1px dashed #b9cce5;border-radius:5px;justify-content:center;align-items:center;gap:3px;min-height:21px;font-size:7px;font-weight:800;transition:opacity .15s;display:flex}.personnel-month-day.clickable:hover .personnel-cell-add,.personnel-month-day.clickable:focus-visible .personnel-cell-add{opacity:1}.personnel-roster{margin-top:0}.personnel-roster.doctors-grid,.personnel-roster.assistants-grid{grid-template-columns:repeat(auto-fit,minmax(260px,340px));justify-content:start;gap:10px;margin:0 0 10px}.personnel-roster .doctor-card{grid-template-columns:44px minmax(0,1fr) auto;column-gap:9px;padding:11px}.personnel-roster .doctor-avatar{border-radius:10px;width:42px;height:42px;font-size:11px}.personnel-roster .doctor-card h2{font-size:13px}.personnel-roster .doctor-card>p{font-size:9px}.personnel-roster .doctor-card dl{margin-top:9px;padding-top:8px}.personnel-roster .doctor-card dt,.personnel-roster .doctor-card dd{font-size:9px}.personnel-roster .assistant-card{min-height:0;padding:11px}.personnel-roster .assistant-card-head{grid-template-columns:38px minmax(0,1fr) 7px;gap:8px}.personnel-roster .assistant-card-head>span{border-radius:9px;width:38px;height:38px}.personnel-roster .assistant-today,.personnel-roster .assistant-unassigned{margin-top:9px;padding:8px 9px}.personnel-roster .assistant-upcoming{gap:5px;margin-top:9px;padding-top:8px}.personnel-roster .assistant-schedule-button{min-height:34px;margin-top:9px}@media (width<=1000px){.personnel-month-layout{grid-template-columns:185px minmax(0,1fr)}.personnel-calendar-toolbar{grid-template-columns:1fr auto}.personnel-calendar-toolbar>span{display:none}}@media (width<=700px){.patient-registry-tabs{gap:28px;min-width:0}.patient-registry-tabs>div{flex:none}.personnel-topbar{flex-direction:column;align-items:stretch}.personnel-topbar .personnel-tabs{width:100%}.personnel-topbar .personnel-tabs button{flex:1;justify-content:center}.personnel-roster.doctors-grid,.personnel-roster.assistants-grid{grid-template-columns:1fr}.personnel-shift-action{justify-content:space-between}.personnel-shift-action>span{text-align:left}.personnel-month-intro{align-items:flex-start}.personnel-month-intro p{display:none}.personnel-month-layout{grid-template-columns:1fr}.personnel-doctor-sidebar{border-bottom:1px solid #dfe6ef;border-right:0}.personnel-doctor-sidebar>header{min-height:48px}.personnel-doctor-list{max-height:none;display:flex;overflow-x:auto}.doctor-selector.all,.doctor-selector-row{flex:0 0 185px;min-width:185px}.personnel-calendar-toolbar{grid-template-columns:1fr;justify-items:center}.personnel-calendar-nav{order:2;justify-content:center;justify-self:stretch}.personnel-month-grid{min-width:735px}.personnel-month-weekdays{grid-template-columns:repeat(7,minmax(100px,1fr))}}.modal-body .acute-pain-option{cursor:pointer;background:#fff7f7;border:1px solid #efc5c5;border-radius:9px;align-items:center;gap:11px;min-height:58px;padding:10px 12px;display:flex}.modal-body .acute-pain-option input{accent-color:#d24a4a;width:18px;height:18px;box-shadow:none;flex:0 0 18px;margin:0;padding:0}.modal-body .acute-pain-option>span{min-width:0;color:inherit;letter-spacing:0;text-transform:none;gap:3px;display:grid}.modal-body .acute-pain-option strong{color:#943333;font-size:10px}.modal-body .acute-pain-option small{color:#8b6c6c;font-size:8px;font-weight:500;line-height:1.4}.calendar-event.acute-pain{background:#fff1f1;box-shadow:inset 0 0 0 1px #f0b8b8}.acute-pain-dot{color:#fff;background:#cf4141;border-radius:50%;flex:0 0 15px;place-items:center;width:15px;height:15px;font-size:9px;font-style:normal;font-weight:900;display:grid}.acute-pain-badge{color:#b73535;white-space:nowrap;background:#ffe5e5;border-radius:9px;padding:3px 6px;font-size:7px;font-style:normal;font-weight:850}.appointment-statistics{background:#f8fafc;padding:20px}.statistics-head{background:#fff;border:1px solid #dfe6ef;border-radius:10px;justify-content:space-between;align-items:center;gap:18px;min-height:64px;margin-bottom:14px;padding:11px 13px;display:flex}.statistics-head>div{align-items:center;gap:11px;min-width:0;display:flex}.statistics-head-icon{color:#276dcb;background:#e9f2ff;border-radius:9px;flex:0 0 39px;place-items:center;width:39px;height:39px;display:grid}.statistics-head h2{margin:0;font-size:15px}.statistics-head p{color:#748196;margin:4px 0 0;font-size:9px}.statistics-head>label{align-items:center;gap:8px;display:flex}.statistics-head>label>span{color:#6b788c;text-transform:uppercase;font-size:8px;font-weight:850}.statistics-head select{color:#35455b;background:#fff;border:1px solid #cfd8e4;border-radius:7px;height:36px;padding:0 30px 0 10px;font-size:9px;font-weight:750}.visit-stat-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.visit-stat-cards article{background:#fff;border:1px solid #dfe6ef;border-radius:10px;align-items:center;gap:11px;min-width:0;padding:13px;display:flex}.visit-stat-icon{color:#276dcc;background:#eaf2ff;border-radius:9px;flex:0 0 38px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.visit-stat-icon.primary{color:#188052;background:#e8f7ef}.visit-stat-icon.patients{color:#276dcc;background:#e9f2ff}.visit-stat-icon.repeat{color:#6b4eb6;background:#f1ecff}.visit-stat-icon.acute{color:#bc3c3c;background:#ffe8e8}.visit-stat-cards small,.visit-stat-cards strong,.visit-stat-cards p{display:block}.visit-stat-cards small{color:#758399;letter-spacing:.05em;font-size:7px;font-weight:850}.visit-stat-cards strong{letter-spacing:-.04em;margin-top:2px;font-size:22px}.visit-stat-cards p{color:#8792a3;text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:8px;overflow:hidden}.diagnosis-statistics{background:#fff;border:1px solid #dfe6ef;border-radius:10px;margin-top:12px;overflow:hidden}.diagnosis-statistics-head{border-bottom:1px solid #e6ebf1;justify-content:space-between;align-items:center;gap:16px;min-height:67px;padding:11px 13px;display:flex}.diagnosis-statistics-head h3{margin:0;font-size:14px}.diagnosis-statistics-head p{color:#7a879a;margin:4px 0 0;font-size:9px}.diagnosis-search{color:#7c899a;border:1px solid #cfd9e5;border-radius:8px;align-items:center;gap:8px;width:min(370px,48%);height:38px;padding:0 10px;display:flex}.diagnosis-search:focus-within{border-color:#82b6ff;box-shadow:0 0 0 3px #e8f2ff}.diagnosis-search input{color:#26354a;border:0;outline:0;flex:1;min-width:0;font-size:9px}.diagnosis-search>span{color:#637289;background:#edf2f8;border-radius:10px;place-items:center;min-width:22px;height:20px;padding:0 5px;font-size:8px;font-weight:800;display:grid}.diagnosis-table-wrap{overflow:auto}.diagnosis-table{border-collapse:collapse;width:100%;min-width:720px}.diagnosis-table th{color:#7b8799;text-align:left;text-transform:uppercase;letter-spacing:.04em;background:#f5f7fa;height:36px;padding:0 12px;font-size:8px}.diagnosis-table td{color:#45536a;border-top:1px solid #edf1f5;padding:10px 12px;font-size:9px}.diagnosis-table td:first-child strong{color:#2468c5;background:#eaf2ff;border-radius:6px;padding:4px 7px;font-size:8px;display:inline-flex}.diagnosis-table td:nth-child(2){color:#28364b;font-weight:650}.diagnosis-table td b{font-size:12px}.statistics-loading,.statistics-error,.diagnosis-empty{color:#7b8799;text-align:center;align-content:center;place-items:center;gap:7px;min-height:220px;display:grid}.statistics-loading span{border:3px solid #dbe8f8;border-top-color:#2771d6;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}.statistics-loading strong,.statistics-error strong,.diagnosis-empty strong{color:#45546a;font-size:11px}.statistics-error span,.diagnosis-empty span{font-size:9px}.statistics-error .secondary-button{margin-top:5px}.statistics-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.statistics-chart-card{background:#fff;border:1px solid #dfe6ef;border-radius:12px;min-width:0;padding:16px}.statistics-chart-card>header{justify-content:space-between;align-items:flex-start;gap:14px;min-height:56px;display:flex}.statistics-chart-card>header>div{min-width:0}.statistics-chart-card>header>div>small{color:#6f7e93;letter-spacing:.07em;font-size:8px;font-weight:850}.statistics-chart-card>header h3{margin:4px 0 0;font-size:15px}.statistics-chart-card>header p{color:#7c899b;margin:4px 0 0;font-size:9px}.statistics-chart-card>header>span{color:#276dcc;background:#f2f7ff;border:1px solid #d8e4f3;border-radius:9px;grid-template-columns:auto auto;justify-content:center;align-items:center;gap:0 6px;min-width:72px;padding:7px 9px;display:grid}.statistics-chart-card>header>span svg{grid-row:1/3}.statistics-chart-card>header>span b{font-size:15px;line-height:1}.statistics-chart-card>header>span small{color:#6f7f95;font-size:7px}.statistics-chart-card>header>span.icd-code-count{flex-direction:column;gap:2px;display:flex}.donut-chart{grid-template-columns:190px minmax(0,1fr);align-items:center;gap:20px;min-height:245px;padding:16px 0 12px;display:grid}.donut-visual{border-radius:50%;place-items:center;width:180px;height:180px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #1f36550a,0 9px 25px #23406517}.donut-visual:after{content:"";background:#fff;border-radius:50%;width:105px;height:105px;position:absolute;box-shadow:0 0 0 1px #e7ebf1}.donut-visual>span{z-index:1;text-align:center;position:relative}.donut-visual strong,.donut-visual small{display:block}.donut-visual strong{letter-spacing:-.05em;font-size:30px;line-height:1}.donut-visual small{color:#7a879a;text-transform:uppercase;letter-spacing:.06em;margin-top:5px;font-size:8px;font-weight:800}.donut-legend{gap:7px;min-width:0;display:grid}.donut-legend>div{background:#fbfcfd;border:1px solid #e3e8ef;border-radius:8px;grid-template-columns:9px minmax(0,1fr) auto 34px;align-items:center;gap:8px;min-width:0;min-height:47px;padding:7px 8px;display:grid}.donut-legend i{border-radius:50%;width:9px;height:9px}.donut-legend span{min-width:0}.donut-legend span strong,.donut-legend span small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.donut-legend span strong{color:#35445a;font-size:10px}.donut-legend span small{color:#8994a5;margin-top:3px;font-size:7px}.icd-chart-card .donut-legend>div{min-height:57px}.icd-chart-card .donut-legend span small{text-overflow:clip;white-space:normal;line-height:1.35;overflow:visible}.donut-legend>div>b{font-size:14px}.donut-legend>div>em{color:#718097;text-align:right;font-size:8px;font-style:normal;font-weight:800}.acute-stat-callout{background:#fff5f5;border:1px solid #efc7ca;border-radius:9px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:63px;padding:9px 11px;display:grid}.acute-stat-callout>span{color:#fff;background:#cf3f4f;border-radius:9px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.acute-stat-callout>div{min-width:0}.acute-stat-callout small,.acute-stat-callout strong,.acute-stat-callout p{display:block}.acute-stat-callout small{color:#9d5058;letter-spacing:.05em;font-size:7px;font-weight:850}.acute-stat-callout strong{color:#8c2f3a;margin-top:2px;font-size:18px;line-height:1}.acute-stat-callout p{color:#98666c;margin:3px 0 0;font-size:8px}.acute-stat-callout>b{color:#a9313e;background:#ffe2e4;border-radius:12px;padding:5px 7px;font-size:10px}.statistics-rule-note{color:#5f7190;background:#eef5ff;border-radius:8px;align-items:flex-start;gap:7px;margin:11px 0 0;padding:9px 10px;font-size:8px;line-height:1.5;display:flex}.statistics-rule-note svg{color:#2373e8;flex:none}.statistics-rule-note.neutral{color:#6f7c8e;background:#f4f6f9}.statistics-rule-note.neutral svg{color:#6f7f95}.icd-chart-empty{color:#8692a4;text-align:center;align-content:center;place-items:center;gap:7px;min-height:245px;display:grid}.icd-chart-empty>svg{color:#8aa9d4}.icd-chart-empty strong{color:#4d5c72;font-size:11px}.icd-chart-empty span{max-width:280px;font-size:8px;line-height:1.5}@media (width<=900px){.visit-stat-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-statistics{padding:14px}}@media (width<=1100px){.statistics-chart-grid{grid-template-columns:1fr}}@media (width<=650px){.drawer-assignment-wrap{padding-left:17px;padding-right:17px}.statistics-head,.diagnosis-statistics-head{flex-direction:column;align-items:stretch}.statistics-head>label{justify-content:space-between}.statistics-head select{flex:1}.diagnosis-search{width:100%}.visit-stat-cards{grid-template-columns:1fr 1fr}.visit-stat-cards article{align-items:flex-start;padding:10px}.visit-stat-icon{flex-basis:32px;width:32px;height:32px}.statistics-chart-card{padding:12px}.statistics-chart-card>header{min-height:0}.donut-chart{grid-template-columns:1fr;justify-items:center;gap:14px}.donut-legend{width:100%}}@media (width<=900px){.appointment-modal{width:min(640px,100vw - 20px);max-height:calc(100dvh - 20px)}.appointment-modal .modal-header{padding:15px 18px 12px}.appointment-modal .modal-body{gap:12px;padding:15px 18px}.appointment-modal .modal-footer{padding:11px 18px}}@media (width<=650px){.appointment-modal{border-radius:0;width:100vw;height:100dvh;max-height:100dvh;overflow:hidden}.appointment-patient-results{max-height:210px}}.patient-overview-strip{border-bottom:1px solid var(--line);background:#f7f9fc;grid-template-columns:minmax(210px,.82fr) minmax(0,1.18fr);gap:12px;padding:12px 26px;display:grid}.patient-overview-strip .patient-summary{background:#fff;border:1px solid #d9e2ed;border-radius:10px;min-width:0;padding:13px 14px}.patient-overview-strip .patient-summary>div{min-width:0}.patient-overview-strip .patient-summary span:not(.large-initials){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.patient-overview-strip .drawer-next-visit-wrap{background:0 0;border:0;min-width:0;padding:0}.patient-overview-strip .next-visit{height:100%;min-height:76px;padding:11px 12px}.patient-overview-strip .next-visit>span{flex-basis:35px;width:35px;height:35px}.patient-overview-strip .next-visit strong{font-size:12px}.patient-overview-strip .next-visit p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.next-visit-loading{color:#7c899c;background:#fff;border:1px solid #d9e2ed;border-radius:10px;justify-content:center;align-items:center;gap:9px;min-height:76px;padding:12px;display:flex}.next-visit-loading>span{border:2px solid #dbe8f8;border-top-color:#2373e8;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.next-visit-loading small{font-size:8px}.drawer-dental-wrap{background:#f7f9fc;padding:10px 26px 12px}.drawer-dental-wrap .dental-chart-cta{margin:0}@media (width<=1180px){.clinical-visit-modal{width:min(980px,100vw - 40px);max-height:calc(100dvh - 40px)}.clinical-visit-modal .modal-header{padding:15px 18px 12px}.clinical-visit-modal .modal-header h2{font-size:19px}.clinical-visit-modal .appointment-patient{padding:10px 18px}.clinical-visit-modal .visit-modal-body{padding:14px 18px 12px}.clinical-visit-modal .visit-form-grid{gap:12px}.clinical-visit-modal .visit-form-grid textarea{min-height:74px}.clinical-visit-modal .visit-status-field{padding:10px 12px}.clinical-visit-modal .visit-modal-footer{padding:10px 18px}}@media (width>=701px) and (width<=820px){.clinical-visit-modal{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.clinical-visit-modal .visit-dental-head,.clinical-visit-modal .visit-dental-chart,.clinical-visit-modal .visit-tooth-inline-editor,.clinical-visit-modal .visit-tooth-success,.clinical-visit-modal .visit-tooth-error{min-width:0}.clinical-visit-modal .visit-tooth-inline-editor{grid-template-columns:66px 130px minmax(145px,1fr) minmax(145px,1fr) 96px;gap:6px}}@media (width<=700px){.patient-overview-strip{grid-template-columns:1fr;padding:10px 17px}.patient-overview-strip .next-visit p{white-space:normal}.drawer-dental-wrap{padding:10px 17px 12px}.clinical-visit-modal{border-radius:0;width:100vw;height:100dvh;max-height:100dvh}.clinical-visit-modal .modal-header{padding-top:max(13px,env(safe-area-inset-top))}.clinical-visit-modal .visit-modal-footer{padding-bottom:max(12px,env(safe-area-inset-bottom))}.ai-assistant-trigger{min-width:45px;padding:0 7px}.ai-assistant-trigger span{font-size:0}.ai-assistant-trigger span:after{content:"AI";font-size:9px}.ai-assistant-trigger em{display:none}.clinical-ai-panel{border-left:0;border-radius:0;width:100%}.clinical-ai-panel>header{padding-top:max(12px,env(safe-area-inset-top))}.clinical-ai-panel>footer{padding-bottom:max(10px,env(safe-area-inset-bottom))}}.voice-field-label{justify-content:space-between;align-items:center;gap:9px;min-width:0;display:flex}.voice-field-label>span{min-width:0}.voice-field-label>button{color:#176bd6;width:29px;min-width:29px;height:29px;min-height:29px;font:inherit;cursor:pointer;background:#eaf3ff;border:1px solid #a9c9f3;border-radius:7px;justify-content:center;align-items:center;padding:0;display:inline-flex}.voice-field-label>button:hover{background:#eaf3ff;border-color:#82afea}.voice-field-label>button.active{color:#c12f40;background:#ffe7e9;border-color:#dc7782}.voice-field-label>button.active svg{opacity:1;transform:none}.voice-dictation-status,.voice-dictation-error{border-radius:8px;grid-column:1/-1;align-items:center;gap:7px;margin:11px 0 0;padding:9px 11px;font-size:9px;line-height:1.4;display:flex}.voice-dictation-status{color:#246b4a;background:#effaf4;border:1px solid #a8d8c0}.voice-dictation-status>span{background:#e05260;border-radius:50%;flex:0 0 8px;width:8px;height:8px;animation:1.1s ease-in-out infinite voicePulse;box-shadow:0 0 0 4px #f7dfe2}.voice-dictation-status em{color:#607d6f;text-overflow:ellipsis;white-space:nowrap;margin-left:auto;font-size:8px;font-style:normal;overflow:hidden}.voice-dictation-error{color:#a53a45;background:#fff4f4;border:1px solid #efc6c9}.voice-dictation-error svg{flex:none}@keyframes voicePulse{50%{opacity:.42;transform:scale(.9)}}.clinical-ai-fill>.clinical-ai-section-head{margin-bottom:9px}.clinical-ai-context{flex-wrap:wrap;gap:5px;margin-bottom:8px;display:flex}.clinical-ai-context span{color:#376cae;background:#edf5ff;border-radius:10px;padding:4px 7px;font-size:7px;font-weight:850}.clinical-ai-drafts{gap:6px;display:grid}.clinical-ai-drafts article{background:#fbfcfe;border:1px solid #dfe6ef;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:8px;display:grid}.clinical-ai-drafts article>div{min-width:0}.clinical-ai-drafts article small,.clinical-ai-drafts article strong{display:block}.clinical-ai-drafts article small{color:#8793a5;font-size:7px}.clinical-ai-drafts article strong{color:#34445b;margin-top:2px;font-size:9px}.clinical-ai-drafts article p{color:#6c798c;max-height:34px;margin:4px 0 0;font-size:7px;line-height:1.45;overflow:hidden}.clinical-ai-drafts article button{color:#2469c4;background:#edf5ff;border:1px solid #aecaee;border-radius:7px;min-height:28px;padding:0 8px;font-size:7px;font-weight:850}.clinical-ai-drafts article button:hover{background:#dcecff}.clinical-ai-materials>.clinical-ai-section-head{margin-bottom:9px}.clinical-ai-material-meta{color:#78869a;margin-bottom:7px;font-size:7px}.clinical-ai-material-meta strong{color:#3d597d}.clinical-ai-material-list{gap:6px;display:grid}.clinical-ai-material-list article{background:#fbfdfc;border:1px solid #dce6e1;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:8px;display:grid}.clinical-ai-material-list article>div{min-width:0}.clinical-ai-material-list article span,.clinical-ai-material-list article strong,.clinical-ai-material-list article small{display:block}.clinical-ai-material-list article span{color:#3b7a5d;font-size:7px;font-weight:850}.clinical-ai-material-list article strong{color:#35465b;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8px;line-height:1.4;overflow:hidden}.clinical-ai-material-list article small{color:#8793a5;margin-top:3px;font-size:7px}.clinical-ai-material-list article button{color:#19754a;background:#edf9f2;border:1px solid #a8d2bd;border-radius:7px;min-height:28px;padding:0 8px;font-size:7px;font-weight:850}.clinical-ai-material-loading{color:#718196;justify-content:center;align-items:center;gap:8px;min-height:48px;font-size:8px;display:flex}.clinical-ai-material-loading span{border:2px solid #d7e7df;border-top-color:#27845a;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.teeth-legend i.extraction{background:#c43e4d}.tooth.extraction,.tooth-large.extraction,.selected-tooth-icon.extraction,.tooth-history-icon.extraction,.history-dental-tooth.extraction,.visit-tooth.extraction,.visit-selected-tooth.extraction{color:#c43e4d;background:#fff0f1;border-color:#efb7bd}.tooth-state-badge.extraction{color:#a92f3c;background:#ffe7e9}.dental-modal{grid-template-rows:auto minmax(0,1fr);width:min(1320px,100vw - 24px);height:min(780px,100dvh - 24px);max-height:calc(100dvh - 24px);display:grid;overflow:hidden}.dental-editor-layout{overscroll-behavior:contain;min-height:0;max-height:none;padding-bottom:max(16px,env(safe-area-inset-bottom));scroll-padding-bottom:96px;overflow-y:auto}.tooth-history-panel{margin-bottom:12px}@media (width>=761px) and (height<=850px){.dental-modal{height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}.dental-modal .modal-header{padding:13px 18px 10px}.dental-modal .modal-header h2{font-size:19px}.dental-modal .full-dental-chart{padding:10px 14px 14px}.dental-modal .tooth-large{min-height:60px}.dental-modal .tooth-large svg{width:22px;height:22px}.dental-modal .tooth-large small{min-height:13px;font-size:6px}.dental-modal .jaw-label{margin-bottom:4px}.dental-modal .jaw-label span{margin-bottom:1px;font-size:10px}.dental-modal .jaw-divider{margin:7px 0 6px}.dental-modal .teeth-legend{margin-top:7px}.dental-modal .tooth-editor{margin-top:8px;padding:10px}.dental-modal .tooth-editor-heading{margin-bottom:8px}.dental-modal .tooth-history-panel{margin-top:8px}}@media (width<=760px){.dental-modal{border-radius:0;width:100vw;height:100dvh;max-height:100dvh}.dental-editor-layout{max-height:none;padding-bottom:max(18px,env(safe-area-inset-bottom))}.voice-field-label>button{justify-content:center;width:29px;padding:0}}@media (width>=1200px){body{font-size:15px}.workspace{max-width:1600px}.nav-button{font-size:14px}.page-heading h1{font-size:32px}.page-heading p:last-child,.registry-panel .tab{font-size:14px}.filters input,.filters select,.filters button{font-size:13px}.patients-table th{font-size:12px}.patients-table td,.patient-cell strong{font-size:14px}.patient-cell small{font-size:12px}.modal-header span{font-size:11px}.modal-header h2{font-size:25px}.modal-body label>span{font-size:12px}.modal-body input,.modal-body select,.appointment-patient strong{font-size:14px}.appointment-patient small{font-size:11px}.clinical-visit-modal{width:min(1180px,100vw - 48px)}.visit-form-grid label>span,.visit-form-grid .icd-combobox>label{font-size:12px}.visit-form-grid input,.visit-form-grid textarea,.visit-dental-head strong{font-size:14px}.visit-dental-head small,.visit-required-note,.voice-dictation-status,.voice-dictation-error{font-size:12px}.visit-jaw-row>span,.visit-tooth small{font-size:10px}.visit-status-field>span{font-size:12px}.visit-status-field>small,.visit-status-options button{font-size:11px}.clinical-ai-panel{width:min(570px,44vw)}.clinical-ai-panel>header{min-height:78px;padding:15px 18px}.clinical-ai-title{gap:12px}.clinical-ai-title>span{flex-basis:42px;width:42px;height:42px}.clinical-ai-title small{font-size:10px}.clinical-ai-title h3{font-size:18px}.clinical-ai-body{gap:13px;padding:15px}.clinical-ai-body>section{border-radius:12px;padding:15px}.clinical-ai-section-head{gap:10px}.clinical-ai-section-head>span{flex-basis:34px;width:34px;height:34px}.clinical-ai-section-head strong{font-size:13px}.clinical-ai-section-head small{font-size:10px}.clinical-ai-summary ul{gap:9px;margin-top:12px}.clinical-ai-summary li{font-size:11px;line-height:1.5}.clinical-ai-check .clinical-ai-section-head em{font-size:14px}.clinical-ai-checks{gap:8px}.clinical-ai-checks span{gap:7px;font-size:10px}.clinical-ai-checks span i{flex-basis:19px;width:19px;height:19px;font-size:9px}.clinical-ai-check>p,.clinical-ai-empty{font-size:10px}.clinical-ai-context span{padding:5px 8px;font-size:10px}.clinical-ai-drafts article,.clinical-ai-material-list article,.clinical-ai-icd article{gap:10px;padding:10px 11px}.clinical-ai-drafts article small,.clinical-ai-material-list article span{font-size:9px}.clinical-ai-drafts article strong,.clinical-ai-material-list article strong,.clinical-ai-icd article strong{font-size:11px}.clinical-ai-drafts article p,.clinical-ai-material-list article small,.clinical-ai-icd article small,.clinical-ai-material-meta,.clinical-ai-material-loading{font-size:10px}.clinical-ai-drafts article button,.clinical-ai-material-list article button,.clinical-ai-icd article button{min-height:34px;padding:0 11px;font-size:10px}.clinical-ai-panel>footer{min-height:66px;padding:12px 16px}.clinical-ai-panel>footer strong{font-size:11px}.clinical-ai-panel>footer small{font-size:9px}}@media (width>=701px){.calendar-layout{background:#fff;border:1px solid #dce4ee;border-radius:12px;grid-template-columns:210px minmax(0,1fr);gap:0;width:100%;max-width:none;margin:0;overflow:hidden;box-shadow:0 4px 14px #22344e0b}.calendar-layout>.panel{box-shadow:none;border:0;border-radius:0}.calendar-layout .doctors-sidebar{background:#fbfcfd;border-right:1px solid #dfe6ef;align-self:stretch;min-width:0;padding:0 0 7px;overflow:hidden}.calendar-layout .sidebar-title{border-bottom:1px solid #e3e8ef;min-height:45px;margin:0;padding:7px 10px}.calendar-layout .sidebar-title strong{font-size:12px}.calendar-layout .sidebar-title span{color:#758398;font-size:9px}.calendar-layout .doctor-filter{box-sizing:border-box;background:#fff;border:1px solid #dce3eb;border-radius:8px;gap:7px;width:calc(100% - 14px);min-width:0;min-height:43px;margin:5px 7px 0;padding:6px 7px}.calendar-layout .doctor-filter:hover,.calendar-layout .doctor-filter.selected{background:#edf5ff;border-color:#82b5f3;box-shadow:0 0 0 2px #dfedff}.calendar-layout .doctor-filter strong{font-size:10px}.calendar-layout .doctor-filter small{font-size:8px}.calendar-layout .doctor-filter>span:nth-child(2){flex:1;min-width:0}.calendar-layout .doctor-filter em{flex:none;min-width:21px;height:19px;font-size:8px}.calendar-layout .all-dot,.calendar-layout .doctor-color{flex-shrink:0}.calendar-layout .doctor-color{height:29px}.calendar-layout .calendar-toolbar{border-bottom:1px solid #dfe5ed;min-width:0;height:45px;padding:6px 9px}.calendar-layout .calendar-toolbar>strong{text-transform:capitalize;font-size:15px}.calendar-layout .calendar-toolbar button{border-color:#d4dce7;border-radius:6px;min-width:29px;height:29px;padding:0 7px}.calendar-layout .calendar-toolbar button.today-button{color:#2b6fc8;margin-left:4px}.calendar-layout .view-switch{border-color:#d4dce7;padding:2px}.calendar-layout .view-switch button{height:25px}.calendar-layout .appointment-status-legend{min-height:29px;padding:4px 9px}.calendar-layout .month-grid{grid-template-columns:repeat(7,minmax(105px,1fr));min-width:780px}.calendar-layout .weekdays span{border-right:1px solid #e0e5ec;place-items:center;min-height:29px;padding:0;font-size:9px;display:grid}.calendar-layout .date-cell{border-color:#e0e5ec;min-height:92px;padding:4px}.calendar-layout .date-cell.today{box-shadow:inset 0 0 0 2px #edcf64}.calendar-layout .calendar-day-button{text-align:center;border:0;border-radius:50%;place-items:center;width:19px;min-width:19px;height:19px;margin:0 0 3px auto;padding:0;font-size:9px;line-height:1;display:grid}.calendar-layout .date-cell.today .calendar-day-button{color:#403710;background:#e9c84d}.calendar-layout .calendar-event{border-left-width:4px;border-radius:5px;min-height:23px;margin-top:3px;padding:4px 5px;box-shadow:inset 0 -1px #00000012}.calendar-layout .calendar-event strong,.calendar-layout .calendar-event .appointment-time{font-size:8px}}@media (width>=701px) and (width<=1000px){.calendar-layout{grid-template-columns:185px minmax(0,1fr)}.calendar-layout .calendar-panel{overflow:auto}}.voice-field-label{justify-content:flex-start}.voice-field-label>button{width:26px;min-width:26px;height:26px;min-height:26px;margin-left:1px}.teeth-legend .teeth-legend-separator{background:#d8e0ea;width:1px;min-height:17px;margin:0 2px}.treatment-plan-list{gap:7px}.treatment-plan-card{box-shadow:none;border-radius:8px;padding:10px 11px}.treatment-plan-head{align-items:center}.treatment-plan-head h4{margin:3px 0 0;font-size:12px}.plan-card-actions{align-items:center}.plan-goal{text-overflow:ellipsis;white-space:nowrap;margin:6px 0;padding:6px 8px;font-size:9px;line-height:1.4;overflow:hidden}.plan-stages{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.plan-stage{background:#fafbfd;border:1px solid #e1e7ef;border-radius:7px;flex:180px;grid-template-columns:21px minmax(0,1fr);align-items:center;gap:6px;min-width:150px;padding:5px 7px}.plan-stage:not(:last-child):after{display:none}.plan-stage>span{width:21px;height:21px;font-size:8px}.plan-stage strong{font-size:9px}.plan-stage small{margin-top:1px;font-size:7px}.app-shell .nav-button,.app-shell .tab,.app-shell .drawer-tabs button,.app-shell .primary-button,.app-shell .secondary-button,.app-shell .ghost-button,.app-shell .personnel-tabs button,.app-shell .admin-tabs button{font-family:var(--font-ui);font-size:var(--text-body);line-height:1.35}.app-shell .filters input,.app-shell .filters select,.app-shell .modal-body input,.app-shell .modal-body select,.app-shell .modal-body textarea,.app-shell .visit-form-grid input,.app-shell .visit-form-grid textarea,.app-shell .doctor-profile-editor input,.app-shell .doctor-profile-editor select,.app-shell .doctor-assignment-controls select,.app-shell .statistics-head select,.app-shell .diagnosis-search input{font-family:var(--font-ui);font-size:var(--text-body);line-height:1.45}.app-shell .patients-table td,.app-shell .patient-cell strong,.app-shell .appointment-patient strong,.app-shell .visit-list p strong,.app-shell .assignment-patient-context strong,.app-shell .doctor-choice-copy strong,.app-shell .personal-assignment strong,.app-shell .statistics-chart-card strong{font-size:var(--text-body)}.app-shell .patient-cell small,.app-shell .doctor-card>p,.app-shell .doctor-card dt,.app-shell .doctor-card dd,.app-shell .appointment-patient small,.app-shell .next-visit p,.app-shell .visit-list p span,.app-shell .history-heading p,.app-shell .assignment-patient-context em,.app-shell .assignment-choice-head p,.app-shell .doctor-choice-copy small,.app-shell .doctor-choice-copy em,.app-shell .statistics-head p,.app-shell .diagnosis-statistics-head p,.app-shell .statistics-chart-card>header p,.app-shell .donut-legend span small,.app-shell .acute-stat-callout p,.app-shell .statistics-rule-note{font-size:var(--text-support);line-height:1.45}.app-shell .field-label span,.app-shell .patients-table th,.app-shell .modal-body label>span,.app-shell .visit-form-grid label>span,.app-shell .doctor-profile-editor label>span,.app-shell .account-dropdown-profile small,.app-shell .assigned-doctor-current small,.app-shell .doctor-assignment-controls label>span,.app-shell .my-shifts-head small,.app-shell .statistics-head>label>span,.app-shell .visit-stat-cards small,.app-shell .diagnosis-table th,.app-shell .statistics-chart-card>header>div>small{font-size:var(--text-caption);line-height:1.35}.app-shell .account-dropdown-profile strong,.app-shell .account-dropdown-profile em,.app-shell .account-dropdown-role span,.app-shell .account-dropdown-role strong,.app-shell .account-signout>span strong,.app-shell .account-signout>span small{font-size:var(--text-support)}.app-shell .status-badge,.app-shell .history-status,.app-shell .acute-pain-badge,.app-shell .doctor-current-badge,.app-shell .calendar-layout .sidebar-title span,.app-shell .calendar-layout .doctor-filter small,.app-shell .calendar-layout .doctor-filter em,.app-shell .calendar-layout .weekdays span,.app-shell .calendar-layout .calendar-day-button,.app-shell .calendar-layout .calendar-event strong,.app-shell .calendar-layout .calendar-event .appointment-time,.app-shell .personnel-month-weekdays span,.app-shell .personnel-month-day>header span,.app-shell .personnel-month-event strong,.app-shell .personnel-month-event b{font-size:10px}.app-shell .clinical-ai-title small,.app-shell .clinical-ai-section-head small,.app-shell .clinical-ai-summary li,.app-shell .clinical-ai-checks span,.app-shell .clinical-ai-check>p,.app-shell .clinical-ai-icd article small,.app-shell .clinical-ai-empty,.app-shell .clinical-ai-panel>footer small,.app-shell .clinical-ai-context span,.app-shell .clinical-ai-drafts article small,.app-shell .clinical-ai-drafts article p,.app-shell .clinical-ai-material-meta,.app-shell .clinical-ai-material-list article span,.app-shell .clinical-ai-material-list article small,.app-shell .clinical-ai-material-loading{font-size:var(--text-caption);line-height:1.45}.app-shell .clinical-ai-drafts article strong,.app-shell .clinical-ai-material-list article strong,.app-shell .clinical-ai-icd article strong,.app-shell .clinical-ai-panel>footer strong{font-size:var(--text-support)}.app-shell .clinical-ai-drafts article button,.app-shell .clinical-ai-material-list article button,.app-shell .clinical-ai-icd article button{font-size:var(--text-caption)}.personnel-topbar.shift-only{justify-content:flex-end;min-height:50px}.personnel-topbar.shift-only .personnel-shift-action{margin-left:auto}.personnel-workspace-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:10px;min-width:0;display:grid}.personnel-workspace-layout>.personnel-month{min-width:0;margin:0}.personnel-roster-panel{align-self:start;min-width:0;padding:8px;overflow:hidden}.personnel-roster-panel .personnel-tabs{width:100%;margin:0 0 8px;padding:3px}.personnel-roster-panel .personnel-tabs button{flex:1;justify-content:center;gap:5px;min-width:0;min-height:34px;padding:0 7px;font-size:12px}.personnel-roster-panel .personnel-tabs button span{min-width:17px;height:17px;padding:0 4px}.personnel-roster-panel .personnel-roster{scrollbar-width:thin;grid-template-columns:1fr;gap:7px;max-height:612px;margin:0;padding-right:2px;display:grid;overflow-y:auto}.personnel-roster-panel .doctor-card{border-radius:9px;grid-template-columns:38px minmax(0,1fr) 32px;grid-template-areas:"avatar name action""avatar specialty action""details details details";column-gap:8px;min-height:0;padding:9px}.personnel-roster-panel .doctor-avatar{border-radius:9px;width:36px;height:36px;font-size:10px}.personnel-roster-panel .doctor-card h2{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;line-height:1.25;overflow:hidden}.personnel-roster-panel .doctor-card>p{letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;font-weight:500;line-height:1.3;overflow:hidden}.personnel-roster-panel .doctor-card dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px;padding-top:8px}.personnel-roster-panel .doctor-card dl>div{min-width:0;display:block}.personnel-roster-panel .doctor-card dt{color:#6f7d91;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:600;line-height:1.2;display:block;overflow:hidden}.personnel-roster-panel .doctor-card dd{color:#26354b;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:11px;font-weight:750;line-height:1.25;display:block;overflow:hidden}.roster-icon-action{color:#286fce;background:#f2f7fe;border:1px solid #c7d8ed;border-radius:8px;place-items:center;width:32px;height:32px;padding:0;display:grid}.roster-icon-action:hover{background:#e7f1ff;border-color:#8fb7e8}.roster-icon-action:focus-visible{outline-offset:1px;outline:3px solid #d9eaff}.personnel-roster-panel .doctor-card>.roster-icon-action{grid-area:action;align-self:start}.personnel-roster-panel .assistant-card{border-radius:9px;padding:9px}.personnel-roster-panel .assistant-card-head{grid-template-columns:36px minmax(0,1fr) 32px;gap:8px}.personnel-roster-panel .assistant-card-head>span{border-radius:9px;width:36px;height:36px;font-size:10px}.personnel-roster-panel .assistant-card-head small{letter-spacing:.04em;font-size:9px;font-weight:700;line-height:1.2}.personnel-roster-panel .assistant-card-head h2{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;line-height:1.25;overflow:hidden}.personnel-roster-panel .assistant-card-head p{font-size:10px;font-weight:500;line-height:1.3}.personnel-roster-panel .assistant-today,.personnel-roster-panel .assistant-unassigned{margin-top:7px;padding:7px 8px}.personnel-roster-panel .assistant-today small{letter-spacing:.04em;font-size:9px;font-weight:700}.personnel-roster-panel .assistant-today strong,.personnel-roster-panel .assistant-unassigned strong{font-size:11px;line-height:1.3}.personnel-roster-panel .assistant-today span,.personnel-roster-panel .assistant-unassigned span{font-size:10px;font-weight:500;line-height:1.35}.personnel-roster-panel .assistant-upcoming{gap:4px;margin-top:7px;padding-top:7px}.personnel-roster-panel .assistant-upcoming>strong{letter-spacing:.03em;font-size:9px;font-weight:700}.personnel-roster-panel .assistant-upcoming>span{grid-template-columns:42px 6px minmax(0,1fr);font-size:10px;font-weight:600;line-height:1.3}.personnel-roster-panel .roster-empty{min-height:160px;padding:18px 10px}.recent-appointments-table td:nth-child(2)>strong{display:block}.recent-appointment-time{color:#718096;margin-top:3px;font-size:11px;display:block}.recent-appointment-doctor{align-items:center;gap:7px;font-weight:650;display:flex}.recent-appointment-doctor i{border-radius:50%;flex:0 0 7px;width:7px;height:7px}.recent-appointments-table td:nth-child(4) .today-acute-label{margin-left:7px}.appointment-status-pill{color:#5f6c7d;white-space:nowrap;background:#eef2f7;border-radius:12px;align-items:center;min-height:24px;padding:0 8px;font-size:10px;font-weight:750;display:inline-flex}.appointment-status-pill.confirmed{color:#2068c8;background:#e8f2ff}.appointment-status-pill.completed{color:#17794c;background:#e8f7ef}.appointment-status-pill.cancelled{color:#707b89;background:#eef0f3}.appointment-status-pill.no_show{color:#bd4053;background:#fff0f2}@media (width<=1200px){.personnel-workspace-layout{grid-template-columns:1fr}.personnel-roster-panel{grid-row:2}.personnel-roster-panel .personnel-roster{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));max-height:none}}@media (width>=701px) and (width<=1200px){.personnel-month-layout{grid-template-columns:175px minmax(0,1fr)}.personnel-month-grid,.personnel-month-weekdays{grid-template-columns:repeat(7,minmax(70px,1fr));min-width:0}.personnel-month-day{min-height:74px}.personnel-month-intro{min-height:44px}.personnel-month-intro p{display:none}}@media (width<=700px){.personnel-topbar.shift-only{align-items:stretch}.personnel-topbar.shift-only .personnel-shift-action{width:100%;margin:0}.personnel-roster-panel .personnel-roster{grid-template-columns:1fr}}.login-shell{background:linear-gradient(145deg,#eef5ff 0%,#f8fafc 48%,#eef9f6 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border:1px solid #dce5ef;border-radius:16px;width:min(420px,100%);padding:32px;box-shadow:0 24px 70px #1e3a5c24}.login-brand{border-bottom:1px solid #edf0f4;align-items:center;gap:12px;padding-bottom:22px;display:flex}.login-brand img{width:42px;height:42px}.login-brand strong,.login-brand span{display:block}.login-brand strong{color:#21334b;font-size:19px}.login-brand span{color:#738096;margin-top:2px;font-size:10px}.login-heading{margin:26px 0 22px}.login-heading>span{color:#2874eb;letter-spacing:.08em;font-size:9px;font-weight:850}.login-heading h1{color:#1d2b40;margin:6px 0 8px;font-size:24px}.login-heading p{color:#748195;margin:0;font-size:12px;line-height:1.5}.login-card label{gap:7px;margin-top:16px;display:grid}.login-card label>span{color:#5d6c81;font-size:10px;font-weight:800}.login-card input{height:46px;font:inherit;border:1px solid #cdd8e5;border-radius:9px;outline:none;padding:0 12px}.login-card input:focus{border-color:#70a9f4;box-shadow:0 0 0 3px #e7f1ff}.login-error{color:#bb3049;margin:16px 0 0;font-size:11px}.login-submit{width:100%;min-height:46px;margin-top:22px}
