:root{font-family:Inter,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#202824;background:#f4f6f4;font-synthesis:none;text-rendering:optimizeLegibility;--surface: #ffffff;--surface-soft: #f8faf8;--line: #dfe5e1;--line-strong: #ccd5d0;--ink: #202824;--muted: #69736e;--brand: #176b52;--brand-dark: #105641;--brand-soft: #e9f4ef;--blue: #2c66a8;--blue-soft: #eaf1f9;--amber: #ac681c;--amber-soft: #fbf1df;--red: #b84242;--red-soft: #fbeaea;--shadow: 0 4px 18px rgba(28, 45, 36, .07)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f4f6f4}button,input,select,textarea{font:inherit}input,textarea,select{font-size:16px}@supports (-webkit-overflow-scrolling: touch){input,textarea,select{font-size:16px!important}}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.loading{min-height:220px;display:grid;place-items:center}.loading span{width:25px;height:25px;border:3px solid #d8e4de;border-top-color:var(--brand);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;width:224px;display:flex;flex-direction:column;background:#fbfcfb;border-right:1px solid var(--line)}.sidebar-brand{height:72px;display:flex;align-items:center;gap:11px;padding:0 20px;border-bottom:1px solid var(--line)}.sidebar-brand strong,.login-brand strong{display:block;font-size:15px}.sidebar-brand>div:last-child{min-width:0}.sidebar-brand strong{font-size:12px;white-space:nowrap}.sidebar-brand span,.login-brand span{display:block;margin-top:2px;color:var(--muted);font-size:11px}.brand-mark{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:8px}.brand-mark.small{width:34px;height:34px}.brand-mark img{width:100%;height:100%;display:block;object-fit:contain}.sidebar-nav{display:flex;flex:1;flex-direction:column;gap:4px;padding:16px 12px}.sidebar-nav button{height:42px;display:flex;align-items:center;gap:11px;padding:0 12px;color:#59635e;background:transparent;border:0;border-radius:6px;text-align:left}.sidebar-nav button:hover{color:var(--ink);background:#f0f4f1}.sidebar-nav button.active{color:var(--brand-dark);background:var(--brand-soft);font-weight:650;box-shadow:inset 3px 0 var(--brand)}.sidebar-user{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:9px;min-height:68px;padding:12px 14px;border-top:1px solid var(--line)}.sidebar-user strong,.sidebar-user span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user strong{font-size:13px}.sidebar-user span{margin-top:2px;color:var(--muted);font-size:11px}.avatar{width:34px;height:34px;display:grid;place-items:center;color:var(--brand-dark);background:var(--brand-soft);border-radius:50%;font-size:13px;font-weight:700}.workspace{width:calc(100% - 224px);min-height:100vh;display:flex;flex-direction:column;margin-left:224px}.topbar{position:sticky;top:0;z-index:12;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#fffffff0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-title{display:flex;align-items:center;gap:9px;font-size:14px}.project-switcher{position:relative}.project-context{min-height:46px;display:flex;align-items:center;gap:9px;padding:5px 8px 5px 10px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:6px}.project-context:hover,.project-context[aria-expanded=true]{background:var(--surface-soft);border-color:var(--line)}.project-context strong,.project-context span{display:block;text-align:right}.project-context strong{font-size:12px}.project-context span{max-width:280px;margin-top:2px;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.project-context>svg{color:var(--muted)}.project-dot{width:8px;height:8px;border-radius:50%;background:#28a56e;box-shadow:0 0 0 4px #e3f4eb}.project-menu-scrim{position:fixed;inset:0;z-index:30;background:transparent;border:0}.project-menu{position:absolute;z-index:31;top:calc(100% + 7px);right:0;width:min(360px,calc(100vw - 24px));padding:7px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 50px #19231e2b}.project-menu-label{padding:6px 9px 7px;color:var(--muted);font-size:10px;font-weight:700}.project-menu>button{width:100%;min-height:54px;display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:8px;padding:7px 9px;color:var(--ink);background:transparent;border:0;border-radius:6px;text-align:left}.project-menu>button:hover,.project-menu>button.selected{background:var(--brand-soft)}.project-menu>button strong,.project-menu>button small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-menu>button strong{font-size:12px}.project-menu>button small{margin-top:4px;color:var(--muted);font-size:10px}.project-menu>button>svg{color:var(--brand)}.project-menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:5px;padding-top:7px;border-top:1px solid var(--line)}.project-menu-actions button{min-height:36px;display:flex;align-items:center;justify-content:center;gap:6px;color:#48544e;background:#fff;border:1px solid var(--line);border-radius:6px;font-size:11px}.project-menu-actions button:hover{color:var(--brand-dark);background:var(--brand-soft);border-color:#9fc8b5}.mobile-menu{display:none!important}.page-content{width:min(100%,1500px);flex:1;margin:0 auto;padding:27px 30px 48px}.page-heading{min-height:56px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.page-heading h1{margin:0;font-size:22px;line-height:1.25}.page-heading p{margin:6px 0 0;color:var(--muted);font-size:13px}.heading-actions{display:flex;align-items:center;gap:10px}.spreadsheet-import{position:relative}.spreadsheet-import input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.spreadsheet-import.disabled{cursor:not-allowed;opacity:.48}.primary,.secondary{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;border-radius:6px;font-weight:650;font-size:13px;white-space:nowrap}.primary{color:#fff;background:var(--brand);border:1px solid var(--brand)}.primary:hover{background:var(--brand-dark);border-color:var(--brand-dark)}.secondary{color:var(--ink);background:var(--surface);border:1px solid var(--line-strong)}.secondary:hover{color:var(--brand-dark);border-color:#84aa98;background:var(--brand-soft)}.secondary.compact{min-height:30px;padding:0 10px;font-size:12px}.wide{width:100%}.icon-button{width:34px;height:34px;display:inline-grid;place-items:center;padding:0;color:#52605a;background:transparent;border:1px solid transparent;border-radius:6px}.icon-button:hover{color:var(--brand-dark);background:var(--brand-soft)}.date-stepper{height:38px;display:flex;align-items:center;background:var(--surface);border:1px solid var(--line-strong);border-radius:6px}.date-stepper input{width:132px;height:36px;padding:0 6px;color:var(--ink);background:transparent;border:0;border-inline:1px solid var(--line);outline:0}.summary-strip{min-height:88px;display:grid;grid-template-columns:repeat(4,minmax(100px,132px)) minmax(260px,1fr);align-items:center;margin-bottom:18px;padding:13px 18px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.summary-strip>div:not(.onsite-meta){min-height:54px;display:flex;flex-direction:column;justify-content:center;padding:0 18px;border-right:1px solid var(--line)}.summary-strip>div:first-child{padding-left:0}.summary-strip span{color:var(--muted);font-size:11px}.summary-strip strong{margin-top:5px;color:var(--ink);font-size:23px}.onsite-meta{display:flex;align-items:center;justify-content:flex-end;gap:7px;color:var(--muted)}.onsite-meta svg{color:var(--brand);margin-left:10px}.data-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow:hidden}.panel-heading{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 18px;border-bottom:1px solid var(--line)}.panel-heading h2{margin:0;font-size:15px}.panel-heading>div>span{display:block;margin-top:3px;color:var(--muted);font-size:11px}.member-legend{display:flex;gap:12px}.member-legend span{display:flex!important;align-items:center;gap:5px;margin:0!important;color:var(--muted)}.member-legend i{width:7px;height:7px;border-radius:50%;background:var(--blue)}.member-legend span:nth-child(2) i{background:var(--amber)}.schedule-list{padding:0}.schedule-row{min-height:84px;display:grid;grid-template-columns:70px minmax(200px,1.35fr) minmax(190px,1.6fr) 100px 78px minmax(150px,auto);align-items:center;gap:16px;position:relative;padding:14px 18px;border-bottom:1px solid #dfe7e3}.appointment-fullscreen{width:30px;height:30px;display:grid;place-items:center;flex:0 0 auto;padding:0;color:var(--brand-dark);background:#fff;border:1px solid var(--line-strong);border-radius:5px}.appointment-fullscreen:hover{background:var(--brand-soft);border-color:#86b4a0}.schedule-row:fullscreen{width:100%;min-height:100vh;align-content:start;gap:20px;padding:30px 42px 42px;overflow:auto;background:#f5f8f6}.schedule-row:fullscreen:before{top:70px;height:56px}.schedule-row:fullscreen .appointment-fullscreen{position:fixed;top:18px;right:22px;left:auto;width:38px;height:38px;opacity:1}.schedule-row:fullscreen .appointment-details{grid-template-columns:minmax(0,1.5fr) minmax(420px,1fr);margin-top:10px;padding-top:18px}.schedule-row:fullscreen .customer-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.schedule-row:fullscreen .customer-detail-grid>div{min-height:62px;padding:10px 12px}.schedule-row:fullscreen .onsite-family-details>div{gap:9px}.schedule-row:fullscreen .appointment-gift-list{gap:9px}.schedule-row:fullscreen .appointment-gift{min-height:68px;padding:9px 11px}.schedule-row:fullscreen .appointment-notes{grid-template-columns:minmax(280px,1fr) minmax(420px,1.8fr) auto;margin-top:10px;padding-top:18px}.schedule-row:fullscreen .current-remark textarea{min-height:190px;max-height:none;font-size:16px}.schedule-row:nth-child(odd){background:#fff}.schedule-row:nth-child(2n){background:#f1f6f8}.schedule-row:last-child{border-bottom:0}.schedule-row:before{content:"";position:absolute;top:20px;left:0;width:3px;height:42px;background:#a9b4ae;border-radius:0 2px 2px 0}.schedule-row.status-completed:before{background:var(--brand)}.schedule-row.status-checked_in:before{background:var(--blue)}.schedule-row>time{color:var(--ink);font-size:15px;font-weight:750}.schedule-row>time span{display:block;margin-top:3px;color:var(--muted);font-size:10px;font-weight:500}.client-cell,.table-client{display:flex;align-items:center;gap:10px;min-width:0}.client-cell strong,.client-cell span,.table-client strong,.table-client small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-cell strong,.table-client strong{font-size:13px}.schedule-row>.client-cell strong{color:#0d6278;font-size:14px;font-weight:800}.client-cell span,.table-client small{margin-top:3px;color:var(--muted);font-size:11px}.client-initial{width:32px;height:32px;flex:0 0 auto;display:grid;place-items:center;color:var(--brand-dark);background:var(--brand-soft);border-radius:6px;font-size:12px;font-weight:750}.client-initial.large{width:42px;height:42px;font-size:16px}.strategy-cell{min-width:0}.strategy-cell>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.strategy-cell>div>span{color:var(--muted);font-size:10px}.strategy-cell button{min-height:25px;display:inline-flex;align-items:center;gap:4px;padding:0 7px;color:var(--brand-dark);background:var(--brand-soft);border:1px solid #a9cdbd;border-radius:5px;font-size:10px;font-weight:700;white-space:nowrap}.strategy-cell button:hover{border-color:var(--brand);background:#dceee6}.strategy-cell p{margin:3px 0 0;overflow:hidden;color:#3b4741;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.assignee{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:12px}.status-badge,.client-status,.category-tag{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:650;white-space:nowrap}.status-badge.scheduled{color:#606b65;background:#eff2f0}.status-badge.confirmed{color:var(--blue);background:var(--blue-soft)}.status-badge.checked_in{color:#1f6c69;background:#e4f4f2}.status-badge.completed{color:var(--brand-dark);background:var(--brand-soft)}.status-badge.no_show,.status-badge.cancelled{color:var(--red);background:var(--red-soft)}.row-actions{display:flex;justify-content:flex-end;gap:6px}.appointment-details{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(390px,1fr);align-items:start;gap:16px;padding-top:11px;border-top:1px dashed var(--line)}.customer-details{min-width:0}.detail-toolbar{min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.detail-toolbar .detail-section-label{margin:0}.customer-detail-grid{min-width:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.customer-detail-grid>div{min-width:0;min-height:48px;padding:7px 9px;background:#fff;border:1px solid var(--line);border-radius:5px}.customer-detail-grid>div.customer-detail-emphasis{background:#fff0d3;border-color:#e8a244;box-shadow:inset 3px 0 #d97706}.customer-detail-grid>div.customer-detail-emphasis span{color:#93550a}.customer-detail-grid>div.customer-detail-emphasis strong{color:#773c05;font-weight:800}.customer-detail-grid span,.customer-detail-grid strong{display:block}.customer-detail-grid span{color:var(--muted);font-size:10px}.customer-detail-grid strong{margin-top:5px;overflow-wrap:anywhere;font-size:11px;line-height:1.35}.onsite-family-details{margin-top:12px}.onsite-family-details>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.onsite-family-details dl{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;margin:0;padding:8px 9px;background:#fff;border:1px solid var(--line);border-radius:5px}.onsite-family-details dt{align-self:start;padding:2px 5px;color:var(--brand-dark);background:var(--brand-soft);border-radius:4px;font-size:10px;font-weight:650}.onsite-family-details dd{min-width:0;margin:0}.onsite-family-details strong,.onsite-family-details span,.onsite-family-details em,.onsite-family-details small{display:block;overflow-wrap:anywhere}.onsite-family-details strong{font-size:11px}.onsite-family-details span,.onsite-family-details em,.onsite-family-details small,.onsite-family-details p{margin:3px 0 0;color:var(--muted);font-size:10px;font-style:normal}.onsite-family-details .family-product-detail{display:grid;grid-template-columns:43px minmax(0,1fr);gap:4px;padding:4px 5px;color:#405048;background:#f4f8f6;border-left:2px solid #9dc9b6;line-height:1.45}.family-product-detail b{color:var(--brand-dark);font-weight:700}.appointment-gifts{min-width:0}.detail-section-label{display:block;margin-bottom:6px;color:var(--muted);font-size:10px}.appointment-gift-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.appointment-gift{min-width:0;min-height:54px;display:grid;grid-template-columns:17px minmax(0,1fr) auto;grid-template-areas:"icon name check" "icon status status";align-items:center;column-gap:6px;row-gap:2px;padding:6px 8px;color:var(--ink);background:#fff;border:1px solid var(--line-strong);border-radius:6px;text-align:left}button.appointment-gift:hover{border-color:#7fa793;background:#f8fbf9}.appointment-gift>svg:first-child{grid-area:icon;color:var(--muted)}.appointment-gift>svg:last-child:not(:first-child){grid-area:check}.appointment-gift span,.appointment-gift small,.appointment-gift strong{min-width:0;display:block}.appointment-gift>span{grid-area:name}.appointment-gift small{color:var(--muted);font-size:9px}.appointment-gift strong{margin-top:3px;overflow-wrap:anywhere;font-size:10px;line-height:1.3}.appointment-gift em{grid-area:status;color:var(--muted);font-size:9px;font-style:normal;white-space:nowrap}.appointment-gift.redeemed{color:var(--brand-dark);background:var(--brand-soft);border-color:#92bea9;box-shadow:inset 3px 0 var(--brand)}.appointment-gift.redeemed>svg,.appointment-gift.redeemed em{color:var(--brand)}.appointment-gift.redeemed strong{font-weight:750}.appointment-gift.unavailable{grid-template-columns:17px minmax(0,1fr);grid-template-areas:"icon name";color:var(--muted);background:var(--surface-soft);border-style:dashed}.appointment-notes{grid-column:1 / -1;display:grid;grid-template-columns:minmax(180px,1fr) minmax(240px,1.45fr) auto;align-items:end;gap:10px;margin-top:1px;padding-top:10px;border-top:1px dashed var(--line)}.remark-block{min-width:0;display:flex;flex-direction:column;gap:5px}.remark-block>span{color:var(--muted);font-size:10px}.previous-remark{min-height:86px;padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:6px}.previous-remark>span{font-size:11px;font-weight:650}.remark-block p{max-height:96px;margin:0;overflow:auto;color:#3b4741;font-size:13px;line-height:1.65;white-space:pre-wrap;word-break:break-word}.current-remark textarea{width:100%;min-height:57px;max-height:110px;padding:7px 9px;color:var(--ink);background:#fff;border:1px solid var(--line-strong);border-radius:6px;outline:0;resize:vertical;line-height:1.45}.current-remark textarea:focus{border-color:#61927c;box-shadow:0 0 0 3px #176b521a}.remark-save{align-self:end;margin-bottom:1px}.filter-bar{display:flex;align-items:center;gap:9px;margin-bottom:12px}.filter-bar select,.filter-bar input,.field input,.field select,.field textarea{color:var(--ink);background:#fff;border:1px solid var(--line-strong);border-radius:6px;outline:0}.filter-bar select{min-width:116px;height:38px;padding:0 9px}.search-input{height:38px;display:flex;align-items:center;gap:7px;padding:0 10px;background:#fff;border:1px solid var(--line-strong);border-radius:6px}.search-input:focus-within,.filter-bar select:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:#61927c;box-shadow:0 0 0 3px #176b521a}.search-input svg{flex:0 0 auto;color:var(--muted)}.search-input input{width:100%;min-width:0;height:34px;padding:0;border:0;outline:0}.search-input.grow{flex:1;min-width:190px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{height:42px;padding:0 14px;color:var(--muted);background:#f8faf8;border-bottom:1px solid var(--line);text-align:left;font-size:11px;font-weight:650;white-space:nowrap}td{height:58px;max-width:220px;padding:7px 14px;border-bottom:1px solid #e9eeeb;color:#3c4742}tbody tr{cursor:pointer}tbody tr:hover td{background:#f8fbf9}tbody tr:last-child td{border-bottom:0}.table-edit{width:30px;height:30px;border-color:var(--line)}.table-edit:hover{color:var(--brand);border-color:#94b7a7;background:var(--brand-soft)}.table-client{min-width:135px}.category-tag{min-width:25px;min-height:23px;padding:0 7px}.category-tag.c-A{color:#126448;background:#e4f3ec}.category-tag.c-B{color:#285c9a;background:#e8f0f8}.category-tag.c-C{color:#93601c;background:#f9efd9}.category-tag.c-D,.client-status.uncontacted{color:#68716d;background:#eff2f0}.client-status.following{color:var(--blue);background:var(--blue-soft)}.client-status.served{color:var(--brand-dark);background:var(--brand-soft)}.client-status.paused{color:var(--amber);background:var(--amber-soft)}.truncate-cell{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-ledger-table{min-width:1460px}.core-client-table{min-width:1120px}.strategy-ledger-cell{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remark-ledger-cell{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remark-ledger-cell span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pagination{min-height:52px;display:flex;align-items:center;justify-content:space-between;padding:8px 14px;color:var(--muted);border-top:1px solid var(--line);font-size:11px}.pagination>div{display:flex;align-items:center;gap:7px}.pagination .icon-button{width:30px;height:30px;border-color:var(--line)}.empty-state{min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:13px}.empty-state svg{color:#97a59e}.muted{color:var(--muted)}.modal-backdrop,.drawer-backdrop{position:fixed;inset:0;z-index:60;display:flex;background:#19231e66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-backdrop{align-items:flex-start;justify-content:center;padding:6vh 16px 24px;overflow-y:auto}.modal{width:min(620px,100%);padding:21px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 24px 70px #19231e3d}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.modal-heading h2{margin:0;font-size:18px}.modal-heading p{margin:4px 0 0;color:var(--muted);font-size:12px}.client-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px;max-height:180px;margin:9px 0 18px;overflow-y:auto}.client-picker button{min-height:53px;display:grid;grid-template-columns:32px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:7px 9px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:6px;text-align:left}.client-picker button:hover,.client-picker button.selected{border-color:#69a087;background:var(--brand-soft)}.client-picker strong,.client-picker small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-picker strong{font-size:12px}.client-picker small{margin-top:3px;color:var(--muted);font-size:10px}.client-picker button>svg{color:var(--brand)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:11px}.field.full{grid-column:1 / -1}.field input,.field select{width:100%;height:38px;padding:0 10px}.field textarea{width:100%;min-height:82px;padding:9px 10px;resize:vertical;line-height:1.5}.field input.derived-field{color:#53615a;background:#f1f4f2;cursor:default}.check-field{min-height:38px;display:flex;align-items:center;gap:7px;color:var(--ink);font-size:12px}.check-field input{width:16px;height:16px;accent-color:var(--brand)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:15px;border-top:1px solid var(--line)}.drawer-backdrop{justify-content:flex-end}.drawer{width:min(570px,100%);display:flex;flex-direction:column;background:var(--surface);box-shadow:-14px 0 45px #19231e29}.drawer-heading{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line)}.drawer-heading>div{min-width:0;display:flex;align-items:center;gap:11px}.drawer-heading h2{margin:0;font-size:17px}.drawer-heading p{margin:4px 0 0;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.drawer-body{flex:1;padding:18px;overflow-y:auto}.profile-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:7px;overflow:hidden}.profile-grid>div{min-height:62px;padding:11px 13px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.profile-grid>div:nth-child(2n){border-right:0}.profile-grid>div:nth-last-child(-n+2){border-bottom:0}.profile-grid span,.profile-grid strong{display:block}.profile-grid span{color:var(--muted);font-size:10px}.profile-grid strong{margin-top:6px;font-size:12px}.drawer-section{margin-top:22px}.drawer-section h3{margin:0 0 11px;font-size:13px}.drawer-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.drawer-section-heading h3{margin:0}.drawer-actions{min-height:66px;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--line)}.timeline{display:flex;flex-direction:column}.timeline>div{min-height:54px;display:grid;grid-template-columns:14px 1fr;gap:8px;position:relative}.timeline>div:before{content:"";position:absolute;top:14px;bottom:-1px;left:4px;width:1px;background:var(--line-strong)}.timeline>div:last-child:before{display:none}.timeline i{width:9px;height:9px;margin-top:4px;border:2px solid var(--brand);border-radius:50%;background:#fff;z-index:1}.timeline strong,.timeline span{display:block}.timeline strong{font-size:11px}.timeline span{margin-top:4px;color:var(--muted);font-size:11px}.gift-cell{min-width:180px}.gift-cell>strong{display:block;margin-bottom:6px;font-size:11px}.gift-cell>div{display:flex;gap:4px}.gift-cell button{min-height:25px;padding:0 7px;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:5px;font-size:10px}.gift-cell button.on{color:var(--brand-dark);background:var(--brand-soft);border-color:#9fc8b5;font-weight:650}.gift-stack{min-width:180px;display:grid;gap:8px}.gift-stack .gift-cell+.gift-cell{padding-top:8px;border-top:1px dashed var(--line)}.core-gift-cell{min-width:120px}.core-gift-cell>span{display:block;color:var(--brand-dark);font-size:11px;line-height:1.5}.core-gift-cell>span+span{margin-top:2px}.core-gift-button{min-width:120px;display:grid;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:4px;margin:0 0 4px;padding:4px 6px;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:5px;text-align:left}.core-gift-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.core-gift-button em{grid-column:2;color:var(--muted);font-size:9px;font-style:normal}.core-gift-button:hover{color:var(--brand-dark);border-color:#92bea9;background:#f8fbf9}.core-gift-button.redeemed{color:var(--brand-dark);background:var(--brand-soft);border-color:#92bea9;box-shadow:inset 3px 0 var(--brand)}.core-gift-button.redeemed em{color:var(--brand)}.core-gift-button:disabled{cursor:wait;opacity:.7}.gift-selector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.gift-selector-grid>div{min-width:0;padding:10px;border:1px solid var(--line);border-radius:6px}.gift-selector-grid>div>strong{display:block;margin-bottom:8px;font-size:11px}.gift-selector-grid>div>div{display:grid;gap:6px}.gift-option{min-width:0;min-height:30px;display:flex;align-items:center;gap:7px;padding:5px 7px;color:var(--ink);background:var(--surface-soft);border-radius:5px;font-size:11px}.gift-option input{width:15px;height:15px;flex:0 0 auto;accent-color:var(--brand)}.gift-option span{overflow-wrap:anywhere}.family-table{min-width:1160px}.id-number-cell{min-width:180px;font-variant-numeric:tabular-nums}.purchase-state{min-width:38px;min-height:24px;display:inline-flex;align-items:center;justify-content:center;padding:2px 7px;color:var(--muted);background:#eff2f0;border-radius:999px;font-size:10px;font-weight:650}.purchase-state.purchased{color:var(--brand-dark);background:var(--brand-soft)}.family-editor-backdrop{z-index:80}.family-modal{width:min(660px,100%)}.selected-client{min-height:40px;display:flex;align-items:center;gap:8px;padding:8px 10px;color:var(--brand-dark);background:var(--brand-soft);border:1px solid #bdd8cb;border-radius:6px}.family-client-options{display:grid;grid-template-columns:1fr 1fr;gap:6px;max-height:170px;margin-top:7px;overflow-y:auto}.family-client-options button{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:5px;text-align:left}.family-client-options button:hover,.family-client-options button.selected{border-color:#8caf9f;background:var(--brand-soft)}.family-client-options strong,.family-client-options small{display:block}.family-client-options small{margin-top:3px;color:var(--muted);font-size:9px}.match-field{position:relative}.client-match-options{position:absolute;z-index:8;top:calc(100% + 5px);left:0;right:0;display:grid;gap:4px;max-height:190px;padding:5px;overflow-y:auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:6px;box-shadow:0 12px 28px #19231e24}.client-match-options button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;padding:7px 9px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:5px;text-align:left}.client-match-options button:hover,.client-match-options button:focus-visible{background:var(--brand-soft);border-color:#bdd8cb;outline:none}.client-match-options strong,.client-match-options small{display:block}.client-match-options small{margin-top:3px;color:var(--muted);font-size:10px}.match-hint{margin-right:auto;font-size:10px}.family-check{padding:8px 10px;background:var(--surface-soft);border:1px solid var(--line);border-radius:6px}.family-coverage-entry{grid-column:1 / -1;min-width:0}.family-coverage-product{margin-top:7px}.family-coverage-product span{display:flex;align-items:center;justify-content:space-between;gap:8px}.family-coverage-product b{color:#b44738;font-size:10px;font-weight:650}.family-coverage-product textarea{min-height:66px}.family-mini-list{display:grid;gap:6px}.family-mini-list>button{min-height:54px;display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:10px;padding:8px 10px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:6px;text-align:left}.family-mini-list>button:hover{border-color:#91b3a3;background:var(--brand-soft)}.family-mini-list strong,.family-mini-list small{display:block}.family-mini-list small{margin-top:3px;color:var(--muted);font-size:10px}.family-mini-list>button>span:nth-child(2){text-align:right}.family-mini-list+.pagination{min-height:48px;padding-inline:0}.department-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.department-card{min-height:72px;display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:11px 13px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:7px;text-align:left}.department-card:hover{border-color:#95b8a8;background:var(--brand-soft)}.department-card>svg:first-child{width:34px;height:34px;padding:8px;color:var(--brand);background:var(--brand-soft);border-radius:6px}.department-card>svg:last-child{color:#9aa49f}.department-grid strong,.department-grid span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.department-grid strong{font-size:12px}.department-grid span{margin-top:5px;color:var(--muted);font-size:10px}.department-heading h1{margin-top:10px}.back-button{min-height:30px;display:inline-flex;align-items:center;gap:4px;padding:0 8px 0 4px;color:var(--brand-dark);background:transparent;border:0;border-radius:5px;font-size:11px}.back-button:hover{background:var(--brand-soft)}.settings-layout{display:grid;gap:14px}.settings-section{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.settings-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.settings-section-heading h2{margin:0;font-size:15px}.settings-section-heading span{display:block;margin-top:4px;color:var(--muted);font-size:10px}.gift-config-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gift-config-grid>div{min-width:0}.gift-config-grid h3{margin:0 0 10px;font-size:12px}.tag-editor{display:grid;gap:11px}.config-tags{min-height:38px;display:flex;align-content:flex-start;flex-wrap:wrap;gap:7px}.config-tags>span{min-height:30px;display:inline-flex;align-items:center;gap:5px;padding:3px 5px 3px 9px;color:var(--brand-dark);background:var(--brand-soft);border:1px solid #c8dfd4;border-radius:6px;font-size:11px}.config-tags button{width:22px;height:22px;display:grid;place-items:center;padding:0;color:#5f786c;background:transparent;border:0;border-radius:4px}.config-tags button:hover{color:var(--red);background:#fff}.tag-add{display:flex;gap:7px}.tag-add input{min-width:0;flex:1;height:38px;padding:0 10px;color:var(--ink);border:1px solid var(--line-strong);border-radius:6px;outline:0}.tag-add input:focus{border-color:#61927c;box-shadow:0 0 0 3px #176b521a}.audit-list{padding:0 16px}.audit-list>div{min-height:60px;display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line)}.audit-list>div:last-child{border-bottom:0}.audit-list svg{color:var(--brand)}.audit-list strong,.audit-list span{display:block}.audit-list strong{font-size:12px}.audit-list span{margin-top:4px;color:var(--muted);font-size:10px}.toast{position:fixed;z-index:100;left:50%;bottom:28px;max-width:min(420px,calc(100vw - 32px));padding:10px 14px;transform:translate(-50%);color:#fff;background:#24342d;border-radius:6px;box-shadow:var(--shadow);font-size:12px}.form-error{padding:9px 10px;color:var(--red);background:var(--red-soft);border-radius:6px;font-size:12px}.archive-confirm-modal{width:min(460px,calc(100% - 32px))}.archive-warning{padding:13px 14px;color:#8a4a12;background:#fff7e8;border:1px solid #efc98f;border-radius:7px}.archive-warning strong,.archive-warning p{display:block}.archive-warning strong{font-size:13px}.archive-warning p{margin:7px 0 0;font-size:12px;line-height:1.65}.login-shell{min-height:100vh;display:grid;grid-template-rows:76px 1fr auto;background:#f4f6f4}.login-brand{display:flex;align-items:center;gap:11px;padding:0 28px;background:#fff;border-bottom:1px solid var(--line)}.login-panel{width:min(390px,calc(100% - 32px));align-self:center;justify-self:center;display:flex;flex-direction:column;gap:15px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.login-heading{margin-bottom:7px}.login-heading h1{margin:0;font-size:22px}.login-heading p{margin:7px 0 0;color:var(--muted);font-size:12px}.login-panel label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:11px}.login-panel input{height:40px;padding:0 11px;color:var(--ink);border:1px solid var(--line-strong);border-radius:6px;outline:0}.login-panel input:focus{border-color:#61927c;box-shadow:0 0 0 3px #176b521a}.login-panel form{display:flex;flex-direction:column;gap:15px}.auth-links{display:flex;justify-content:center;gap:17px}.auth-links button{display:inline-flex;align-items:center;gap:5px;padding:0;color:var(--brand-dark);background:transparent;border:0;font-size:11px}.auth-links button:hover{text-decoration:underline}.site-footer{min-height:42px;display:flex;align-items:center;justify-content:center;padding:10px 24px;color:var(--muted);border-top:1px solid var(--line);font-size:11px}.site-footer a{color:inherit;text-decoration:none}.site-footer a:hover,.site-footer a:focus-visible{color:var(--brand-dark);text-decoration:underline}.register-panel{width:min(520px,calc(100% - 32px))}.register-panel .form-grid{margin:0}.registration-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none}.registration-steps li{min-width:0;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:7px;position:relative;color:#8a938f}.registration-steps li:not(:last-child):after{content:"";position:absolute;z-index:0;top:13px;left:28px;right:7px;height:1px;background:var(--line-strong)}.registration-steps li>span{z-index:1;width:28px;height:28px;display:grid;place-items:center;color:#737d78;background:#f3f5f4;border:1px solid var(--line-strong);border-radius:50%;font-size:11px;font-weight:700}.registration-steps li>strong{z-index:1;width:max-content;max-width:100%;padding-right:7px;overflow:hidden;background:#fff;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.registration-steps li.active{color:var(--brand-dark)}.registration-steps li.active>span{color:#fff;background:var(--brand);border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.registration-steps li.completed{color:var(--brand-dark)}.registration-steps li.completed:after{background:#8fbaa6}.registration-steps li.completed>span{color:var(--brand-dark);background:var(--brand-soft);border-color:#9bc3b0}.registration-stage{min-height:238px;display:flex;flex-direction:column;gap:15px;padding:18px;background:var(--surface-soft);border:1px solid var(--line);border-radius:7px;animation:registration-stage-in .16s ease-out}@keyframes registration-stage-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.registration-stage-heading{padding-bottom:12px;border-bottom:1px solid var(--line)}.registration-stage-heading strong,.registration-stage-heading span{display:block}.registration-stage-heading strong{color:var(--ink);font-size:13px}.registration-stage-heading span{margin-top:4px;color:var(--muted);font-size:10px}.verification-input-row{display:grid;grid-template-columns:minmax(0,1fr) 116px;gap:8px}.verification-send{min-height:40px;padding-inline:10px;font-size:11px}.form-notice{min-height:38px;display:flex;align-items:center;gap:8px;padding:9px 10px;color:var(--brand-dark);background:var(--brand-soft);border:1px solid #c8dfd4;border-radius:6px;font-size:11px}.form-notice svg{flex:0 0 auto}.registration-actions{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:9px}.registration-actions.single{grid-template-columns:1fr}.demo-hint{padding:9px 10px;color:var(--brand-dark);background:var(--brand-soft);border-radius:6px;font-size:11px}.demo-hint code{font-weight:700;letter-spacing:.4px}.reset-form{margin-top:4px;padding-top:15px;border-top:1px solid var(--line)}.mobile-nav,.sidebar-scrim{display:none}.account-page,.profile-page{display:grid;gap:14px}.account-config-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin-top:-8px}.account-section{min-width:0;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.account-switch-section{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px}.account-switch-section h2{margin:0;font-size:15px}.account-switch-section>div>span{display:block;margin-top:5px;color:var(--muted);font-size:10px}.switch-control{width:92px;min-height:32px;display:inline-grid;grid-template-columns:28px 1fr;align-items:center;gap:5px;padding:3px 7px 3px 3px;color:var(--muted);background:#edf1ef;border:1px solid var(--line-strong);border-radius:18px}.switch-control i{width:24px;height:24px;display:block;background:#fff;border:1px solid #c7cecb;border-radius:50%;box-shadow:0 1px 3px #19231e1f;transition:transform .16s ease}.switch-control span{font-size:10px;font-style:normal;white-space:nowrap}.switch-control.on{color:#fff;background:var(--brand);border-color:var(--brand)}.switch-control.on i{transform:translate(4px);border-color:#fff}.switch-control:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.account-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:14px;padding-bottom:13px;border-bottom:1px solid var(--line)}.account-section-heading h2{margin:0;font-size:15px}.account-section-heading span{display:block;margin-top:4px;color:var(--muted);font-size:10px}.account-table{min-width:1180px}.account-table td{vertical-align:top;height:auto;min-height:72px;padding:12px 14px}.account-table td>strong,.account-table td>small{display:block}.account-table td>strong{font-size:12px}.account-table td>small{margin-top:4px;color:var(--muted);font-size:10px}.account-contexts{display:grid;gap:5px;min-width:180px}.account-context-chip{min-height:28px;display:flex;align-items:center;justify-content:space-between;gap:5px;padding:3px 3px 3px 7px;color:var(--brand-dark);background:var(--brand-soft);border-radius:5px}.account-context-chip span{display:block;font-size:10px}.account-context-chip .icon-button{width:22px;height:22px;color:var(--brand-dark);border-color:transparent}.account-context-chip .icon-button:hover{background:#22694a1a}.account-context-chip .icon-button:disabled{opacity:.35}.account-grant{display:flex;align-items:flex-start;gap:5px;min-width:220px}.project-multi-select{width:188px}.project-multi-select summary{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:0 8px;color:var(--ink);background:#fff;border:1px solid var(--line-strong);border-radius:5px;cursor:pointer;list-style:none}.project-multi-select summary::-webkit-details-marker{display:none}.project-multi-select summary span{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.project-multi-select[open] summary{border-color:var(--brand)}.project-multi-select[open] summary svg{transform:rotate(180deg)}.multi-select-options{max-height:156px;display:grid;gap:2px;margin-top:4px;padding:5px;overflow-y:auto;background:#fff;border:1px solid var(--line);border-radius:5px;box-shadow:0 6px 18px #19231e1a}.multi-select-options label{min-height:30px;display:grid;grid-template-columns:15px minmax(0,1fr);align-items:start;gap:6px;padding:6px;border-radius:4px;cursor:pointer}.multi-select-options label:hover{background:var(--surface-soft)}.multi-select-options input{margin:1px 0 0}.multi-select-options label span{font-size:10px;line-height:1.4;overflow-wrap:anywhere}.account-grant .icon-button{width:30px;height:30px;border-color:var(--line)}.account-actions{display:flex;align-items:center;gap:5px}.icon-button.danger{color:var(--red)}.icon-button.danger:hover{background:var(--red-soft)}.danger-text{color:var(--red)}.danger-text:hover{color:var(--red);border-color:#efb4ae;background:var(--red-soft)}.ai-policy{display:grid;grid-template-columns:repeat(2,minmax(96px,1fr));align-items:end;gap:7px;min-width:250px}.ai-policy label{color:var(--muted);font-size:10px}.ai-policy-toggle,.ai-policy-hint{grid-column:1 / -1}.ai-policy-toggle{display:inline-flex;align-items:center;gap:4px}.ai-policy-field{display:grid;gap:3px}.ai-policy-field span{min-height:24px;line-height:12px}.ai-policy-hint{color:var(--muted);font-size:10px;line-height:14px}.ai-policy .secondary{grid-column:1 / -1;justify-self:start}.ai-policy input[type=number]{width:100%;height:30px;padding:0 6px;border:1px solid var(--line-strong);border-radius:5px}.strategy-settings-section textarea{min-height:132px}.ai-config-grid small{margin-left:5px;color:var(--brand-dark);font-size:10px;font-weight:500}.field .field-hint{margin:4px 0 0;color:var(--muted);font-size:11px;font-weight:500;line-height:1.45}.strategy-setting-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:10px}.strategy-setting-actions>span{color:var(--muted);font-size:10px}.config-actions{flex-wrap:wrap}.config-actions>span{margin-right:auto}.connection-test-result{max-width:320px;font-size:10px;font-weight:650;line-height:1.45;overflow-wrap:anywhere}.connection-test-result.success{color:var(--brand-dark)}.connection-test-result.error{color:var(--red)}.account-columns{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px}.key-list,.factory-list,.request-list{display:grid;gap:7px}.key-list>div,.request-list>div{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.key-list>div:last-child,.request-list>div:last-child{border-bottom:0}.key-list strong,.key-list small,.request-list strong,.request-list span,.request-list small{display:block}.key-list strong{color:var(--brand-dark);font-size:12px;letter-spacing:.4px}.key-list small,.request-list span,.request-list small{margin-top:4px;color:var(--muted);font-size:10px}.inline-form{display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,1fr) auto;gap:7px;margin-bottom:14px}.inline-form select,.inline-form input{min-width:0;height:36px;padding:0 9px;color:var(--ink);background:#fff;border:1px solid var(--line-strong);border-radius:5px}.factory-list>div{padding:10px 0;border-bottom:1px solid var(--line)}.factory-list>div:first-child{padding-top:0}.factory-list>div:last-child{padding-bottom:0;border-bottom:0}.factory-list>div.disabled .factory-group{border-left-color:#d8dddb}.factory-heading{min-height:34px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:5px}.factory-heading strong,.factory-heading span{display:block}.factory-heading strong{font-size:12px}.factory-heading span{margin-top:3px;color:var(--muted);font-size:10px}.compact-switch{width:78px;min-height:28px;grid-template-columns:22px 1fr;padding:2px 6px 2px 2px}.compact-switch i{width:20px;height:20px}.factory-group{display:grid;grid-template-columns:80px 1fr;gap:8px;padding:7px 0 7px 9px;border-left:2px solid #c8dfd4}.factory-group span{font-size:11px;font-weight:650}.factory-group small{color:var(--muted);font-size:10px;line-height:1.5}.request-list>div{align-items:flex-start}.request-list>div>div:last-child{display:flex;gap:5px;flex:0 0 auto}.profile-section .form-grid{margin-top:2px}.profile-form-actions{grid-column:1 / -1}.readonly-account-email{min-height:42px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:9px;padding:0 11px;color:var(--muted);background:#f3f6f4;border:1px solid var(--line);border-radius:6px}.readonly-account-email>strong{overflow:hidden;color:var(--ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.readonly-account-email>span{min-height:24px;display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:999px;font-size:10px;font-weight:650;white-space:nowrap}.readonly-account-email>span.verified{color:var(--brand-dark);background:#ddf0e7}.readonly-account-email>span.unverified{color:var(--amber);background:var(--amber-soft)}.profile-security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px}.profile-security-grid .account-section-heading>svg{flex:0 0 auto;color:var(--brand)}.profile-security-form{align-items:end}.profile-send-row{display:grid;grid-template-columns:minmax(0,1fr) 128px;gap:7px}.profile-send-row .secondary{min-height:38px;padding-inline:10px;font-size:11px}.profile-demo-code{grid-column:1 / -1}.verification-mode-switch{min-width:218px;min-height:34px;display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:3px;background:#edf1ef;border:1px solid var(--line);border-radius:6px}.verification-mode-switch button{min-width:0;padding:0 8px;color:var(--muted);background:transparent;border:0;border-radius:4px;font-size:10px;white-space:nowrap}.verification-mode-switch button.active{color:var(--brand-dark);background:#fff;box-shadow:0 1px 4px #19231e1a;font-weight:650}.password-email-context{min-height:42px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:4px 4px 4px 10px;background:var(--surface-soft);border:1px solid var(--line);border-radius:6px}.password-email-context>svg{color:var(--brand)}.password-email-context>strong{min-width:0;overflow:hidden;color:var(--ink);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.password-email-context .secondary{min-height:32px}.password-match-hint{grid-column:1 / -1;min-height:28px;display:flex;align-items:center;gap:5px;margin-top:-4px;font-size:10px}.password-match-hint.matched{color:var(--brand-dark)}.password-match-hint.mismatch{color:var(--red)}.secret-banner{min-height:42px;display:flex;align-items:center;gap:8px;padding:8px 11px;color:var(--brand-dark);background:var(--brand-soft);border:1px solid #c8dfd4;border-radius:7px;font-size:11px}.secret-banner span{flex:1}.secret-banner code{font-weight:700;letter-spacing:.4px}@media(max-width:1120px){.summary-strip{grid-template-columns:repeat(4,1fr)}.onsite-meta{grid-column:1 / -1;justify-content:flex-start;padding-top:11px;border-top:1px solid var(--line)}.schedule-row{grid-template-columns:62px minmax(180px,1.3fr) minmax(170px,1.4fr) 90px 72px}.schedule-row .row-actions{grid-column:1 / -1;display:flex}.appointment-details{grid-template-columns:1fr}.customer-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.department-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gift-config-grid,.account-columns,.profile-security-grid{grid-template-columns:1fr}}@media(max-width:860px){.sidebar{transform:translate(-100%);transition:transform .2s ease;box-shadow:12px 0 35px #19231e29}.sidebar.open{transform:translate(0)}.sidebar-scrim{position:fixed;inset:0;z-index:19;display:block;background:#19231e4d;border:0}.workspace{width:100%;margin-left:0;padding-bottom:66px}.topbar{height:62px;padding:0 16px}.mobile-menu{display:inline-grid!important}.topbar-title{margin-right:auto;margin-left:8px}.page-content{padding:21px 16px 34px}.mobile-nav{position:fixed;inset:auto 0 0;z-index:18;min-height:62px;display:grid;grid-template-columns:repeat(5,1fr);padding-bottom:env(safe-area-inset-bottom);background:#fffffff5;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--muted);background:transparent;border:0;font-size:9px}.mobile-nav button.active{color:var(--brand);font-weight:650}.schedule-row{grid-template-columns:58px minmax(150px,1fr) 76px;gap:10px}.schedule-row>time{grid-column:1;grid-row:1}.schedule-row>.client-cell{grid-column:2;grid-row:1}.schedule-row>.status-badge{grid-column:3;grid-row:1}.schedule-row .strategy-cell{grid-column:1 / -1;grid-row:2}.schedule-row .assignee{display:none}.schedule-row .row-actions{grid-column:1 / -1;grid-row:3;display:flex;justify-content:flex-start}.strategy-cell p{overflow:visible;white-space:pre-wrap;word-break:break-word;line-height:1.5}.customer-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.onsite-family-details>div{grid-template-columns:1fr}.appointment-notes{grid-template-columns:1fr;align-items:stretch;gap:8px}.remark-save{width:100%}.filter-bar{flex-wrap:wrap}.search-input.grow{flex-basis:100%}.gift-selector-grid{grid-template-columns:1fr}}@media(max-width:600px){.project-context strong{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-context span,.project-dot,.project-context>svg{display:none}.project-context{min-height:36px;padding:4px 7px}.project-menu{position:fixed;top:57px;right:8px}.page-heading{flex-direction:column;align-items:stretch;margin-bottom:17px}.page-heading h1{font-size:20px}.heading-actions{justify-content:space-between}.page-heading>.heading-actions{flex-wrap:wrap;justify-content:flex-start}.page-heading>.heading-actions>.primary,.page-heading>.heading-actions>.secondary{flex:1}.heading-actions .date-stepper{flex:1}.date-stepper input{flex:1;width:100%}.summary-strip{grid-template-columns:repeat(2,1fr);padding:10px 13px}.summary-strip>div:not(.onsite-meta){padding:8px 12px}.summary-strip>div:nth-child(2){border-right:0}.summary-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.summary-strip>div:nth-child(3){padding-left:0}.summary-strip strong{font-size:20px}.onsite-meta{flex-wrap:wrap;font-size:10px}.member-legend{display:none}.panel-heading{min-height:55px}.schedule-list{padding:0}.schedule-row:before{left:0}.schedule-row{min-height:76px;grid-template-columns:52px minmax(125px,1fr) 64px;padding:14px 12px}.appointment-gift-list{grid-template-columns:1fr}.client-cell span{max-width:160px}.schedule-row .client-initial,.table-client .client-initial{display:none}.filter-bar select{flex:1;min-width:calc(50% - 5px)}.table-panel{margin-inline:-16px;border-right:0;border-left:0;border-radius:0}.table-scroll table{min-width:880px}.client-picker,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.modal{padding:17px}.family-client-options,.profile-grid{grid-template-columns:1fr}.profile-grid>div{border-right:0}.profile-grid>div:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.profile-grid>div:last-child{border-bottom:0}.department-grid{grid-template-columns:1fr}.settings-section{padding:14px}.settings-section-heading{align-items:flex-start}.tag-add{flex-direction:column}.tag-add .secondary{width:100%}.project-menu-actions{grid-template-columns:1fr}.account-section{padding:14px}.account-section-heading{align-items:flex-start}.profile-password-heading{display:grid}.verification-mode-switch{width:100%;min-width:0}.profile-send-row{grid-template-columns:1fr}.profile-send-row .secondary{width:100%}.password-email-context{grid-template-columns:18px minmax(0,1fr);padding:9px 10px}.password-email-context .secondary{grid-column:1 / -1;width:100%}.config-actions{align-items:stretch}.config-actions>span,.config-actions>.connection-test-result{flex-basis:100%;max-width:none}.config-actions>button{flex:1;min-width:136px}.account-switch-section{align-items:flex-start}.inline-form{grid-template-columns:1fr}.factory-heading,.secret-banner{align-items:flex-start}.login-panel{padding:24px 20px}.register-panel{align-self:start;margin-block:24px}.registration-steps li{grid-template-columns:26px minmax(0,1fr);gap:5px}.registration-steps li>span{width:26px;height:26px}.registration-steps li:not(:last-child):after{top:12px;left:26px;right:4px}.registration-steps li>strong{padding-right:4px;font-size:10px}.registration-stage{min-height:260px;padding:15px}.verification-input-row{grid-template-columns:1fr}.verification-send{width:100%}}
