:root{--nav:#263f52;--nav2:#1f3444;--accent:#4e91ad;--accent-dark:#326f89;--ink:#253239;--muted:#6e7b82;--line:#dce3e7;--page:#f7f8f9;--white:#fff;--danger:#a13d3d;--success:#37765b;--warning:#9a6a26;--shadow:0 7px 24px rgba(30,52,66,.055)}*{box-sizing:border-box}html{font-size:15px}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--page);line-height:1.45}a{color:var(--accent-dark)}.container{width:min(1220px,calc(100% - 44px));margin:0 auto}.topbar{background:linear-gradient(180deg,var(--nav),var(--nav2));border-bottom:1px solid #162b38;color:#fff;box-shadow:0 2px 10px rgba(21,38,49,.12)}.nav-wrap{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#fff;font-size:20px;font-weight:700;letter-spacing:-.01em}.brand img{width:42px;height:42px;object-fit:contain;background:#fff;border-radius:6px;padding:3px}.brand small{display:block;color:#bac9d1;font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;margin-top:2px}.main-nav{display:flex;align-items:center;gap:18px}.main-nav>a,.nav-dropdown>button{color:#e6eef2;text-decoration:none;font-size:13px;font-weight:650;background:none;border:0;padding:10px 0;cursor:pointer}.main-nav>a:hover,.nav-dropdown>button:hover{color:#fff}.nav-user{color:#b7c6ce;font-size:12px;padding-left:7px;border-left:1px solid rgba(255,255,255,.15)}.nav-dropdown{position:relative}.nav-dropdown>div{display:none;position:absolute;right:0;top:34px;width:190px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 28px rgba(20,37,48,.14);padding:7px;z-index:10}.nav-dropdown:hover>div{display:block}.nav-dropdown>div a{display:block;padding:9px 10px;text-decoration:none;color:#394950;border-radius:5px;font-size:13px}.nav-dropdown>div a:hover{background:#f2f5f6}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:32px 0 20px}.page-header h1{margin:0;font-size:29px;letter-spacing:-.025em;font-weight:720}.page-header p,.section-heading p{margin:5px 0 0;color:var(--muted);font-size:13px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-dark);font-weight:750;margin-bottom:4px}.card{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:23px;margin-bottom:22px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.section-heading h2,.form-section-title h2,.card h2{font-size:17px;margin:0;color:#2d3b42}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border:1px solid transparent;border-radius:7px;font:inherit;font-size:13px;font-weight:700;text-decoration:none;cursor:pointer;white-space:nowrap}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover{background:var(--accent-dark)}.btn-outline{background:#fff;color:#384850;border-color:#d2dce0}.btn-outline:hover{background:#f7f9fa}.btn-danger{background:#fff6f6;color:var(--danger);border-color:#e8caca}.btn-danger-solid{background:var(--danger);color:#fff}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.field{margin-bottom:0}.field label,.universal-search label{display:block;font-size:11px;font-weight:750;color:#5f6d74;text-transform:uppercase;letter-spacing:.055em;margin-bottom:6px}input,select,textarea{width:100%;min-height:39px;padding:9px 10px;border:1px solid #cfd9de;border-radius:7px;background:#fff;color:#26343a;font:inherit;font-size:13px;transition:.15s}textarea{min-height:94px;resize:vertical}input:focus,select:focus,textarea:focus{outline:0;border-color:#7daabe;box-shadow:0 0 0 3px rgba(78,145,173,.11)}input[readonly]{background:#f5f7f8;color:#48575e}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.span-2{grid-column:span 2}.read-only-field{padding:9px 10px;background:#f7f9fa;border:1px solid #e1e7ea;border-radius:7px}.read-only-field strong{font-size:13px}.form-section-title{border-bottom:1px solid #edf1f2;padding-bottom:13px;margin-bottom:17px}.form-errors{margin-top:14px;padding:10px 12px;background:#fff4f4;border:1px solid #edcece;color:#923c3c;border-radius:6px}.form-actions{justify-content:flex-end;margin:2px 0 38px}.hero-search{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:9px 10px;margin-bottom:21px}.hero-search>span,.universal-search>div>span{color:#829198;font-size:18px}.hero-search input{border:0;box-shadow:none;flex:1;font-size:14px}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 4px 15px rgba(31,52,66,.04);padding:17px 18px;position:relative}.metric-card:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;background:#7ba4b7;border-radius:0 3px 3px 0}.metric-card span{display:block;color:#68767d;font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:750}.metric-card strong{display:block;font-size:25px;letter-spacing:-.02em;color:#2e414b;margin:6px 0 2px}.metric-card small{color:#89959a;font-size:11px}.dashboard-panels{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.column-chart{height:240px;display:flex;align-items:flex-end;gap:16px;padding:14px 6px 0}.column-item{height:100%;flex:1;display:grid;grid-template-rows:20px 1fr 20px 18px;text-align:center;gap:4px}.column-value{font-size:10px;color:#75838a;align-self:end}.column-track{height:100%;background:#f0f3f4;border-radius:5px 5px 2px 2px;position:relative;overflow:hidden}.column-fill{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(180deg,#7ea8ba,#557f92);border-radius:5px 5px 2px 2px;min-height:3px}.column-item strong{font-size:11px}.column-item small{font-size:10px;color:#8b969b}.status-chart{display:flex;flex-direction:column;gap:16px;padding-top:6px}.status-chart-row{display:grid;grid-template-columns:95px 1fr 34px;align-items:center;gap:10px}.status-chart-row>div:first-child{display:flex;justify-content:space-between;gap:6px;font-size:12px}.status-chart-row>div:first-child strong{color:#34464f}.status-track{height:9px;background:#eef2f3;border-radius:999px;overflow:hidden}.status-fill{height:100%;border-radius:999px;background:#789cac}.status-fill-accepted{background:#668f7a}.status-fill-declined{background:#a77a7a}.status-fill-expired{background:#8c9498}.status-fill-presented{background:#6e97a9}.status-fill-draft{background:#9ea9ae}.status-chart-row small{text-align:right;color:#78858b}.recent-list{display:flex;flex-direction:column}.recent-row{display:grid;grid-template-columns:2fr 1.1fr .8fr auto;gap:16px;align-items:center;padding:13px 3px;border-bottom:1px solid #edf1f2;text-decoration:none;color:var(--ink)}.recent-row:last-child{border-bottom:0}.recent-row>div:first-child span,td small{display:block;color:#89959a;font-size:10.5px;margin-top:2px}.status{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eef2f4;color:#58666d;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.035em}.status-accepted{background:#edf6f0;color:#347258}.status-declined{background:#fff1f1;color:#9a4141}.status-expired{background:#f0f1f2;color:#606b70}.status-presented{background:#eef5f8;color:#376f86}.status-draft{background:#f1f3f4;color:#667278}.universal-search{margin-bottom:12px}.universal-search>div{display:flex;align-items:center;border:1px solid #cfd9de;border-radius:8px;padding:0 10px}.universal-search>div input{border:0;box-shadow:none}.advanced-search{border-top:1px solid #edf1f2;border-bottom:1px solid #edf1f2;padding:11px 0;margin:13px 0}.advanced-search summary{cursor:pointer;font-weight:700;color:#4b5b63;font-size:12px}.advanced-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:14px}.filter-actions{display:flex;gap:8px;margin-top:14px}.toolbar{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;margin:19px 0 12px}.upload-button input{display:none}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{background:#fafbfb;color:#6a777d;font-size:10px;text-transform:uppercase;letter-spacing:.055em;text-align:left;padding:10px 8px;border-bottom:1px solid #dbe3e6;white-space:nowrap}td{padding:12px 8px;border-bottom:1px solid #edf1f2;vertical-align:middle;font-size:12.5px}tbody tr:hover{background:#fbfcfc}.strong-link{font-weight:750;text-decoration:none}.icon-btn{font-size:11px;font-weight:700;text-decoration:none;margin-right:8px}.danger-text{color:var(--danger)!important}.treatment-table input{min-width:72px}.treatment-table td:nth-child(3) input{min-width:190px}.row-remove{border:0;background:#fff1f1;color:#9c4040;border-radius:50%;width:28px;height:28px;font-size:18px;cursor:pointer}.hidden-delete{display:none}.live-totals{width:min(480px,100%);margin:20px 0 0 auto}.live-totals>div{display:flex;justify-content:space-between;padding:8px 2px;border-bottom:1px solid #e5eaec;font-size:12.5px}.live-totals .grand{font-size:16px;font-weight:750;border-top:2px solid #91adba;border-bottom:0;padding-top:11px}.live-totals.static{margin-top:18px}.detail-card{padding:20px 23px}.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.detail-grid>div>span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.055em;color:#718087;font-weight:750;margin-bottom:4px}.detail-grid>div>strong{display:block;font-size:13.5px}.detail-grid>div>small{display:block;color:#8a969b;font-size:10.5px;margin-top:2px}.expired-banner,.history-notice{padding:11px 14px;border-radius:7px;margin-bottom:17px;font-size:12px}.expired-banner{background:#fff3f3;border:1px solid #eccccc;color:#913d3d}.history-notice{background:#f1f6f8;border:1px solid #d6e4ea;color:#416271}.history-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.timeline{display:flex;flex-direction:column}.timeline-row{display:grid;grid-template-columns:18px 1fr;gap:8px;padding:10px 0;text-decoration:none;color:var(--ink);border-bottom:1px solid #edf1f2}.timeline-dot{width:9px;height:9px;border-radius:50%;background:#6d98aa;margin-top:5px}.timeline-row span,.timeline-row small{display:block;color:#7f8c92;font-size:10.5px;margin-top:2px}.permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.permission-grid>div{background:#fff;border:1px solid var(--line);border-radius:9px;padding:17px}.permission-grid p{color:var(--muted);font-size:12px;margin:5px 0 0}.settings-grid{display:grid;grid-template-columns:2fr .8fr;gap:18px}.brand-preview{text-align:center}.brand-preview img{max-width:180px;max-height:95px;object-fit:contain;margin:10px auto 18px;display:block}.brand-preview strong,.brand-preview span{display:block}.brand-preview span{color:var(--muted);font-size:12px}.logo-placeholder{height:90px;display:flex;align-items:center;justify-content:center;background:#f2f5f6;border:1px dashed #cdd8dc;border-radius:8px;color:#839097;margin-bottom:18px}.toggle-row{display:flex;gap:22px;margin:16px 0}.toggle-row label{font-size:12px}.toggle-row input{width:auto;min-height:0}.messages{margin-top:15px}.message{padding:10px 13px;border-radius:7px;margin-bottom:7px;font-size:12px;background:#eef3f5}.message-success{background:#edf7f0;color:#32694f}.message-error{background:#fff1f1;color:#913b3b}.message-warning{background:#fff7e9;color:#855d22}.empty-state{padding:24px;text-align:center;color:var(--muted)}.narrow{max-width:780px}.danger-card{border-left:4px solid var(--danger)}.notes-text{color:#4b5960}.login-body{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f3f5f6}.login-card{width:min(420px,calc(100% - 30px));background:#fff;border:1px solid var(--line);border-radius:11px;padding:30px;box-shadow:0 10px 35px rgba(31,52,68,.09)}.login-brand{color:var(--nav);margin-bottom:24px}.btn-full{width:100%}
@media(max-width:1080px){.advanced-grid{grid-template-columns:repeat(3,1fr)}.grid-4,.detail-grid{grid-template-columns:repeat(2,1fr)}.dashboard-panels,.settings-grid{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.container{width:min(100% - 24px,1220px)}.nav-wrap,.page-header{align-items:flex-start;flex-direction:column;padding:13px 0}.main-nav{gap:11px}.metric-grid,.grid-2,.grid-4,.detail-grid,.history-grid,.permission-grid,.advanced-grid{grid-template-columns:1fr}.recent-row{grid-template-columns:1fr}.toolbar{grid-template-columns:1fr}.column-chart{gap:8px}.span-2{grid-column:auto}}

@media print{.topbar,.page-header .actions,.messages{display:none!important}body{background:#fff}.container{width:100%;max-width:none}.card{box-shadow:none;break-inside:avoid}.page-header{margin-top:0}.page-header p{color:#555}}

/* v5.2 icon-first controls and signature */
.icon-btn,.btn.icon-btn{min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;font-size:19px;line-height:1;text-decoration:none;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}
.icon-btn:hover{background:#f3f6f7;border-color:#bfcbd1}
.icon-large{width:42px;height:42px;font-size:21px;padding:0}
.primary-icon{background:var(--blue)!important;color:#fff!important;border-color:var(--blue)!important}
.danger-icon{color:var(--danger)!important;border-color:#efcece!important;background:#fff7f7!important}
.icon-actions{gap:7px}
.signature-pad-wrap{background:#fff;border:1px solid #cbd5da;border-radius:9px;overflow:hidden;box-shadow:inset 0 0 0 1px #f2f4f5}
.signature-pad-wrap canvas{display:block;width:100%;height:220px;touch-action:none}
.signature-summary img{max-width:320px;max-height:100px;display:block;margin:8px 0;border-bottom:1px solid #9daab0}
.signature-summary div{display:flex;gap:18px;color:var(--muted);font-size:13px}


/* v5.3 — Clocktower Family Dental inspired visual refinement */
:root{
  --nav:#ffffff; --nav2:#ffffff; --accent:#5a91a8; --accent-dark:#3f748a;
  --olive:#95a26e; --olive-dark:#788653; --ink:#30383b; --muted:#6f7b7f;
  --line:#d3dde0; --line-strong:#aebdc3; --page:#f8f8f6; --white:#ffffff;
  --shadow:0 8px 24px rgba(42,65,72,.075);
}
body{background:var(--page);color:var(--ink)}
.topbar{background:#fff;color:var(--ink);border-bottom:1px solid #dce4e6;box-shadow:0 3px 14px rgba(43,64,70,.07);position:sticky;top:0;z-index:30}
.brand-accent{height:4px;background:linear-gradient(90deg,var(--accent) 0 72%,var(--olive) 72% 100%)}
.nav-wrap{min-height:82px}
.brand{color:var(--accent-dark);font-size:21px;font-weight:700}
.brand img{width:58px;height:52px;padding:0;background:transparent;border-radius:0}
.brand small{color:var(--olive-dark);font-size:10px;letter-spacing:.14em;font-weight:700}
.main-nav>a,.nav-dropdown>button{color:#465357;font-weight:700}
.main-nav>a:hover,.nav-dropdown>button:hover{color:var(--accent-dark)}
.main-nav>a{position:relative;padding:29px 0 25px}
.main-nav>a:after{content:"";position:absolute;left:0;right:0;bottom:18px;height:2px;background:var(--olive);transform:scaleX(0);transition:.18s}
.main-nav>a:hover:after{transform:scaleX(1)}
.nav-user{color:#68767b;border-left:1px solid #d6dfe2;display:inline-flex;align-items:center;gap:6px}
.nav-user svg,.nav-icon-link svg,.nav-icon-trigger svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nav-icon-link{padding:8px!important;color:#52646b!important}.nav-icon-link:after{display:none!important}
.nav-icon-trigger{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0!important;border:1px solid #c8d3d7!important;border-radius:8px!important;color:#52646b!important}
.nav-dropdown>div{top:44px;border-color:#ccd8dc;box-shadow:0 14px 32px rgba(35,55,63,.14)}
.page-header{margin-top:36px}.page-header h1{font-size:30px;color:#34464d}.eyebrow{color:var(--olive-dark)}
.card{border-color:#d7e0e3;border-radius:12px;box-shadow:var(--shadow)}
.metric-card{border-color:#d8e1e3;border-radius:11px}.metric-card:before{background:var(--olive)}
.metric-card strong{color:#38505a}
.column-fill{background:linear-gradient(180deg,#76a8bb,#4f8298)}
.status-fill{background:#7ca0ad}.status-fill-accepted{background:#8b9b67}.status-fill-declined{background:#aa7777}.status-fill-presented{background:#658fa1}
input,select,textarea{border-color:#bccbd0;background:#fff;box-shadow:inset 0 1px 2px rgba(40,60,67,.025)}
input:hover,select:hover,textarea:hover{border-color:#9fb3ba}
input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(90,145,168,.14)}
.btn-outline,.icon-btn,.btn.icon-btn{border:1px solid var(--line-strong)!important;background:#fff!important;color:#40545c!important;box-shadow:0 1px 2px rgba(35,55,63,.04)}
.icon-btn:hover,.btn-outline:hover{background:#f0f6f7!important;border-color:var(--accent)!important;color:var(--accent-dark)!important}
.icon-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.icon-large svg{width:20px;height:20px}
.primary-icon,.btn-primary{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}
.primary-icon:hover,.btn-primary:hover{background:var(--accent-dark)!important;border-color:var(--accent-dark)!important;color:#fff!important}
.danger-icon,.btn-danger{background:#fff8f7!important;color:#9d4949!important;border-color:#d7aaaa!important}
.sign-icon{background:#f5f7ef!important;color:var(--olive-dark)!important;border-color:#b9c39a!important}
.sign-icon:hover{background:#edf1e3!important;color:#65723f!important;border-color:var(--olive)!important}
.hero-search{border-color:#cbd7da;box-shadow:0 7px 22px rgba(42,65,72,.06)}
.search-leading{display:inline-flex;color:var(--accent)!important}.search-leading svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
th{background:#f4f6f5;color:#5c686c;border-bottom-color:#cbd6d9}tbody tr:hover{background:#f8fbfb}
.live-totals .grand{border-top-color:var(--olive)}
.status-accepted{background:#eef2e5;color:#66733e}.status-presented{background:#edf5f7;color:#32677c}
.signature-card{border-top:3px solid #b3c080}.signature-heading{margin-bottom:12px}.signature-heading h2{color:#3d4a4f}
.signature-empty{border:1px dashed #b7c5c9;border-radius:8px;background:#fafbf9;padding:24px;text-align:center;color:#788589;font-size:12px}
.signature-summary{padding-top:2px}.signature-summary img{border-bottom:1px solid #89989e;background:#fff}
.signature-label-row{display:flex;align-items:center;justify-content:space-between;margin:18px 0 8px}.signature-label-row>label{font-size:11px;font-weight:750;color:#5f6d74;text-transform:uppercase;letter-spacing:.055em}.signature-inline-actions{display:flex;gap:7px}
.signature-pad-wrap{border:1.5px solid #9fb2b8;background:#fff;box-shadow:inset 0 0 0 1px #edf1f2}.signature-hint{text-align:center;color:#869398;font-size:11px;padding:8px;border-top:1px solid #e3e9eb;background:#fafbfb}
.upload-button{border-color:#aebdc3!important;color:#40545c!important}.upload-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
@media print{.signature-card .icon-btn{display:none!important}}
/* v6 classic-theme additions: keeps the v5.3 visual language without Tailwind */
.compact-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:12px 10px;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#6d7d83;border-bottom:1px solid var(--line)}.data-table td{padding:13px 10px;border-bottom:1px solid #edf1f2;vertical-align:middle}.link-action{color:var(--blue);font-weight:700;text-decoration:none}.link-action:hover{text-decoration:underline}.subtle{color:var(--muted);font-size:13px}.form-actions-left{display:flex;gap:8px;align-items:center}.followup-note{max-width:380px;white-space:normal}.progress-line{height:7px;background:#edf1f2;border-radius:10px;overflow:hidden}.progress-line>span{display:block;height:100%;background:var(--blue);border-radius:10px}.classic-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.classic-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}@media(max-width:800px){.classic-grid-2,.classic-grid-3{grid-template-columns:1fr}.main-nav{gap:7px;flex-wrap:wrap}}

/* v6.2 workflow + visual polish */
.form-control{width:100%;border:1px solid #cbd5da;border-radius:8px;padding:10px 11px;font:inherit;background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(31,52,68,.03)}
.form-control:focus{outline:2px solid rgba(78,145,173,.14);border-color:var(--blue)}
.estimate-editor .card{padding:26px}.estimate-info-card{border-top:3px solid rgba(78,145,173,.55)}.treatment-entry-card{border-top:3px solid rgba(143,157,91,.55)}
.form-section-title p,.section-heading p{margin:3px 0 0;color:var(--muted);font-size:13px}.read-only-field small{display:block;margin-top:4px;color:var(--muted);font-weight:400}.estimate-id-badge{display:inline-block;margin-top:7px;padding:3px 8px;border-radius:999px;background:#f0f3f4;color:#64737a;font-size:11px;font-weight:700}
.treatment-table th{white-space:nowrap}.treatment-table input{min-width:88px}.treatment-table input.procedure-code{min-width:92px;text-transform:uppercase;font-weight:700}.treatment-table input.procedure-description{min-width:210px}.treatment-row.code-match input.procedure-code{border-color:#79a98d;background:#f5fbf7}.row-remove{width:30px;height:30px;border-radius:7px;border:1px solid #e2c5c5;background:#fff7f7;color:#a33a3a;cursor:pointer;font-size:18px}.row-remove:hover{background:#ffeded}
.account-estimate-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(90deg,#f7fafb,#fff);border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:10px;padding:18px 20px;margin-bottom:24px}.account-estimate-callout strong{display:block;font-size:15px}.account-estimate-callout span{display:block;color:var(--muted);font-size:13px;margin-top:4px}
.search-card{padding-bottom:20px}.search-actions{margin-top:16px}.table-id{display:inline-block;min-width:34px;text-align:center;padding:4px 7px;border-radius:6px;background:#f1f4f5;color:#65737a;font-size:11px;font-weight:800}
.data-tools{padding:0;overflow:hidden}.data-tools summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:16px 20px;cursor:pointer;background:#fafbfb}.data-tools summary::-webkit-details-marker{display:none}.data-tools summary strong{display:block}.data-tools summary small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.data-tools-chevron{font-size:20px;color:var(--muted);transition:transform .2s}.data-tools[open] .data-tools-chevron{transform:rotate(180deg)}.data-tools-content{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line)}.import-tool,.export-tool{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:18px 20px}.import-tool{border-right:1px solid var(--line)}.import-tool strong,.export-tool strong{display:block}.import-tool span,.export-tool span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.file-picker{position:relative;display:inline-flex;align-items:center;justify-content:center}.file-picker input{position:absolute;inset:0;opacity:0;cursor:pointer}.file-picker>span{margin:0!important;padding:9px 12px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink)!important;font-weight:700;white-space:nowrap}
@media(max-width:900px){.data-tools-content{grid-template-columns:1fr}.import-tool{border-right:0;border-bottom:1px solid var(--line)}.import-tool,.export-tool{grid-template-columns:1fr}}

/* v6.3 public landing page and visible tenant administration */
.landing-page{background:#fff;color:var(--ink)}
.landing-header{background:#fff;border-bottom:1px solid var(--line)}
.landing-nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.landing-brand{display:flex;align-items:center;gap:13px;color:var(--ink);text-decoration:none}
.landing-brand strong{display:block;font-size:17px}.landing-brand small{display:block;margin-top:3px;color:var(--muted);font-size:11px;letter-spacing:.04em}
.brand-mark{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--blue);color:#fff;font-weight:800;letter-spacing:.04em}
.landing-hero{padding:78px 0 72px;background:linear-gradient(180deg,#fbfcfc 0%,#f5f7f7 100%);border-bottom:1px solid var(--line)}
.landing-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}
.landing-hero h1{font-size:48px;line-height:1.08;letter-spacing:-.035em;max-width:720px;margin:11px 0 20px;color:#263d49}
.landing-lead{font-size:18px;line-height:1.65;color:#627179;max-width:680px}
.landing-actions{margin:28px 0 18px}.btn-large{padding:13px 20px;font-size:15px}
.landing-trust{font-size:12px;color:#879299}
.landing-preview{background:#fff;border:1px solid #d5dfe3;border-radius:14px;box-shadow:0 22px 55px rgba(33,61,75,.11);overflow:hidden}
.preview-top{height:42px;background:#f2f5f6;border-bottom:1px solid var(--line);display:flex;gap:6px;align-items:center;padding:0 15px}.preview-top span{width:8px;height:8px;border-radius:50%;background:#bdc9ce}
.preview-body{padding:26px}.preview-heading,.preview-patient,.preview-line,.preview-total{display:flex;justify-content:space-between;gap:18px}.preview-heading small,.preview-patient span{display:block;color:var(--muted);font-size:11px}.preview-heading strong{font-size:20px}.preview-patient{padding:20px 0;border-bottom:1px solid var(--line);flex-direction:column;gap:3px}.preview-line{padding:14px 0;border-bottom:1px solid #edf1f2;font-size:13px}.preview-total{padding:19px 0 3px;font-size:16px}.preview-total strong{color:var(--blue-dark)}
.landing-features{padding:72px 0}.landing-section-title{max-width:650px;margin-bottom:30px}.landing-section-title h2,.tenancy-callout h2{font-size:30px;margin:8px 0 0;color:#293f4a}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature-grid article{border:1px solid var(--line);border-radius:11px;padding:24px;background:#fff}.feature-grid h3{margin:15px 0 8px;font-size:17px}.feature-grid p{color:var(--muted);line-height:1.6;font-size:13px}.feature-icon{font-size:11px;font-weight:800;color:var(--blue);letter-spacing:.08em}
.landing-tenancy{padding:0 0 72px}.tenancy-callout{background:#263f4b;color:#fff;border-radius:14px;padding:42px;display:grid;grid-template-columns:1.4fr .6fr;gap:45px;align-items:center}.tenancy-callout h2{color:#fff}.tenancy-callout p{color:#cdd8dd;line-height:1.65}.tenant-stack{display:flex;flex-direction:column;gap:9px}.tenant-stack div{background:#fff;color:#334852;border-radius:8px;padding:12px 16px;font-weight:700;font-size:13px}.landing-footer{border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:12px;background:#fafbfb}
.tenant-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tenant-card{margin:0}.tenant-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.tenant-card-head h2{font-size:19px;margin:5px 0 18px}.tenant-account{font-size:11px;color:var(--blue-dark);font-weight:800;letter-spacing:.05em}.tenant-metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0}.tenant-metrics div{text-align:center;border-right:1px solid var(--line)}.tenant-metrics div:last-child{border-right:0}.tenant-metrics strong{display:block;font-size:20px;color:#304957}.tenant-metrics span{font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}.tenant-note{font-size:11px;color:var(--muted);padding-top:13px}
@media(max-width:850px){.landing-hero-grid,.tenancy-callout{grid-template-columns:1fr}.feature-grid,.tenant-summary-grid{grid-template-columns:1fr}.landing-hero h1{font-size:38px}}
@media(max-width:600px){.landing-nav{align-items:flex-start;flex-direction:column;padding:16px 0}.landing-hero{padding:50px 0}.landing-hero h1{font-size:34px}.feature-grid{grid-template-columns:1fr}.tenant-metrics{grid-template-columns:repeat(2,1fr);row-gap:14px}}

/* v6.4 graphical landing + public signup */
.landing-menu{display:flex;gap:24px}.landing-menu a{color:#53646c;text-decoration:none;font-size:13px;font-weight:700}.landing-menu a:hover{color:var(--blue-dark)}
.graphical-hero{padding:70px 0 66px;background:radial-gradient(circle at 75% 25%,#e8f4f7 0,#f7f9fa 33%,#fff 70%)}
.hero-copy h1{font-size:50px;line-height:1.06;letter-spacing:-.04em;margin:10px 0 20px;color:#253b48}.hero-checks{display:grid;grid-template-columns:1fr 1fr;gap:9px 20px;margin:24px 0;color:#40545e;font-size:13px}.hero-checks span{display:block}.hero-visual-card{background:#fff;border:1px solid #d8e1e5;border-radius:16px;padding:12px;box-shadow:0 24px 55px rgba(35,67,82,.13)}.hero-visual-card img{display:block;width:100%;height:auto;border-radius:10px}.landing-tooth-logo{width:46px;height:46px;border:3px solid var(--blue);border-radius:20px 20px 26px 26px;display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:24px;font-weight:900;transform:rotate(180deg)}
.feature-symbol{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#edf6f8;color:var(--blue-dark);font-size:22px;font-weight:800}.landing-product{padding:68px 0;background:#f7f9fa;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.product-grid h2{font-size:31px;margin:8px 0 25px;color:#2a404c}.workflow-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:17px}.workflow-steps li{display:flex;gap:14px;align-items:flex-start}.workflow-steps b{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--blue);color:#fff;font-size:12px}.workflow-steps span{display:flex;flex-direction:column;gap:4px}.workflow-steps small{color:var(--muted);line-height:1.45}.product-mock{background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 14px 35px rgba(31,58,70,.08);padding:20px}.mock-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:15px}.mock-header span{font-size:11px;color:var(--muted)}.mock-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mock-stats div{background:#f7f9fa;border:1px solid #e4e9eb;border-radius:8px;padding:12px}.mock-stats small{display:block;color:var(--muted);font-size:10px}.mock-stats strong{font-size:22px}.mock-chart{height:190px;margin-top:20px;display:flex;align-items:flex-end;gap:13px;padding:15px 10px 0;border-left:1px solid #e5eaed;border-bottom:1px solid #e5eaed}.mock-chart span{flex:1;background:linear-gradient(180deg,#4e91ad,#36778f);border-radius:5px 5px 0 0}.btn-light{background:#fff;color:#29414e;border:1px solid #fff}.tenant-stack div{display:flex;flex-direction:column;gap:3px}.tenant-stack div span{font-size:11px;color:#70818a}.footer-row{display:flex;justify-content:space-between;gap:20px}
.signup-page{background:#f5f7f8;min-height:100vh}.signup-shell{width:min(1120px,calc(100% - 36px));margin:55px auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;align-items:start}.signup-intro{padding:38px 10px}.signup-intro h1{font-size:42px;line-height:1.08;margin:10px 0 18px;color:#273f4b}.signup-intro p{color:var(--muted);font-size:16px;line-height:1.65}.signup-benefits{display:grid;gap:10px;margin-top:28px;color:#42565f;font-size:13px}.signup-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:28px;box-shadow:0 12px 34px rgba(31,56,68,.08)}.signup-card h2{margin-bottom:22px}.span-two{grid-column:1/-1}.signup-login{text-align:center;color:var(--muted);font-size:12px;margin:16px 0 0}.success-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:30px}.success-card{max-width:580px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:42px;text-align:center;box-shadow:0 14px 38px rgba(31,56,68,.08)}.success-mark{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;background:#eaf6ef;color:#2e7455;font-size:26px;font-weight:800}.success-card h1{font-size:28px}.success-card p{color:var(--muted);line-height:1.65}.center-actions{justify-content:center;margin-top:24px}.request-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px}.request-summary span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.04em}.request-summary .span-all{grid-column:1/-1}.signup-request-table{margin-top:28px}
@media(max-width:900px){.landing-menu{display:none}.product-grid,.signup-shell{grid-template-columns:1fr}.hero-copy h1{font-size:41px}.hero-checks{grid-template-columns:1fr}}
@media(max-width:650px){.graphical-hero{padding:45px 0}.hero-copy h1{font-size:34px}.footer-row{flex-direction:column}.signup-shell{margin:28px auto}.signup-intro{padding:10px 0}.signup-intro h1{font-size:34px}}

/* v6.5 — Duralux-inspired application shell (original implementation, no copied assets/code) */
:root{--sidebar-w:252px;--d-bg:#f5f7fb;--d-card:#fff;--d-border:#e8edf2;--d-text:#28323c;--d-muted:#7b8794;--d-accent:#4f67f6;--d-accent-soft:#eef1ff;--d-shadow:0 2px 8px rgba(31,45,61,.045)}
.app-body{background:var(--d-bg);color:var(--d-text)}
.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr)}
.app-sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--d-border);display:flex;flex-direction:column;padding:18px 14px 14px;z-index:20}
.sidebar-brand{display:flex;align-items:center;gap:11px;padding:4px 9px 21px;text-decoration:none;color:var(--d-text);border-bottom:1px solid #f0f2f5;margin-bottom:14px}.sidebar-brand img,.sidebar-logo-mark{width:38px;height:38px;border-radius:50%;object-fit:contain;background:var(--d-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}.sidebar-brand strong{display:block;font-size:14px;max-width:155px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-brand small{display:block;font-size:9px;color:var(--d-muted);text-transform:uppercase;letter-spacing:.08em;margin-top:2px}.sidebar-section-label{font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#a1aab4;padding:12px 12px 7px}.sidebar-nav{display:flex;flex-direction:column;gap:3px}.sidebar-nav a{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:7px;text-decoration:none;color:#5f6b78;font-size:12.5px;font-weight:600}.sidebar-nav a:hover{background:#f6f7fb;color:#2e3a47}.sidebar-nav a:focus{background:var(--d-accent-soft);color:var(--d-accent)}.side-icon{width:19px;text-align:center;font-size:15px;color:#7c8794}.sidebar-footer{margin-top:auto;border-top:1px solid #f0f2f5;padding:14px 8px 2px;display:grid;grid-template-columns:34px 1fr 22px;align-items:center;gap:9px}.sidebar-user-avatar{width:34px;height:34px;border-radius:50%;background:#edf1f5;color:#52606d;display:flex;align-items:center;justify-content:center;font-weight:800}.sidebar-footer strong{display:block;font-size:11px}.sidebar-footer small{display:block;font-size:9px;color:var(--d-muted)}.sidebar-footer a{color:#7d8995}.sidebar-footer svg{width:17px;height:17px}
.app-main{min-width:0}.app-topbar{height:64px;background:#fff;border-bottom:1px solid var(--d-border);display:flex;align-items:center;justify-content:space-between;padding:0 26px;position:sticky;top:0;z-index:15}.topbar-left,.topbar-actions{display:flex;align-items:center;gap:16px}.sidebar-toggle{border:0;background:transparent;color:#7b8794;font-size:18px;cursor:pointer}.topbar-practice{font-size:12px;color:#87919c}.topbar-search{width:34px;height:34px;border:1px solid var(--d-border);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#687482;background:#fff}.topbar-search svg{width:15px;height:15px}.topbar-user{font-size:11px;font-weight:700;color:#52606d}.app-content{width:auto;max-width:none;margin:0;padding:24px 26px}.app-content>.container,.app-content main.container{width:100%;max-width:none;margin:0;padding:0}.app-content .page-header{margin:0 0 20px;align-items:center}.app-content .page-header h1{font-size:22px;font-weight:700;letter-spacing:-.02em}.app-content .page-header p{font-size:11.5px;color:var(--d-muted)}
.app-content .card{border:1px solid var(--d-border);border-radius:6px;box-shadow:var(--d-shadow);padding:19px;background:#fff}.app-content .metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.app-content .metric-card{border:1px solid var(--d-border);border-radius:6px;box-shadow:var(--d-shadow);padding:18px;background:#fff}.app-content .metric-card:before{display:none}.app-content .metric-card span{font-size:10px;color:#8b95a1}.app-content .metric-card strong{font-size:24px;color:#2f3944}.app-content .metric-card small{font-size:10px}.app-content .dashboard-panels{grid-template-columns:1.45fr 1fr;gap:16px}.app-content .section-heading h2,.app-content .card h2{font-size:14px}.app-content .section-heading p{font-size:10.5px}.app-content .column-fill{background:linear-gradient(180deg,#7385ff,#5267ee)}.app-content .status-fill{background:#8a98a9}.app-content .status-fill-accepted{background:#70b38d}.app-content .status-fill-declined{background:#d98484}.app-content .status-fill-presented{background:#6f85f6}.app-content .recent-row{padding:11px 2px;font-size:11.5px}.app-content .status{border-radius:4px;padding:4px 7px;font-size:9px}.app-content .hero-search{border-radius:6px;box-shadow:none;border:1px solid var(--d-border);padding:6px 8px}.app-content .search-card{padding:18px}.app-content input,.app-content select,.app-content textarea{border-color:#dfe5ea;border-radius:5px;min-height:36px;font-size:12px}.app-content input:focus,.app-content select:focus,.app-content textarea:focus{border-color:#8290f6;box-shadow:0 0 0 3px rgba(79,103,246,.09)}.app-content .btn,.app-content .icon-btn{border-radius:5px}.app-content .btn-primary,.app-content .primary-icon{background:var(--d-accent)!important;border-color:var(--d-accent)!important}.app-content table{font-size:11.5px}.app-content th{background:#fafbfc;color:#89939f;font-size:9px;padding:10px 9px;border-bottom:1px solid var(--d-border)}.app-content td{padding:11px 9px;border-bottom:1px solid #f0f2f5}.app-content tr:hover td{background:#fbfcfe}.app-content .data-tools{padding:0;overflow:hidden}.app-content .data-tools summary{padding:15px 18px;background:#fff}.app-content .data-tools-content{border-top:1px solid var(--d-border)}
.sidebar-collapsed .app-shell{grid-template-columns:78px minmax(0,1fr)}.sidebar-collapsed .sidebar-brand span:last-child,.sidebar-collapsed .sidebar-nav a span:last-child,.sidebar-collapsed .sidebar-section-label,.sidebar-collapsed .sidebar-footer>div:nth-child(2){display:none}.sidebar-collapsed .sidebar-nav a{justify-content:center}.sidebar-collapsed .sidebar-brand{justify-content:center}.sidebar-collapsed .sidebar-footer{grid-template-columns:34px 22px;justify-content:center}
@media(max-width:980px){.app-shell{grid-template-columns:78px minmax(0,1fr)}.sidebar-brand span:last-child,.sidebar-nav a span:last-child,.sidebar-section-label,.sidebar-footer>div:nth-child(2){display:none}.sidebar-nav a{justify-content:center}.sidebar-brand{justify-content:center}.sidebar-footer{grid-template-columns:34px 22px;justify-content:center}.app-content .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.app-shell{display:block}.app-sidebar{display:none}.app-content{padding:18px 14px}.app-content .metric-grid,.app-content .dashboard-panels{grid-template-columns:1fr}.topbar-user{display:none}}


/* v7 — Navy Duralux-style sidebar and control cleanup */
:root{
  --sidebar-navy:#17395c;
  --sidebar-navy-deep:#102b46;
  --sidebar-text:#d9e6f2;
  --sidebar-muted:#92abc0;
  --sidebar-active:#2f7693;
  --sidebar-hover:rgba(255,255,255,.075);
}

/* Strong navy sidebar with visible icons/text */
.app-sidebar{
  background:linear-gradient(180deg,var(--sidebar-navy) 0%,var(--sidebar-navy-deep) 100%);
  border-right:0;
  box-shadow:3px 0 16px rgba(20,45,69,.09);
}
.sidebar-brand{
  color:#fff;
  border-bottom-color:rgba(255,255,255,.11);
}
.sidebar-brand strong{color:#fff}
.sidebar-brand small{color:#a9bfd1}
.sidebar-logo-mark{
  background:#fff;
  color:var(--sidebar-navy);
}
.sidebar-section-label{color:#819cb3}
.sidebar-nav a{color:var(--sidebar-text)}
.sidebar-nav a:hover{
  background:var(--sidebar-hover);
  color:#fff;
}
.sidebar-nav a:focus,
.sidebar-nav a.active{
  background:rgba(57,143,176,.22);
  color:#fff;
}
.side-icon{
  width:20px;
  height:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#b9cee0;
  flex:0 0 20px;
}
.side-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  display:block;
}
.sidebar-nav a:hover .side-icon,
.sidebar-nav a:focus .side-icon{color:#fff}
.sidebar-footer{
  border-top-color:rgba(255,255,255,.11);
}
.sidebar-user-avatar{
  background:rgba(255,255,255,.13);
  color:#fff;
}
.sidebar-footer strong{color:#fff}
.sidebar-footer small{color:#9fb6c9}
.sidebar-footer a{color:#bcd0df}
.sidebar-footer svg{stroke:currentColor}

/* More consistent action sizes; no invisible white-outline actions */
.app-content .icon-btn,
.app-content .btn{
  min-height:36px;
  border-width:1px;
  border-color:#d4dde5;
  box-shadow:none;
}
.app-content .icon-btn{
  min-width:36px;
  color:#485966;
  background:#fff;
}
.app-content .icon-btn svg{
  width:17px;
  height:17px;
  display:block;
  stroke:currentColor;
  fill:none;
}
.app-content .icon-btn:hover{
  background:#f2f5f7;
  border-color:#bfcbd4;
  color:#263b48;
}
.app-content .btn-primary{
  min-width:112px;
  padding:9px 16px;
  background:#326f89!important;
  border-color:#326f89!important;
  color:#fff!important;
}
.app-content .btn-primary:hover{
  background:#285d74!important;
  border-color:#285d74!important;
}
.app-content .form-actions{
  gap:10px;
}

/* Tenant/platform notices */
.tenant-mode-note,
.tenant-architecture-banner{
  border:1px solid #dce6ec;
  background:#f6fafc;
  color:#526874;
  border-radius:6px;
  padding:11px 13px;
  font-size:11px;
  line-height:1.55;
  margin-bottom:16px;
}
.tenant-architecture-banner{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 18px;
}
.tenant-architecture-banner strong{
  color:#245e78;
  white-space:nowrap;
}
.tenant-card h2 small{
  display:block;
  margin-top:5px;
  color:#7d8d98;
  font-size:10px;
  font-weight:500;
}

/* Platform topbar keeps a clear identity if no dental practice is selected */
.app-topbar{
  box-shadow:0 1px 3px rgba(31,45,61,.025);
}

/* v7.0.2 platform administration */
.tenant-admin-action{margin-top:20px}
.tenant-help{margin-top:10px;font-size:11px;line-height:1.5}
.password-reset-inline{display:flex;gap:8px;align-items:center}
.password-reset-inline input{min-width:180px;max-width:240px}
.tenant-card-actions{display:flex;justify-content:flex-end;margin-top:13px}
@media(max-width:700px){.password-reset-inline{align-items:stretch;flex-direction:column}.password-reset-inline input{max-width:none;width:100%}}


/* v7.1 Demo + Follow-up */
.btn-demo{background:#edf7f4!important;color:#27695c!important;border:1px solid #b9dcd2!important}
.btn-demo:hover{background:#e1f1ec!important;border-color:#96c9ba!important}
.followup-type-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}
.followup-type-card{display:block;border:1px solid var(--line);border-radius:8px;padding:16px;text-decoration:none;color:var(--ink);background:#fbfcfc}
.followup-type-card:hover{border-color:#8eb4c5;background:#f6fafb}
.followup-type-card strong{display:block;font-size:14px;margin-bottom:5px;color:#2e5366}
.followup-type-card span{display:block;font-size:11px;line-height:1.5;color:var(--muted)}
.field-span-2{grid-column:span 2}
.public-link-preview{background:#f6f8f9;border:1px solid var(--line);border-radius:7px;padding:12px 14px;margin:8px 0 20px}
.public-link-preview span{display:block;font-size:10px;font-weight:800;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.public-link-preview code{font-size:11px;word-break:break-all;color:#315f74}
.table-subtext{display:block;color:var(--muted);font-size:10px;margin-top:3px}
.followup-error{display:block;color:#9b3c3c;font-size:10px;margin-top:4px;max-width:260px}
.followup-estimate-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #edf1f2}
.followup-estimate-row:last-child{border-bottom:0}
.followup-estimate-row>div:first-child span{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.public-estimate-page{background:#f4f6f7;color:var(--ink);padding:36px 16px}
.public-estimate-shell{max-width:900px;margin:0 auto}
.public-estimate-header{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.public-estimate-header img{max-width:82px;max-height:52px;object-fit:contain}
.public-estimate-header strong{display:block;font-size:17px;color:#2d4653}
.public-estimate-header span{display:block;font-size:11px;color:var(--muted);margin-top:2px}
.public-estimate-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px;box-shadow:0 10px 30px rgba(31,52,68,.06)}
.public-estimate-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}
.public-estimate-title span:first-child{font-size:10px;text-transform:uppercase;font-weight:800;color:var(--muted)}
.public-estimate-title h1{font-size:28px;margin:4px 0 0}
.public-estimate-contact{margin-top:24px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.status-due{background:#fff6e7;color:#8a5b14}
.status-sent{background:#edf6f0;color:#327054}
.status-failed{background:#fff0f0;color:#9a3636}
.status-cancelled{background:#f1f3f4;color:#68757c}
@media(max-width:700px){
  .followup-type-shortcuts{grid-template-columns:1fr}
  .field-span-2{grid-column:auto}
  .followup-estimate-row{align-items:flex-start;flex-direction:column}
}


/* v7.2 Enterprise foundation */
.support-banner{background:#fff2cc;border-bottom:1px solid #e3c96e;color:#5f4b13;padding:9px 18px;font-size:12px}
.support-banner a{color:#5f4b13;font-weight:800;margin-left:8px}
.security-policy-banner{background:#fff7e9;border-bottom:1px solid #edd7a4;color:#725621;padding:9px 18px;font-size:11px}
.security-notice{background:#f6fafc;border:1px solid #d8e5eb;border-radius:7px;padding:13px 15px;margin-bottom:18px;color:#526773}
.security-notice strong{display:block;color:#2f586b;margin-bottom:4px}.security-notice p{margin:0;font-size:11px;line-height:1.55}
.tier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tier-card{margin:0}.tier-quota{display:flex;align-items:baseline;gap:8px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.tier-quota strong{font-size:28px;color:#2f6077}.tier-quota span{color:var(--muted);font-size:11px}
.feature-list{padding:12px 0}.feature-list div{display:flex;justify-content:space-between;gap:15px;padding:5px 0;font-size:11px;border-bottom:1px solid #f0f2f3}.feature-list div:last-child{border-bottom:0}
.subscription-summary{background:#f6f8f9;border:1px solid var(--line);border-radius:6px;padding:10px 12px;font-size:11px;margin:8px 0 14px}
.insurance-rule-block{padding:14px 0;border-bottom:1px solid var(--line)}.insurance-rule-block:last-child{border-bottom:0}
.rule-chips{display:flex;gap:7px;flex-wrap:wrap}.rule-chips span{display:inline-flex;background:#f2f6f7;border:1px solid #dce5e9;border-radius:14px;padding:5px 9px;font-size:10px;color:#526b76}
.field-required{background:#fffaf1!important}.field-required input{border-color:#d9b96c!important}
.treatment-table .surface-cell,.treatment-table .quadrant-cell{min-width:90px}
@media(max-width:1000px){.tier-grid{grid-template-columns:1fr}}


/* v7.3 Customer Admin Analytics */
.sidebar-logout-form{margin:0 0 0 auto}
.sidebar-logout-btn{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:6px;cursor:pointer;padding:7px;border-radius:6px;font:inherit}
.sidebar-logout-btn:hover{background:rgba(255,255,255,.08)}
.sidebar-logout-btn svg{width:16px;height:16px}.sidebar-logout-btn span{font-size:10px;font-weight:700}
.analytics-dashboard{max-width:1480px}
.dashboard-header{align-items:flex-end}
.dashboard-filter-card{padding:14px 18px}
.dashboard-filter-form{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.dashboard-filter-form .field{margin:0;min-width:150px}
.dashboard-filter-submit{min-width:auto!important}
.dashboard-range-caption{margin-left:auto;display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px;padding-bottom:10px}
.custom-date-field.is-hidden{display:none}
.analytics-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.analytics-metric-grid .metric-card strong{font-size:22px}
.analytics-panels{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.analytics-card{min-width:0}
.analytics-card-wide{grid-column:auto}
.morris-chart{height:300px;min-height:300px}
.bar-chart{height:320px;min-height:320px}
.donut-chart{height:235px;min-height:235px}
.chart-empty{height:100%;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:11px;background:#fafcfc;border:1px dashed var(--line);border-radius:8px}
.chart-legend{display:grid;gap:4px;margin-top:8px}
.chart-legend>div{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;border-bottom:1px solid #edf1f2;padding:6px 0;font-size:10px}
.chart-legend>div:last-child{border-bottom:0}.chart-legend span{color:#4a626d}.chart-legend strong{color:#2f6077}.chart-legend small{color:var(--muted)}
.financial-mix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-top:10px}
.financial-mix.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}
.financial-mix>div{background:#f7f9fa;border:1px solid #e3e9ec;border-radius:8px;padding:20px}
.financial-mix span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.04em}
.financial-mix strong{display:block;color:#2f5e73;font-size:23px;margin-top:8px}
.analytics-dashboard .status{white-space:nowrap}
.morris-hover{font-family:inherit!important;font-size:11px!important}
@media(max-width:1100px){
  .analytics-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .analytics-panels{grid-template-columns:1fr}
}
@media(max-width:700px){
  .analytics-metric-grid{grid-template-columns:1fr}
  .dashboard-filter-form{align-items:stretch;flex-direction:column}
  .dashboard-filter-form .field{width:100%}
  .dashboard-range-caption{margin-left:0;padding:0}
  .financial-mix,.financial-mix.three-up{grid-template-columns:1fr}
  .morris-chart{height:260px;min-height:260px}
}

/* Consistent estimate status badges */
.status-draft{background:#f1f3f4;color:#596a72}
.status-pending{background:#fff6e7;color:#8a5b14}
.status-presented{background:#eef5fb;color:#3d6884}
.status-accepted{background:#edf6f0;color:#327054}
.status-complete{background:#e9f5f2;color:#286958}
.status-declined{background:#fff0f0;color:#9a3636}
.status-expired{background:#f2f2f3;color:#6f7378}


/* v7.4 Dentura branding + tenant page editor/theme */
.app-body{background:var(--tenant-page-bg,#f5f7f8)}
.app-sidebar{background:var(--tenant-sidebar,#173b57)!important;color:var(--tenant-sidebar-text,#fff)}
.app-sidebar a,.app-sidebar .sidebar-section-label,.sidebar-user-avatar{color:var(--tenant-sidebar-text,#fff)}
.btn-primary,.primary-icon{background:var(--tenant-accent,#2a7c9c)!important;border-color:var(--tenant-accent,#2a7c9c)!important}
.status-presented{background:var(--tenant-accent-soft,#eaf4f7);color:var(--tenant-accent,#2a7c9c)}
.card,.metric-card{border-radius:var(--tenant-radius,8px)}
.dentura-sidebar-logo{width:105px!important;height:38px!important;object-fit:contain!important;object-position:left center!important;background:#fff;border-radius:5px;padding:3px 5px}
.compact-navigation .sidebar-nav a{padding-top:7px;padding-bottom:7px}
.analytics-error{align-self:flex-end;background:#fff0f0;border:1px solid #efc7c7;color:#8c3838;border-radius:6px;padding:9px 12px;font-size:11px;max-width:420px}
.reduced-charts .morris-chart{height:260px;min-height:260px}

/* Product and tenant landing pages */
.dentura-public-body,.tenant-public-body{margin:0;background:#f8fafb;color:#263842;font-family:Inter,Segoe UI,Arial,sans-serif}
.dentura-public-nav,.tenant-public-nav{height:74px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 max(5vw,32px);background:#fff;border-bottom:1px solid #e5ebee}
.dentura-public-nav nav,.tenant-public-nav nav{display:flex;align-items:center;gap:10px}
.dentura-public-nav nav>a:not(.btn),.tenant-public-nav nav>a{font-size:12px;font-weight:700;color:#43606d;text-decoration:none}
.dentura-public-brand img{width:245px;max-height:58px;object-fit:contain;object-position:left center}
.tenant-public-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#294652;font-weight:800}
.tenant-public-brand img{width:125px;max-height:50px;object-fit:contain}
.dentura-hero,.tenant-hero{max-width:1320px;margin:0 auto;min-height:530px;padding:70px 5vw;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.dentura-hero-copy h1,.tenant-hero-copy h1{font-size:52px;line-height:1.04;letter-spacing:-.035em;color:#263b45;margin:12px 0 18px;max-width:720px}
.dentura-hero-copy p,.tenant-hero-copy p{font-size:17px;line-height:1.65;color:#64777f;max-width:680px;margin:0 0 28px}
.dentura-hero-brand{background:#fff;border:1px solid #e3eaed;border-radius:24px;box-shadow:0 20px 60px rgba(32,69,86,.09);padding:50px}
.dentura-hero-brand img{display:block;width:100%}
.dentura-feature-grid,.tenant-feature-grid{max-width:1180px;margin:0 auto 80px;padding:0 5vw;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.dentura-feature-grid article,.tenant-feature-grid article{background:#fff;border:1px solid #e3eaed;border-radius:12px;padding:28px;box-shadow:0 8px 25px rgba(45,78,91,.04)}
.dentura-feature-grid strong,.tenant-feature-grid strong{display:block;color:#285c73;font-size:16px;margin-bottom:9px}
.dentura-feature-grid p,.tenant-feature-grid p{margin:0;color:#687c84;font-size:13px;line-height:1.6}
.dentura-public-footer{text-align:center;border-top:1px solid #e2e9ec;padding:24px;color:#7f8e94;font-size:11px;background:#fff}
.tenant-hero-art{min-height:360px;display:flex;align-items:center;justify-content:center}
.tenant-hero-art>img{max-width:100%;max-height:440px;border-radius:18px;box-shadow:0 20px 60px rgba(35,66,80,.12)}
.tenant-estimate-visual{width:80%;max-width:420px;background:linear-gradient(145deg,#e8f4f7,#dcecf1);padding:34px;border-radius:26px;transform:rotate(2deg)}
.mini-card{background:#fff;border-radius:15px;padding:30px;box-shadow:0 16px 35px rgba(31,71,88,.12)}
.mini-card span{display:block;font-size:10px;text-transform:uppercase;color:#77919d;font-weight:800}.mini-card strong{display:block;font-size:22px;line-height:1.25;color:#294e5e;margin:10px 0 22px}
.mini-card i{display:block;height:9px;background:#edf2f4;border-radius:10px;margin:10px 0}.mini-card i:nth-of-type(2){width:76%}.mini-card i:nth-of-type(3){width:54%}
.tenant-intro{max-width:800px;text-align:center;margin:0 auto 42px;padding:0 30px}.tenant-intro h2{font-size:32px;margin:8px 0 12px}.tenant-intro p{font-size:15px;line-height:1.7;color:#677b84}
.tenant-landing-disabled{max-width:700px;margin:110px auto;padding:50px;text-align:center;background:#fff;border:1px solid #e3eaed;border-radius:14px}

/* Theme editor */
.theme-preview{margin:20px 0;display:grid;grid-template-columns:160px 1fr;min-height:160px;border:1px solid #dfe7ea;border-radius:8px;overflow:hidden}
.theme-preview-sidebar{padding:22px;font-weight:800}.theme-preview-sidebar small{font-weight:400;opacity:.75}.theme-preview-main{padding:26px}.theme-preview-main span{display:block;width:90px;height:8px;border-radius:10px;margin-bottom:22px}
.settings-section h2{font-size:15px;color:#365765;margin-bottom:16px}

/* Dentura login */
.dentura-login-card{max-width:410px}.dentura-login-logo{text-align:center;margin-bottom:18px}.dentura-login-logo img{max-width:280px;max-height:92px;object-fit:contain}
.dentura-login-card h1{text-align:center}.dentura-login-card>p{text-align:center}.login-back-link{display:block;text-align:center;margin-top:18px;font-size:11px;color:#527384;text-decoration:none}

@media(max-width:900px){
 .dentura-hero,.tenant-hero{grid-template-columns:1fr;padding-top:46px}.dentura-hero-copy h1,.tenant-hero-copy h1{font-size:40px}
 .dentura-feature-grid,.tenant-feature-grid{grid-template-columns:1fr}.dentura-public-brand img{width:190px}
}
@media(max-width:650px){
 .dentura-public-nav,.tenant-public-nav{padding:0 18px}.dentura-public-nav .btn-outline,.dentura-public-nav nav>a:not(.btn){display:none}
 .dentura-public-brand img{width:160px}.dentura-hero,.tenant-hero{padding:42px 22px}.dentura-hero-copy h1,.tenant-hero-copy h1{font-size:34px}
}

.signup-dentura-logo{width:230px;max-height:58px;object-fit:contain;object-position:left center}


/* v7.5 branding, sidebar account, and profile polish */
.sidebar-brand-stacked{flex-direction:column!important;align-items:center!important;text-align:center!important;gap:8px!important;padding:5px 8px 16px!important}
.sidebar-brand-stacked span{width:100%;min-width:0}.sidebar-brand-stacked strong{max-width:100%!important;white-space:normal!important;line-height:1.25}.sidebar-brand-stacked small{line-height:1.35}
.sidebar-practice-logo{width:auto!important;height:auto!important;max-width:150px!important;max-height:62px!important;object-fit:contain!important;background:#fff!important;border-radius:7px!important;padding:6px!important}
.dentura-platform-logo{max-width:155px!important}.sidebar-practice-fallback{width:58px;height:58px;border-radius:12px;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;font-weight:800}
.sidebar-account-footer{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;padding:12px 8px 4px!important}
.sidebar-profile-link{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;align-items:center!important;gap:9px!important;text-decoration:none!important;color:inherit!important;padding:7px!important;border-radius:8px!important}.sidebar-profile-link:hover{background:rgba(255,255,255,.07)!important}
.sidebar-user-photo,.sidebar-user-avatar{width:38px!important;height:38px!important;border-radius:50%!important;object-fit:cover!important}.sidebar-profile-link strong{color:#fff!important;display:block;font-size:11px}.sidebar-profile-link small{color:#9fb6c9!important;display:block;font-size:9px;margin-top:2px}
.sidebar-logout-form{width:100%!important;margin:0!important}.sidebar-signout-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.07);color:#dce8f0;border-radius:7px;padding:8px 10px;font-size:10.5px;font-weight:700;cursor:pointer}.sidebar-signout-btn:hover{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.25)}.sidebar-signout-btn svg{width:15px;height:15px;stroke:currentColor}
.topbar-profile-link{text-decoration:none;color:inherit}.topbar-profile-link:hover{text-decoration:underline}
.tenant-login-logo img{max-width:220px!important;max-height:90px!important;object-fit:contain!important}
.dentura-main-brand img{width:auto!important;height:42px!important;max-width:145px!important;object-fit:contain!important;border-radius:0!important;background:transparent!important}
.profile-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;align-items:start}.profile-summary-card{text-align:center}.profile-photo-large,.profile-photo-placeholder{width:112px;height:112px;border-radius:50%;margin:0 auto 14px;object-fit:cover}.profile-photo-placeholder{display:flex;align-items:center;justify-content:center;background:#e9f0f4;color:#315f74;font-size:38px;font-weight:800}.profile-summary-card h2{margin:0;font-size:18px}.profile-summary-card>p{color:var(--muted);margin:5px 0 18px}.profile-meta{display:grid;text-align:left;border-top:1px solid var(--line);padding-top:12px}.profile-meta span{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:800;margin-top:9px}.profile-meta strong{font-size:11px;margin-top:2px}.profile-edit-card .field input[type=file]{padding:9px;background:#f7f9fa;border:1px solid var(--line);border-radius:6px;width:100%}
@media(max-width:900px){.profile-layout{grid-template-columns:1fr}.sidebar-brand-stacked span{display:none}.sidebar-practice-logo{max-width:58px!important;max-height:48px!important;padding:4px!important}.sidebar-account-footer{align-items:center!important}.sidebar-profile-link{grid-template-columns:38px!important;padding:4px!important}.sidebar-profile-link>div:last-child,.sidebar-signout-btn span{display:none}.sidebar-signout-btn{width:38px;height:38px;padding:0}.sidebar-signout-btn svg{margin:auto}}


/* v7.6 top-bar account menu, spacing, and control cleanup */
.app-sidebar{padding-bottom:14px}
.topbar-actions{gap:12px}
.topbar-profile-menu{position:relative}
.topbar-profile-trigger{min-width:82px;border:0;background:transparent;padding:4px 8px 3px;border-radius:8px;display:grid;grid-template-columns:34px auto;grid-template-rows:22px 15px;column-gap:8px;align-items:center;cursor:pointer;color:#40515c}
.topbar-profile-trigger:hover,.topbar-profile-trigger[aria-expanded="true"]{background:#f3f6f7}
.topbar-profile-photo,.topbar-profile-avatar{grid-row:1/3;width:34px;height:34px;border-radius:50%;object-fit:cover}
.topbar-profile-avatar{display:flex;align-items:center;justify-content:center;background:#e3edf1;color:#315f74;font-size:12px;font-weight:800}
.topbar-profile-name{grid-column:2;grid-row:1;font-size:10.5px;font-weight:750;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;align-self:end}
.topbar-profile-chevron{grid-column:2;grid-row:2;font-size:10px;color:#8b989f;align-self:start}
.topbar-profile-dropdown{position:absolute;right:0;top:48px;width:220px;background:#fff;border:1px solid #dce5e9;border-radius:9px;box-shadow:0 14px 35px rgba(31,54,67,.16);padding:7px;z-index:100}
.topbar-profile-dropdown[hidden]{display:none}
.profile-dropdown-heading{padding:9px 10px 10px;border-bottom:1px solid #edf1f2;margin-bottom:4px}
.profile-dropdown-heading strong{display:block;font-size:11.5px;color:#30444e}.profile-dropdown-heading small{display:block;margin-top:3px;font-size:9.5px;color:#849199}
.topbar-profile-dropdown>a,.profile-dropdown-signout{width:100%;box-sizing:border-box;display:flex;align-items:center;gap:8px;border:0;background:transparent;color:#40545e;text-decoration:none;text-align:left;padding:9px 10px;border-radius:6px;font-size:10.5px;font-weight:650;cursor:pointer}
.topbar-profile-dropdown>a:hover,.profile-dropdown-signout:hover{background:#f3f6f7;color:#285e76}
.profile-dropdown-signout svg{width:14px;height:14px;stroke:currentColor}

input[type="checkbox"]{width:14px!important;height:14px!important;min-width:14px!important;margin:0 6px 0 0!important;vertical-align:-2px}
input[type="radio"]{width:14px!important;height:14px!important;min-width:14px!important}
.landing-check{font-style:normal;font-size:10px;display:inline-block;margin-right:3px;vertical-align:1px}
.hero-checks span{font-size:12px;line-height:1.55}

.platform-dashboard .page-header{margin-bottom:28px}
.platform-dashboard .dashboard-grid{gap:18px;margin-bottom:30px}
.platform-dashboard .stat-card{padding:22px 20px;min-height:104px}
.platform-dashboard>.card{margin-top:8px}
.platform-dashboard .section-heading{margin-bottom:22px}
.platform-dashboard table th,.platform-dashboard table td{padding-top:12px;padding-bottom:12px}

/* Prevent customer dashboard rows from visually colliding. */
.analytics-dashboard .analytics-panels{margin-bottom:24px;align-items:start}
.analytics-dashboard .analytics-panels>.card{margin-bottom:0;position:relative;overflow:hidden}
.analytics-dashboard .reduced-charts{margin-bottom:28px}
.analytics-dashboard .metric-grid{margin-bottom:26px}

/* Profile page spacing */
.profile-page .page-header{margin-bottom:26px}
.profile-layout{gap:24px}
.profile-edit-card .grid{row-gap:18px}
.profile-edit-card .form-actions{margin-top:22px}

@media(max-width:700px){
  .topbar-profile-name,.topbar-profile-chevron{display:none}
  .topbar-profile-trigger{min-width:42px;display:block;padding:4px}
  .topbar-profile-dropdown{right:-4px}
}


/* v7.6.1 topbar profile is intentionally stacked: photo above user name */
.topbar-profile-trigger{
  position:relative!important;
  min-width:74px!important;
  height:58px!important;
  padding:4px 7px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  gap:2px!important;
}
.topbar-profile-photo,.topbar-profile-avatar{
  width:30px!important;
  height:30px!important;
  flex:0 0 30px!important;
}
.topbar-profile-name{
  display:block!important;
  max-width:110px!important;
  font-size:9px!important;
  line-height:11px!important;
  text-align:center!important;
}
.topbar-profile-chevron{
  position:absolute!important;
  right:4px!important;
  bottom:7px!important;
  font-size:8px!important;
}
@media(max-width:700px){
  .topbar-profile-trigger{min-width:42px!important;width:42px!important;height:48px!important}
  .topbar-profile-name,.topbar-profile-chevron{display:none!important}
}


/* v7.7 navigation, demo roles, profile, and spacing refinements */
.dentura-main-brand>span{display:none!important}

.platform-dashboard .dashboard-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:0 0 22px;
}
.platform-dashboard .stat-card{
  background:#fff;
  border:1px solid var(--d-border,#e3e8eb);
  border-radius:7px;
  box-shadow:var(--d-shadow,0 2px 8px rgba(36,55,66,.05));
  min-height:0;
  padding:17px 18px;
  display:flex;
  flex-direction:column;
}
.platform-dashboard .stat-card>span{
  font-size:10px;
  font-weight:750;
  color:#7b8991;
  text-transform:uppercase;
  letter-spacing:.04em;
  margin-bottom:7px;
}
.platform-dashboard .stat-card>strong{
  display:block;
  color:#2f4450;
  font-size:25px;
  line-height:1;
  margin:0 0 7px;
}
.platform-dashboard .stat-card>small{
  display:block;
  color:#89959c;
  font-size:10px;
  line-height:1.3;
}
.platform-dashboard>.card{margin-top:0}
.platform-dashboard .page-header{margin-bottom:22px}
.platform-dashboard .section-heading{margin-bottom:18px}
.platform-dashboard table th,.platform-dashboard table td{padding-top:10px;padding-bottom:10px}

.topbar-estimate-search{
  position:relative;
  width:210px;
  margin:0;
}
.topbar-estimate-search input{
  width:100%;
  height:34px;
  padding:6px 10px 6px 32px;
  border:1px solid var(--d-border,#dce4e8);
  border-radius:17px;
  background:#f9fbfb;
  font-size:10.5px;
  color:#445962;
}
.topbar-estimate-search input:focus{
  outline:none;
  border-color:#9bbbc8;
  background:#fff;
}
.topbar-search-icon{
  position:absolute;
  left:10px;
  top:50%;
  transform:translateY(-50%);
  width:13px;
  height:13px;
  color:#819098;
  pointer-events:none;
}
.topbar-search-icon svg{width:13px;height:13px}

.topbar-profile-dropdown{width:230px}
.topbar-profile-dropdown>a{border-bottom:1px solid #f1f3f4}
.topbar-profile-dropdown>a:last-of-type{border-bottom:0}
.profile-dropdown-signout{color:#8a4040}
.profile-dropdown-signout:hover{background:#fff4f4;color:#8a3030}

.login-card form .field{margin-bottom:14px}
.login-card form .field+ .field{margin-top:2px}
.login-card .btn-full{margin-top:7px}

.add-plus-btn{
  width:36px;
  height:36px;
  min-width:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:0;
  background:var(--tenant-accent,var(--accent,#2a7c9c));
  color:#fff;
  font-size:24px;
  font-weight:400;
  line-height:1;
  text-decoration:none;
  cursor:pointer;
  box-shadow:0 3px 9px rgba(38,92,116,.16);
}
.add-plus-btn:hover{filter:brightness(.94);color:#fff}
.tenant-new-user-form{
  background:#f8fafb;
  border:1px solid #e2e9ec;
  border-radius:8px;
  padding:16px;
  margin:0 0 18px;
}
.tenant-new-user-form[hidden]{display:none!important}
.tenant-new-user-form .grid{margin-bottom:12px}

.profile-detail-card{padding:25px!important}
.profile-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px 26px;
}
.profile-detail-grid>div{border-bottom:1px solid #edf1f2;padding-bottom:12px}
.profile-detail-grid span,.profile-bio>span{
  display:block;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:#8a979e;
  font-size:9px;
  font-weight:800;
  margin-bottom:5px;
}
.profile-detail-grid strong{font-size:12px;color:#394d57}
.profile-bio{margin-top:22px}
.profile-bio p{margin:0;color:#60727b;font-size:12px;line-height:1.65}
.profile-quick-actions{margin-top:24px;padding-top:18px;border-top:1px solid #edf1f2}
.account-form-field{margin-bottom:17px!important}
.account-practice-settings{margin-top:18px}

.demo-role-body{margin:0;background:#f5f8f9;color:#2d414b;font-family:Inter,Segoe UI,Arial,sans-serif}
.demo-role-shell{max-width:980px;margin:65px auto;padding:0 24px;text-align:center}
.demo-role-brand img{width:210px;max-height:76px;object-fit:contain;margin-bottom:24px}
.demo-role-shell h1{font-size:34px;margin:8px 0 10px}.demo-role-shell>p{max-width:670px;margin:0 auto 30px;color:#6c7c84;line-height:1.6}
.demo-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;text-align:left}
.demo-role-card{display:block;background:#fff;border:1px solid #dfe7ea;border-radius:10px;padding:22px;text-decoration:none;color:#344a55;box-shadow:0 7px 20px rgba(40,72,86,.04)}
.demo-role-card:hover{border-color:#9fbec9;transform:translateY(-1px)}
.demo-role-card strong{display:block;font-size:15px;color:#2b5e74;margin-bottom:7px}
.demo-role-card span{display:block;font-size:11.5px;line-height:1.55;color:#687b84;min-height:36px}
.demo-role-card small{display:block;margin-top:14px;color:#2a7897;font-weight:750}

@media(max-width:980px){
  .platform-dashboard .dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .topbar-estimate-search{width:160px}
}
@media(max-width:700px){
  .topbar-estimate-search{display:none}
  .profile-detail-grid,.demo-role-grid{grid-template-columns:1fr}
  .platform-dashboard .dashboard-grid{grid-template-columns:1fr 1fr}
}
