/* Presentation only: preserve existing layout, viewport and interaction rules. */
:root{--accent:#237a63;--accent-soft:#edf6f2;--canvas:#f7f9f8;--surface:#fff;--ink:#20312d;--muted:#61716c;--line:#e1e9e5;--ui-radius:8px;--ui-ease:220ms ease}
body{color:var(--ink);background:var(--canvas)}
button,input,select,textarea{font-family:inherit}
button{transition:background-color var(--ui-ease),border-color var(--ui-ease),color var(--ui-ease),box-shadow var(--ui-ease)}
a{transition:color var(--ui-ease),text-decoration-color var(--ui-ease);text-underline-offset:3px}
input:not([type=checkbox]):not([type=radio]),select,textarea{border-color:var(--line);border-radius:var(--ui-radius);color:var(--ink);transition:border-color var(--ui-ease),box-shadow var(--ui-ease)}
input::placeholder,textarea::placeholder{color:#78867f;opacity:1}
input[type=checkbox],input[type=radio]{accent-color:var(--accent)}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #80b8a5;outline-offset:2px}
.primary,.actions .primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}
.primary:disabled{cursor:not-allowed}
.card,.connection-card,.setup,.pendinglist{border-color:var(--line);border-radius:12px;box-shadow:0 2px 8px #20312d04}
.card h2,.connection-card h2{font-size:17px;line-height:1.4;font-weight:650;letter-spacing:-.2px}
.card p,.setup p,.pendinglist p,.connection-description,.channel-heading p,.authbox p{font-size:14px;line-height:1.6;color:var(--muted)}
.card button,.connection-buttons button,.formgrid .actions button,.channel-heading button{font-size:13px;line-height:1.4;min-height:38px;border-radius:var(--ui-radius);padding:9px 13px}
.connection-footnote,.connection-detail small,.channel-summary,.channel-help,.pendingrow small,.authfoot,.authfoot a{font-size:12px;line-height:1.5;color:var(--muted)}
.connection-detail>b{font-size:14px;color:var(--ink);line-height:1.5}
.connection-detail>span,.channel-eyebrow,.caption,.workspace label{font-size:10px;line-height:1.4;color:var(--muted);letter-spacing:.09em}
.title h1,.channel-heading h1,.accountpage h1{font-weight:650;letter-spacing:-.5px;line-height:1.25}
.title p,.threadplaceholder p,.empty,.information-empty{color:var(--muted);line-height:1.6}
nav button{color:#5d6f67}nav button.active{color:#1c674f;background:var(--accent-soft)}
.preview b{font-size:13px;line-height:1.35;color:var(--ink)}
.preview p{font-size:12px;line-height:1.45;color:var(--muted);margin:5px 0 8px}
.preview small,.listfoot,.threadhead p,.assignment,.inbox-information dt{font-size:12px;color:var(--muted)}
.chatitem{border-bottom-color:#eaf0ec}
.chatitem.active{background:#edf6f2;box-shadow:inset 2px 0 var(--accent)}
.threadhead h2{font-size:15px;line-height:1.35;font-weight:650;color:var(--ink)}
.threadhead p{line-height:1.4;margin-top:3px}
.message p{color:var(--ink);font-size:15px;line-height:1.5}
.message>small,.message time{font-size:12px;line-height:1.35;color:var(--muted)}
.message.out{background:#edf6f1;border-color:#dcebe3}
.message.in{border-color:#e3ebe7}
.inbox-state{font-size:11px;font-weight:600;letter-spacing:0}
.inbox-state-filters button{font-size:12px;color:var(--muted);border-radius:var(--ui-radius)}
.inbox-state-filters button.active{color:#1c674f;border-color:#acd3c2;background:var(--accent-soft)}
.controls input,.controls select,.controls .picker-trigger{font-size:13px}
.controls .tabs button,.composer .tabs button{font-size:12px;line-height:1.4}
.resolve,.threadhead .customer-open{font-size:12px;line-height:1.4;border-radius:var(--ui-radius)}
.composer textarea{border-color:var(--line);border-radius:var(--ui-radius)}
.actions small{color:var(--muted);line-height:1.5}
.inbox-information dd{font-size:14px;line-height:1.5;color:var(--ink)}
.information-heading h2,.customer-summary summary{color:var(--ink);font-weight:600}
.inbox-information .information-details,.inbox-information .customer-records{font-size:13px;line-height:1.4;border-radius:var(--ui-radius)}
.customer-summary{font-size:13px;line-height:1.5}.customer-summary summary{font-size:13px}
.customer-summary small,.summary-records small,.record-policy-row small{font-size:12px;color:var(--muted);line-height:1.5}
.customer-summary input,.customer-summary textarea,.owner-form select{border-radius:var(--ui-radius);border-color:var(--line)}
dialog{border-color:var(--line);box-shadow:0 20px 70px #173e2c26}
dialog::backdrop{background:#18342b66;backdrop-filter:blur(3px)}
#modalbody h2,.customer-dialog h2,.customer-record-dialog h2{font-weight:650;line-height:1.35;letter-spacing:-.3px}
#modalbody>p,.customer-record-dialog>p,.customer-dialog header p{font-size:14px;line-height:1.6;color:var(--muted)}
.formgrid{gap:16px}.formgrid label,.authbox label,.customer-record-dialog .record-form label{font-size:13px;line-height:1.5;color:#52655c}
.formgrid input,.formgrid select,.authbox input,.customer-record-dialog .record-form input,.customer-record-dialog .record-form select{font-size:14px;border-radius:var(--ui-radius);border-color:var(--line)}
.formgrid legend,.formgrid p,.formgrid .checkrow,.customer-dialog dt,.customer-help{font-size:12px;line-height:1.6;color:var(--muted)}
.customer-dialog dd{font-size:14px;line-height:1.5;color:var(--ink)}
.authbox .autherror,.formgrid .autherror{color:#a53636}.authbox .authsuccess{color:#237a63}
@media(hover:hover){
 button:hover:not(:disabled):not(.primary):not(.chatitem):not(.active):not(.customer-sheet-backdrop){border-color:#b8cdc1;background-color:#f1f6f3}
 .primary:hover:not(:disabled){background:#1c6652;border-color:#1c6652;box-shadow:0 2px 6px #237a6320}
 .chatitem:hover:not(.active){background:#f5f8f6}
 a:hover{color:#195d49;text-decoration:underline}
}
@media(max-width:1180px){
 .connection-buttons{gap:8px}.connection-buttons button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 dialog{box-sizing:border-box}.formgrid label,.connection-detail,.customer-dialog dd{min-width:0;overflow-wrap:anywhere}
}
@media(max-width:760px){
 /* Retain the keyboard/visual-viewport handling and compact mobile header. */
 input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}
 .preview b{font-size:14px}.preview p{font-size:12px}
 .threadhead h2{font-size:14px}.threadhead p{font-size:11px}
 .threadhead .customer-open,.threadhead .resolve{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:40px;min-height:40px;padding:8px 10px;font-family:inherit;font-size:11px;font-weight:500;line-height:1.4;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:var(--ui-radius);white-space:nowrap;box-shadow:none}
 .card,.connection-card{padding:20px}
 .card button,.connection-buttons button,.formgrid .actions button{min-height:44px;font-size:14px}
 .formgrid{gap:14px}.formgrid input:not([type=checkbox]):not([type=radio]),.formgrid select{min-height:44px}
 .customer-summary button{font-size:14px}.customer-summary summary{font-size:14px}
 .customer-record-dialog .record-form label{font-size:13px}
 .customer-dialog dd{font-size:14px}
 .authpanel{padding:28px 22px}.authbox p{font-size:14px}
}
@media(prefers-reduced-motion:reduce){button,a,input,select,textarea{transition:none!important}}
/* Team cards: identity first, status/access below, actions in their own row. */
.card[data-person]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:start;align-items:start;gap:12px 10px;padding:24px}
.card[data-person][hidden]{display:none}
.card[data-person]>.avatar{grid-row:1;grid-column:1;margin:0;width:44px;height:44px}
.card[data-person]>.rolebadge{grid-row:1;grid-column:2;justify-self:end;align-self:center;max-width:100%;font-size:11px;line-height:1.4;letter-spacing:0;padding:5px 9px;border-radius:6px;background:#f0f4f2;color:#53685d}
.card[data-person]>h2{grid-row:2;grid-column:1/-1;margin:3px 0 0;font-size:16px;line-height:1.45;overflow-wrap:anywhere}
.card[data-person]>p{grid-column:1/-1;margin:0;font-size:13px;line-height:1.55}
.card[data-person]>p:nth-of-type(1){grid-row:3;color:var(--muted)}
.card[data-person]>p:nth-of-type(2){grid-row:4;color:#52695c}
.card[data-person]>p:nth-of-type(3){grid-row:5;border-top:1px solid var(--line);padding-top:14px;margin-top:2px;color:var(--muted)}
.card[data-person]>button{grid-row:6;margin:4px 0 0;min-height:40px;max-width:100%;font-size:13px;line-height:1.4;padding:9px 12px;white-space:normal}
.card[data-person]>button[data-availability]{grid-column:1;justify-self:start;background:#edf6f2;border-color:#cce2d7;color:#216b52}
.card[data-person]>button[data-staff]{grid-column:2;justify-self:end}
@media(max-width:760px){.card[data-person]{padding:20px;gap:12px 8px}.card[data-person]>button{min-height:44px;font-size:13px;padding:9px 10px}}
