:root{--bg:#07131c;--panel:#0d1b27;--line:#213a4d;--text:#edf4f8;--muted:#9aafbe;--gold:#c8a65a;--ink:#172033;--soft:#64748b;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;background:linear-gradient(180deg,#07131c,#0a1822);color:var(--text)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled,.disabled{cursor:not-allowed;opacity:.55}[hidden]{display:none!important}a{color:inherit}h1,h2,h3,h4,p{overflow-wrap:anywhere}h1,h2,h3{margin-top:0}h2{font-size:1.15rem}h3{font-size:1rem}p{line-height:1.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #2f82bf;outline-offset:3px}input,select,textarea{min-width:0}textarea{resize:vertical;min-height:120px}a.btn{text-decoration:none}
.shell{min-height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr)}.sidebar{height:100dvh;position:sticky;top:0;padding:20px 18px;background:#091722;border-right:1px solid var(--line);display:flex;flex-direction:column;overflow:auto}.brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:800;text-decoration:none;margin-bottom:25px}.brand img,.top-brand img{object-fit:contain;border-radius:10px;background:#fff;flex:none}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.nav{display:grid;gap:7px}.nav a{display:block;border:1px solid transparent;color:#c7d5df;padding:12px;border-radius:11px;text-decoration:none;font-weight:600}.nav a:hover,.nav a.active{background:#11283a;border-color:#28465a;color:#fff}.sidebar-footer{margin-top:auto;padding-top:28px;color:var(--muted);font-size:12px}.sidebar-footer small{display:block;margin-top:6px}.main{min-width:0}.top{min-height:76px;display:flex;align-items:center;gap:12px;padding:12px 22px;border-bottom:1px solid var(--line);background:rgba(7,19,28,.97);position:sticky;top:0;z-index:10}.top-brand{display:flex;align-items:center;gap:10px;text-decoration:none;white-space:nowrap;font-size:18px}.menu-toggle{display:none;width:36px;height:40px;border:1px solid var(--line);border-radius:9px;background:#11283a;color:#fff}.content{padding:22px;max-width:1500px;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.page-heading h1{font-size:25px;margin:5px 0 0}.eyebrow{font-size:10px;letter-spacing:.12em;color:var(--muted);font-weight:800}.framework-banner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid #3b4850;background:#14232d;color:#c8d6df;border-radius:12px;padding:11px 14px;font-size:12px;margin-bottom:18px}.framework-banner strong{color:#e6d2a0}.framework-banner span{line-height:1.45}.muted{color:var(--muted);font-size:13px}.subtle{color:#5d7080;font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:9px 13px;border:1px solid transparent;border-radius:10px;font-size:13px;font-weight:800;line-height:1.3}.primary{background:#18324a;border-color:#18324a;color:#fff}.secondary{background:#f1f5f8;border-color:#cbd7e0;color:#334d60}.danger{background:#fff5f5;border-color:#e4bbbb;color:#993c3c}.page-heading>.primary,.dark-card .primary{background:var(--gold);border-color:var(--gold);color:#101820}.dark-card .secondary{background:#11283a;border-color:#365168;color:#e6eef3}.btn:hover:not(:disabled){filter:brightness(.96)}.panel-card{border:1px solid #d6e0e7;background:#fff;border-radius:14px;padding:16px;margin-bottom:14px}.panel-card h2,.panel-card h3{margin-bottom:8px}.dark-card{background:linear-gradient(180deg,#102331,#0c1c28);border-color:var(--line);color:var(--text)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-heading h3{margin:0}.panel-heading p{margin:5px 0}.panel-heading .btn{flex:none}.empty-state{padding:32px 16px;text-align:center;color:#607485;display:grid;place-content:center;min-height:155px}.empty-state h3{margin:0 0 7px;color:inherit}.empty-state p{margin:0;font-size:13px;max-width:550px}.dark-card .empty-state{color:var(--muted)}.notice{margin-bottom:14px;padding:11px 13px;border:1px solid #d4dfe7;border-radius:10px;background:#edf4f8;color:#415d70;font-size:13px;line-height:1.5}.notice.error{background:#fff2f2;border-color:#e8c6c6;color:#883f3f}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.metric-card{border:1px solid var(--line);border-radius:14px;padding:17px;background:#102331;display:grid;gap:10px}.metric-card span,.metric-card small{color:var(--muted);font-size:12px}.metric-card strong{font-size:26px}.quick-actions,.document-actions{display:flex;flex-wrap:wrap;gap:10px}.integration-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.integration-grid>div{border:1px solid var(--line);padding:16px;border-radius:12px}.tag{display:inline-block;padding:5px 8px;border:1px solid #74585a;border-radius:999px;font-size:11px;color:#e4b9bd}.settings-list{display:grid;grid-template-columns:200px 1fr;gap:15px;font-size:14px}.settings-list dt{color:var(--muted)}.settings-list dd{margin:0;overflow-wrap:anywhere}
/* Original Mayer CRM compact toolbar geometry, glyphs and muted icon tiles. */
.quick-tools{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex:1 1 auto;min-width:0;margin-left:10px}.quick-tool{appearance:none;border:0;background:none;display:grid;justify-items:center;align-content:center;gap:2px;min-width:38px;min-height:44px;padding:0;color:#c4d2dc}.quick-tool strong{font-size:.56rem;line-height:1;font-weight:900;white-space:nowrap;pointer-events:none}.tool-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;border:1px solid #ccd8e1;background:#e7edf2;color:#365268;pointer-events:none;transition:transform .12s ease,background .12s ease}.tool-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.quick-tool:hover .tool-icon,.quick-tool:focus-visible .tool-icon{transform:translateY(-2px)}.tool-appointments{background:#e5edf7;color:#355b86;border-color:#c7d7e9}.tool-notes{background:#e6edf3;color:#3b5870;border-color:#cbd8e2}.tool-contacts{background:#e7efe8;color:#46624b;border-color:#cfddcf}.tool-build{background:#eee9df;color:#665942;border-color:#ddd2bd}.tool-commissions{background:#e8edf7;color:#405d88;border-color:#cbd7e8}.tool-icon.large{width:38px;height:38px;border-radius:12px;flex:none}.tool-icon.large svg{width:21px;height:21px}
/* Native dialogs provide focus isolation. All close paths use the same draft guard. */
.workspace-dialog{color-scheme:light;color:var(--ink);width:min(980px,96vw);height:min(820px,92dvh);max-width:96vw;max-height:92dvh;padding:0;border:1px solid #cbd5df;border-radius:18px;background:#f8fafb;overflow:hidden;box-shadow:0 24px 70px rgba(15,23,42,.28)}.workspace-dialog::backdrop{background:rgba(17,28,39,.54)}.modal-frame{height:100%;max-height:inherit;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;min-height:0}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid #d7e0e7;background:#fff}.modal-title{display:flex;align-items:center;gap:10px;min-width:0}.modal-title h2{font-size:1.08rem;color:#172033;margin:0}.modal-title p{font-size:.75rem;color:#64748b;margin:3px 0 0}.modal-close{width:38px;height:38px;border:1px solid #d4dde5;border-radius:50%;background:#fff;color:#475569;font-size:1.65rem;line-height:1;display:grid;place-items:center;flex:none}.modal-close:hover{background:#eef2f5}.modal-body{overflow:auto;min-height:0;padding:16px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.modal-footer{border-top:1px solid #d7e0e7;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#fff}.footer-actions{display:flex;gap:8px}.dirty-state{color:#64748b;font-size:12px}.modal-error{padding:11px 16px;background:#fff1f1;border-top:1px solid #e5c3c3;color:#8b3333;max-height:115px;overflow:auto;font-size:13px;line-height:1.5}.appointment-dialog{width:min(820px,96vw);height:auto;max-height:92dvh}.appointment-dialog .modal-frame{max-height:92dvh}.commissions-dialog{width:min(960px,96vw)}.day-dialog{width:min(850px,96vw);height:auto;max-height:92dvh}.day-dialog .modal-frame{max-height:92dvh}.confirm-dialog{width:min(480px,calc(100vw - 32px));height:auto;max-height:85dvh}.confirm-dialog .modal-body{padding:8px 18px 14px}.confirm-dialog .modal-footer{justify-content:flex-end;flex-wrap:wrap}.confirm-dialog::backdrop{background:rgba(17,28,39,.38)}
.field{display:grid;gap:6px;min-width:0;font-size:13px;font-weight:700;color:#405568}.field input,.field select,.field textarea{width:100%;min-height:44px;border:1px solid #c4d1dc;border-radius:10px;padding:10px 11px;background:#fff;color:#172033;font-weight:400}.field input::placeholder,.field textarea::placeholder{color:#708190;opacity:1}.field input:disabled,.field select:disabled{background:#eaf0f4;color:#6c7d8c}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.span-all{grid-column:1/-1}.section-tabs{display:flex;gap:6px;overflow-x:auto;padding:3px 2px 12px;scrollbar-width:thin;margin-bottom:14px}.section-tabs button{flex:none;border:1px solid #d1dce5;border-radius:9px;background:#f0f4f7;color:#4d6273;padding:10px 13px;min-height:42px;font-size:12px;font-weight:800}.section-tabs button[aria-selected=true]{background:#18324a;border-color:#18324a;color:#fff}.field-group{border:1px solid #d4dfe7;background:#fff;border-radius:12px;overflow:hidden;margin-bottom:12px}.field-group>summary{font-size:14px;font-weight:800;padding:15px 16px;cursor:pointer}.field-group[open]>summary{border-bottom:1px solid #e0e7ed;background:#f2f6f9}.field-group>.form-grid{padding:16px}.client-form .form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.product-choices{margin:0;padding:10px 12px;border:1px solid #d5dfe6;border-radius:10px;display:flex;gap:18px;flex-wrap:wrap}.product-choices legend{font-size:12px;font-weight:700;color:#405568}.product-choices label{display:flex;align-items:center;gap:7px;font-size:13px}.product-choices input{width:18px;height:18px}.intro{background:#f1f6f9;border:1px solid #d8e1e8;padding:13px 14px;border-radius:12px;margin-bottom:14px}.intro p{margin:4px 0 0;color:#657789;font-size:13px}.appointment-form{max-width:760px;margin:auto;display:grid;gap:14px}.mode-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:4px;border:1px solid #d6e0e8;border-radius:11px;background:#eef3f6}.mode-picker button{min-height:40px;border:0;border-radius:8px;background:transparent;color:#627386;font-size:12px;font-weight:900;padding:8px}.mode-picker button.active{background:#fff;color:#2f5274;box-shadow:0 1px 4px rgba(15,23,42,.1)}.lookup-results{display:grid;max-height:280px;overflow:auto}.lookup-results:empty{display:none}.lookup-results button{background:#fff;border:1px solid #d7e1e8;padding:11px 12px;text-align:left;color:#223b4e;display:flex;justify-content:space-between;gap:12px;min-height:44px}.lookup-results button:hover{background:#eaf2f7}.lookup-results small{font-size:12px;color:#64748b}.lookup-results>p{font-size:13px}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.contact-grid section{border:1px solid #dce5eb;border-radius:11px;background:#f8fbfd;padding:12px;min-width:0;overflow-wrap:anywhere}.contact-grid h4{font-size:12px;color:#667d8e;margin:0 0 7px}.contact-grid p{font-size:14px}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}.note-editor{display:grid;gap:12px;background:#f1f6f9;border:1px solid #d1dfe8;border-radius:12px;padding:14px;margin:14px 0}.note-editor textarea{min-height:170px}.note-filters{margin-bottom:14px}.event-card{margin-bottom:10px;border:1px solid #dce4ea;border-left:4px solid #355b86;border-radius:12px;overflow:hidden;background:#fff}.event-card summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;cursor:pointer;font-size:14px}.event-card summary span,.event-card summary small{color:#64748b;white-space:nowrap}.event-card>div{padding:0 14px 14px}.day-add{display:flex;justify-content:flex-end;margin-bottom:14px}.commission-view{max-width:880px;margin:auto}.commission-agent{display:flex;justify-content:flex-end;margin-bottom:12px}.commission-agent .field{min-width:200px}.commission-types{margin-bottom:14px}.commission-types button{min-height:62px;text-align:left;padding:12px}.commission-types strong,.commission-types small{display:block}.commission-types small{margin-top:5px;font-size:11px;font-weight:600}.commission-totals,.commission-periods{display:grid;grid-template-columns:1fr 1fr;gap:10px}.commission-totals article{background:#18324a;color:#fff;border-radius:13px;padding:18px;display:grid;gap:8px}.commission-totals span{color:#dce8f1;font-size:11px;font-weight:900;text-transform:uppercase}.commission-totals strong{font-size:25px}.commission-periods{margin-top:14px}.commission-periods article{border:1px solid #d8e3eb;border-radius:11px;background:#f9fbfc;padding:12px;display:grid;gap:6px}.commission-periods h4{margin:0;border-bottom:1px solid #e6edf2;padding-bottom:7px}.commission-periods span{font-size:12px;color:#64748b}
/* Calendar matches the month grid, today/reschedule queues, controls and day overlays. */
.dashboard-calendar{color-scheme:light;color:#172033}.calendar-queues{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.today-queue,.reschedule-queue{border:0;border-radius:13px;padding:15px 18px;font-size:13px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px}.today-queue{background:#2563eb;color:white}.reschedule-queue{background:#cbd5e1;color:#172033}.calendar-queues span{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:rgba(255,255,255,.3);font-size:12px}.reschedule-queue span{background:rgba(255,255,255,.65)}.calendar-card{background:#fff;border:1px solid #d7e0e7;border-radius:16px;padding:16px;overflow:hidden}.calendar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.calendar-head h2{margin:0}.calendar-legend{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:6px 0 0;color:#64748b;font-size:12px}.calendar-legend span{display:flex;gap:5px;align-items:center}.calendar-legend i,.day-dots i{width:8px;height:8px;border-radius:50%;background:#355b86}.calendar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.calendar-actions .btn{font-size:11px;min-height:34px;padding:7px 10px}.calendar-controls{display:flex;gap:6px}.calendar-controls .btn{min-width:34px}.calendar-month{text-align:center;font-size:17px;font-weight:900;margin:12px 0}.calendar-status{font-size:12px;color:#64748b;min-height:0;margin:0 0 10px}.calendar-status:empty{display:none}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid #dce4ea;border-radius:13px;overflow:hidden}.calendar-weekday{text-align:center;font-size:12px;font-weight:900;color:#64748b;background:#f8fafc;padding:8px 2px;border-bottom:1px solid #dce4ea}.calendar-day{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;min-width:0;min-height:112px;background:#fff;border:0;border-right:1px solid #e5eaf0;border-bottom:1px solid #e5eaf0;padding:6px;text-align:left;position:relative;color:#172033}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:#f8fafc;color:#94a3b8}.calendar-day.today{box-shadow:inset 0 0 0 2px #10263f}.calendar-day:hover{background:#edf4f9}.calendar-day:focus-visible{outline-offset:-4px}.day-number{font-weight:900}.day-events{display:grid;gap:3px;margin-top:5px}.calendar-event{display:grid;gap:1px;border-radius:6px;background:#dbeafe;color:#1e3a8a;border-left:3px solid #2563eb;padding:4px 5px;overflow:hidden}.calendar-event small{font-size:10px}.calendar-event strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-dots{display:none}.search-form{display:grid;grid-template-columns:minmax(170px,2fr) 1fr 1fr 100px;gap:12px}.search-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.dark-card .field{color:#ccd9e1}.dark-card .field input,.dark-card .field select{background:#071722;border-color:#345168;color:#f0f5f9;color-scheme:dark}.dark-card .field input::placeholder{color:#8fa6b6}#client-results{margin-top:18px}.result-status{font-size:13px;color:#b9cbd7}.client-results-list{display:grid;gap:9px;margin-bottom:12px}.client-result{background:#102331;border:1px solid #2b4559;border-radius:12px;padding:16px;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#f1f7fb;width:100%}.client-result:hover{background:#173249}.client-result strong,.client-result small{display:block}.client-result small{margin-top:5px;color:#9eb5c5}.open-label{font-size:12px;color:#b1c7d7;white-space:nowrap}.open-label b{font-size:20px;margin-left:7px}.sidebar-shade{display:none}
@media(max-width:1100px){.client-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search-form{grid-template-columns:1fr 1fr}.query-field{grid-column:1/-1}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-actions{justify-content:flex-start}}
@media(max-width:760px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;z-index:40;left:0;top:0;width:275px;transform:translateX(-100%);visibility:hidden;transition:transform .2s ease,visibility .2s}.sidebar.open{transform:none;visibility:visible}.sidebar-shade{display:block;position:fixed;inset:0;border:0;background:rgba(7,19,28,.6);z-index:30}.menu-toggle{display:block;flex:none}.top{padding:10px 14px;min-height:68px;gap:9px}.content{padding:16px}.top-brand strong{font-size:16px}.page-heading h1{font-size:23px}.settings-list{grid-template-columns:1fr;gap:7px}.settings-list dd{margin-bottom:10px}}
@media(max-width:720px){.workspace-dialog{width:100%;max-width:100%;height:94dvh;max-height:94dvh;margin:auto 0 0;border-radius:18px 18px 0 0;border-left:0;border-right:0;border-bottom:0}.workspace-dialog .modal-frame{max-height:94dvh}.modal-head{padding:10px 12px}.modal-title p{display:none}.modal-body{padding:10px}.modal-footer{padding:10px 12px max(10px,env(safe-area-inset-bottom));gap:7px}.footer-actions{gap:6px}.modal-footer .btn{padding:9px 11px;font-size:12px}.dirty-state{font-size:11px}.confirm-dialog{width:min(480px,calc(100vw - 24px));max-width:calc(100vw - 24px);height:auto;max-height:85dvh;margin:auto;border:1px solid #cbd5df;border-radius:18px}.confirm-dialog .modal-frame{max-height:85dvh}.confirm-dialog .modal-footer{padding:12px;gap:7px;display:grid;grid-template-columns:1fr}.confirm-dialog .btn{width:100%;min-height:44px}.quick-tools{gap:4px;margin-left:4px}.quick-tool{min-width:32px;min-height:44px}.quick-tool strong{font-size:.52rem}.tool-icon{width:30px;height:30px;border-radius:9px}.tool-icon svg{width:17px;height:17px}.top-brand strong{display:none}.top-brand img{width:34px;height:34px}.calendar-card{padding:10px}.calendar-queues{gap:7px}.today-queue,.reschedule-queue{padding:10px 5px;font-size:11px;min-height:46px;gap:6px}.calendar-actions{width:100%;justify-content:space-between;gap:6px}.calendar-actions>.btn{flex:1;font-size:10px}.calendar-controls{flex:none;gap:4px}.calendar-controls .btn{font-size:10px;min-width:31px;padding:7px}.calendar-weekday{padding:7px 0;font-size:10px}.calendar-day{min-height:58px;padding:4px 2px;text-align:center}.day-number{font-size:13px}.day-events{display:none}.day-dots{display:flex;justify-content:center;gap:2px;margin-top:5px;min-height:7px}.day-dots i{width:6px;height:6px}.calendar-status{font-size:11px}.calendar-head{gap:8px}.contact-grid{grid-template-columns:1fr}.mode-picker button{font-size:11px}.panel-heading .btn{font-size:12px}.day-add .btn{width:100%}.commission-totals article{padding:13px 10px}.commission-totals strong{font-size:21px}.section-tabs{gap:5px}.section-tabs button{font-size:11px;padding:9px 11px}.field-group>.form-grid{padding:12px}.client-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.form-grid,.client-form .form-grid{grid-template-columns:minmax(0,1fr)}.search-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.metric-grid{gap:10px}.page-heading .btn{font-size:12px}.field input,.field select,.field textarea{font-size:16px}.section-tabs{margin-bottom:10px}.product-choices{gap:12px}.panel-heading{flex-wrap:wrap}.event-card summary{gap:7px;font-size:13px}.open-label{font-size:0}.open-label b{font-size:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
