:root{color-scheme:light;--bg:#f5efe4;--ink:#17261f;--muted:#5f6e67;--panel:rgba(255,250,242,0.92);--panel-strong:#fff7ec;--accent:#c85c38;--accent-soft:#f4c77d;--line:rgba(23,38,31,0.12);--shadow:0 20px 60px rgba(57,44,18,0.14)}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%;min-height:100%;font-family:Georgia,Times New Roman,serif;background:radial-gradient(circle at top left,rgba(244,199,125,.45),transparent 28%),radial-gradient(circle at bottom right,rgba(200,92,56,.18),transparent 22%),var(--bg);color:var(--ink)}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh}.app-shell,.topbar{display:flex;flex-direction:column}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;padding:18px 28px 14px;border-bottom:1px solid var(--line);background:rgba(255,247,236,.85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);gap:14px}.hero-panel h2,.page-header h2,.panel h3,.topbar h1{margin:0}.topbar-brand{justify-content:space-between;gap:16px}.topbar-brand,.topbar-logo{display:flex;align-items:center}.topbar-logo{line-height:0}.topbar-actions{display:flex;align-items:center;gap:10px}.topbar-nav{display:flex;gap:10px;overflow-x:auto;padding-bottom:2px}.menu-toggle{display:none;border:1px solid var(--line);background:rgba(255,255,255,.75);border-radius:999px;padding:10px 14px;cursor:pointer}.role-chip{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.72)}.lead,.muted,.role-chip{color:var(--muted)}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:var(--accent)}.nav-pill{display:inline-flex;align-items:center;white-space:nowrap;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.42);border:1px solid rgba(23,38,31,.06);transition:background-color .16s ease,transform .16s ease,border-color .16s ease}.nav-pill:hover{background:rgba(200,92,56,.08);border-color:rgba(200,92,56,.18)}.nav-pill-active{background:var(--accent);color:#fff8f1}.content,.content-shell{flex:1 1;display:flex}.content{width:100%;margin:0;padding:20px clamp(14px,2.5vw,26px) 28px;flex-direction:column}.content>*{flex:1 1}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(460px,100%);display:grid;grid-gap:16px;gap:16px;padding:28px;border-radius:28px;border:1px solid var(--line);background:rgba(255,250,242,.96);box-shadow:var(--shadow)}.auth-card-header{display:grid;grid-gap:6px;gap:6px}.auth-card-header h1,.auth-card-header p{margin:0}.auth-card label{display:grid;grid-gap:8px;gap:8px}.compact-panel{padding:18px;height:auto}.page-header-panel{display:flex;align-items:center;justify-content:space-between;gap:12px}.page-header{margin-bottom:24px}.panel-stack{display:grid;grid-gap:14px;gap:14px;min-height:100%;align-content:start}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:20px;gap:20px}.panel{padding:20px;border:1px solid var(--line);border-radius:24px;background:var(--panel);box-shadow:var(--shadow)}.hero-panel{background:linear-gradient(135deg,var(--panel-strong),rgba(244,199,125,.78))}.crm-hero{justify-content:space-between;gap:20px}.crm-hero,.hero-actions{display:flex;align-items:center}.hero-actions{gap:14px}.hero-chip{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.62);border:1px solid rgba(23,38,31,.08)}.hero-chip strong{display:block;font-size:1.6rem}.hero-chip span{color:var(--muted);font-size:.9rem}.hero-button{margin-top:0}.metric-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.metric-card{padding:18px;border-radius:18px;background:rgba(255,255,255,.6);border:1px solid var(--line)}.metric-card strong{display:block;font-size:1.8rem;margin-top:6px}.feature-list{margin:0;padding-left:20px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:18px;gap:18px}.stat-card{padding:22px}.stat-card strong{display:block;margin:10px 0 8px;font-size:2rem}.stat-card span,.stat-label{color:var(--muted)}.workspace-grid{display:grid;grid-gap:20px;gap:20px;align-items:stretch}.two-up{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-main-side{grid-template-columns:minmax(0,3fr) minmax(320px,1.15fr)}.form-panel,.info-panel{align-self:stretch;min-width:0}.form-panel,.info-panel{display:grid;align-content:start}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;margin-top:18px}.form-grid label{display:grid;grid-gap:8px;gap:8px;font-size:.95rem}.field-span-full{grid-column:1/-1}.visit-form-panel{display:grid;grid-gap:20px;gap:20px}.visit-form-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.visit-rate-badge{border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:rgba(255,255,255,.78);white-space:nowrap}.visit-form{display:grid;grid-gap:18px;gap:18px}.visit-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.visits-filter-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:12px 0 16px;border-bottom:1px solid var(--line);margin-bottom:12px}.visits-filter-field{display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--text-muted,#666);min-width:140px}.visits-filter-field input,.visits-filter-field select{margin-top:0}.visits-search-btn{align-self:flex-end;margin-bottom:1px}.readonly-field{background:rgba(214,229,221,.6);color:var(--ink)}.sibling-box{display:grid;grid-gap:10px;gap:10px;padding:16px;border:1px dashed var(--line);border-radius:16px;background:rgba(255,255,255,.4)}.sibling-box-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.sibling-controls{display:flex;flex-wrap:wrap;gap:8px}.visit-total-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:18px;border-top:1px solid var(--line)}.visit-total-row strong{display:block;font-size:1.85rem}.visit-total-meta{display:block;margin-top:4px}.table-empty{text-align:center;color:var(--muted)}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.72);color:var(--ink)}textarea{resize:vertical}.action-button,.ghost-button{border-radius:999px;padding:12px 18px;border:1px solid transparent;cursor:pointer;transition:transform .16s ease,background-color .16s ease,border-color .16s ease}.action-button{margin-top:18px;background:var(--accent);color:#fffaf5}.ghost-button{background:rgba(200,92,56,.08);border-color:rgba(200,92,56,.16);color:var(--ink)}.action-button:hover,.ghost-button:hover{transform:translateY(-1px)}.action-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.button{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:999px;border:1px solid transparent;font-family:inherit;font-size:.88rem;font-weight:600;cursor:pointer;transition:opacity .14s,transform .14s;white-space:nowrap}.button:hover{opacity:.88;transform:translateY(-1px)}.button:active{transform:scale(.98)}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.button.primary{background:var(--accent);color:#fffaf5}.button.secondary{background:rgba(200,92,56,.1);border-color:rgba(200,92,56,.22);color:var(--ink)}.button.danger{background:#c0392b;color:#fff}.tab-navigation{display:flex;gap:8px;flex-wrap:wrap}.tab-button{padding:8px 14px;border-radius:999px;border:1.5px solid var(--line);background:rgba(255,255,255,.55);color:var(--muted);font-family:inherit;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .14s,border-color .14s,color .14s}.tab-button:hover{background:rgba(200,92,56,.07);border-color:rgba(200,92,56,.2)}.tab-button.active{background:var(--accent);border-color:var(--accent);color:#fff}.report-selection{display:flex;gap:8px;flex-wrap:wrap}.report-button{padding:8px 14px;border-radius:999px;border:1.5px solid var(--line);background:rgba(255,255,255,.55);color:var(--muted);font-family:inherit;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .14s,border-color .14s,color .14s}.report-button:hover{background:rgba(200,92,56,.07);border-color:rgba(200,92,56,.2)}.report-button.active{background:var(--accent);border-color:var(--accent);color:#fff}.form-field{display:grid;grid-gap:8px;gap:8px}.form-field label{font-size:.85rem;font-weight:600;color:var(--ink)}.form-field small{font-size:.78rem;color:var(--muted)}.form-actions{grid-column:1/-1;display:flex;gap:8px;padding-top:0}.pos-shell{display:grid;grid-template-columns:1fr 360px;border-radius:24px;border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);overflow:hidden}.pos-catalog{overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:14px;border-right:1px solid var(--line)}.pos-catalog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.pos-catalog-header h2{margin:0;font-size:1.35rem}.pos-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.pos-stat{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.55)}.pos-stat-label{margin:0 0 4px;font-size:.78rem;color:var(--muted);font-weight:600}.pos-stat strong{display:block;font-size:1.5rem}.pos-stat span{font-size:.78rem;color:var(--muted)}.pos-search{width:100%;padding:10px 14px;border:1.5px solid var(--line);border-radius:10px;font-family:inherit;font-size:.9rem;background:rgba(255,255,255,.7)}.pos-search:focus{outline:none;border-color:rgba(200,92,56,.4)}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px}.product-card{padding:14px 16px;border:1.5px solid var(--line);border-radius:14px;background:rgba(255,255,255,.6);cursor:pointer;transition:border-color .14s,background .14s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.product-card:hover:not(.out-of-stock){border-color:var(--accent);background:rgba(200,92,56,.04)}.product-card.out-of-stock{opacity:.52;cursor:not-allowed}.product-card-name{font-weight:600;font-size:.92rem;margin-bottom:2px}.product-card-sku{font-size:.75rem;color:var(--muted)}.product-card-price{font-size:1.05rem;color:var(--accent);margin-top:6px;font-weight:600}.product-card-badge{display:inline-block;margin-top:5px;padding:2px 8px;border-radius:999px;font-size:.7rem;font-weight:700}.badge-out{background:#fee2e2;color:#dc2626;border:1px solid #fca5a5}.badge-low{background:#fef3c7;color:#d97706;border:1px solid #fde68a}.badge-in{background:#dcfce7;color:#16a34a;border:1px solid #86efac}.product-card-in-cart{float:right;margin-top:-18px;padding:2px 8px;border-radius:999px;background:var(--accent);color:#fff;font-size:.7rem;font-weight:700}.pos-cart-panel{display:flex;flex-direction:column;overflow:hidden;background:rgba(255,252,248,.97)}.pos-cart-header{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.pos-cart-title{font-weight:700;font-size:1rem}.pos-cart-badge{background:var(--ink);color:#fff;border-radius:999px;padding:1px 9px;font-size:.78rem;font-weight:700;min-width:22px;text-align:center}.pos-cart-customer{padding:12px 18px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:5px;font-size:.85rem;font-weight:600}.pos-cart-customer select{width:100%}.pos-cart-items{overflow-y:auto;padding:10px 18px;gap:2px}.pos-cart-empty,.pos-cart-items{flex:1 1;display:flex;flex-direction:column}.pos-cart-empty{align-items:center;justify-content:center;color:var(--muted);text-align:center;gap:4px;padding:30px 0;font-size:.88rem}.pos-cart-empty span{font-size:2rem}.pos-cart-item{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--line);font-size:.85rem}.pos-cart-item:last-child{border-bottom:none}.pos-cart-item-name{flex:1 1;font-weight:500}.pos-cart-item-controls{display:flex;align-items:center;gap:6px}.pos-cart-item-controls button{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--line);background:rgba(255,255,255,.7);cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center}.pos-cart-item-controls span{min-width:18px;text-align:center;font-weight:600}.pos-cart-item-price{min-width:52px;text-align:right;font-weight:600}.pos-payment-success{margin:8px 18px;padding:10px 14px;border-radius:10px;background:#dcfce7;border:1px solid #86efac;color:#16a34a;font-size:.85rem;font-weight:600}.pos-cart-summary{padding:12px 18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px;font-size:.88rem}.pos-summary-row{display:flex;justify-content:space-between;align-items:center}.pos-summary-total{font-size:1.05rem;font-weight:700;padding-top:8px;border-top:1px solid var(--line);margin-top:2px}.pos-discount-row{display:flex;align-items:center;gap:6px}.pos-discount-row input{width:56px;padding:3px 6px;font-size:.82rem;border-radius:6px;border:1px solid var(--line)}.pos-discount-row button{padding:3px 10px;border-radius:999px;border:1.5px solid var(--line);background:rgba(255,255,255,.55);font-size:.78rem;font-weight:600;cursor:pointer}.pos-pay-buttons{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;padding:10px 18px}.pos-pay-btn{padding:13px;border-radius:12px;border:none;font-family:inherit;font-size:.95rem;font-weight:700;cursor:pointer;transition:opacity .12s}.pos-pay-btn:disabled{opacity:.45;cursor:not-allowed}.pos-pay-cash,.pos-pay-eftpos{background:var(--ink);color:#fff}.pos-clear-btn{margin:0 18px 16px;padding:9px;border-radius:10px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;font-family:inherit;font-size:.85rem}.pos-clear-btn:disabled{opacity:.4;cursor:not-allowed}@media (max-width:860px){.pos-shell{grid-template-columns:1fr}.pos-cart-panel{display:none}}.soh-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.soh-header h2{margin:0;font-size:1.35rem}.soh-header-actions{display:flex;gap:8px;align-items:center}.soh-stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin-bottom:16px}.soh-stat{padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.55)}.soh-stat .stat-label{margin:0 0 4px;font-size:.72rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.soh-stat strong{display:block;font-size:1.7rem}.soh-stat span{font-size:.78rem;color:var(--muted)}.soh-stat.soh-stat-low strong{color:#d97706}.soh-stat.soh-stat-out strong{color:#dc2626}.soh-controls{display:flex;gap:10px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.soh-search{flex:1 1;min-width:200px;padding:9px 14px;border:1.5px solid var(--line);border-radius:10px;font-family:inherit;font-size:.88rem;background:rgba(255,255,255,.7)}.soh-search:focus{outline:none;border-color:rgba(200,92,56,.4)}.tracking-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.tracking-header h3{margin:0}.tracking-tagline{margin:6px 0 0;color:var(--muted);font-size:.92rem;max-width:420px}.tracking-live-badge{padding:4px 12px;border-radius:999px;border:1.5px solid #22c55e;color:#16a34a;font-size:.78rem;font-weight:600}.channel-cards{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.channel-card{padding:14px 20px;border-radius:16px;border:1.5px solid var(--line);background:rgba(255,255,255,.55);min-width:120px;cursor:pointer;transition:border-color .14s}.channel-card.active{border-color:var(--accent);background:rgba(200,92,56,.06)}.channel-card strong{display:block;font-size:1rem;margin-bottom:2px}.channel-card span{font-size:.72rem;font-weight:700;letter-spacing:.08em;color:var(--muted)}.channel-card.active span{color:#16a34a}.tracking-overview-label{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 10px}.tracking-stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:24px}.tracking-stat-card{padding:16px 18px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.6)}.tracking-stat-card .stat-label{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}.tracking-stat-card strong{display:block;font-size:1.8rem}.tracking-controls{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.tracking-controls input{flex:1 1;min-width:200px}.tracking-controls select{min-width:140px}.tracking-table-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.tracking-table-label h4{margin:0}.tracking-table-label span{font-size:.85rem;color:var(--accent);font-weight:600}.status-pill{display:inline-block;padding:3px 10px;font-size:.75rem;font-weight:700}.status-opened{background:#dcfce7;color:#16a34a;border:1px solid #86efac}.status-sent{background:#dbeafe;color:#1d4ed8;border:1px solid #93c5fd}.status-failed{background:#fee2e2;color:#dc2626;border:1px solid #fca5a5}.status-unread{background:#fef9c3;color:#854d0e;border:1px solid #fde047}.preview-layout{display:grid;grid-template-columns:1fr 260px;grid-gap:20px;gap:20px}.preview-meta{font-size:.85rem;color:var(--muted);margin:0 0 14px;display:flex;flex-direction:column;gap:4px}.preview-body-wrap{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fff;overflow-y:auto;max-height:400px;font-size:.9rem;line-height:1.6}.preview-sidebar{display:flex;flex-direction:column;gap:14px}.delivery-snapshot{border:1px solid var(--line);border-radius:12px;padding:14px;background:rgba(255,255,255,.7)}.delivery-snapshot h4{margin:0 0 10px;font-size:.9rem}.snapshot-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px 12px;gap:8px 12px;font-size:.8rem}.snapshot-grid .label{color:var(--muted);font-weight:600;text-transform:uppercase;font-size:.68rem;letter-spacing:.08em}.snapshot-grid .value{font-weight:600}.events-panel{border:1px solid var(--line);border-radius:12px;padding:14px;background:rgba(255,255,255,.7);flex:1 1;overflow-y:auto;max-height:260px}.events-panel h4{margin:0 0 10px;font-size:.9rem}.event-item{padding:8px 0;border-bottom:1px solid var(--line);font-size:.8rem}.event-item:last-child{border-bottom:none}.event-item .event-type{font-weight:700;text-transform:capitalize}.event-item .event-meta{color:var(--muted);margin-top:2px}.cc-chips-wrap{display:flex;flex-wrap:wrap;border:1px solid var(--line);border-radius:10px;padding:6px 10px;background:rgba(255,255,255,.7);min-height:42px}.cc-chip,.cc-chips-wrap{gap:6px;align-items:center}.cc-chip{display:inline-flex;padding:3px 10px 3px 12px;border-radius:999px;background:rgba(200,92,56,.1);border:1px solid rgba(200,92,56,.25);font-size:.82rem;color:var(--ink)}.cc-chip button{background:none;border:none;cursor:pointer;color:var(--muted);font-size:.9rem;padding:0;line-height:1}.cc-add-row{display:flex;gap:6px;align-items:center;flex:1 1;min-width:160px}.cc-add-row input{flex:1 1;border:none;background:none;outline:none;font-family:inherit;font-size:.88rem;color:var(--ink);padding:0}.cc-add-btn{padding:4px 12px;border-radius:999px;border:1.5px solid var(--line);background:rgba(255,255,255,.55);font-family:inherit;font-weight:600;cursor:pointer;white-space:nowrap}.attachment-label,.cc-add-btn{color:var(--muted);font-size:.82rem}.attachment-label{font-weight:700;text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:6px}.attachment-note{font-size:.75rem;color:var(--muted);margin-top:4px}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:300;display:flex;align-items:center;justify-content:center;padding:24px}.modal-card{background:var(--panel-strong);border-radius:24px;border:1px solid var(--line);box-shadow:0 24px 80px rgba(0,0,0,.18);width:100%;max-width:560px;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;animation:modalIn .18s ease-out}@keyframes modalIn{0%{transform:scale(.95);opacity:.5}to{transform:scale(1);opacity:1}}.modal-header{padding:16px 20px 14px;flex-shrink:0}.modal-close,.modal-header h3{font-size:1rem}.modal-close{width:32px;height:32px;border-radius:50%;border:none;background:rgba(200,92,56,.1);color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center}.modal-body{flex:1 1;overflow-y:auto;padding:18px 20px;display:grid;grid-gap:12px;gap:12px}.modal-footer{padding:14px 20px;gap:10px;flex-shrink:0;background:rgba(255,255,255,.6)}.selection-grid{display:grid;grid-gap:8px;gap:8px}.checkbox-chip{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.5)}.checkbox-chip input{width:auto}.field-label{display:block;font-size:.85rem;margin-bottom:6px;color:var(--text-muted,#666)}.linked-adults-list{display:flex;flex-wrap:wrap;gap:8px}.linked-adult-chip{padding:6px 12px;border-radius:20px;background:rgba(255,255,255,.6);border:1px solid var(--border,#ddd);font-size:.9rem}.quick-add-section{display:flex;flex-direction:column;gap:6px}.quick-add-hint{font-size:.83rem;margin:0;display:flex;align-items:center;gap:8px}.text-link{background:none;border:none;padding:0;cursor:pointer;color:var(--accent,#c17a41);font-size:inherit;text-decoration:underline;text-underline-offset:2px}.text-success{color:#15803d;font-weight:500}.required-star{color:#dc2626}.quick-add-box{background:rgba(0,0,0,.03);border:1px solid var(--line);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:12px}.quick-add-box-title{font-weight:600;font-size:.88rem;margin:0}.quick-add-grid{grid-template-columns:1fr 1fr!important;gap:10px!important}.bookings-tab-bar{display:flex;gap:4px;border-bottom:2px solid var(--line);margin-top:12px;padding:0 2px}.tab-btn{padding:8px 18px;background:none;cursor:pointer;font-size:.92rem;color:var(--muted);border:none;border-bottom:2px solid transparent;margin-bottom:-2px;display:flex;align-items:center;gap:6px;transition:color .15s}.tab-btn:hover{color:var(--text)}.tab-btn.tab-active{color:var(--accent,#c17a41);border-bottom-color:var(--accent,#c17a41);font-weight:600}.tab-count{background:var(--line);color:var(--text);border-radius:999px;padding:1px 7px;font-size:.78rem;font-weight:600}.tab-btn.tab-active .tab-count{background:var(--accent,#c17a41);color:#fff}.bookings-search-bar{display:flex;align-items:center;gap:8px;padding:10px 0 2px}.bookings-search-input{flex:1 1;padding:7px 12px;border:1px solid var(--line);border-radius:6px;font-size:.9rem;background:var(--panel-strong);color:var(--ink)}.bookings-search-input:focus{outline:none;border-color:var(--accent)}th.sort-th{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}th.sort-th:hover{background:rgba(23,38,31,.05)}.sort-icon-active{margin-left:4px;color:var(--accent);font-size:.8em}.sort-icon-inactive{margin-left:4px;color:var(--muted);font-size:.8em;opacity:.5}.source-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.78rem;font-weight:600}.source-website{background:#dbeafe;color:#1d4ed8}.source-manual{background:var(--line);color:var(--muted)}.btn-sm{padding:4px 10px;font-size:.82rem}.fw-medium{font-weight:500}.text-sm{font-size:.82rem}.nowrap{white-space:nowrap}.table-wrap{overflow-x:auto;width:100%;min-width:0}.table-wrap-visible{overflow:visible}.workspace-table-panel{display:flex;flex-direction:column}.workspace-table-panel .table-wrap{flex:1 1}.record-table-wrap{overflow:auto;flex:1 1;max-height:none}.data-table{width:100%;border-collapse:collapse}.data-table-compact th{position:-webkit-sticky;position:sticky;top:0;background:rgba(255,250,242,.98);z-index:1}.data-table td,.data-table th{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.section-heading{gap:10px;margin-bottom:12px}.notice{padding:14px 16px;border-radius:16px;border:1px solid var(--line)}.notice.error{background:rgba(200,92,56,.12);border-color:rgba(200,92,56,.25)}.notice.success{background:rgba(38,118,82,.12);border-color:rgba(38,118,82,.22)}.mini-stat{padding:16px 0;border-bottom:1px solid var(--line)}.mini-stat:first-of-type{padding-top:0}.mini-stat:last-of-type{border-bottom:0;padding-bottom:0}.mini-stat span,.section-heading span{color:var(--muted)}.danger-button{color:#8c2e18;background:rgba(200,92,56,.12);border-color:rgba(200,92,56,.22)}.mini-stat strong{display:block;margin-top:6px}.inline-actions{display:flex;flex-wrap:wrap;gap:8px}.visit-timer{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:rgba(38,118,82,.12);color:#1f5d41;font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.visit-timer-overdue{background:rgba(200,92,56,.14);color:#8c2e18}.status-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.85rem;text-transform:capitalize;background:rgba(95,110,103,.12)}.status-checked_in{background:rgba(244,199,125,.42)}.status-checked_out{background:rgba(23,38,31,.12)}.status-booked{background:rgba(200,92,56,.16)}.neutral-pill{background:rgba(95,110,103,.1)}.success-pill{background:rgba(46,184,92,.15);color:#2eb85c}.danger-button{color:#d9534f;border-color:#d9534f}.danger-button:hover{background:rgba(217,83,79,.1)}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-heading h3,.section-heading h4{margin:0}.section-heading span{font-size:.9rem;color:var(--muted)}.record-hub{min-height:clamp(620px,calc(100vh - 280px),960px);display:flex;flex-direction:column}.record-toolbar{display:flex;justify-content:space-between;gap:20px;margin-bottom:16px}.toolbar-controls{display:flex;align-items:center;gap:12px;min-width:min(100%,720px)}.search-input{flex:1 1}.segmented-control{display:flex;padding:4px;border-radius:999px;background:rgba(23,38,31,.06)}.segment{padding:8px 12px;border:0;background:transparent;border-radius:999px;cursor:pointer}.segment-active{background:#fff8f1;box-shadow:0 4px 14px rgba(57,44,18,.12)}.record-cell{display:flex;align-items:center;gap:12px}.record-cell strong{display:block}.record-cell p{margin:4px 0 0;color:var(--muted)}.settings-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.settings-tab{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:40px;line-height:1;white-space:nowrap;writing-mode:horizontal-tb;-webkit-text-orientation:mixed;text-orientation:mixed;font:inherit;border:1px solid var(--line);background:rgba(255,255,255,.62);border-radius:999px;padding:8px 12px;cursor:pointer}.settings-tab-active{background:var(--accent);color:#fffaf5;border-color:var(--accent)}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid-wide{grid-template-columns:minmax(320px,.9fr) minmax(0,1.75fr);align-items:stretch}.settings-actor-panel,.settings-users-panel{min-width:0}.settings-users-panel{display:grid;align-content:start}.single-column-grid{grid-template-columns:1fr}.settings-card-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.settings-card-item{padding:16px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.62)}.permission-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.permission-pill{padding:8px 10px;background:rgba(49,102,216,.1);color:#24478f}.permission-pill,.record-type{display:inline-flex;align-items:center;border-radius:999px}.record-type{justify-content:center;min-width:68px;padding:7px 10px;text-transform:capitalize;font-size:.8rem;font-weight:600}.record-type-parent{background:rgba(38,118,82,.12)}.record-type-child{background:rgba(49,102,216,.12)}.empty-state-row{padding:26px 8px;text-align:center;color:var(--muted)}.desk-panel{align-self:stretch}.desk-list{display:grid;grid-gap:14px;gap:14px}.desk-item{padding:14px 0;border-bottom:1px solid var(--line)}.desk-item:last-child{border-bottom:0}.desk-item strong{display:block;margin-bottom:6px}.desk-item span{color:var(--muted)}.drawer-overlay{position:fixed;inset:0;z-index:30;display:flex;justify-content:flex-end;background:rgba(23,38,31,.28)}.family-drawer{width:min(760px,100vw);height:100vh;background:#fffaf3;display:flex;flex-direction:column;box-shadow:-24px 0 60px rgba(23,38,31,.18)}.drawer-header{display:flex;justify-content:space-between;gap:16px;padding:24px 24px 18px;border-bottom:1px solid var(--line)}.drawer-header h3,.drawer-intro h4,.review-card h5{margin:0}.drawer-close{width:40px;height:40px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.7);cursor:pointer}.stepper-row{display:flex;gap:14px;padding:18px 24px;border-bottom:1px solid var(--line);overflow-x:auto}.stepper-item{display:flex;align-items:center;gap:10px;min-width:max-content;color:var(--muted)}.stepper-item span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background:rgba(23,38,31,.08);color:var(--ink);font-weight:700}.stepper-item-active span,.stepper-item-done span{background:#3166d8;color:white}.stepper-item-active small,.stepper-item-done small{color:var(--ink)}.drawer-body{flex:1 1;overflow:auto;padding:24px}.drawer-section{display:grid;grid-gap:18px;gap:18px}.drawer-intro p,.review-card p,.review-line span{color:var(--muted)}.inner-panel{padding:18px;border-radius:20px;background:rgba(255,255,255,.72)}.draft-children-list{display:grid;grid-gap:10px;gap:10px}.draft-child-card{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.65)}.draft-child-card p,.review-line{margin:4px 0 0}.text-button{border:0;background:transparent;color:var(--accent);cursor:pointer}.review-card{padding:18px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.6)}.review-line{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.review-line:last-child{border-bottom:0}.drawer-footer{display:flex;justify-content:space-between;gap:12px;padding:18px 24px 24px;border-top:1px solid var(--line)}.drawer-footer-actions{display:flex;gap:10px}@media (max-width:900px){.dashboard-grid,.form-grid,.layout-main-side,.metric-row,.settings-grid,.stats-grid,.two-up,.visit-form-grid{grid-template-columns:1fr}.content,.topbar{padding-left:18px;padding-right:18px}.crm-hero,.drawer-footer,.hero-actions,.record-toolbar,.settings-header-row,.sibling-box-header,.toolbar-controls,.topbar-brand,.visit-form-header,.visit-total-row{flex-direction:column;align-items:stretch}.family-drawer{width:100vw}}@media (max-width:720px){.content{padding:16px 12px 28px}.topbar{padding:14px 12px 12px}.menu-toggle{display:inline-flex;align-items:center;justify-content:center}.topbar-nav{display:none;flex-direction:column;overflow:visible}.topbar-nav-open{display:flex}.nav-pill{justify-content:center}.data-table td,.data-table th{padding:12px 8px}.record-cell{align-items:flex-start}.draft-child-card,.review-line{flex-direction:column;align-items:flex-start}.drawer-body,.drawer-footer,.drawer-header,.stepper-row{padding-left:16px;padding-right:16px}}@media (max-width:560px){.compact-panel,.hero-chip,.metric-card,.panel,.review-card,.settings-card-item,.stat-card{padding:16px}.action-button,.ghost-button,.menu-toggle,.settings-tab{width:100%;justify-content:center}.topbar-actions{width:100%;flex-direction:column;align-items:stretch}.role-chip{justify-content:center}.drawer-footer-actions,.inline-actions,.record-toolbar,.toolbar-controls{width:100%}.segmented-control{width:100%;justify-content:space-between}.segment{flex:1 1}}.stock-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;font-size:.78em;font-weight:600;line-height:1.4;white-space:nowrap}.stock-badge-low{background:#fff3cd;color:#856404;border:1px solid #ffc107}.stock-badge-ok{background:#d4edda;color:#155724;border:1px solid #28a745}.row-low-stock{background:#fff8e1}.product-combobox-list{position:absolute;top:100%;left:0;z-index:200;width:100%;min-width:200px;max-height:240px;overflow-y:auto;background:var(--surface,#fff);border:1px solid var(--line,#ddd);border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.12);list-style:none;margin:2px 0 0;padding:4px 0}.product-combobox-root{position:relative;min-width:180px;z-index:20}.product-combobox-root.open{z-index:500}.receiving-lines-table td{overflow:visible}.product-combobox-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;cursor:pointer;font-size:.9em}.product-combobox-item:hover{background:var(--surface-hover,#f0f4ff)}.product-combobox-sku{font-size:.8em;color:var(--muted,#888);flex-shrink:0}.product-combobox-empty{padding:8px 12px;font-size:.9em;color:var(--muted,#888);text-align:center}.visits-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px 0;border-bottom:1px solid var(--line)}.visits-header h2{margin:0;font-size:1.5em;font-weight:600;color:var(--ink)}.visits-header-actions{display:flex;gap:12px;align-items:center}.memberships-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px 0;border-bottom:1px solid var(--line)}.memberships-header h2{margin:0;font-size:1.5em;font-weight:600;color:var(--ink)}.memberships-header-actions{display:flex;gap:12px;align-items:center}.receiving-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px 0;border-bottom:1px solid var(--line)}.receiving-header h2{margin:0;font-size:1.5em;font-weight:600;color:var(--ink)}.receiving-header-actions{display:flex;gap:12px;align-items:center}.products-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px 0;border-bottom:1px solid var(--line)}.products-header h2{margin:0;font-size:1.5em;font-weight:600;color:var(--ink)}.products-header-actions{display:flex;gap:12px;align-items:center}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-panel{background:var(--panel);border-radius:8px;box-shadow:var(--shadow);max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--line)}.modal-header h3{margin:0;font-size:1.25em;font-weight:600}.modal-header .ghost-button{font-size:1.5em;padding:4px 8px;min-width:auto}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--line)}