:root{color-scheme:light;--bg:#f6f7f9;--panel:#ffffff;--ink:#172026;--muted:#68747f;--line:#dce2e8;--green:#0f8a65;--blue:#246bfe;--gold:#b98718}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}a,button{font:inherit}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh;transition:grid-template-columns .18s ease}.shell.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}.sidebar{border-right:1px solid var(--line);background:#fff;display:flex;flex-direction:column;padding:24px 16px}.sidebar-top{align-items:flex-start;display:flex;gap:10px;justify-content:space-between;margin-bottom:28px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{display:grid;width:40px;height:40px;place-items:center;border-radius:8px;background:var(--ink);color:#fff;font-weight:800}.brand small,.brand strong{display:block}.brand-copy{min-width:0}.brand small{color:var(--muted);margin-top:2px}.sidebar-toggle{align-items:center;background:#eef1f4;border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:inline-flex;flex:0 0 auto;height:36px;justify-content:center;width:36px}.shell.sidebar-collapsed .sidebar{padding-left:12px;padding-right:12px}.shell.sidebar-collapsed .sidebar-top{align-items:center;display:grid;grid-gap:12px;gap:12px;justify-content:center}.shell.sidebar-collapsed .brand{justify-content:center}.nav-short,.shell.sidebar-collapsed .brand-copy,.shell.sidebar-collapsed .nav-label{display:none}.shell.sidebar-collapsed .nav-short{display:inline}.shell.sidebar-collapsed .nav a{align-items:center;display:flex;justify-content:center;min-height:42px;padding:0}.nav{display:grid;grid-gap:4px;gap:4px;margin-bottom:18px}.nav a{border-radius:8px;color:var(--muted);padding:11px 12px;text-decoration:none}.nav a.active,.nav a:hover{background:#edf4ff;color:var(--blue)}.account-card{align-items:center;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:space-between;margin-top:auto;padding-top:16px}.account-copy{min-width:0}.account-copy span,.account-copy strong{display:block}.account-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-copy span{color:var(--muted);font-size:13px;margin-top:3px}.account-card button{align-items:center;background:#eef1f4;border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:inline-flex;flex:0 0 auto;height:34px;width:34px}.account-card button,.shell.sidebar-collapsed .account-card{justify-content:center}.shell.sidebar-collapsed .account-copy{display:none}.login-page,.workspace{padding:28px}.login-page{align-items:center;background:linear-gradient(135deg,rgba(36,107,254,.08),transparent 38%),linear-gradient(315deg,rgba(15,138,101,.1),transparent 42%),var(--bg);display:grid;min-height:100vh}.login-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 50px rgba(23,32,38,.08);display:grid;grid-gap:22px;gap:22px;justify-self:center;max-width:440px;padding:26px;width:min(100%,440px)}.login-brand{align-items:center;display:flex;gap:12px}.login-brand small,.login-brand strong{display:block}.login-brand small{color:var(--muted);margin-top:2px}.login-form{display:grid;grid-gap:14px;gap:14px}.login-form label{display:grid;grid-gap:7px;gap:7px}.login-form label span{color:var(--muted);font-size:14px}.login-form input{background:transparent;border:0;color:var(--ink);min-width:0;outline:0;width:100%}.form-message{color:#b42318;font-size:14px;margin:0;min-height:20px}.forbidden-panel{align-content:center;display:grid;justify-items:start;min-height:360px;max-width:620px}.forbidden-panel svg{color:#b42318}.forbidden-panel h1{font-size:28px;margin:14px 0 8px}.forbidden-panel p{color:var(--muted);line-height:1.6;margin:0 0 18px}.topbar{align-items:center;display:flex;justify-content:space-between;gap:20px;margin-bottom:24px}.topbar h1,.topbar p{margin:0}.topbar p{color:var(--muted);margin-bottom:6px}.topbar h1{font-size:32px;line-height:1.2}.panel-heading button,.topbar-link{align-items:center;border:0;border-radius:8px;cursor:pointer;display:inline-flex;gap:8px;min-height:40px;padding:0 14px}.topbar-link{background:var(--green);color:#fff;text-decoration:none}.stats-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.panel,.stat-card{background:var(--panel);border:1px solid var(--line);border-radius:8px}.stat-card{display:grid;grid-gap:8px;gap:8px;min-height:160px;padding:18px}.stat-card svg{color:var(--green)}.lead-row span,.stat-card small,.stat-card span{color:var(--muted)}.stat-card strong{font-size:clamp(22px,2vw,30px);line-height:1.1}.customer-layout{display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr)}.panel{padding:20px}.panel-heading{align-items:center;display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.heading-actions{align-items:center;display:inline-flex;gap:10px}.status-text{color:var(--green);font-size:14px;min-height:20px;text-align:right}.save-toast{animation:toast-in .18s ease;background:#ecfdf3;border:1px solid #abefc6;border-radius:8px;box-shadow:0 16px 40px rgba(20,48,64,.16);color:#067647;font-weight:700;max-width:min(360px,calc(100vw - 32px));padding:13px 16px;position:fixed;right:24px;top:24px;z-index:50}.save-toast.error{background:#fff1f3;border-color:#fecdd6;color:#b42318}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.panel h2{font-size:18px;margin:0}.panel-heading button{background:#eef1f4;color:var(--ink)}.customer-form{display:grid;grid-gap:0;gap:0;scroll-margin-top:20px;transition:border-color .22s ease,box-shadow .22s ease}.customer-form.collapsed{gap:0}.customer-form:not(.collapsed){border-color:#b8d6cc;box-shadow:0 14px 36px rgba(20,48,64,.08)}.create-toggle svg{transition:transform .22s ease}.create-toggle.open svg{transform:rotate(180deg)}.create-form-body{display:grid;grid-template-rows:1fr;opacity:1;overflow:hidden;transition:grid-template-rows .26s ease,opacity .2s ease,padding-top .26s ease}.customer-form.collapsed .create-form-body{grid-template-rows:0fr;opacity:0;padding-top:0;pointer-events:none}.create-form-inner{display:grid;grid-gap:14px;gap:14px;min-height:0;overflow:hidden;padding-top:4px;transform:translateY(0);transition:transform .26s ease}.customer-form.collapsed .create-form-inner{transform:translateY(-10px)}.customer-form label{display:grid;grid-gap:7px;gap:7px}.customer-form label span{color:var(--muted);font-size:14px}.readonly-detail{background:#f9fafb;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:5px;gap:5px;min-height:78px;padding:12px}.readonly-detail small,.readonly-detail span{color:var(--muted);font-size:14px}.readonly-detail strong{color:var(--ink);font-size:15px}.compact-readonly{min-height:0}.form-row{display:grid;grid-gap:12px;gap:12px;grid-template-columns:.9fr 1.1fr}.customer-form select,.field{align-items:center;background:#f9fafb;border:1px solid var(--line);border-radius:8px;display:flex;min-height:42px}.field{gap:16px;padding:0 12px}.field svg{color:var(--muted);flex:0 0 auto}.customer-form input,.customer-form textarea{background:transparent;border:0;color:var(--ink);min-width:0;outline:0;width:100%}.customer-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(45deg,transparent 50%,var(--muted) 50%) right 18px center /7px 7px no-repeat,linear-gradient(135deg,var(--muted) 50%,transparent 50%) right 13px center /7px 7px no-repeat,#f9fafb;border:1px solid var(--line);color:var(--ink);cursor:pointer;font-weight:700;min-width:0;outline:0;padding:0 38px 0 12px;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;width:100%}.customer-form select:hover{background-color:#fff;border-color:#b9c4ce}.customer-form select:focus{background-color:#fff;border-color:var(--green);box-shadow:0 0 0 3px rgba(15,138,101,.14)}.option-manager-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:.9fr 1.1fr}.option-manager-grid.single-column{grid-template-columns:minmax(0,1fr)}.option-manager{align-items:center;display:grid;grid-gap:6px;gap:6px;grid-template-columns:minmax(0,1fr) 34px 34px}.option-manager input{background:#f9fafb;min-height:36px;min-width:0;outline:0;padding:0 10px}.option-manager button,.option-manager input{border:1px solid var(--line);border-radius:8px;color:var(--ink)}.option-manager button{align-items:center;background:#eef1f4;cursor:pointer;display:inline-flex;height:36px;justify-content:center;width:34px}.option-manager button:disabled{cursor:not-allowed;opacity:.54}.textarea-field{align-items:flex-start;padding-bottom:10px;padding-top:11px}.customer-form textarea{min-height:80px;resize:vertical}.primary-action{align-items:center;background:var(--green);border:0;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;gap:8px;justify-content:center;min-height:44px;padding:0 16px}.panel-heading button:disabled,.primary-action:disabled{cursor:not-allowed;opacity:.64}.customer-table-panel{min-width:0}.list-tools{align-items:center;display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(220px,1fr) auto;margin-bottom:14px}.search-field{align-items:center;background:#f9fafb;border:1px solid var(--line);border-radius:8px;display:flex;gap:10px;min-height:42px;padding:0 12px}.search-field svg{color:var(--muted);flex:0 0 auto}.search-field input{background:transparent;border:0;color:var(--ink);min-width:0;outline:0;width:100%}.segmented-control{align-items:center;background:#eef1f4;border:1px solid var(--line);border-radius:8px;display:inline-flex;min-height:42px;padding:3px}.segmented-control button{background:transparent;border:0;border-radius:6px;color:var(--muted);cursor:pointer;min-height:34px;padding:0 12px}.segmented-control button.active{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(23,32,38,.08)}.customer-workspace{display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr)}.customer-table{display:grid;overflow-x:auto}.customer-row,.table-head{display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(180px,1.2fr) minmax(160px,1fr) 120px 100px 150px;min-width:860px}.table-head{color:var(--muted);font-size:13px;padding:4px 0 12px}.customer-row,.table-head{border-bottom:1px solid var(--line)}.customer-row{align-items:center;cursor:pointer;min-height:76px;padding:0 6px}.customer-row.selected,.customer-row:hover{background:#f7fbff}.customer-row:last-child{border-bottom:0}.customer-row-group{min-width:860px}.customer-cell{align-items:center;display:grid;grid-gap:10px;gap:10px;grid-template-columns:30px minmax(0,1fr)}.icon-action{align-items:center;background:#eef1f4;border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:inline-flex;height:30px;justify-content:center;width:30px}.customer-row small,.customer-row span,.customer-row strong{display:block}.customer-name-link{color:var(--ink);display:block;font-weight:700;text-decoration:none}.customer-name-link:hover,.secondary-action:hover{color:var(--blue)}.customer-row small,.customer-row time{color:var(--muted);margin-top:4px}.customer-row em{background:#eef7f3;border-radius:999px;color:var(--green);font-style:normal;justify-self:start;padding:5px 10px;white-space:nowrap}.customer-follow-ups{background:#f9fafb;display:grid;grid-template-rows:0fr;opacity:0;overflow:hidden;transition:grid-template-rows .22s ease,opacity .16s ease,border-color .22s ease;border-bottom:1px solid transparent}.customer-follow-ups.expanded{border-bottom-color:var(--line);grid-template-rows:1fr;opacity:1}.customer-follow-ups-inner{display:grid;grid-gap:12px;gap:12px;min-height:0;overflow:hidden;padding:0 16px 0 46px;transform:translateY(-6px);transition:padding .22s ease,transform .22s ease}.customer-follow-ups.expanded .customer-follow-ups-inner{padding-bottom:16px;padding-top:14px;transform:translateY(0)}.follow-ups-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.follow-ups-heading a{color:var(--blue);font-size:14px;text-decoration:none}.follow-up-empty{color:var(--muted);margin:0}.follow-up-list{display:grid;grid-gap:10px;gap:10px}.follow-up-preview{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:5px;gap:5px;padding:12px;transform:translateY(-4px);transition:transform .22s ease}.customer-follow-ups.expanded .follow-up-preview{transform:translateY(0)}.follow-up-preview time{color:var(--muted);font-size:13px}.follow-up-preview p{line-height:1.6;margin:0}.quick-follow-up{align-items:stretch;display:grid;grid-gap:8px;gap:8px;grid-template-columns:150px minmax(220px,1fr) auto}.quick-follow-up textarea,.quick-follow-up-owner{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);outline:0;width:100%}.quick-follow-up-owner{display:grid;grid-gap:2px;gap:2px;min-height:40px;padding:7px 10px}.quick-follow-up-owner span{color:var(--muted);font-size:12px}.quick-follow-up-owner strong{font-size:14px;line-height:1.2}.quick-follow-up textarea{line-height:1.5;min-height:40px;padding:9px 10px;resize:vertical}.danger-action{align-items:center;background:#fff1f1;border:1px solid #ffd1d1;border-radius:8px;color:#b42318;cursor:pointer;display:inline-flex;gap:6px;justify-content:center;min-height:36px;padding:0 10px}.row-actions{align-items:center;display:flex;gap:8px}.secondary-action{align-items:center;background:#eef1f4;border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:inline-flex;gap:6px;justify-content:center;min-height:36px;padding:0 10px;text-decoration:none}.panel-subtitle{color:var(--muted);display:block;font-size:13px;margin-top:5px}.account-management{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(260px,.36fr) minmax(0,1fr)}.account-editor-panel,.account-list-panel,.role-type-panel{min-width:0}.account-management-main{display:grid;grid-gap:16px;gap:16px;min-width:0}.account-list{display:grid;grid-gap:8px;gap:8px}.account-list-item{align-items:center;background:#f9fafb;border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:grid;grid-gap:10px;gap:10px;grid-template-columns:36px minmax(0,1fr);min-height:64px;padding:10px;text-align:left;width:100%}.account-list-item.active,.account-list-item:hover{background:#f7fbff;border-color:#b8d4ff}.account-list-item small,.account-list-item strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-list-item small{color:var(--muted);margin-top:4px}.account-avatar{align-items:center;background:#eef7f3;border-radius:8px;color:var(--green);display:inline-flex;height:36px;justify-content:center;width:36px}.account-editor-heading{align-items:flex-start}.account-editor-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.account-editor-grid label{display:grid;grid-gap:7px;gap:7px}.account-editor-grid label span{color:var(--muted);font-size:14px}.account-editor-grid input,.account-editor-grid select,.role-type-editor input{background:#f9fafb;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:42px;outline:0;padding:0 12px;width:100%}.password-field{align-items:center;background:#f9fafb;border:1px solid var(--line);border-radius:8px;display:flex;min-height:42px}.password-field input{background:transparent;border:0;min-height:40px;padding:0 0 0 12px}.password-field button{align-items:center;background:transparent;border:0;color:var(--muted);cursor:pointer;display:inline-flex;flex:0 0 auto;height:40px;justify-content:center;width:40px}.password-field button:hover{color:var(--blue)}.role-type-layout{display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(180px,.34fr) minmax(0,1fr)}.role-type-toggle svg{transition:transform .22s ease}.role-type-toggle.open svg{transform:rotate(180deg)}.role-type-panel-body{display:grid;grid-template-rows:1fr;opacity:1;overflow:hidden;padding-top:2px;transition:grid-template-rows .26s ease,opacity .18s ease,padding-top .26s ease}.role-type-panel.collapsed .role-type-panel-body{grid-template-rows:0fr;opacity:0;padding-top:0;pointer-events:none}.role-type-panel-inner{display:grid;grid-gap:14px;gap:14px;min-height:0;overflow:hidden;transform:translateY(0);transition:transform .26s ease}.role-type-panel.collapsed .role-type-panel-inner{transform:translateY(-10px)}.role-type-actions{align-items:center;display:flex;gap:10px;justify-content:flex-end}.role-type-list{display:grid;grid-gap:8px;gap:8px;align-content:start}.role-type-item{background:#f9fafb;border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:grid;grid-gap:4px;gap:4px;min-height:58px;padding:10px;text-align:left}.role-type-item.active,.role-type-item:hover{background:#f7fbff;border-color:#b8d4ff}.role-type-item small{color:var(--muted)}.role-type-editor{display:grid;grid-gap:12px;gap:12px}.role-type-editor label{display:grid;grid-gap:7px;gap:7px}.role-type-editor label span{color:var(--muted);font-size:14px}.role-type-editor input:disabled{cursor:not-allowed;opacity:.7}.role-type-permissions{grid-template-columns:repeat(3,minmax(0,1fr))}.permission-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.permission-card{border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:14px;gap:14px;padding:14px}.permission-card-heading{align-items:flex-start;display:grid;grid-gap:10px;gap:10px;grid-template-columns:24px minmax(0,1fr)}.permission-card-heading svg{color:var(--green)}.permission-card h3,.permission-card p{margin:0}.permission-card h3{font-size:16px}.permission-card p{color:var(--muted);font-size:13px;line-height:1.5;margin-top:4px}.permission-options{display:grid;grid-gap:8px;gap:8px}.permission-option{align-items:center;background:#f9fafb;border:1px solid var(--line);border-radius:8px;cursor:pointer;display:flex;gap:10px;min-height:38px;padding:0 10px}.permission-option input{accent-color:var(--green);height:16px;width:16px}.account-status{margin:14px 0 0}.account-status.success{color:var(--green)}.account-status.error{color:#b42318}.detail-page{min-height:100vh;padding:28px}.detail-topbar{align-items:flex-end;display:flex;gap:18px;justify-content:space-between;margin-bottom:18px}.detail-topbar h1,.detail-topbar p{margin:0}.detail-topbar h1{font-size:32px;line-height:1.2;margin-top:8px}.back-link,.detail-topbar p{color:var(--muted)}.back-link{text-decoration:none}.back-link:hover{color:var(--blue)}.detail-layout{display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}.customer-edit-form,.follow-up-form{display:grid;grid-gap:14px;gap:14px}.customer-edit-form label,.follow-up-form label{display:grid;grid-gap:7px;gap:7px}.customer-edit-form label span,.follow-up-form label span{color:var(--muted);font-size:14px}.customer-edit-form input,.customer-edit-form select,.customer-edit-form textarea,.follow-up-form textarea{background:#f9fafb;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:42px;outline:0;padding:0 12px;width:100%}.customer-edit-form .field input,.customer-edit-form .field textarea{background:transparent;border:0;min-width:0;padding:0}.customer-edit-form textarea,.follow-up-form textarea{line-height:1.6;min-height:112px;padding:10px 12px;resize:vertical}.compact-action{min-height:40px}.timeline-panel{align-self:start}.timeline{display:grid;grid-gap:0;gap:0;margin-top:16px}.timeline-item{border-left:1px solid var(--line);display:grid;grid-gap:6px;gap:6px;padding:0 0 20px 18px;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-dot{background:var(--green);border:3px solid #e7f5ef;border-radius:999px;height:13px;left:-7px;position:absolute;top:2px;width:13px}.timeline-item time{color:var(--muted);font-size:13px}.timeline-item strong{color:var(--ink)}.timeline-item p{line-height:1.6;margin:0}.timeline-actions,.timeline-item-heading{align-items:center;display:flex;gap:8px;justify-content:space-between}.timeline-item-actions{align-items:center;display:inline-flex;gap:8px}.compact-link-action{font-size:13px;min-height:30px;padding:0 9px}.timeline-edit-form{display:grid;grid-gap:10px;gap:10px}.timeline-edit-form label{display:grid;grid-gap:6px;gap:6px}.timeline-edit-form label span{color:var(--muted);font-size:13px}.timeline-edit-form textarea{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:38px;outline:0;padding:0 10px;width:100%;line-height:1.6;min-height:92px;padding:9px 10px;resize:vertical}.note-images-field{display:grid;grid-gap:12px;gap:12px}.note-images-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.note-images-heading span{color:var(--muted);font-size:14px}.upload-action{min-height:36px;position:relative}.upload-action input{height:1px;opacity:0;pointer-events:none;position:absolute;width:1px}.note-images-empty{color:var(--muted);margin:0}.note-image-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(118px,1fr))}.note-image-item{background:#f9fafb;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;margin:0;padding:8px}.note-image-item>button:first-child{background:transparent;border:0;cursor:zoom-in;padding:0}.note-image-item img{aspect-ratio:1;border-radius:6px;display:block;object-fit:cover;width:100%}.note-image-remove{background:#fff1f1;border:1px solid #ffd1d1;border-radius:8px;color:#b42318;cursor:pointer;min-height:32px}.image-lightbox{align-items:center;background:rgba(23,32,38,.82);display:flex;inset:0;justify-content:center;padding:36px;position:fixed;z-index:50}.image-lightbox img{border-radius:8px;max-height:88vh;max-width:92vw;object-fit:contain}.image-lightbox-close{background:#fff;border:0;border-radius:8px;color:var(--ink);cursor:pointer;min-height:38px;padding:0 14px;position:fixed;right:24px;top:24px}.follow-up-center,.follow-up-layout{display:grid;grid-gap:16px;gap:16px}.follow-up-layout{align-items:start;grid-template-columns:minmax(0,1.35fr) minmax(320px,.45fr)}.calendar-panel,.follow-up-side,.follow-up-task-form,.task-list-panel{min-width:0}.follow-up-side{display:grid;grid-gap:16px;gap:16px}.calendar-toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:18px}.calendar-actions,.calendar-picker{align-items:center;display:inline-flex;gap:8px}.calendar-picker select{background:#f9fafb;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:38px;outline:0;padding:0 10px}.calendar-grid,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{color:var(--muted);font-size:13px;margin-bottom:8px;text-align:center}.calendar-grid{border-left:1px solid var(--line);border-top:1px solid var(--line)}.calendar-day{background:#fff;border:0;border-bottom:1px solid var(--line);border-right:1px solid var(--line);color:var(--ink);cursor:pointer;display:grid;grid-gap:7px;gap:7px;min-height:104px;padding:9px;place-content:start;text-align:left}.calendar-day.selected,.calendar-day:hover{background:#f7fbff}.calendar-day.selected{box-shadow:inset 0 0 0 2px var(--blue)}.calendar-day.today .calendar-day-number{background:var(--green);border-radius:999px;color:#fff;display:inline-grid;height:26px;place-items:center;width:26px}.calendar-day.muted{background:#fafbfc;color:#a1abb4}.calendar-day-tasks{display:grid;grid-gap:4px;gap:4px;min-width:0}.calendar-day-more,.calendar-day-task{border-radius:6px;display:block;font-size:12px;line-height:1.35;overflow:hidden;padding:3px 6px;text-overflow:ellipsis;white-space:nowrap}.calendar-day-task{background:#eef7f3;color:var(--green)}.calendar-day-task.overdue{background:#fff1f1;color:#b42318}.calendar-day-task.completed{background:#eef1f4;color:var(--muted);text-decoration:line-through}.calendar-day-more{background:#edf4ff;color:var(--blue);justify-self:start}.follow-up-task-form{display:grid;grid-gap:0;gap:0}.follow-up-task-form-body{display:grid;grid-template-rows:1fr;opacity:1;overflow:hidden;transition:grid-template-rows .22s ease,opacity .18s ease,padding-top .22s ease;padding-top:2px}.follow-up-task-form.collapsed .follow-up-task-form-body{grid-template-rows:0fr;opacity:0;padding-top:0}.follow-up-task-form-inner{display:grid;grid-gap:14px;gap:14px;min-height:0;overflow:hidden;transform:translateY(0);transition:transform .22s ease}.follow-up-task-form.collapsed .follow-up-task-form-inner{transform:translateY(-12px)}.follow-up-task-form label{display:grid;grid-gap:7px;gap:7px}.follow-up-task-form label span{color:var(--muted);font-size:14px}.follow-up-task-form input,.follow-up-task-form select,.follow-up-task-form textarea{background:#f9fafb;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:42px;outline:0;padding:0 12px;width:100%}.follow-up-task-form textarea{line-height:1.6;min-height:94px;padding:10px 12px;resize:vertical}.follow-up-task-list{display:grid;grid-gap:10px;gap:10px}.task-item{border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;grid-template-columns:54px minmax(0,1fr) auto;padding:12px}.task-item.completed{background:#f9fafb;opacity:.7}.task-time{color:var(--blue);font-weight:700}.task-item a,.task-item span,.task-item strong{display:block}.task-item a{color:var(--ink);margin-top:4px;text-decoration:none}.task-item a:hover{color:var(--blue)}.task-item p,.task-item span{color:var(--muted);margin:4px 0 0}.task-item p{line-height:1.6}.task-actions{align-items:flex-start;display:inline-flex;gap:8px}.not-found-panel h1,.not-found-panel p{margin:0}.not-found-panel{display:grid;grid-gap:10px;gap:10px;margin-top:18px}.danger-action.confirming{background:#b42318;border-color:#b42318;color:#fff}.danger-action:disabled{cursor:not-allowed;opacity:.64}.customer-detail{align-self:start;background:#f9fafb;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:16px;gap:16px;min-height:320px;padding:16px}.detail-heading{border-bottom:1px solid var(--line);display:grid;grid-gap:6px;gap:6px;padding-bottom:14px}.detail-heading span{color:var(--green);font-size:13px}.detail-heading strong{font-size:20px;line-height:1.25}.customer-detail dt,.detail-heading small,.detail-notes span{color:var(--muted)}.customer-detail dl{display:grid;grid-gap:12px;gap:12px;margin:0}.customer-detail dt{font-size:13px;margin-bottom:4px}.customer-detail dd{margin:0;overflow-wrap:anywhere}.customer-detail a{color:var(--blue);text-decoration:none}.customer-detail a:hover{text-decoration:underline}.detail-notes{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;padding:12px}.detail-notes span{font-size:13px}.detail-notes p{line-height:1.6;margin:0}.empty-state{color:var(--muted);display:grid;min-height:180px;place-items:center}.empty-state.compact{min-height:260px;text-align:center}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:860px){.shell{grid-template-columns:1fr}.sidebar{border-bottom:1px solid var(--line);border-right:0;gap:14px}.nav{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.account-card{margin-top:0}.customer-layout,.topbar{align-items:stretch;grid-template-columns:1fr}.topbar{flex-direction:column}.topbar-link{justify-content:center}.customer-workspace,.list-tools,.stats-grid{grid-template-columns:1fr}.segmented-control{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.customer-detail{min-height:auto}.form-row,.option-manager-grid,.quick-follow-up{grid-template-columns:1fr}.detail-page{padding:18px}.detail-topbar{align-items:stretch;flex-direction:column}.account-editor-grid,.account-management,.detail-layout,.follow-up-layout,.permission-grid,.role-type-layout,.role-type-permissions{grid-template-columns:1fr}.calendar-day{min-height:82px;padding:8px}.task-item{grid-template-columns:1fr}.task-actions{justify-content:flex-start}}