:root{--bg0: #07131f;--bg1: #10263a;--ink: #14202c;--muted: #5d6d7a;--line: rgba(20, 32, 44, .1);--panel: #f7f4ee;--accent: #0f6d62;--accent-2: #c4a35a;--good: #0f6d62;--warn: #9a3412;--danger: #b42318;--shadow: 0 18px 50px rgba(7, 19, 31, .28);--font: "DM Sans", system-ui, sans-serif;--display: "Fraunces", Georgia, serif;--radius: 16px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--ink);background:radial-gradient(900px 500px at 8% -10%,#1c4d5a 0%,transparent 50%),radial-gradient(700px 400px at 100% 0%,#c4a35a44 0%,transparent 42%),linear-gradient(165deg,var(--bg0),var(--bg1) 55%,#081018);background-color:#081018;background-repeat:no-repeat}button,input,select{font:inherit}button{cursor:pointer}a{color:var(--accent)}.auth-page{min-height:100%;display:grid;place-items:center;padding:max(1.25rem,env(safe-area-inset-top)) max(1.25rem,env(safe-area-inset-right)) max(1.25rem,env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left));background:radial-gradient(720px 420px at 12% 0%,rgba(28,77,90,.9) 0%,transparent 58%),radial-gradient(520px 320px at 100% 100%,rgba(196,163,90,.22) 0%,transparent 46%),linear-gradient(165deg,#07131f,#10263a 58%,#081018)}.auth-loading{color:#f4efe4;font-weight:600;letter-spacing:.01em}.auth-shell{width:min(960px,100%);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);min-height:540px;border-radius:28px;overflow:hidden;background:#f7f4ee;box-shadow:0 28px 70px #00000061;border:1px solid rgba(244,239,228,.14)}.auth-hero{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:.7rem;padding:2.4rem 2.2rem;color:#f4efe4;background:radial-gradient(380px 180px at 18% 8%,rgba(196,163,90,.38),transparent 62%),linear-gradient(165deg,#16485a,#0d2a28 72%)}.auth-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(244,239,228,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(244,239,228,.07) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.65),transparent 78%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.65),transparent 78%);pointer-events:none}.auth-mark,.auth-kicker,.auth-hero h1,.auth-hero-copy{position:relative}.auth-mark{width:3rem;height:3rem;display:grid;place-items:center;margin-bottom:auto;border-radius:14px;background:#f4efe41f;border:1px solid rgba(244,239,228,.22);font-weight:700;letter-spacing:.04em}.auth-kicker{margin:0;color:#c4a35a;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.auth-hero h1{margin:0;font-family:var(--display);font-size:clamp(2.6rem,5vw,3.6rem);font-weight:600;line-height:.95}.auth-hero-copy{margin:0;max-width:22rem;color:#d7e4de;line-height:1.5}.auth-card{width:auto;max-width:none;display:flex;flex-direction:column;justify-content:center;gap:.95rem;padding:2.2rem 2rem;background:#f7f4ee;box-shadow:none}.auth-card-head h2{margin:0;font-family:var(--display);font-size:2rem;line-height:1.1}.auth-card-head p{margin:.4rem 0 0;color:var(--muted);line-height:1.45}.auth-card .field input{min-height:48px;border-radius:12px;background:#fff}.auth-card .field input:focus{outline:2px solid rgba(15,109,98,.28);border-color:var(--accent)}.auth-password{position:relative;display:block}.auth-password input{padding-right:4.6rem}.auth-reveal{position:absolute;top:50%;right:.35rem;transform:translateY(-50%);border:0;background:transparent;color:var(--accent);font-weight:700;font-size:.82rem;padding:.35rem .55rem;border-radius:8px}.auth-submit{width:100%;min-height:48px;margin-top:.25rem;border-radius:12px}.auth-card .error{margin:0}.brand{font-family:var(--display);font-size:1.7rem}.brand span{color:var(--accent-2)}.shell{min-height:100%;display:flex;flex-direction:column;min-width:0}.shell .main{flex:1}.impersonate-bar{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap;padding:.65rem max(1.25rem,env(safe-area-inset-right)) .65rem max(1.25rem,env(safe-area-inset-left));background:#f4efe4;color:var(--ink);font-weight:600}.update-bar{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin:0 max(1.25rem,env(safe-area-inset-right)) 1rem max(1.25rem,env(safe-area-inset-left));padding:.6rem .6rem .6rem 1rem;border:1px solid rgba(196,163,90,.45);border-radius:12px;background:#c4a35a24;color:#f4efe4;font-weight:600}.update-bar .btn{flex-shrink:0}.impersonate-bar .btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.impersonate-error{width:100%;color:var(--danger);font-weight:500;font-size:.9rem}.modal-backdrop{position:fixed;inset:0;background:#07131f8c;display:grid;place-items:center;z-index:40;padding:1rem}.modal{width:100%;max-width:420px;background:#fff;border-radius:var(--radius);padding:1.25rem 1.3rem;box-shadow:var(--shadow)}.modal h2{margin:0 0 .5rem;font-size:1.15rem}.modal p{margin:0 0 1rem;color:var(--muted);line-height:1.45}.modal-actions{display:flex;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.top{display:flex;justify-content:space-between;gap:1rem;padding:max(1rem,env(safe-area-inset-top)) max(1.25rem,env(safe-area-inset-right)) 1rem max(1.25rem,env(safe-area-inset-left));color:#f4efe4;flex-wrap:wrap;align-items:flex-start}.top-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-width:0}.menu-toggle{display:none;border:1px solid rgba(244,239,228,.25);background:transparent;color:#f4efe4;border-radius:999px;padding:.55rem .95rem;min-height:44px;font-weight:600}.who{color:#c9d6cf;font-size:.9rem;margin-top:.2rem;overflow-wrap:anywhere}.nav{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.nav-btn,.pill,.btn,.btn.secondary{border:0;border-radius:999px;padding:.45rem .9rem}.nav-btn{background:transparent;color:#f4efe4}.nav-btn.on,.pill.on{background:#f4efe4;color:var(--ink)}.nav-btn.ghost{border:1px solid rgba(244,239,228,.25)}.main{padding:0 max(1.25rem,env(safe-area-inset-right)) max(2rem,env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left));min-width:0}.main>h1,.main>.stack>h1,.main>.stack>.row-actions>h1{color:#f4efe4;font-family:var(--display);font-size:1.5rem;margin:0;line-height:1.25;overflow-wrap:anywhere}.main>.stack>h1 .muted{color:#c9d6cf}.back-link{justify-self:start}.email-page{gap:.75rem}.email-head{display:grid;gap:.3rem}.email-head h1{margin:0;color:#f4efe4;font-family:var(--display);font-size:1.5rem;font-weight:600;line-height:1.2}.email-head p{margin:0;max-width:46rem;color:#d5e2dc;line-height:1.45}.panel .pill{background:#fff;color:var(--ink);border:1px solid rgba(20,32,44,.14)}.panel .pill.on{background:var(--accent);color:#fff;border-color:transparent}.stack{display:grid;gap:1rem;min-width:0}.panel,.card,.stat{background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;max-width:100%}.panel,.card{padding:1.1rem 1.2rem}.panel h2{margin:0 0 .8rem;font-size:1.15rem}.panel .row-actions h2{margin:0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.8rem}.stat{padding:1rem}.stat-label{color:var(--muted);font-size:.82rem}.stat-value{font-size:1.8rem;font-weight:700;margin-top:.2rem}.stat.good .stat-value{color:var(--good)}.stat.warn .stat-value{color:var(--warn)}.stat-hint{color:var(--muted);font-size:.8rem}.date-filter{display:grid;gap:.6rem;min-width:0}.pills{display:flex;gap:.4rem;flex-wrap:wrap;min-width:0}.pill{background:#f7f4ee2e;color:#f4efe4}.custom-range{display:flex;gap:.8rem;flex-wrap:wrap;background:var(--panel);padding:.8rem 1rem;border-radius:var(--radius)}.custom-range label{display:grid;gap:.3rem;font-size:.85rem;color:var(--muted)}.custom-hint{align-self:center;font-size:.85rem;color:var(--muted)}.grid-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.grid-form label,.field{display:grid;gap:.35rem;font-size:.88rem;color:var(--muted)}.wide{grid-column:1 / -1}.lead-form{padding:1.4rem 1.5rem}.lead-form-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1.1rem;border-bottom:1px solid var(--line)}.lead-form-head h2{margin:0 0 .25rem;font-size:1.3rem}.lead-form-head p{margin:0;font-size:.92rem}.lead-keyhint{font-size:.82rem;color:var(--muted);white-space:nowrap;padding-top:.3rem}kbd{font:inherit;font-size:.78rem;padding:.1rem .4rem;border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;background:#fff;color:var(--ink)}.lead-form input:focus,.lead-form input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0f6d6226}.lead-field{display:grid;gap:.35rem;min-width:0}.lead-label{display:flex;align-items:baseline;gap:.5rem;font-size:.85rem;font-weight:600;color:var(--ink)}.phone-step{margin:1.2rem 0 .4rem;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:14px;background:#fff;display:grid;gap:.5rem;transition:border-color .15s,background .15s}.phone-step.new{border-color:#0f6d6273;background:#f1faf6}.phone-step.duplicate{border-color:#b4231873;background:#fdf1ef}.phone-input{position:relative}.phone-input input{font-size:1.25rem;font-weight:600;letter-spacing:.02em;padding:.7rem 9.5rem .7rem .9rem}.phone-status{position:absolute;right:.7rem;top:50%;transform:translateY(-50%);font-size:.82rem;font-weight:700;padding:.2rem .6rem;border-radius:999px;pointer-events:none}.phone-status:empty{display:none}.phone-step.checking .phone-status{color:var(--muted);background:#eef1f3;font-weight:500}.phone-step.new .phone-status{color:var(--good);background:#d7efe6}.phone-step.duplicate .phone-status{color:var(--danger);background:#fbdcd8}.phone-help{margin:0;font-size:.8rem;color:var(--muted)}.phone-help.saved{color:var(--good);font-weight:600}.phone-taken{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem}.phone-taken p{margin:0;font-size:.88rem;color:var(--danger);font-weight:600}.lead-sections{border:0;padding:0;margin:0;min-width:0;transition:opacity .15s}.lead-sections:disabled{opacity:.45}.lead-section{display:grid;grid-template-columns:190px minmax(0,1fr);gap:1.2rem;padding:1.1rem 0;border-bottom:1px solid var(--line)}.lead-section-head h3{margin:0 0 .2rem;font-size:.95rem}.lead-section-head p{margin:0;font-size:.8rem;color:var(--muted);line-height:1.35}.lead-section-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem}.money-input{position:relative}.money-input span{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--muted)}.money-input input{padding-left:1.6rem}.lead-form-foot{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;padding-top:1.1rem}.lead-result{flex:1;font-size:.9rem;font-weight:600}.lead-result.ok{color:var(--good)}.lead-result.error{color:var(--danger)}.lead-form-foot .btn[type=submit]{padding-left:1.6rem;padding-right:1.6rem}.users-form{padding:.75rem 1rem}.users-form h2{margin-bottom:.5rem;font-size:1.05rem}.users-form .grid-form{gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.check{display:flex;flex-direction:row;align-items:center;gap:.6rem;color:var(--ink)}input,select{border:1px solid var(--line);background:#fff;border-radius:10px;padding:.55rem .7rem;color:var(--ink);width:100%;max-width:100%;min-width:0}.grid-form .check{display:flex}.check input{width:auto;flex:none}input.tiny{width:5rem;padding:.3rem .4rem}.btn{background:var(--accent);color:#fff;font-weight:600}.btn:disabled{opacity:.6}.btn.secondary{background:#e7ece8;color:var(--ink)}.btn.secondary.danger{color:var(--danger)}.users-filter{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.7rem}.users-filter input{flex:1 1 14rem;width:auto}.users-filter select{flex:0 1 12rem;width:auto}.inline-select{width:auto}.row-actions,.inline,.td-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.row-actions{justify-content:space-between}.error,.ok{padding:.65rem .8rem;border-radius:10px;margin-bottom:.7rem}.error{background:#fde8e6;color:var(--danger)}.ok{background:#e4f4ef;color:var(--good)}.muted{color:var(--muted)}.table-wrap{overflow:auto}.pager{display:flex;gap:.75rem;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin-top:.75rem}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;padding:.55rem .4rem;border-bottom:1px solid var(--line);vertical-align:top}tfoot td{font-weight:700;border-bottom:0}.clickable{cursor:pointer}.clickable:hover,tr.editing{background:#efeae0}.tag{display:inline-block;padding:.15rem .5rem;border-radius:999px;background:#e7ece8;font-size:.78rem;text-transform:capitalize}.tag.good{background:#d7efe6;color:var(--good)}.tag.warn{background:#f6e1d4;color:var(--warn)}.pill-short{display:none}.reset-form{display:grid;gap:.45rem;width:100%}.header-pills{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.55rem}.header-pills code{background:#fff;border:1px solid var(--line);border-radius:999px;padding:.2rem .55rem;font-size:.8rem}.copy-headers{margin:.7rem 0 .9rem;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.sheet-email{overflow-wrap:anywhere;font-size:.82rem;background:#fff;border:1px solid var(--line);border-radius:999px;padding:.2rem .7rem}.sheet-sync-meta{margin:.75rem 0 0}.backup-list-title{margin:1.2rem 0 .35rem;font-size:1rem}.backup-list-title+.muted{margin:0 0 .6rem}.backup-list{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.backup-list li{display:flex;justify-content:space-between;gap:.75rem;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:10px;padding:.55rem .75rem}.restore-confirm{margin-top:.9rem}.import-errors{margin:.55rem 0 .8rem;padding-left:1.2rem;color:var(--danger)}@media(max-width:720px){.impersonate-bar{padding:.65rem max(.8rem,env(safe-area-inset-right)) .65rem max(.8rem,env(safe-area-inset-left))}.impersonate-bar .btn{width:auto;min-height:44px}.modal-actions .btn{width:auto}.update-bar{margin:0 max(.8rem,env(safe-area-inset-right)) .8rem max(.8rem,env(safe-area-inset-left))}.update-bar .btn{width:auto}.lead-form{padding:1.1rem 1rem}.lead-keyhint{display:none}.lead-section{grid-template-columns:minmax(0,1fr);gap:.7rem}.lead-section-fields{grid-template-columns:minmax(0,1fr)}.lead-form-foot{flex-wrap:wrap}.lead-result{flex-basis:100%}.lead-form-foot .btn{flex:1}.phone-taken .btn{width:100%}.phone-input{display:grid;gap:.4rem}.phone-input input{padding-right:.9rem}.phone-status{position:static;transform:none;justify-self:start}.top{flex-direction:column;align-items:stretch;gap:.6rem;padding:max(.8rem,env(safe-area-inset-top)) max(.8rem,env(safe-area-inset-right)) .8rem max(.8rem,env(safe-area-inset-left))}.menu-toggle{display:inline-flex;align-items:center;flex-shrink:0}.nav{display:none;flex-direction:column;flex-wrap:nowrap;width:100%;gap:.35rem}.nav.open{display:flex}.nav-btn{width:100%;text-align:left;min-height:44px;padding:.7rem 1rem}.main{padding:0 max(.8rem,env(safe-area-inset-right)) max(1.5rem,env(safe-area-inset-bottom)) max(.8rem,env(safe-area-inset-left))}.main>h1,.main>.stack>h1,.main>.stack>.row-actions>h1{font-size:1.25rem}.nav-btn,.pill,.btn,.btn.secondary{min-height:44px;padding:.7rem 1rem}.pill-full{display:none}.pill-short{display:inline}.pills{display:grid;grid-template-columns:1fr 1fr}.pills .pill{width:100%;text-align:center}.pills .pill:last-child:nth-child(odd){grid-column:1 / -1}.custom-range{flex-direction:column}.custom-range label,.custom-range input{width:100%}.grid-form{grid-template-columns:minmax(0,1fr)}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.row-actions,.inline,.td-actions{flex-direction:column;align-items:stretch}.row-actions{justify-content:flex-start}.row-actions .inline{width:100%}.row-actions input,.row-actions .btn,.inline .btn,.wide .btn,.grid-form .btn,.panel.row-actions>.btn{width:100%}.row-actions input{min-width:0}input,select{font-size:16px}input.tiny{width:100%;min-height:44px;padding:.55rem .7rem}.table-wrap{overflow:visible}.table-wrap table,.table-wrap tbody,.table-wrap td,.table-wrap tr{display:block;width:100%}.table-wrap thead{display:none}.table-wrap tfoot{display:block;width:100%}.table-wrap tfoot td.total-blank{display:none}.table-wrap tr{background:#fff;border:1px solid var(--line);border-radius:12px;padding:.75rem .9rem;margin-bottom:.7rem}.table-wrap tr:last-child{margin-bottom:0}.table-wrap td{display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:.4rem;padding:.4rem 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.table-wrap td:last-child{border-bottom:0}.table-wrap td:before{content:attr(data-label);color:var(--muted);font-size:.78rem;font-weight:600;line-height:1.3}.table-wrap td:first-child{font-weight:600;padding-top:0}.table-wrap td.td-actions{grid-template-columns:1fr;gap:.45rem;padding-top:.65rem}.table-wrap td.td-actions:before{margin-bottom:.1rem}.table-wrap td.td-actions .btn,.table-wrap td.td-actions input{width:100%}.clickable{border-color:#14202c29}.auth-shell{grid-template-columns:1fr;min-height:0;border-radius:22px}.auth-hero{min-height:0;gap:.35rem;padding:1.25rem 1.15rem 1.15rem}.auth-mark{margin-bottom:.85rem}.auth-hero h1{font-size:2.3rem}.auth-card{padding:1.25rem 1.1rem 1.35rem}.auth-reveal{min-height:0;padding:.35rem .55rem}}.email-filters{display:grid;gap:.75rem}.email-filters .row-actions h2{margin:0}.email-grid{grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr))}.more-filters{display:grid;gap:.75rem}.more-filters summary{cursor:pointer;color:var(--accent);font-weight:600;width:fit-content}.more-filters[open] summary{margin-bottom:.75rem}.more-filters>.field{margin-bottom:.75rem}.status-checked{color:#d5e2dc;font-size:.85rem}.status-summary{padding:.8rem 1rem;border-radius:var(--radius);font-weight:600;background:#e4f4ef;color:var(--good)}.status-summary.bad{background:#fde8e6;color:var(--danger)}.svc-table td{vertical-align:middle}.svc-group td{padding-top:1rem;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.svc-name{font-weight:600}.svc-id{color:var(--muted);font-size:.78rem;font-family:ui-monospace,Menlo,monospace}.svc-when{font-size:.88rem}.svc-action{text-align:right}.svc-state{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;font-size:.85rem;font-weight:600}.svc-state:before{content:"";width:.55rem;height:.55rem;border-radius:50%;background:currentColor}.svc-state.good{color:var(--good)}.svc-state.bad{color:var(--danger)}.svc-state.wait{color:#a16207}.svc-state.idle{color:var(--muted)}.svc-confirm{display:grid;gap:.4rem;justify-items:end;max-width:18rem;margin-left:auto;font-size:.82rem;color:var(--muted);text-align:right}.svc-events{margin:0;padding-left:1.1rem;display:grid;gap:.35rem;font-size:.9rem}.status-note{margin:.7rem 0 0;font-size:.85rem}@media(max-width:720px){.table-wrap .svc-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.3rem .7rem;align-items:center}.table-wrap .svc-table td{display:block;padding:0;border-bottom:0}.table-wrap .svc-table td:before{content:none}.table-wrap .svc-table td.svc-when{display:none}.table-wrap .svc-table td:nth-child(3){grid-column:1 / -1;font-size:.88rem}.table-wrap .svc-table td.svc-action{grid-column:2;grid-row:1 / span 2}.table-wrap .svc-table tr.svc-group{display:block;background:none;border:0;padding:.5rem .2rem 0;margin-bottom:.4rem}.table-wrap .svc-table tr.svc-group td{padding:0}.svc-confirm{max-width:11rem}}
