.dentaldesk-root{--ds-page:#F5F5F7;--ds-surface:#FFFFFF;--ds-surface-alt:#FAFAFB;--ds-surface-hover:#F1F1F4;--ds-sidebar:#FFFFFF;--ds-sidebar-active:#FFF7ED;--ds-ink:#0F172A;--ds-ink-2:#1E293B;--ds-ink-3:#475569;--ds-ink-4:#64748B;--ds-ink-5:#94A3B8;--ds-border:#E4E4E7;--ds-border-strong:#D4D4D8;--ds-brand:#334155;--ds-brand-deep:#1E293B;--ds-brand-soft:#FFF7ED;--ds-brand-ring:rgba(245,158,11,0.24);--ds-accent:#F59E0B;--ds-accent-deep:#B45309;--ds-success:#15803D;--ds-success-soft:#DCFCE7;--ds-warning:#B45309;--ds-warning-soft:#FEF3C7;--ds-danger:#B91C1C;--ds-danger-soft:#FEE2E2;--ds-neutral-soft:#F1F5F9;--ds-info:#1D4ED8;--ds-info-soft:#EFF6FF;--ds-display:"IBM Plex Sans","Inter",ui-sans-serif,system-ui,sans-serif;background:var(--ds-page);color:var(--ds-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;letter-spacing:0;min-height:100vh}.dentaldesk-root *{box-sizing:border-box}.dentaldesk-card{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:8px}.dentaldesk-card-pad-sm{padding:16px 18px}.dentaldesk-card-pad{padding:20px 22px}.dentaldesk-card-pad-lg{padding:24px 26px}.dentaldesk-panel{background:var(--ds-surface-alt);border:1px solid var(--ds-border);border-radius:8px}.dentaldesk-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:500;font-size:13px;line-height:1;padding:8px 14px;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--ds-ink-2);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease;white-space:nowrap}.dentaldesk-btn-primary{background:var(--ds-brand);color:#fff;border-color:var(--ds-brand)}.dentaldesk-btn-primary:hover{background:var(--ds-brand-deep);border-color:var(--ds-brand-deep)}.dentaldesk-btn-secondary{background:#fff;color:var(--ds-ink-2);border-color:var(--ds-border-strong)}.dentaldesk-btn-secondary:hover{background:var(--ds-surface-hover)}.dentaldesk-btn-ghost{background:transparent;color:var(--ds-ink-3)}.dentaldesk-btn-ghost:hover{background:var(--ds-surface-hover);color:var(--ds-ink)}.dentaldesk-btn-sm{padding:6px 10px;font-size:12px;border-radius:5px}.dentaldesk-btn-lg{padding:10px 18px;font-size:14px}.dentaldesk-btn-link{background:transparent;color:var(--ds-brand);padding:0;font-weight:500}.dentaldesk-btn-link:hover{text-decoration:underline}.dentaldesk-btn-accent{background:var(--ds-accent);color:var(--ds-brand-deep);border-color:var(--ds-accent)}.dentaldesk-btn-accent:hover{background:var(--ds-accent-deep);color:#fff;border-color:var(--ds-accent-deep)}.dentaldesk-pill{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500;padding:3px 8px;border-radius:999px;background:var(--ds-neutral-soft);color:var(--ds-ink-3);border:1px solid var(--ds-border);white-space:nowrap}.dentaldesk-pill-brand{background:var(--ds-brand-soft);color:var(--ds-accent-deep);border-color:rgba(245,158,11,.25)}.dentaldesk-pill-green{background:var(--ds-success-soft);color:var(--ds-success);border-color:rgba(21,128,61,.18)}.dentaldesk-pill-amber{background:var(--ds-warning-soft);color:var(--ds-warning);border-color:rgba(180,83,9,.2)}.dentaldesk-pill-red{background:var(--ds-danger-soft);color:var(--ds-danger);border-color:rgba(185,28,28,.2)}.dentaldesk-pill-blue{background:var(--ds-info-soft);color:var(--ds-info);border-color:rgba(29,78,216,.18)}.dentaldesk-pill-gray{background:var(--ds-neutral-soft);color:var(--ds-ink-3)}.dentaldesk-pill-dot{width:6px;height:6px;border-radius:999px;background:currentColor;display:inline-block}.dentaldesk-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;color:var(--ds-ink-2)}.dentaldesk-table thead th{text-align:left;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ds-ink-4);padding:10px 14px;background:var(--ds-surface-alt);border-bottom:1px solid var(--ds-border)}.dentaldesk-table tbody td{padding:12px 14px;border-bottom:1px solid var(--ds-border);vertical-align:middle}.dentaldesk-table tbody tr:last-child td{border-bottom:0}.dentaldesk-table tbody tr:hover{background:var(--ds-surface-hover)}.dentaldesk-table .num,.dentaldesk-table .right{text-align:right;font-variant-numeric:tabular-nums}.dentaldesk-bar{position:relative;height:6px;border-radius:999px;background:var(--ds-neutral-soft);overflow:hidden}.dentaldesk-bar>span{display:block;height:100%;border-radius:999px;background:var(--ds-brand);transition:width .6s ease}.dentaldesk-bar.amber>span{background:var(--ds-warning)}.dentaldesk-bar.red>span{background:var(--ds-danger)}.dentaldesk-bar.green>span{background:var(--ds-success)}.dentaldesk-nav-link{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;font-size:13.5px;font-weight:500;color:var(--ds-ink-3);text-decoration:none;border:1px solid transparent;position:relative}.dentaldesk-nav-link:hover{background:var(--ds-surface-hover);color:var(--ds-ink)}.dentaldesk-nav-link.active{background:var(--ds-sidebar-active);color:var(--ds-accent-deep)}.dentaldesk-nav-link.active:before{content:"";position:absolute;left:-12px;top:6px;bottom:6px;width:3px;border-radius:0 3px 3px 0;background:var(--ds-accent)}.dentaldesk-nav-section{font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--ds-ink-5);text-transform:uppercase;padding:14px 12px 6px}.dentaldesk-label{font-size:12px;font-weight:500;color:var(--ds-ink-3);display:block;margin-bottom:6px}.dentaldesk-input,.dentaldesk-select{width:100%;font-size:13.5px;padding:9px 12px;border:1px solid var(--ds-border-strong);border-radius:6px;background:#fff;color:var(--ds-ink);transition:border-color .12s ease,box-shadow .12s ease}.dentaldesk-input:focus,.dentaldesk-select:focus{outline:none;border-color:var(--ds-accent);box-shadow:0 0 0 3px var(--ds-brand-ring)}.dentaldesk-toggle{position:relative;width:34px;height:20px;border-radius:999px;background:var(--ds-border-strong);border:1px solid var(--ds-border-strong);flex-shrink:0;transition:background .16s ease;cursor:pointer}.dentaldesk-toggle:after{content:"";position:absolute;top:1px;left:1px;width:16px;height:16px;border-radius:999px;background:#fff;transition:left .18s ease;box-shadow:0 1px 2px rgba(15,23,42,.18)}.dentaldesk-toggle.on{background:var(--ds-brand);border-color:var(--ds-brand)}.dentaldesk-toggle.on:after{left:15px}.dentaldesk-display{font-family:var(--ds-display);letter-spacing:-.012em}.dentaldesk-root ::-webkit-scrollbar{width:8px;height:8px}.dentaldesk-root ::-webkit-scrollbar-thumb{background:var(--ds-border-strong);border-radius:999px}.dentaldesk-root ::-webkit-scrollbar-thumb:hover{background:var(--ds-ink-5)}.dentaldesk-root ::-webkit-scrollbar-track{background:transparent}.dentaldesk-floor{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:14px}.dentaldesk-op{position:relative;background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:10px;padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:150px;transition:border-color .15s ease,box-shadow .15s ease}.dentaldesk-op:hover{border-color:var(--ds-border-strong);box-shadow:0 1px 2px rgba(15,23,42,.04),0 8px 20px -12px rgba(15,23,42,.18)}.dentaldesk-op:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--op-stripe,var(--ds-border-strong))}.dentaldesk-op-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 14px 11px 16px;border-bottom:1px solid var(--ds-border);background:var(--ds-surface-alt)}.dentaldesk-op-name{font-family:var(--ds-display);font-size:12.5px;font-weight:600;letter-spacing:-.01em;color:var(--ds-ink-2);display:flex;align-items:center;gap:7px}.dentaldesk-op-chip{width:20px;height:20px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;color:#fff;background:var(--op-stripe,var(--ds-brand));flex-shrink:0}.dentaldesk-op-time{font-family:ui-monospace,monospace;font-size:11px;color:var(--ds-ink-4);white-space:nowrap}.dentaldesk-op-body{padding:12px 14px 13px 16px;display:flex;flex-direction:column;gap:9px;flex:1}.dentaldesk-op-patient{display:flex;align-items:center;gap:9px}.dentaldesk-op-avatar{width:30px;height:30px;border-radius:999px;color:#fff;font-weight:600;font-size:11px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.dentaldesk-op-pname{font-size:13px;font-weight:600;color:var(--ds-ink);line-height:1.2}.dentaldesk-op-meta{font-size:11px;color:var(--ds-ink-4);margin-top:1px}.dentaldesk-op-proc{font-size:12px;color:var(--ds-ink-2);line-height:1.35}.dentaldesk-op-provider{font-size:11.5px;color:var(--ds-ink-4)}.dentaldesk-op-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:4px}.dentaldesk-op-action{font-size:11px;color:var(--ds-ink-3);line-height:1.35;padding:8px 10px;background:var(--ds-surface-alt);border:1px solid var(--ds-border);border-radius:7px}.dentaldesk-op-action strong{color:var(--ds-warning);font-weight:600}.dentaldesk-op-open{align-items:center;justify-content:center;text-align:center;color:var(--ds-ink-5);background:repeating-linear-gradient(135deg,var(--ds-surface),var(--ds-surface) 9px,var(--ds-surface-alt) 9px,var(--ds-surface-alt) 18px);min-height:150px;gap:4px}.dentaldesk-op-open .dentaldesk-op-open-label{font-family:var(--ds-display);font-size:12.5px;font-weight:600;color:var(--ds-ink-4)}.dentaldesk-op-open .dentaldesk-op-open-sub{font-size:11px;color:var(--ds-ink-5)}