:root{--ink:#182019;--muted:#687269;--line:#dce2da;--paper:#f4f6f1;--card:rgba(255,255,255,.88);--green:#1f6b4f;--green2:#dcefe5;--gold:#b88231;--shadow:0 12px 34px rgba(30,45,35,.09);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,Arial,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 85% 0,#e4eee5 0,transparent 30%),var(--paper);padding-bottom:92px}button,input,select,textarea{font:inherit}.topbar{position:sticky;top:0;z-index:20;background:rgba(244,246,241,.83);backdrop-filter:blur(20px);border-bottom:1px solid rgba(130,145,132,.18)}.topbar-inner{height:68px;max-width:1040px;margin:auto;padding:0 20px;display:flex;align-items:center;gap:12px}.brand img{width:43px;height:43px;object-fit:contain}.title-block{display:flex;flex-direction:column;line-height:1.05}.title-block span,.eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}.title-block strong{font-size:17px;margin-top:4px}.avatar{margin-left:auto;border:0;width:38px;height:38px;border-radius:50%;background:var(--ink);color:white;font-weight:800}.shell{max-width:1040px;margin:auto;padding:30px 20px}.hero{display:flex;align-items:flex-end;justify-content:space-between;margin:6px 0 25px}.hero h1{font-size:clamp(38px,7vw,66px);line-height:.98;letter-spacing:-.055em;margin:9px 0 0}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--green)}.add-button{border:0;border-radius:50%;width:54px;height:54px;background:var(--ink);color:#fff;font-size:34px;font-weight:300;box-shadow:var(--shadow)}.card{background:var(--card);border:1px solid rgba(145,158,145,.25);border-radius:24px;box-shadow:var(--shadow)}.signin-card{max-width:600px;margin:50px auto;padding:28px}.lock-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;background:var(--green2);color:var(--green);font-weight:900}.signin-card h2{font-size:28px;margin:16px 0 7px}.signin-card p{color:var(--muted);line-height:1.5}.signin-actions{display:grid;gap:10px;margin-top:22px}.signin-actions button,.primary-button{border:0;border-radius:15px;padding:15px;background:var(--ink);color:#fff;font-weight:750}.summary{display:grid;grid-template-columns:repeat(3,1fr);padding:17px 8px;margin-bottom:20px}.summary div{padding:5px 18px;border-right:1px solid var(--line)}.summary div:last-child{border:0}.summary strong{display:block;font-size:26px;letter-spacing:-.04em}.summary span{font-size:12px;color:var(--muted)}.toolbar{position:sticky;top:68px;z-index:10;background:linear-gradient(var(--paper) 75%,transparent);padding:8px 0 17px}.search{height:48px;border:1px solid var(--line);background:#fff;border-radius:16px;display:flex;align-items:center;gap:9px;padding:0 15px}.search span{font-size:27px;color:#859087}.search input{width:100%;border:0;outline:0;font-size:16px;background:transparent}.filter-strip{display:flex;gap:8px;overflow-x:auto;padding:12px 1px 4px;scrollbar-width:none}.filter-strip::-webkit-scrollbar{display:none}.filter-strip button{white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:9px 13px;background:rgba(255,255,255,.7);color:#526056;font-size:13px;font-weight:700}.filter-strip button.active{background:var(--ink);border-color:var(--ink);color:#fff}.section-title{display:flex;justify-content:space-between;align-items:end;margin:16px 2px 12px}.section-title h2{font-size:24px;margin:5px 0 0;letter-spacing:-.03em}.section-title>span{color:var(--muted);font-size:13px}.customer-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.customer-card{width:100%;text-align:left;background:var(--card);border:1px solid rgba(145,158,145,.28);border-radius:21px;padding:18px;box-shadow:0 6px 20px rgba(30,45,35,.05);color:inherit}.customer-card:active{transform:scale(.99)}.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.customer-card h3{font-size:19px;letter-spacing:-.02em;margin:0}.customer-card p{margin:6px 0 15px;color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-pill{font-size:11px;font-weight:800;color:var(--green);background:var(--green2);padding:7px 9px;border-radius:999px;white-space:nowrap}.card-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:13px;font-size:12px;color:var(--muted)}.owner{color:var(--ink);font-weight:750}.empty-state{text-align:center;padding:65px 20px;color:var(--muted)}.empty-state strong{display:block;color:var(--ink);font-size:20px;margin-bottom:6px}.tabbar{position:fixed;z-index:30;left:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;gap:5px;background:rgba(248,250,246,.9);backdrop-filter:blur(24px);padding:7px;border:1px solid rgba(130,145,132,.25);border-radius:23px;box-shadow:0 12px 40px rgba(25,39,29,.16)}.tabbar a{min-width:0;text-decoration:none;color:#667167;padding:7px 4px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10px;font-weight:800}.tabbar svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}.tabbar a.active{background:var(--ink);color:#fff}.sheet{position:fixed;inset:0;z-index:50;visibility:hidden;pointer-events:none}.sheet.open{visibility:visible;pointer-events:auto}.sheet-backdrop{position:absolute;inset:0;border:0;background:rgba(18,27,21,.3);opacity:0;transition:.25s}.sheet.open .sheet-backdrop{opacity:1}.sheet-pane{position:absolute;left:50%;bottom:0;width:min(680px,100%);max-height:90vh;overflow:auto;transform:translate(-50%,105%);transition:.3s cubic-bezier(.22,.8,.25,1);background:#fbfcf9;border-radius:28px 28px 0 0;padding:12px 22px calc(30px + env(safe-area-inset-bottom));box-shadow:0 -20px 60px rgba(20,30,22,.18)}.sheet.open .sheet-pane{transform:translate(-50%,0)}.sheet-pane.compact{max-width:480px}.sheet-handle{width:42px;height:5px;border-radius:99px;background:#cbd2cb;margin:0 auto 16px}.sheet-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.sheet-header h2{font-size:28px;letter-spacing:-.04em;margin:5px 0 0}.close-button{border:0;width:36px;height:36px;border-radius:50%;background:#e8ece6;color:#4d584f;font-size:25px}.contact-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:18px}.contact-actions a{display:flex;justify-content:center;text-decoration:none;color:var(--ink);font-weight:750;background:#eef1ec;border-radius:15px;padding:13px 8px}.contact-actions a.primary{background:var(--ink);color:#fff}.detail-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:5px 16px;margin:11px 0}.detail-row{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.detail-row:last-child{border:0}.detail-row span{font-size:13px;color:var(--muted)}.detail-row strong{text-align:right;font-size:14px}.detail-notes{background:#eef2ec;border-radius:16px;padding:15px;margin:12px 0;color:#3d493f;line-height:1.45}.control-label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:750;margin:18px 2px 8px}.stage-select,.owner-select,.visit-input{width:100%;height:50px;border:1px solid var(--line);background:white;border-radius:15px;padding:0 13px;color:var(--ink)}.visit-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}.next-button{width:100%;border:0;border-radius:16px;padding:16px;margin-top:15px;background:var(--green);color:#fff;font-weight:800}.note-form{display:flex;gap:8px;margin-top:10px}.note-form input{flex:1;min-width:0;border:1px solid var(--line);border-radius:14px;padding:0 13px}.note-form button{border:0;border-radius:14px;padding:13px 17px;background:var(--ink);color:#fff;font-weight:750}.activity-list{margin-top:14px}.activity{display:flex;gap:10px;padding:10px 2px}.activity i{width:8px;height:8px;border-radius:50%;background:var(--green);margin-top:6px}.activity div{flex:1}.activity strong{font-size:13px}.activity small{display:block;color:var(--muted);margin-top:3px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label{display:flex;flex-direction:column;gap:7px}.form-grid label.full{grid-column:1/-1}.form-grid label>span{font-size:13px;font-weight:750}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:13px;outline:0}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus{border-color:var(--green)}.primary-button{width:100%;margin-top:17px}.secondary-button{width:100%;border:1px solid var(--line);border-radius:15px;padding:14px;background:#fff;font-weight:750}.status-message{font-size:13px;color:var(--green);min-height:18px}.account-copy{color:var(--muted);margin:0 0 18px}.toast{position:fixed;z-index:100;left:50%;bottom:105px;transform:translate(-50%,20px);background:var(--ink);color:#fff;border-radius:999px;padding:11px 17px;opacity:0;pointer-events:none;transition:.2s;white-space:nowrap;font-size:13px}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:700px){.shell{padding:23px 14px}.topbar-inner{padding:0 15px}.hero{align-items:center}.hero h1{font-size:43px}.summary div{padding:4px 10px}.summary strong{font-size:22px}.summary span{font-size:10px}.customer-list{grid-template-columns:1fr}.toolbar{top:67px}.section-title{align-items:center}.tabbar a{min-width:0;padding:7px 4px}.sheet-pane{padding-left:16px;padding-right:16px}.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}}
@media(min-width:760px){.sheet-pane{bottom:30px;border-radius:28px}.tabbar{bottom:20px}}
.payment-panel{margin:17px 0;padding:17px;border:1px solid var(--line);border-radius:21px;background:#fff}.payment-heading{display:flex;align-items:center;justify-content:space-between}.payment-heading h3{margin:4px 0 0;font-size:22px;letter-spacing:-.035em}.payment-heading button{border:0;border-radius:12px;padding:9px 13px;color:#fff;background:var(--ink);font-size:12px;font-weight:800}.payment-totals{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.payment-totals div{padding:12px;border-radius:15px;background:#eef2ec}.payment-totals span,.payment-totals strong{display:block}.payment-totals span{color:var(--muted);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.payment-totals strong{margin-top:5px;font-size:20px}.stripe-readiness{display:flex;gap:10px;align-items:flex-start;margin-top:10px;padding:12px;border-radius:15px;background:#fff8e9}.stripe-readiness i{width:9px;height:9px;margin-top:4px;border-radius:50%;background:#d6a13b;flex:0 0 auto}.stripe-readiness.connected{background:#edf7f0}.stripe-readiness.connected i{background:var(--green)}.stripe-readiness strong,.stripe-readiness span{display:block}.stripe-readiness strong{font-size:12px}.stripe-readiness span{margin-top:3px;color:var(--muted);font-size:11px;line-height:1.4}.payment-form{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.payment-form[hidden]{display:none}.payment-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.payment-form-grid label{display:flex;flex-direction:column;gap:6px}.payment-form-grid label.full{grid-column:1/-1}.payment-form-grid label>span{font-size:11px;font-weight:750;color:var(--muted)}.payment-form-grid input,.payment-form-grid select{width:100%;min-height:45px;border:1px solid var(--line);border-radius:13px;padding:10px 12px;background:#fff;color:var(--ink)}.payment-save{width:100%;margin-top:11px;border:0;border-radius:14px;padding:13px;background:var(--green);color:#fff;font-weight:800}.payment-records{display:grid;gap:7px;margin-top:12px}.payment-record{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid var(--line)}.payment-record div>strong,.payment-record div>span{display:block}.payment-record div>strong{font-size:13px}.payment-record div>span,.no-payments{margin-top:3px;color:var(--muted);font-size:11px}.payment-record>strong{color:var(--green);font-size:15px}
.swipe-row{position:relative;overflow:hidden;border-radius:21px;background:#dfe5de}.swipe-row .customer-card{position:relative;z-index:2;height:100%;touch-action:pan-y;transition:transform .22s cubic-bezier(.22,.8,.25,1);will-change:transform}.swipe-row .customer-card.swiping{transition:none}.swipe-actions{position:absolute;inset-block:0;display:flex;align-items:stretch;z-index:1}.swipe-actions-start{left:0}.swipe-actions-end{right:0}.swipe-action{border:0;text-decoration:none;min-width:72px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:12px}.swipe-action.call{background:#1f6b4f}.swipe-action.text{background:#3d805e}.swipe-action.archive{background:#c73b3b;min-width:92px}.swipe-action.restore{background:#1f6b4f;min-width:92px}
.swipe-row .customer-card{background:#fff;box-shadow:inset 3px 0 0 #bfe3d2,0 6px 20px rgba(30,45,35,.05)}
@media(max-width:700px){.payment-form-grid{grid-template-columns:1fr}.payment-form-grid label.full{grid-column:auto}}
