:root{--ink:#23304f;--primary:#5556c4;--tint:#eeedff;--muted:#666d85;--line:#e1e3f0;--bg:#f7f7fc}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 19px;border:1px solid var(--primary);border-radius:10px;background:var(--primary);color:white;font-weight:600;cursor:pointer;min-height:48px;text-align:center}button:hover,.button:hover{filter:brightness(.94);text-decoration:none}.secondary{background:white;color:var(--primary);border-color:var(--line)}.quiet{background:none;border:0;color:var(--muted);padding:8px;min-height:44px}input,select,textarea{width:100%;padding:12px;border:1px solid #cdd0e3;border-radius:8px;background:white;color:var(--ink);min-height:48px}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #9396f7;outline-offset:3px}label{display:block;font-size:14px;font-weight:600;margin:18px 0 10px}label input,label select,label textarea{display:block;margin-top:7px;font-size:16px;font-weight:400}h1,h2,h3,p{margin-top:0}h1{font-size:38px;line-height:1.15;letter-spacing:-1.3px;margin-bottom:14px}h2{font-size:24px;line-height:1.3;letter-spacing:-.5px}h3{font-size:19px}small,.muted{color:var(--muted)}small{font-size:14px}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:700;color:var(--primary);margin-bottom:15px}.logo{font-size:23px;font-weight:750;letter-spacing:-.7px;color:var(--ink);white-space:nowrap}.logo span{color:#7b83f5}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;padding:32px 20px;background:white;border-right:1px solid var(--line)}.workspace{margin:40px 0 25px;padding:18px;border:1px solid var(--line);border-radius:12px}.workspace small{font-size:11px;letter-spacing:1.5px;display:block}.workspace strong{display:block;margin-top:5px}.sidebar nav{display:grid;gap:7px}.sidebar nav a{padding:13px 15px;color:var(--muted);font-size:15px;border-radius:8px}.sidebar nav a.active{background:var(--tint);color:var(--primary);font-weight:650}.shell{margin-left:250px}.topbar{background:white;min-height:82px;padding:17px 36px;box-shadow:0 1px 6px #23304f07;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;border-bottom:1px solid var(--line)}.topbar>div{display:flex;align-items:center;gap:12px}.identity{font-weight:600}.inline{display:inline}.content{max-width:1300px;padding:44px 36px 60px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}.page-heading p:last-child{margin-bottom:0}.panel{padding:28px;background:white;border:1px solid var(--line);border-radius:16px;margin-bottom:24px;box-shadow:0 2px 3px #23304f03}.panel.narrow{max-width:760px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:28px}.stats article{background:white;border:1px solid var(--line);border-radius:14px;padding:25px}.stats strong{display:block;font-size:38px;margin-top:10px;font-weight:650}.stats .small-value{font-size:24px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.cards .panel{margin:0}.client-card{overflow-wrap:anywhere}.avatar{width:48px;height:48px;border-radius:13px;background:#eeecff;color:#6361b5;display:grid;place-items:center;font-size:24px;font-weight:600;margin-bottom:18px}.card-stats{display:flex;gap:50px;border-block:1px solid var(--line);padding:20px 0;margin:20px 0}.card-stats b{display:block;font-size:28px}.card-stats span{color:var(--muted);font-size:14px}.actions{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}.badge{background:var(--tint);color:#5051af;display:inline-block;border-radius:6px;padding:5px 9px;font-size:13px;font-weight:600}.badge.warn{background:#fff0df;color:#91511d}.notice{padding:18px 20px;background:var(--tint);border:1px solid #d8d7f7;border-radius:10px;margin:0 0 22px;overflow-wrap:anywhere}.notice.error{background:#fff2e8;border-color:#efd4bb;color:#8d4b24}summary{font-weight:600;cursor:pointer;min-height:40px;padding:5px 0}details form{margin-top:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.form-grid .wide{grid-column:1/-1}.form-grid button{justify-self:start;grid-column:1/-1;margin-top:12px}.connection{display:flex;justify-content:space-between;align-items:center;gap:20px}.connection p{margin-bottom:0}.mapping-row{display:grid;grid-template-columns:1fr 1fr 1.3fr auto;gap:15px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:20px}.mapping-row button{margin-bottom:10px}.table-wrap{overflow:auto;margin:24px 0}table{border-collapse:collapse;width:100%;text-align:left;font-size:14px}th,td{padding:12px;border-bottom:1px solid var(--line);white-space:nowrap;max-width:300px;overflow:hidden;text-overflow:ellipsis}th{background:var(--bg)}caption{text-align:left;color:var(--muted);margin-bottom:10px}.filters{display:flex;align-items:end;gap:12px;margin-bottom:24px}.filters label{margin:0}.grow{flex:1}.lead-head,.lead-row{display:grid;grid-template-columns:1.2fr 1.2fr 1fr .8fr;gap:18px;padding:20px 12px;border-bottom:1px solid var(--line);align-items:center}.lead-head{font-size:14px;color:var(--muted);padding-top:0}.lead-row{color:var(--ink);font-size:14px;overflow-wrap:anywhere}.lead-row:hover{background:var(--bg);text-decoration:none}.lead-row small{display:block;margin-top:4px}.lead-name{position:relative;padding-left:0}.dot{position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:var(--primary)}.pagination{display:flex;justify-content:space-between;gap:15px;margin-top:22px;font-size:14px}.pagination a{padding:8px}.dashboard-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:24px}.accent{background:#eeecff;padding:35px}.accent h2{font-size:32px}.accent .muted{margin-top:28px}.empty{padding:45px 15px;text-align:center}.empty p{color:var(--muted);max-width:420px;margin:0 auto 22px}.large-icon{font-size:42px;color:var(--primary);margin-bottom:20px}.due,.log{display:flex;gap:16px;justify-content:space-between;padding:18px 0;border-top:1px solid var(--line);flex-wrap:wrap}.log{font-size:14px}.contact a{display:block}.check{display:flex;align-items:center;gap:12px}.check input{width:20px;min-height:20px;margin:0}dt{font-weight:600}dd{margin:0 0 15px;color:var(--muted)}code{white-space:normal;overflow-wrap:anywhere}.auth{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;min-height:100dvh}.auth-story{background:#23304f;color:#f5f5ff;padding:65px max(30px,6vw)}.auth-story .logo{color:#f5f5ff;display:block;margin-bottom:100px}.auth-story .eyebrow{color:#bbbdf4}.auth-story h1{font-size:clamp(42px,4.3vw,68px);line-height:1.12}.auth-story em{font-style:normal;color:#bebaff}.auth-story>p:not(.eyebrow){font-size:18px;color:#c9cce4;max-width:450px}.pill{font-size:14px;color:#c9cce4;margin-top:50px}.auth-form{max-width:480px;width:100%;margin:auto;padding:50px 30px}.auth-form h2{font-size:32px}.auth-form form{margin:30px 0 22px}.auth-form button{width:100%;margin-top:20px}.auth-form>p:last-child{font-size:14px;margin-top:25px}footer{text-align:center;padding:24px;font-size:14px;color:var(--muted);margin-left:250px}body:has(.auth) footer{margin-left:0}footer a{color:#5556c4;font-weight:600}.back-top{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom));border-radius:50%;box-shadow:0 4px 16px #23304f30;transition:transform .2s}.back-top:hover{transform:translateY(-3px)}[hidden]{display:none!important}@media(max-width:1000px){.sidebar{width:210px;padding:25px 15px}.logo{font-size:20px}.shell,footer{margin-left:210px}.content{padding:30px 22px}.topbar{padding:15px 22px}.identity{display:none}.dashboard-grid{grid-template-columns:1fr}.filters{flex-wrap:wrap}.mapping-row{grid-template-columns:1fr 1fr}.mapping-row>label:nth-child(3){grid-column:1/2}}@media(max-width:700px){.sidebar{position:static;width:auto;padding:20px 18px 0;border-right:0}.workspace{display:none}.sidebar nav{display:flex;overflow-x:auto;gap:5px;margin-top:18px;padding-bottom:12px}.sidebar nav a{white-space:nowrap;padding:10px 13px;font-size:14px}.shell,footer{margin-left:0}.topbar{min-height:60px;padding:8px 18px;font-size:12px}.topbar>span{display:none}.topbar>div{width:100%;justify-content:flex-end}.content{padding:28px 16px}.page-heading{align-items:start;flex-direction:column;gap:16px}h1{font-size:32px}.panel{padding:20px;border-radius:12px}.stats{gap:8px}.stats article{padding:16px 12px}.stats small{font-size:13px;line-height:1.3;display:block}.stats strong{font-size:29px}.stats .small-value{font-size:18px}.form-grid{grid-template-columns:1fr}.connection{align-items:start;flex-direction:column}.mapping-row{display:block;position:relative;padding:12px;background:var(--bg);border-radius:10px}.mapping-row button{margin:8px 0}.lead-head{display:none}.lead-row{grid-template-columns:1fr auto;gap:6px 12px;padding:18px 0}.lead-row>span:nth-child(2){grid-column:1;grid-row:2;padding-left:12px}.lead-row>span:nth-child(3){grid-column:1;grid-row:3;padding-left:12px;color:var(--muted)}.lead-row>span:last-child{grid-column:2;grid-row:1/4;text-align:right;max-width:140px}.filters label.grow{flex-basis:100%}.filters .button,.filters button{padding:11px;font-size:14px}.pagination{flex-direction:column}.cards{grid-template-columns:1fr}.auth{grid-template-columns:1fr;grid-template-rows:auto 1fr}.auth-story{padding:25px}.auth-story .logo{margin:0}.auth-story>:not(.logo){display:none}.auth-form{padding:45px 25px}.auth-form h2{font-size:30px}.eyebrow{font-size:11px}.empty{padding:30px 5px}.log{display:grid;gap:4px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Next Chapter identity: navy, periwinkle and lavender. */
:root{--brand-navy:#23304f;--brand-periwinkle:#7b83f5;--brand-lavender:#cdc9ff}
.logo,.auth-story .logo{display:inline-flex;align-items:center;gap:9px;text-decoration:none;line-height:1.2}
.logo .brand-name{color:inherit}.brand-icon{display:block;width:36px;height:36px;flex-shrink:0;object-fit:contain;border-radius:9px}
.sidebar .logo{font-size:21px;letter-spacing:-.8px}.sidebar .brand-icon{width:30px;height:30px;border-radius:8px}
.auth-story .logo{color:#f5f5ff}.auth-story{background:var(--brand-navy)}
button:hover,.button:hover{box-shadow:0 4px 14px #5556c41a}
@media(max-width:1000px) and (min-width:701px){.sidebar .logo{font-size:18px;gap:7px}.sidebar .brand-icon{width:28px;height:28px}}
@media(max-width:700px){.sidebar .logo{font-size:21px}.auth-story .brand-icon{width:32px;height:32px}}
.brand-icon{background:var(--brand-navy)}

/* Keep the three approved formats distinct: horizontal UI logo, square app icon, favicon. */
.logo .brand-logo{display:block;width:220px;max-width:100%;height:auto;object-fit:contain;background:none;border-radius:0}
.sidebar .logo{display:block}.sidebar .logo .brand-logo{width:210px}
.auth-story .logo .brand-logo{width:250px}
@media(max-width:1000px) and (min-width:701px){.sidebar .logo .brand-logo{width:180px}}
@media(max-width:700px){.sidebar .logo .brand-logo{width:210px}.auth-story .logo .brand-logo{width:220px}}

.saved-setting-value{overflow-wrap:anywhere;min-width:0}

/* Keep header links and form actions aligned on the same center line. */
.topbar>div>form{display:flex;align-items:center;margin:0}.topbar .quiet{font-size:14px;line-height:1.55;font-weight:600;min-height:44px;padding:8px;white-space:nowrap}

.client-create>summary{list-style:none;background:var(--tint);color:var(--primary);border-radius:10px;padding:12px 16px;min-height:48px}.client-create>summary::-webkit-details-marker{display:none}.client-create>summary::marker{content:""}.client-create>summary:hover{background:#e5e3ff}.client-create>summary:focus-visible{outline:3px solid #9396f7;outline-offset:3px}

/* Compact client cards retain their width even when there is only one client. */
.client-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:20px;align-items:start}
.client-grid .client-card{padding:20px;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.client-grid .client-card:hover{border-color:#bcbaf0;box-shadow:0 8px 24px #5556c414;transform:translateY(-2px)}
.client-grid .client-card:focus-within{border-color:#a6a3eb;box-shadow:0 0 0 3px #eeedff}
.client-heading{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.client-heading .avatar{flex-shrink:0;margin:0;width:44px;height:44px;font-size:22px}
.client-heading>div:last-child{min-width:0}
.client-heading h2{font-size:20px;line-height:1.3;margin:0 0 4px}
.client-heading p{margin:0;font-size:14px;color:var(--muted)}
.client-email{display:block;color:var(--muted);font-size:14px;overflow-wrap:anywhere}
.client-email:hover{color:var(--primary);text-decoration:underline}
.client-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:14px}
.client-meta small,.client-meta .badge{font-size:14px}
.client-card .card-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0;padding:12px 0}
.client-card .card-stats span{display:flex;align-items:baseline;gap:8px}
.client-card .card-stats b{font-size:24px;line-height:1.3;color:var(--ink)}
.client-card .client-actions{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.client-actions form{margin:0;display:flex}
.client-actions button{width:100%;padding:9px 12px;min-height:44px;font-size:16px;transition:background .18s ease,border-color .18s ease}
.client-actions button:hover{background:#4546ad}
.client-actions .secondary:hover{background:var(--tint);border-color:#bcbaf0}
.client-password{margin-top:8px}
.client-password>summary{list-style:none;display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;color:var(--primary);font-size:16px;transition:background .18s ease,border-color .18s ease}
.client-password>summary::-webkit-details-marker{display:none}
.client-password>summary::marker{content:""}
.client-password>summary:hover,.client-password[open]>summary{background:var(--tint);border-color:#bcbaf0}
.client-password>summary:focus-visible{outline:3px solid #9396f7;outline-offset:3px}
.client-password form{padding-top:4px}
@media(max-width:700px){.client-grid{grid-template-columns:1fr}}

.sheet-browser{padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.sheet-browser h3{margin:0;font-size:18px}.sheet-browser .connection{gap:12px;flex-wrap:wrap}.sheet-browser label{display:block;margin-top:12px}.sheet-search{display:flex;align-items:end;gap:10px}.sheet-search label{flex:1;min-width:0}.sheet-browser [hidden]{display:none!important}.sheet-browser #sheet-more{margin-top:12px}
@media(max-width:600px){.sheet-search{align-items:stretch;flex-direction:column}.sheet-browser{padding:14px}}

/* One clear import path at a time. */
.sheet-create form{margin-top:20px}.sheet-create [hidden]{display:none!important}
.sheet-create .import-method{display:block;max-width:440px;margin-bottom:16px}
.sheet-selects{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:12px 0}
.sheet-selects label{min-width:0}.sheet-create select{width:100%}
.sheet-search-options>summary,.source-name-options>summary{list-style:none;color:var(--primary);font-size:14px;font-weight:500;padding:8px 0}
.sheet-search-options>summary::-webkit-details-marker,.source-name-options>summary::-webkit-details-marker{display:none}
.sheet-search-options>summary:hover,.source-name-options>summary:hover{text-decoration:underline}
.sheet-search-options{margin:8px 0}.source-name-options{margin-top:12px}
.sheet-create #sheet-browser-status:empty{display:none}.sheet-create #sheet-browser-status{margin:8px 0;color:var(--muted);font-size:14px}
.sheet-create #sheet-url,.sheet-create #csv-file{display:block;margin:16px 0}
.sheet-create #sheet-reconnect{margin:8px 0}
@media(max-width:600px){.sheet-selects{grid-template-columns:1fr}}

.styled-select{position:relative;margin-top:6px;min-width:0}.styled-select .select-trigger{width:100%;min-height:48px;justify-content:space-between;text-align:left;background:white;color:var(--ink);border:1px solid #d6d7ed;padding:12px 40px 12px 14px;border-radius:10px;font-size:16px;font-weight:400;line-height:1.4;position:relative}
.select-trigger::after{content:"";position:absolute;right:16px;top:18px;width:7px;height:7px;border-right:2px solid var(--primary);border-bottom:2px solid var(--primary);transform:rotate(45deg)}
.styled-select .select-trigger:hover:not(:disabled){border-color:var(--primary);background:#faf9ff}.styled-select .select-trigger:focus-visible{outline:3px solid #dad7ff;outline-offset:2px}.styled-select .select-trigger:disabled{background:#f1f1f8;color:var(--muted);cursor:not-allowed}
.select-options{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;max-height:260px;overflow:auto;background:white;border:1px solid #d6d7ed;border-radius:12px;box-shadow:0 12px 30px #23304f24;padding:6px}
.select-options button{width:100%;display:block;min-height:44px;border:0;border-radius:7px;background:white;color:var(--ink);text-align:left;font-size:16px;font-weight:400;padding:10px 12px;white-space:normal;overflow-wrap:anywhere}
.select-options button:hover,.select-options button:focus{background:#eeedff;outline:none}.select-options button[aria-selected=true]{background:#e5e2ff;color:#4942aa;font-weight:600}.sheet-retry{margin:4px 8px 12px 0}

.lead-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.lead-actions form{margin:0}.row-name{display:flex;gap:12px;align-items:flex-start;min-width:0}.row-name>a{min-width:0;overflow-wrap:anywhere}.remark-toggle{min-width:36px;min-height:36px;padding:2px;font-size:22px;line-height:1}.remarks-panel{padding:20px;background:var(--tint,#eeedff);border-radius:12px;margin:0 0 12px}.remarks-panel[hidden]{display:none}.remark{border-bottom:1px solid #d8d8ed;padding:12px 0}.remark p{white-space:normal;overflow-wrap:anywhere;margin:6px 0}.remarks-panel textarea{width:100%}.lead-row .lead-remark{overflow-wrap:anywhere;font-weight:700}#sync-results{white-space:pre-line}.lead-row:focus-within{background:#f1f0ff}

.simple-map{max-width:1000px}.simple-fields{max-width:740px}.simple-field{display:grid;grid-template-columns:130px minmax(0,1fr);gap:8px 20px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);margin:0;font-size:16px}.simple-field select{margin:0}.simple-field small{grid-column:2;font-weight:400;overflow-wrap:anywhere}.extra-options{margin:20px 0}.extra-options>summary{padding:12px 16px;border-radius:10px;background:var(--tint);color:var(--primary)}.extra-field{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.extra-field button{margin-bottom:10px}.mapping-preview{padding:20px;background:var(--bg);border-radius:12px;margin:24px 0}.mapping-preview td{max-width:300px;overflow-wrap:anywhere}.mapping-preview details p{font-size:14px;margin:8px 0}@media(max-width:700px){.simple-field{grid-template-columns:1fr;gap:6px}.simple-field small{grid-column:1}.extra-field{grid-template-columns:1fr}.mapping-preview{padding:12px}.extra-field button{justify-self:end}}

.extra-options>summary{list-style:none;transition:background .18s}.extra-options>summary::-webkit-details-marker{display:none}.extra-options>summary:hover{background:#e1dfff}.simple-field .styled-select{min-width:0}

/* Comfortable native dropdown spacing throughout the portal. */
select{appearance:none;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%235c568a' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px}
.status-button{cursor:pointer;min-height:36px;font-size:14px;padding:6px 12px;border:1px solid transparent;box-shadow:none;white-space:normal}.status-button:hover{border-color:var(--primary,#5952c8);filter:brightness(.95)}
#status-dialog{width:min(460px,calc(100% - 32px));max-height:90dvh;overflow:auto;padding:28px;border:1px solid #dfdef2;border-radius:20px;color:#24304e;background:white;box-shadow:0 24px 80px #232d4940}#status-dialog::backdrop{background:#18213b80}#status-dialog h2{margin:0 0 8px}#status-dialog form{display:grid;gap:16px}#status-dialog .actions{flex-wrap:wrap}#lead-results[aria-busy="true"]{opacity:.6}

.numbered-leads .lead-head,.numbered-leads .lead-row{grid-template-columns:36px minmax(0,1.2fr) minmax(0,1.2fr) minmax(0,1fr) minmax(0,.8fr) 36px;gap:12px}.row-index{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.numbered-leads .remark-toggle{align-self:start;justify-self:end}.numbered-leads .row-name{display:block}
@media(max-width:700px){.numbered-leads .lead-row{position:relative;grid-template-columns:28px minmax(0,1fr);gap:6px 10px;padding:18px 48px 18px 0}.numbered-leads .lead-row>.row-index{grid-column:1;grid-row:1;padding:0;text-align:left}.numbered-leads .lead-row>.row-name{grid-column:2;grid-row:1;padding:0}.numbered-leads .lead-row>span:nth-child(3){grid-column:2;grid-row:2;padding:0}.numbered-leads .lead-row>span:nth-child(4){grid-column:2;grid-row:3;padding:0;color:var(--muted)}.numbered-leads .lead-row>span:nth-child(5){grid-column:2;grid-row:4;text-align:left;max-width:none}.numbered-leads .remark-toggle{position:absolute;right:0;top:18px}}

.remark-history-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.remark-history-heading h3{margin:0}.remark-history-heading button{font-size:14px}.remarks-panel .remark{padding:14px 0}.remarks-panel .remark:last-child{border-bottom:0}.remarks-panel .remark p{margin:8px 0}.remarks-panel .remark small{color:var(--muted);font-size:14px}

.numbered-leads .lead-head,.numbered-leads .lead-row{grid-template-columns:36px minmax(0,1.2fr) minmax(0,1.2fr) minmax(0,1fr) minmax(0,.8fr)}.modal-history{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.modal-history h3{margin:0 0 8px}.modal-history .remark:last-child{border-bottom:0}.modal-history .remark p{margin:8px 0}#modal-remark-history{max-height:240px;overflow:auto}.modal-history small{font-size:14px;color:var(--muted)}
@media(max-width:700px){.numbered-leads .lead-row{grid-template-columns:28px minmax(0,1fr);padding-right:0}}

.google-signin{width:100%;justify-content:center;margin-top:24px;background:#fff;color:var(--text)}.login-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:14px;margin:22px 0}.login-divider:before,.login-divider:after{content:"";height:1px;flex:1;background:var(--line)}.auth-form .login-divider+form{margin-top:0}

/* Google light button: official brand colours and unmodified Google G asset. */
.auth-form .google-signin{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:44px;padding:12px;box-sizing:border-box;border:1px solid #747775;border-radius:4px;background:#fff;color:#1f1f1f;font-family:Arial,sans-serif;font-size:16px;font-weight:500;line-height:20px;text-decoration:none;box-shadow:none;transition:background-color .15s,box-shadow .15s}.google-signin img{width:20px;height:20px;flex:0 0 20px;object-fit:contain}.auth-form .google-signin:hover{background:#f8faff;border-color:#747775;box-shadow:0 1px 3px #3c404326;transform:none}.auth-form .google-signin:focus-visible{outline:3px solid #4285f4;outline-offset:3px}.auth-form .google-signin:active{background:#edf2fc}

/* Compact sheet controls with separate space for optional activity. */
.connected-sheet-cards{margin-bottom:24px;align-items:start}.connected-sheet-cards>.panel{padding:22px;margin:0;min-width:0}.connected-sheet-cards h2{font-size:20px;line-height:1.35;margin:10px 0 4px}.connected-sheet-cards p{margin:8px 0;font-size:14px}.connected-sheet-cards .sheet-tab-name{font-size:18px;font-weight:600;color:var(--text)}.connected-sheet-cards .actions{margin:16px 0;gap:8px;flex-wrap:wrap}.connected-sheet-cards .actions button{padding:10px 14px;min-height:42px}.connected-sheet-cards details{margin-top:12px}.sheet-sync-history{margin-top:24px;margin-bottom:32px}.sheet-sync-history>summary{font-size:18px;font-weight:600;cursor:pointer;padding:4px 0}.sheet-sync-history[open]>summary{margin-bottom:16px}.sheet-sync-history .log{gap:12px}.sheet-last-sync strong{font-weight:500}.sheet-create:not([open]){padding:16px 20px}
@media(max-width:700px){.connected-sheet-cards{grid-template-columns:1fr}.connected-sheet-cards>.panel{padding:18px}.sheet-sync-history .log{display:grid;grid-template-columns:1fr}}

/* Device-friendly controls and compact mobile screens. */
.mobile-label{display:none}.contact-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.contact-actions a,.contact-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;background:#fff;color:var(--primary);box-shadow:none}.contact-actions .contact-whatsapp{color:#146c43;background:#f0faf4;border-color:#cde8d8}.contact-actions a:hover,.contact-actions button:hover{filter:brightness(.96)}.contact-actions :focus-visible{outline:3px solid #bcb6ff;outline-offset:2px}.contact-dialog{width:min(440px,calc(100% - 24px));max-height:85dvh;overflow:auto;border:1px solid var(--line);border-radius:18px;padding:24px;color:var(--text);background:white}.contact-dialog::backdrop{background:#18213b80}input[type=checkbox]{accent-color:var(--primary)}
@media(max-width:700px){
 html{scroll-padding-top:16px}body{font-size:16px;-webkit-text-size-adjust:100%}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,.button,input,select{min-height:44px}input,select,textarea{font-size:16px}select{appearance:auto;background-image:none;padding-right:16px}button,.button{padding:10px 14px}h1{font-size:28px;line-height:1.2}h2{font-size:22px;line-height:1.3}h3{font-size:18px}.sidebar{padding:16px 16px 0}.sidebar .brand-logo{max-width:190px;height:auto}.sidebar nav{margin-top:12px;gap:4px;scrollbar-width:none}.sidebar nav a{min-height:44px;display:flex;align-items:center}.topbar{padding:8px 16px;min-height:52px}.topbar>div{width:100%;display:flex;justify-content:flex-end;align-items:center;gap:6px;flex-wrap:wrap}.topbar .identity{margin-right:auto;font-size:14px}.topbar .quiet{padding:8px;font-size:14px}.content{padding:20px 12px calc(32px + env(safe-area-inset-bottom));min-width:0}.page-heading{gap:12px;margin-bottom:18px}.page-heading h1{margin:4px 0 8px}.page-heading .eyebrow{display:none}.page-heading .muted{margin:0;font-size:14px}.panel{padding:16px;border-radius:14px;margin-bottom:16px;min-width:0}.notice{padding:14px;font-size:14px;overflow-wrap:anywhere;margin-bottom:16px}.notice p{margin:8px 0}.cards,.client-grid{gap:14px}.lead-actions{width:100%;gap:8px}.lead-actions>form,.lead-actions>a{flex:1}.lead-actions button{width:100%}.lead-actions>a{justify-content:center}.filters{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-bottom:12px}.filters>.grow{grid-column:1/-1}.filters label{margin:0;font-size:14px}.filters .button{align-self:end;font-size:14px}.filters input,.filters select{margin-top:4px;min-width:0}.numbered-leads .lead-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:6px 10px;padding:16px 0;font-size:16px;background:transparent}.numbered-leads .lead-row>.row-index{grid-column:1;grid-row:1;color:var(--muted);padding-top:2px}.numbered-leads .lead-row>.row-name{grid-column:2;grid-row:1;padding:0}.numbered-leads .lead-row>span:nth-child(3){grid-column:2/-1;grid-row:2;padding:0}.numbered-leads .lead-row>span:nth-child(4){grid-column:2/-1;grid-row:3;font-size:14px;padding:0}.numbered-leads .lead-row>span:nth-child(5){grid-column:3;grid-row:1;text-align:right;padding:0;max-width:110px}.numbered-leads .status-button{min-height:44px;padding:8px 10px}.lead-name strong{font-size:16px}.lead-name small:empty{display:none}.lead-name small{font-size:14px;line-height:1.45;margin-top:4px}.mobile-label{display:inline}.row-contact{font-size:14px;overflow-wrap:anywhere}.contact-actions{margin:8px 0 2px}.contact-actions a,.contact-actions button{flex:1;max-width:160px;font-size:14px}.row-received{color:var(--muted)}.pagination{flex-wrap:wrap;gap:10px;font-size:14px}.pagination a{min-height:44px;display:inline-flex;align-items:center;padding:8px}.stats{gap:8px}.stats .panel{padding:14px 10px}.stats strong{font-size:26px}.stats small{font-size:14px}.form-grid{gap:0}.connection{gap:12px}.connection h2{margin-bottom:4px}.connection p{font-size:14px}.sheet-create form{margin-top:14px}.sheet-create .import-method{max-width:none}.sheet-create summary{min-height:44px;display:flex;align-items:center}.connected-sheet-cards .actions{gap:8px}.connected-sheet-cards .actions button{min-height:44px}.sheet-selects{gap:8px}.simple-field{padding:10px 0}.mapping-preview{margin:16px 0}.log{overflow-wrap:anywhere}.auth-form{padding:24px 20px}.auth-story{padding:20px}.auth-form h2{font-size:28px}#status-dialog,.contact-dialog{padding:20px;width:calc(100% - 24px);max-height:calc(100dvh - 32px);border-radius:18px}#status-dialog label{margin:0}#status-dialog .actions,.contact-dialog .actions{display:flex;gap:8px;margin:8px 0 0}#status-dialog .actions button,.contact-dialog .actions button{flex:1}#back-top{width:44px;height:44px;min-height:44px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));padding:8px}.contact{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* One compact app bar on phones; navigation and account actions share a native disclosure. */
.mobile-appbar{display:none}
@media(max-width:700px){
 .sidebar,.topbar{display:none}.mobile-appbar{display:flex;position:sticky;top:0;z-index:50;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:6px max(12px,env(safe-area-inset-right)) 6px max(16px,env(safe-area-inset-left));background:#fff;border-bottom:1px solid var(--line)}
 .mobile-brand{display:flex;align-items:center;min-height:44px}.mobile-brand img{display:block;width:180px;height:33px;max-width:100%}.mobile-menu{position:static}.mobile-menu>summary{display:flex;align-items:center;justify-content:center;list-style:none;width:44px;height:44px;min-height:44px;padding:0;border-radius:12px;color:var(--ink);cursor:pointer}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu>summary::marker{content:''}.mobile-menu[open]>summary,.mobile-menu>summary:hover{background:var(--tint);color:var(--primary)}
 .mobile-menu-panel{position:absolute;top:calc(100% + 8px);right:12px;width:min(320px,calc(100vw - 24px));max-height:calc(100dvh - 84px);overflow:auto;padding:12px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 40px #23304f26}.mobile-menu-panel>p{margin:4px 12px 12px;font-size:14px;font-weight:600;color:var(--muted);overflow-wrap:anywhere}.mobile-menu-panel nav{display:grid;gap:4px}.mobile-menu-panel a,.mobile-menu-panel button{display:flex;align-items:center;justify-content:flex-start;min-height:48px;width:100%;padding:12px;border-radius:10px;font-size:16px;color:var(--ink);text-decoration:none}.mobile-menu-panel a[aria-current=page]{background:var(--tint);color:var(--primary);font-weight:600}.mobile-menu-panel a:hover,.mobile-menu-panel button:hover{background:var(--bg)}.mobile-account{margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}.mobile-account form{display:block;margin:0}.mobile-account button{font-weight:400;color:#a13939}.shell{margin-left:0}html{scroll-padding-top:76px}
}

/* Soft semantic colours shared across desktop and mobile. */
:root{--bg:#f6f7fc;--line:#dfe4ef}
.panel{box-shadow:0 2px 8px #23304f04}
.notice{background:#eef3ff;border-color:#d5e1fa;color:#344d78}
.badge.warn,.notice.warn{background:#fff3df;color:#875311;border-color:#efdab4}
button.secondary,.button.secondary{background:#f4f3ff}
button.secondary:hover,.button.secondary:hover{background:#e9e7ff}
button[name="action"][value="lead_status"],button[name="action"][value="password"]{background:#267357;border-color:#267357}
button[name="action"][value="lead_status"]:hover,button[name="action"][value="password"]:hover{background:#1d5e46}
.metric-card{display:flex;flex-direction:column;gap:8px;padding:24px;border:1px solid #d9dff0;border-radius:16px;color:var(--ink);transition:transform .18s,box-shadow .18s,border-color .18s}
.metric-card small{font-size:16px}.metric-card strong{margin:0}.metric-card span{font-size:14px;font-weight:600}
.metric-total{background:#eeedff}.metric-unread{background:#edf5ff}.metric-due{background:#fff5e5}
.metric-card:hover{transform:translateY(-3px);box-shadow:0 8px 22px #23304f12;border-color:#a8a5e5;color:var(--ink)}
.metric-card:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
.numbered-leads .lead-row{--row-bg:#f3f4f8;--row-ink:#4c5670;background:var(--row-bg);border-left:3px solid var(--row-ink);padding-left:12px;transition:box-shadow .16s}
.numbered-leads .lead-row[data-status="New"]{--row-bg:#eef5ff;--row-ink:#315c91}
.numbered-leads .lead-row[data-status="Contacted"]{--row-bg:#eaf7f5;--row-ink:#246c64}
.numbered-leads .lead-row[data-status="Qualified"]{--row-bg:#f2edff;--row-ink:#624493}
.numbered-leads .lead-row[data-status="Won"]{--row-bg:#ecf7ed;--row-ink:#376b3d}
.numbered-leads .lead-row[data-status="Lost"]{--row-bg:#fff0f0;--row-ink:#944747}
.numbered-leads .lead-row:hover{background:var(--row-bg);box-shadow:inset 0 0 0 1px var(--row-ink)}
.numbered-leads .status-button{color:var(--row-ink);background:#ffffffb3;border:1px solid currentColor}
.numbered-leads .lead-item{margin-bottom:6px}
.filters{flex-wrap:wrap;gap:12px}.filters label{min-width:150px}
@media(max-width:700px){.metric-card{padding:16px;gap:6px}.dashboard-stats{gap:10px}.numbered-leads .lead-row{padding-left:14px}.filters label{min-width:0}}
@media(prefers-reduced-motion:reduce){.metric-card,.numbered-leads .lead-row{transition:none}.metric-card:hover{transform:none}}

.numbered-leads .followup-button{display:block;margin-top:8px;padding:8px 10px;font-size:14px;line-height:1.4;text-align:left;background:#fff7e6;color:#7b531b;border:1px solid #e5cfaa;border-radius:8px;min-height:44px;white-space:normal}.numbered-leads .followup-button:hover{background:#ffedc6}#clear-followup{margin:0 0 16px;font-size:14px}

/* Compact lead rows with accessible contact actions. */
.contact-actions svg{width:21px;height:21px;flex:none}
.contact-actions a,.contact-actions button{width:44px;height:44px;min-width:44px;padding:10px;flex:0 0 44px}
.contact-actions .contact-call{color:#2563a5;background:#edf5ff;border-color:#cbdff5}
.contact-actions .contact-whatsapp{color:#128c4a;background:#edf9f1;border-color:#cce8d5}
.numbered-leads .lead-row{padding-top:10px;padding-bottom:10px;gap:8px 12px}
.numbered-leads .row-contact{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}
.numbered-leads .contact-actions{margin:0;gap:6px}
.numbered-leads .followup-button{margin-top:4px}
.lead-source{display:block;color:var(--muted);font-size:14px;line-height:1.4}
@media(max-width:700px){.numbered-leads .lead-row{padding-top:10px;padding-bottom:10px;gap:4px 8px}.numbered-leads .lead-name small{margin-top:2px}.numbered-leads .row-contact{gap:4px 8px}.numbered-leads .contact-actions{margin:0}.numbered-leads .contact-actions a,.numbered-leads .contact-actions button{flex:0 0 44px}}

/* Mobile lead cards: details, contact actions, then a separate action footer. */
@media(max-width:700px){
 .numbered-leads .lead-item{margin-bottom:12px}
 .numbered-leads .lead-row{grid-template-columns:24px minmax(0,1fr);align-items:start;padding:14px;border:1px solid var(--line);border-left:3px solid var(--row-ink);border-radius:14px;gap:10px 8px;overflow:hidden}
 .numbered-leads .lead-row>.row-index{grid-area:1 / 1;align-self:start;padding-top:2px;font-size:14px}
 .numbered-leads .lead-row>.row-name{grid-area:1 / 2;min-width:0}
 .numbered-leads .lead-name{display:block;line-height:1.4}
 .numbered-leads .lead-name strong{font-size:16px;color:var(--ink)}
 .numbered-leads .lead-name small{margin-top:4px;line-height:1.4}
 .numbered-leads .lead-source{font-size:14px}
 .numbered-leads .lead-row>span:nth-child(3){grid-area:2 / 1 / auto / -1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:2px;font-size:16px}
 .numbered-leads .contact-actions{flex-wrap:nowrap;flex-shrink:0;gap:8px;margin:0}
 .numbered-leads .lead-row>span:nth-child(4){grid-area:3 / 1 / auto / -1;font-size:14px;padding:0;color:var(--muted)}
 .numbered-leads .lead-row>span:nth-child(5){grid-area:4 / 1 / auto / -1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;max-width:none;text-align:left;border-top:1px solid #23304f18;padding:10px 0 0;margin-top:2px}
 .numbered-leads .status-button{min-height:44px;padding:8px 14px;border-radius:10px;font-size:14px}
 .numbered-leads .followup-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:8px 12px;border-radius:10px;font-size:14px;max-width:100%;text-align:left}
}
