/* Minimal workspace tokens; login composition is scoped separately below. */
#workspace,body:has(#workspace:not([hidden])) #dialog{--v1-sidebar:#142338;--v1-selected:#243b59;--v1-primary:#2563eb;--v1-text:#14233f;--v1-muted:#64748b;--v1-bg:#f7f9fc;--v1-border:#e4eaf2;--v1-radius:10px;--v1-font:'Inter','Segoe UI',Arial,sans-serif;--text:var(--v1-text);--muted:var(--v1-muted);--border:var(--v1-border);--input-border:#cbd5e1;--panel:#fff;--panel-soft:var(--v1-bg);--brand:var(--v1-text);--accent:var(--v1-primary);--on-accent:#fff;color:var(--v1-text);color-scheme:light;font:14px/1.5 var(--v1-font)}
#workspace{background:var(--v1-bg)}
#workspace #more-menu,#workspace .legacy-link,#workspace #search,#workspace #new-menu,#workspace .nav-label,#workspace footer,#workspace .page-heading .eyebrow{display:none!important}
#workspace #navigation{width:224px;padding:30px 16px 18px;background:var(--v1-sidebar);border:0;color:#c5d2e3}
#workspace .wordmark{font-family:Georgia,serif;font-size:23px;letter-spacing:3px;color:#fff;margin:0 10px 38px}#workspace .wordmark small{color:#afbdd0;font:9px/1.6 var(--v1-font);letter-spacing:2px;margin-top:8px}
#workspace #nav{display:grid;gap:6px}#workspace #nav a{margin:0;min-height:44px;padding:11px 14px;border:0;border-radius:7px;color:#c5d2e3;font-size:14px;gap:12px}#workspace #nav a:hover{background:#1e334e;color:#fff}#workspace #nav a.active{background:var(--v1-selected);color:#fff;box-shadow:none;font-weight:600}#workspace #nav svg{width:19px;height:19px;stroke-width:1.7}
#workspace .sidebar-end{border-color:#304158;padding-top:16px}#workspace #logout{width:100%;justify-content:flex-start;background:transparent;border-color:#42526a;color:#e7edf6}
#workspace #nav a.active svg{color:inherit}#workspace .topbar .account{border:0;padding:0}
#workspace .workspace-main{margin-left:224px;background:var(--v1-bg);min-height:100vh}#workspace .topbar{height:68px;min-height:68px;padding:0 30px;background:#fff;border-bottom:1px solid var(--v1-border);gap:16px}#workspace .breadcrumb{font-size:0;margin-right:auto;color:var(--v1-text)}#workspace .breadcrumb span{display:none}#workspace .breadcrumb strong{font-size:15px;font-weight:600}
#workspace .topbar .account{margin:0;gap:10px;min-width:0}#workspace .account strong{color:var(--v1-text);font-size:12px;font-weight:600}#workspace .account small{font-size:10px;color:var(--v1-muted)}#workspace .avatar{width:34px;height:34px;background:#edf2fa;color:#234165;font-size:12px}#workspace .workspace-badge{font-size:10px;padding:4px 8px;border-color:var(--v1-border);background:var(--v1-bg);color:var(--v1-muted)}
#workspace main{width:100%;max-width:1440px;box-sizing:border-box;padding:28px 30px;min-width:0}#workspace .page-heading{margin:0 0 24px;align-items:center;gap:16px}#workspace h1{color:var(--v1-text);font-size:25px;line-height:1.25;font-weight:650;letter-spacing:-.6px}#workspace .page-heading p{color:var(--v1-muted);font-size:13px;margin:7px 0 0}
#workspace .panel{background:#fff;border:1px solid var(--v1-border);border-radius:var(--v1-radius);box-shadow:0 2px 5px #14233803}#workspace .v1-panel{padding:20px;margin-bottom:20px;position:relative}#workspace .v1-panel h2{font-size:15px;font-weight:650;line-height:1.4;margin:0 0 16px;color:var(--v1-text)}
#workspace .v1-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:720px;margin-bottom:22px}#workspace .v1-stats article{display:flex;gap:15px;align-items:center;background:#fff;border:1px solid var(--v1-border);border-radius:var(--v1-radius);padding:18px 20px;min-height:96px;box-sizing:border-box}#workspace .v1-stat-icon{width:42px;height:42px;display:grid;place-items:center;background:#eef3fc;color:#365e99;border-radius:9px;flex:none}#workspace .v1-stat-icon svg{width:22px;height:22px}#workspace .v1-stats article>div>span{font-size:12px;color:var(--v1-muted)}#workspace .v1-stats strong{display:block;font-size:27px;line-height:1.2;font-weight:650;letter-spacing:-.5px;color:var(--v1-text);font-variant-numeric:tabular-nums}
#workspace .v1-agenda-link{position:absolute;right:20px;top:20px;font-size:12px;color:var(--v1-primary)}#workspace .v1-empty{display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;padding:18px 12px 22px;color:var(--v1-muted)}#workspace .v1-empty-icon{width:38px;height:38px;display:grid;place-items:center;background:#f0f4fa;border-radius:10px;color:#6b83a1}#workspace .v1-empty-icon svg{width:21px;height:21px}#workspace .v1-empty strong{font-size:14px;font-weight:600;color:var(--v1-text)}#workspace .v1-empty p{font-size:12px;margin:0}#workspace .v1-empty .button{margin-top:7px}
#workspace .button,body:has(#workspace:not([hidden])) #dialog .button{min-height:38px;padding:8px 14px;border:1px solid var(--v1-border);border-radius:7px;background:#fff;color:var(--v1-text);font:600 12px/1.4 var(--v1-font);box-shadow:0 1px 2px #14233805;transition:background-color 120ms,color 120ms,border-color 120ms}#workspace .button:hover,body:has(#workspace:not([hidden])) #dialog .button:hover{background:#f1f5f9;border-color:#bccbde}#workspace .button.primary,body:has(#workspace:not([hidden])) #dialog .primary{background:var(--v1-primary);border-color:var(--v1-primary);color:#fff;box-shadow:0 2px 3px #2563eb12}#workspace .button.primary:hover,body:has(#workspace:not([hidden])) #dialog .primary:hover{background:#1d4ed8;border-color:#1d4ed8}
#workspace input,#workspace select,body:has(#workspace:not([hidden])) #dialog input,body:has(#workspace:not([hidden])) #dialog select,body:has(#workspace:not([hidden])) #dialog textarea{background:#fff;border:1px solid #cbd5e1;border-radius:7px;color:var(--v1-text);padding:9px 11px;font:400 13px/1.4 var(--v1-font);min-height:39px;align-self:start;box-sizing:border-box}#workspace input::placeholder,body:has(#workspace:not([hidden])) #dialog input::placeholder{color:#748297}
#workspace :is(a,button,input,select,textarea):focus-visible,body:has(#workspace:not([hidden])) #dialog :is(button,input,select,textarea):focus-visible{outline:2px solid #2563eb;outline-offset:3px}#workspace .filters{background:transparent;border:0;padding:0 0 18px;gap:12px;max-width:700px}#workspace .filters label{font-size:12px;color:var(--v1-muted)}
#workspace table{font-size:13px}#workspace table th{padding:11px 13px;background:var(--v1-bg);color:var(--v1-muted);font-size:10px;font-weight:600;letter-spacing:.4px;border-bottom:1px solid var(--v1-border)}#workspace table td{padding:12px 13px;color:var(--v1-text);border-color:var(--v1-border)}#workspace table tr:hover{background:#fafbfd}#workspace table .button{min-height:32px;padding:6px 10px;font-size:11px}#workspace a{color:var(--v1-primary)}#workspace .v1-badge{background:#eef3fb;color:#345681;border-radius:5px;padding:4px 7px;font-size:11px;font-weight:500}#workspace .details-grid{padding:4px 0 12px;gap:20px}#workspace .detail-pair small{color:var(--v1-muted);margin-bottom:4px}#workspace .detail-pair strong{color:var(--v1-text);font-size:13px}#workspace .pagination{padding:12px 0}
body:has(#workspace:not([hidden])) #dialog{background:#fff;border:1px solid var(--v1-border);border-radius:12px;max-width:640px;box-shadow:0 16px 56px #14233830}body:has(#workspace:not([hidden])) #dialog::backdrop{background:#14233866;backdrop-filter:blur(2px)}body:has(#workspace:not([hidden])) #dialog .dialog-head{padding:20px 24px;border-color:var(--v1-border)}body:has(#workspace:not([hidden])) #dialog .dialog-head h2{font-size:19px;line-height:1.3;font-weight:650;color:var(--v1-text)}body:has(#workspace:not([hidden])) #dialog .eyebrow{display:none}body:has(#workspace:not([hidden])) #dialog .form-grid{padding:22px 24px;gap:18px 16px;align-items:start}body:has(#workspace:not([hidden])) #dialog label{font-size:12px;font-weight:500;color:var(--v1-text);align-content:start;gap:7px}body:has(#workspace:not([hidden])) #dialog .dialog-actions{padding:16px 24px;border-color:var(--v1-border);background:#fafbfd}body:has(#workspace:not([hidden])) #dialog [hidden]{display:none!important}
body:has(#workspace:not([hidden])) #dialog .v1-question{margin:0;color:var(--v1-muted);font-size:14px}.v1-choice{display:grid;grid-template-columns:1fr 1fr;gap:16px}body:has(#workspace:not([hidden])) #dialog .v1-choice button{display:flex;flex-direction:column;align-items:flex-start;gap:10px;text-align:left;padding:20px;background:#fff;border:1px solid var(--v1-border);border-radius:9px;color:var(--v1-text);font:inherit;cursor:pointer}body:has(#workspace:not([hidden])) #dialog .v1-choice button:hover{background:#f5f8ff;border-color:var(--v1-primary)}.v1-choice svg{width:25px;height:25px;color:#426a9e}.v1-choice strong{font-size:14px;font-weight:600}.v1-choice span{font-size:12px;color:var(--v1-muted)}
body:has(#workspace:not([hidden])) #dialog .v1-event-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.v1-event-fields label:has([name=contactId]),.v1-event-fields label:has([name=guestName]),.v1-event-fields label:has([name=notes]),.v1-event-fields label:has([name=title]),.v1-event-fields label:has([name=fileNumber]){grid-column:1/-1}
@media(max-width:800px){#workspace #navigation{width:224px}#workspace .workspace-main{margin-left:0}#workspace .topbar{padding:0 18px;height:60px;min-height:60px}#workspace main{padding:22px 18px}#workspace .topbar .account small{display:none}#workspace .workspace-badge{display:none}#workspace .topbar .account strong{max-width:150px;overflow-wrap:anywhere}#workspace .v1-stats{gap:12px}#workspace .v1-stats article{padding:14px;gap:10px}#workspace .v1-stat-icon{width:32px;height:32px}#workspace h1{font-size:23px}}
@media(max-width:600px){#workspace .page-heading{align-items:flex-start;flex-wrap:wrap;gap:16px}#workspace .v1-panel{padding:16px}#workspace .v1-stats article{min-height:90px;align-items:flex-start}#workspace .v1-stats article>div>span{font-size:11px}#workspace .v1-stats strong{font-size:24px}#workspace .v1-stat-icon{width:26px;height:26px;background:transparent}#workspace .v1-stat-icon svg{width:20px;height:20px}#workspace .details-grid{grid-template-columns:1fr 1fr}#workspace .v1-agenda-link{right:16px;top:18px}#workspace .v1-panel h2{max-width:70%}body:has(#workspace:not([hidden])) #dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}body:has(#workspace:not([hidden])) #dialog .form-grid,body:has(#workspace:not([hidden])) #dialog .v1-event-fields{grid-template-columns:1fr;padding:18px;gap:15px}body:has(#workspace:not([hidden])) #dialog .dialog-head,body:has(#workspace:not([hidden])) #dialog .dialog-actions{padding:16px 18px}.v1-choice{grid-template-columns:1fr}#workspace .button,body:has(#workspace:not([hidden])) #dialog .button{min-height:42px}
#workspace .v1-table table,#workspace .v1-table tbody,#workspace .v1-table tr,#workspace .v1-table td{display:block;width:100%;box-sizing:border-box;white-space:normal}#workspace .v1-table thead{display:none}#workspace .v1-table tr{padding:10px 0;border-top:1px solid var(--v1-border)}#workspace .v1-table td{display:flex;gap:12px;justify-content:space-between;padding:7px 0;border:0;overflow-wrap:anywhere;font-size:12px}#workspace .v1-table td:before{content:attr(data-label);font-size:11px;color:var(--v1-muted);flex:0 0 34%}#workspace .v1-table td>span{min-width:0;text-align:right}#workspace .v1-table{overflow:visible}}
@media(prefers-reduced-motion:reduce){#workspace *,body:has(#workspace:not([hidden])) #dialog *{transition:none!important;animation:none!important}}
/* Company contacts reuse the approved cards, fields and buttons. */
#workspace .company-representatives-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}#workspace .company-representatives-heading h2{margin:0}
#workspace .company-representative-list{list-style:none;margin:0;padding:0}#workspace .company-representative-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--v1-border);padding:14px 0}#workspace .company-representative-list li:last-child{padding-bottom:0}#workspace .company-representative-list strong{font-size:13px;font-weight:600}#workspace .company-representative-list .v1-badge{margin-left:10px}#workspace .company-representative-list p{font-size:12px;color:var(--v1-muted);margin:4px 0 0;overflow-wrap:anywhere}
.company-representative-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.company-representative-note{font-size:12px;line-height:1.5;color:var(--v1-muted);margin:8px 0 12px}
body:has(#workspace:not([hidden])) #dialog .company-representatives{border-top:1px solid var(--v1-border);padding-top:16px}body:has(#workspace:not([hidden])) #dialog .company-representatives h3{font-size:14px;font-weight:600;margin:0 0 12px}
body:has(#workspace:not([hidden])) #dialog .company-representative-draft{border:1px solid var(--v1-border);border-radius:8px;padding:14px;margin:0 0 14px;min-width:0}body:has(#workspace:not([hidden])) #dialog .company-representative-draft legend{padding:0 5px;font-size:12px;font-weight:600;color:var(--v1-muted)}
.company-representative-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.company-representative-fields label.wide{grid-column:1/-1}.company-appointment-contact>label{margin-bottom:10px}.company-appointment-contact [data-company-inline]{border:1px solid var(--v1-border);border-radius:8px;padding:14px;margin-top:12px}
body:has(#workspace:not([hidden])) #dialog .company-representative-draft summary{font-size:13px;font-weight:600;cursor:pointer}body:has(#workspace:not([hidden])) #dialog .company-representative-draft[open] summary{margin-bottom:14px}
@media(max-width:600px){#workspace .company-representatives-heading{align-items:flex-start;flex-direction:column}#workspace .company-representative-list li{align-items:flex-start;flex-direction:column;gap:12px}#workspace .company-representative-list .v1-badge{display:table;margin:6px 0 0}.company-representative-fields{grid-template-columns:1fr}}

/* Guided client lookup: shared by the directory, appointments and hearings. */
.guided-clients{position:relative;display:grid;gap:7px;min-width:0;flex:1}
.guided-clients>label{display:block;font-size:12px}.guided-clients>input{width:100%}
.guided-clients>[role=status]{min-height:1em;color:var(--v1-muted);font-size:11px;line-height:1.5}
.guided-results{position:absolute;inset-inline:0;top:calc(100% - 1em);z-index:5;max-height:240px;overflow-y:auto;overscroll-behavior:contain;margin:0;padding:5px;list-style:none;background:#fff;border:1px solid var(--v1-border);border-radius:8px;box-shadow:0 8px 24px #1423381a}
.guided-results[hidden]{display:none}.guided-results li{padding:10px;border-radius:5px;cursor:pointer;min-height:44px;box-sizing:border-box;overflow-wrap:anywhere}
.guided-results strong{display:block;font-size:13px;font-weight:600}.guided-results small{display:block;font-size:11px;color:var(--v1-muted);margin-top:3px}
.guided-results [aria-selected=true]{background:#eef3fc;outline:2px solid #2563eb;outline-offset:-2px}
@media(hover:hover){.guided-results li:hover{background:#eef3fc}}
body:has(#workspace:not([hidden])) #dialog .v1-reason{border:1px solid var(--v1-border);border-radius:7px;padding:0 12px}
body:has(#workspace:not([hidden])) #dialog .v1-reason summary{min-height:44px;align-content:center;cursor:pointer;font-size:12px;font-weight:600}
.v1-reason summary span{font-weight:400;color:var(--v1-muted)}.v1-reason[open]{padding-bottom:12px!important}.v1-reason[open] summary{margin-bottom:8px}
body:has(#workspace:not([hidden])) #dialog summary:focus-visible{outline:2px solid #2563eb;outline-offset:3px}
#workspace .filters:has(.guided-clients){align-items:start}#workspace .filters:has(.guided-clients)>.button{margin-top:25px}

/* Monthly agenda, with a readable selected-day list at every screen size. */
.agenda-toolbar,.agenda-month-nav,.agenda-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.agenda-toolbar{justify-content:space-between;margin-bottom:18px}.agenda-month-nav h3{font-size:15px;font-weight:600;text-transform:capitalize;margin:0;min-width:140px;text-align:center}
.agenda-links>a:last-child{font-size:12px}.agenda-month{border:1px solid var(--v1-border);border-radius:8px;overflow:hidden}
.agenda-weekdays,.agenda-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.agenda-weekdays{background:var(--v1-bg)}.agenda-weekdays span{text-align:center;padding:10px 2px;font-size:11px;color:var(--v1-muted)}
.agenda-day{min-height:105px;min-width:0;padding:6px;border-top:1px solid var(--v1-border);border-inline-end:1px solid var(--v1-border)}
.agenda-day:nth-child(7n){border-inline-end:0}.agenda-day.outside{background:#fafbfd}.agenda-day.outside>.agenda-date{color:var(--v1-muted)!important}
.agenda-day.selected{background:#edf3fc}.agenda-date{display:flex;align-items:center;justify-content:space-between;min-height:28px;padding:2px 4px;font-size:12px;border-radius:4px;color:var(--v1-text)!important}
.agenda-day.today>.agenda-date{font-weight:700;text-decoration:underline;text-underline-offset:4px}.agenda-day-count{display:none}
.agenda-event{display:flex;align-items:flex-start;gap:6px;width:100%;min-width:0;margin:5px 0 0;padding:6px;background:#edf3fc;border:0;border-inline-start:3px solid #2563eb;border-radius:4px;color:#17345f;text-align:start;font:inherit;font-size:11px;cursor:pointer}
.agenda-event time{font-variant-numeric:tabular-nums;white-space:nowrap}.agenda-event span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-day-events .agenda-event{display:block}.agenda-day-events .agenda-event span{display:block}
.agenda-hearing{background:#fff4dd;border-color:#805400;color:#805400}.agenda-more{display:block;font-size:11px;margin-top:6px}
.agenda-selected{margin-top:20px}.agenda-selected h3{margin:0 0 12px;font-size:13px;font-weight:600}.agenda-selected p{font-size:12px;color:var(--v1-muted)}.agenda-selected .agenda-event{min-height:40px;padding:10px;font-size:12px;gap:14px}.agenda-selected .agenda-event span{white-space:normal;overflow-wrap:anywhere}
@media(max-width:650px){.agenda-toolbar{gap:12px}.agenda-month-nav{gap:8px;justify-content:space-between;width:100%}.agenda-links{width:100%;justify-content:space-between}.agenda-day{padding:2px;min-height:48px}.agenda-day-events{display:none}.agenda-date{min-height:40px;flex-direction:column;justify-content:center;padding:3px 0;gap:2px}.agenda-day-count{display:block;font-size:9px;color:#345681;min-height:12px}.agenda-day-count:not(:empty)::after{content:' ·'}.agenda-weekdays span{font-size:10px}.agenda-month-nav h3{min-width:0}.guided-clients>input{font-size:16px!important}}

/* Login keeps the existing form and authentication fields. */
#access.access{grid-template-columns:1fr 1fr;background:#fff}
#access .access-story{padding:48px;justify-content:center;align-items:center;gap:32px;background:#f7f9fc;border-inline-end:1px solid #e4eaf2}
#access .access-logo{display:block;width:min(330px,100%);height:auto}
#access .access-story h1{font:500 clamp(20px,2vw,28px)/1.4 'Segoe UI',Arial,sans-serif;text-align:center;letter-spacing:-.4px;margin:0;color:#142338}
#access .access-form{box-sizing:border-box;max-width:440px;padding:40px;gap:18px}
@media(max-width:750px){#access.access{grid-template-columns:1fr}#access .access-story{padding:28px 24px;gap:16px;min-height:0;border-inline-end:0;border-bottom:1px solid #e4eaf2}#access .access-logo{width:150px}#access .access-story h1{font-size:20px}#access .access-form{padding:28px 24px;max-width:440px}#workspace .filters:has(.guided-clients){flex-wrap:wrap}.filters .guided-clients{flex-basis:100%}#workspace .filters:has(.guided-clients)>.button{margin-top:0}}
/* Directory actions use the existing density and surfaces on desktop and mobile. */
.directory-actions{display:inline-block;flex:0 0 44px;margin-left:auto;text-align:left}.directory-actions summary{display:flex;align-items:center;justify-content:center;width:44px;min-height:44px;cursor:pointer;list-style:none;border-radius:8px;color:var(--text);font-size:24px;letter-spacing:1px}.directory-actions summary::-webkit-details-marker{display:none}.directory-actions summary:hover,.directory-actions[open] summary{background:var(--panel-soft,#f1f5f9)}.directory-actions summary:focus-visible{outline:2px solid var(--focus,#2563eb);outline-offset:2px}.directory-action-list{position:fixed;z-index:80;width:200px;padding:6px;background:var(--panel,#fff);border:1px solid var(--border,#e4eaf2);border-radius:12px;box-shadow:0 4px 8px #1423380a,0 12px 24px #1423381a}.directory-action-list a,.directory-action-list button{display:flex;align-items:center;width:100%;min-height:44px;padding:8px 12px;border:0;border-radius:6px;background:transparent;color:var(--text);font:inherit;text-decoration:none;text-align:left;white-space:normal}.directory-action-list a:hover,.directory-action-list button:hover{background:var(--panel-soft,#f1f5f9)}.directory-action-list [data-action=v1-client-archive]{color:var(--danger,#b42332)}.m-client-card header>div{min-width:0}.admin-settings-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--text)}.admin-settings-link svg{width:20px;height:20px}#more-menu[hidden]{display:none!important}@media(max-width:800px){.admin-settings-link{display:none}}
.directory-actions .directory-action-list .button{display:flex;align-items:center;width:100%;min-height:44px;padding:8px 12px;border:0;border-radius:6px;background:transparent;font:inherit;text-align:left;justify-content:flex-start;box-shadow:none}.directory-actions .directory-action-list [data-action=v1-client-archive]{color:var(--danger,#b42332)}
