/* Praxiaro 0.23: one quiet visual language, preserving practice brand colours. */
:root{--ink:#21383c;--muted:#65797b;--line:#dfe8e6;--surface:#fff;--radius:14px;--shadow:0 3px 18px #24444807;--font-ui:"Segoe UI",Arial,sans-serif}
body{font-family:var(--font-ui);color:var(--ink);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,summary,textarea{outline-offset:3px}*:focus-visible{outline:2px solid var(--accent,#075560)}
h1,h2,h3{letter-spacing:-.025em;line-height:1.2;color:var(--ink)}h1{font-size:clamp(24px,2.5vw,32px);font-weight:650}h2{font-size:19px;font-weight:650}h3{font-size:16px}.eyebrow{font-size:10px;letter-spacing:.12em;color:var(--muted);font-weight:650}.muted,small{color:var(--muted)}
.shell{grid-template-columns:210px minmax(0,1fr)}.sidebar{padding:20px 12px 12px;gap:0;border-right:1px solid var(--line);background:color-mix(in srgb,var(--sidebar,#edf3f1) 70%,white)}.sidebar-heading{padding:0 8px}.product-wordmark{max-width:137px}.sidebar .practice-tag{margin:18px 0 12px;padding:10px 7px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.practice-tag strong{font-size:12px}.practice-tag small{font-size:10px}.sidebar .nav-label{font-size:9px;letter-spacing:.13em;margin:10px 9px 7px}.sidebar nav{gap:3px}.sidebar nav a{min-height:34px;padding:7px 10px;gap:10px;border-radius:8px;font-size:12px;font-weight:500;color:#52696c;box-shadow:none}.sidebar nav a:hover{background:#ffffffa0;color:var(--accent)}.sidebar nav a[aria-current=page]{background:#fff;color:var(--accent);box-shadow:0 1px 5px #23433d09;font-weight:650}.nav-symbol{display:inline-flex;width:18px;flex-shrink:0}.nav-symbol svg{width:18px;height:18px}.nav-text{white-space:normal}.nav-admin{margin-top:14px;border-top:1px solid var(--line);padding-top:10px}.nav-admin>summary{font-size:11px;color:var(--muted);padding:7px 9px;cursor:pointer}.nav-admin nav{margin-top:6px}.sidebar-bottom{margin-top:20px;font-size:10px}.sidebar-bottom small{font-size:9px}
.topbar{height:58px;padding:0 26px;border-bottom:1px solid var(--line);background:#ffffffd9}.topbar>span{font-size:12px;color:var(--muted)}.user-label{font-size:12px}.user-label small{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.environment{font-size:9px;background:transparent;border:1px solid var(--line)}.main{padding:26px 28px}.page-heading{margin-bottom:22px;align-items:center}.page-heading h1{margin:4px 0 6px}.page-heading p{font-size:13px;color:var(--muted);margin:0}.card,.metric,.clock-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:var(--surface)}.card{padding:21px 23px}.card+.card{margin-top:16px}.button,.clock-button,.tablet-button{border-radius:8px;min-height:37px;padding:9px 15px;background:var(--accent,#075560);border:1px solid transparent;font-size:12px;font-weight:600;box-shadow:none;transition:background .15s,transform .15s}.button:hover,.tablet-button:hover{filter:brightness(.95)}.button.secondary,.tablet-button.secondary{background:#fff;border-color:var(--line);color:var(--ink)}.button.secondary:hover{background:#f3f7f6}.text-link{font-weight:600;font-size:12px;color:var(--accent)}.icon-button{color:var(--muted)}
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select,textarea{border:1px solid #ccd9d6;border-radius:8px;background:#fff;color:var(--ink);padding:9px 11px;min-height:38px;box-shadow:none}input:focus,select:focus,textarea:focus{border-color:var(--accent)}label{font-size:12px;font-weight:500}input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px}textarea{resize:vertical}small,.small{font-size:11px}.errorlist{font-size:12px;color:#a73535}.notice,.clock-notice{border-radius:9px;font-size:12px;border:1px solid #dce8e4;background:#f1f7f4}.notice.warning{background:#fff8e9;border-color:#eddaad;color:#765622}
table{font-size:12px}table th{font-size:10px;text-transform:none;letter-spacing:.02em;color:var(--muted);background:#f5f8f7;font-weight:650}table td,table th{padding:11px 13px;border-color:var(--line)}table td small{display:block;margin-top:3px;font-size:10px}table tbody tr:hover{background:#f8faf9}details>summary{cursor:pointer}.badge{font-size:10px;border:1px solid var(--line);border-radius:6px;padding:4px 8px;background:#f7faf8;box-shadow:none}.footer{padding:10px 28px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
.workspace-welcome{margin:5px 0 30px}.launch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:17px;max-width:1250px}.launch-card{position:relative;display:block;background:white;border:1px solid var(--line);border-radius:14px;padding:24px;text-decoration:none;color:inherit;box-shadow:var(--shadow);transition:transform .15s,border-color .15s}.launch-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,white);transform:translateY(-2px)}.launch-card h2{font-size:18px;margin:8px 0 10px}.launch-card p{font-size:12px;color:var(--muted);min-height:38px;margin-bottom:18px}.launch-arrow{position:absolute;right:21px;top:20px;color:var(--accent);font-size:22px}.workspace-management{margin:28px 0;border-top:1px solid var(--line);padding-top:15px;color:var(--muted);max-width:1250px}.workspace-management>summary{font-size:12px}.management-links{display:flex;gap:10px 24px;flex-wrap:wrap;padding:17px 0}.management-links a{font-size:12px;color:var(--muted)}.patient-quick-actions{display:flex;gap:8px;justify-content:flex-end;margin:0 0 12px}.patient-tabs,.stock-nav,.flow-nav,.billing-nav,.personnel-nav{gap:5px}.patient-tabs a,.stock-nav>a,.flow-nav>a,.billing-nav>a{font-size:12px;padding:8px 11px;border-radius:7px}
.month-picker{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.month-picker label{color:var(--muted)}.month-picker input{max-width:170px}.time-period{flex-wrap:wrap;gap:14px}.clock-main-nav a{border-radius:8px;font-size:12px}.clock-state{font-size:11px}.clock-balance{font-size:30px}.clock-card{padding:22px}.stock-group{border:1px solid var(--line);border-radius:11px;background:#fff;margin-bottom:10px;overflow:hidden}.stock-group>summary{list-style:none;display:grid;grid-template-columns:minmax(180px,1fr) repeat(3,115px) 30px;align-items:center;gap:12px;padding:18px 20px}.stock-group>summary::after{content:'+';color:var(--accent);font-size:22px}.stock-group[open]>summary::after{content:'−'}.stock-group small{display:block;font-size:10px}.stock-group .stock-table-wrap{border-top:1px solid var(--line)}.stock-group strong{font-weight:650}.stock-summary-head{font-size:11px;color:var(--muted);padding:10px 20px}.patient-context-bar{padding:13px 17px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;background:#fff;margin-bottom:15px;font-size:12px}.patient-context-bar strong{margin-right:12px}.calendar-empty{border-style:dashed}.calendar-actions-bar{box-shadow:none}.calendar-workspace .card{padding:17px 19px}.calendar-card{box-shadow:none}.calendar-appointment{border-radius:5px}.flow-heading h1{font-size:27px}.flow-task-row{border-color:var(--line)}
.tablet-app{background:#f5f8f7}.tablet-header{background:#fff;border-bottom:1px solid var(--line)}.tablet-header-end{display:flex;align-items:center;gap:12px}.tablet-header-end form{margin:0}.tablet-header-end button{min-height:44px;font-size:12px}.tablet-photo-card,.tablet-patient-card,.tablet-action-card{border-radius:14px;border-color:var(--line);box-shadow:var(--shadow)}.tablet-page{max-width:1400px}.tablet-button,.clock-button{min-height:44px;font-size:14px}.tablet-page h1{font-size:30px}.tablet-state{border-radius:7px}.employee-app{background:#f5f8f7}.clock-app-header{border-bottom:1px solid var(--line)}
@media(min-width:801px){.sidebar-collapsed .nav-admin>summary{font-size:0}.sidebar-collapsed .nav-admin>summary::after{content:'…';font-size:18px}.sidebar-collapsed .nav-admin nav{display:flex}.sidebar-collapsed .sidebar nav a{padding:8px;min-height:34px}.sidebar-collapsed .nav-symbol{display:inline-flex}}
@media(pointer:coarse){.sidebar nav a{min-height:44px}.button,.tablet-button,.clock-button{min-height:44px}.month-picker input{min-height:44px}}
@media(max-width:900px){.main{padding:20px}.stock-group>summary{grid-template-columns:minmax(145px,1fr) repeat(3,75px) 20px;gap:8px;padding:14px}.user-label small{max-width:180px}.launch-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}}
@media(max-width:800px){.shell{display:block}.sidebar{padding:10px 14px}.sidebar-heading .product-wordmark{max-width:115px}.sidebar .practice-tag{display:none}.sidebar nav{flex-direction:row;flex-wrap:wrap}.sidebar nav a{font-size:11px;min-height:36px;padding:6px 9px}.nav-admin{margin-top:8px;padding-top:4px}.nav-admin nav{flex-direction:row}.main{padding:17px 14px}.topbar{padding:0 14px;height:49px}.environment,.user-label small{display:none}.launch-grid{grid-template-columns:1fr}.page-heading{gap:12px;flex-wrap:wrap}.card{padding:17px}.stock-group>summary{grid-template-columns:1fr 65px 65px 20px}.stock-group>summary .stock-reserved{display:none}.tablet-header-end{gap:5px}.tablet-header-end .tablet-pc{display:none}.tablet-header-end button{padding:8px;font-size:11px}.month-picker{width:100%}.footer{padding:10px 14px}.patient-quick-actions{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.calendar-appointment small{color:inherit;opacity:.95}.calendar-appointment strong{color:inherit}
