@font-face{font-family:Inter;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/inter-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #faf8f1;--background: var(--bg);--surface: #fffdf7;--surface-soft: #f4efe5;--surface-strong: #ffffff;--text: #25211f;--muted: #71615b;--soft: #8f8278;--line: rgba(113, 97, 91, .18);--accent: #8f8c18;--accent-strong: #71615b;--accent-soft: rgba(186, 183, 35, .15);--accent-gold: #bab723;--brown: #71615b;--cream: #faf8f1;--good: #2f7d57;--warning: #a66b1f;--danger: #a33d38;--shadow: 0 18px 52px rgba(37, 33, 31, .09);--shadow-strong: 0 28px 80px rgba(37, 33, 31, .16)}html[data-theme=dark]{color-scheme:dark;--bg: #17110e;--background: var(--bg);--surface: #211c18;--surface-soft: #1b1512;--surface-strong: #29231e;--text: #f7efe5;--muted: #c9baaa;--soft: #9f9183;--line: rgba(247, 239, 229, .14);--accent: #d8d35b;--accent-strong: #f7efe5;--accent-soft: rgba(216, 211, 91, .14);--accent-gold: #d8d35b;--brown: #d6c1af;--cream: #17110e;--good: #77ba8d;--warning: #d1ad85;--danger: #ff8f86;--shadow: 0 18px 60px rgba(0, 0, 0, .32);--shadow-strong: 0 34px 95px rgba(0, 0, 0, .38)}*{box-sizing:border-box}html,body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{min-width:320px;min-height:100vh;margin:0;background:radial-gradient(circle at 82% 8%,color-mix(in srgb,var(--accent-gold) 13%,transparent),transparent 28rem),radial-gradient(circle at 12% 0%,color-mix(in srgb,var(--brown) 9%,transparent),transparent 24rem),var(--background);color:var(--text)}button,input,select,textarea,table{font:inherit;font-family:inherit}button{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.62}#root{min-height:100vh}.dashboard-shell{font-family:inherit;display:grid;min-height:100vh;grid-template-columns:268px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);background:radial-gradient(circle at 16% 0%,color-mix(in srgb,var(--accent-gold) 12%,transparent),transparent 30%),linear-gradient(135deg,color-mix(in srgb,var(--surface-strong) 60%,transparent),transparent 45%),var(--background)}.dashboard-sidebar{position:sticky;top:0;grid-row:1 / span 2;display:flex;height:100vh;flex-direction:column;gap:28px;border-right:1px solid var(--line);background:radial-gradient(circle at 0% 0%,color-mix(in srgb,var(--accent-gold) 10%,transparent),transparent 17rem),color-mix(in srgb,var(--surface) 92%,transparent);padding:24px 18px;box-shadow:var(--shadow);backdrop-filter:blur(28px) saturate(1.2);-webkit-backdrop-filter:blur(28px) saturate(1.2)}.sidebar-brand{display:flex;align-items:center;gap:13px}.brand-mark{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:12px;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--surface-strong) 88%,transparent));color:var(--accent-strong);font-weight:800}.sidebar-brand strong,.sidebar-brand span{display:block}.sidebar-brand strong{font-size:16px}.sidebar-brand span,.sidebar-footer span{color:var(--muted);font-size:13px}.sidebar-nav{display:grid;gap:8px}.sidebar-nav button,.secondary-button{display:flex;min-height:42px;align-items:center;gap:10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);padding:0 12px;text-align:left}.sidebar-nav button:hover,.sidebar-nav button.active{border-color:color-mix(in srgb,var(--accent-gold) 34%,var(--line));background:var(--accent-soft);color:var(--accent-strong)}.sidebar-nav-group{display:grid;gap:4px}.sidebar-nav-group>button svg:last-child{margin-left:auto;transition:transform .16s ease}.sidebar-nav-group>button svg.rotated{transform:rotate(180deg)}.sidebar-subnav{display:grid;gap:3px;padding:2px 0 4px 34px}.sidebar-subnav button{min-height:34px;font-size:13px}.lms-ai-control{display:grid;gap:8px;margin-top:8px}.lms-ai-control>button{justify-self:start;display:inline-flex;align-items:center;gap:6px}.lms-ai-proposal{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 18px 48px #222b2629}.lms-ai-proposal pre{white-space:pre-wrap;font:inherit;max-height:280px;overflow:auto}.lms-instructor-picker{display:grid;gap:6px}.lms-instructor-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong);font-weight:700}.lms-tabs{display:flex;gap:6px;overflow-x:auto;border-bottom:1px solid var(--line)}.lms-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:12px 16px;font-weight:700}.lms-tabs button.active{border-bottom-color:var(--accent-gold);color:var(--text)}.lms-section-heading,.lms-module-header,.lms-modal header,.lms-wizard-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.lms-program{display:grid;gap:14px}.lms-module-card{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.lms-module-header{padding:12px 14px}.lms-accordion-toggle{display:flex;min-width:0;flex:1;align-items:center;gap:12px;border:0;background:transparent;color:var(--text);text-align:left}.lms-accordion-toggle>span:nth-child(2){display:grid;min-width:0;gap:2px}.lms-accordion-toggle small,.lms-accordion-toggle em,.lms-lesson-row small{color:var(--muted);font-size:12px;font-style:normal}.lms-accordion-toggle b{margin-left:auto;font-size:22px}.lms-accordion-body{display:grid;gap:14px;border-top:1px solid var(--line);padding:16px}.lms-accordion-body>.lms-module-card{border:0}.lms-lesson-list{display:grid;gap:8px}.lms-lesson-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;padding:10px}.lms-lesson-row div:nth-child(2){display:grid;gap:3px}.drag-handle{color:var(--muted);cursor:grab}.lms-inline-create{display:flex;gap:10px}.lms-inline-create input{flex:1}.lms-modal-backdrop{position:fixed;z-index:80;inset:0;display:grid;place-items:center;background:#14121194;padding:20px}.lms-modal{width:min(680px,100%);max-height:90vh;overflow:auto;border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:20px;box-shadow:var(--shadow)}.lms-modal header>button{border:0;background:transparent;color:var(--text);font-size:26px}.lms-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.lms-type-grid button{display:grid;gap:5px;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong);color:var(--text);padding:16px;text-align:left}.lms-type-grid span{color:var(--muted)}.lms-stepper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}.lms-stepper li{display:grid;justify-items:center;gap:5px;color:var(--muted);text-align:center;font-size:12px}.lms-stepper span{display:grid;width:30px;height:30px;place-items:center;border:1px solid var(--line);border-radius:50%}.lms-stepper li.active,.lms-stepper li.done{color:var(--text);font-weight:700}.lms-stepper li.active span,.lms-stepper li.done span{border-color:var(--accent-gold);background:var(--accent-soft)}.lms-wizard-panel{display:grid;gap:22px}.lms-course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px}.lms-course-card{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.lms-course-card>img,.lms-course-cover-placeholder{width:100%;height:150px;object-fit:cover}.lms-course-cover-placeholder{display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong);font-size:28px;font-weight:800}.lms-course-card>div{display:grid;gap:10px;padding:16px}.lms-course-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0}.lms-course-card dl div{display:grid;gap:3px}.lms-course-card dt{color:var(--muted);font-size:11px}.lms-course-card dd{margin:0;font-size:12px}.lms-card-actions{display:flex;flex-wrap:wrap;gap:6px}.lms-card-actions button{border:1px solid var(--line);border-radius:8px;background:var(--surface-strong);color:var(--text);padding:6px 9px}.lms-preview-cover{width:100%;max-height:340px;border-radius:16px;object-fit:cover}.lms-admin-preview details{border-top:1px solid var(--line);padding:12px 0}.lms-admin-preview summary{display:flex;justify-content:space-between;cursor:pointer}.lms-preview-lesson iframe{width:min(760px,100%);aspect-ratio:16/9;border:0;border-radius:12px}.lms-preview-progress{display:flex;justify-content:space-between}@media(max-width:720px){.lms-stepper{grid-template-columns:repeat(5,44px);overflow-x:auto;justify-content:start}.lms-stepper li{font-size:0}.lms-lesson-row{grid-template-columns:auto minmax(0,1fr)}.lms-lesson-row .lms-row-actions{grid-column:2}.lms-type-grid,.lms-course-card dl{grid-template-columns:1fr}.lms-inline-create{align-items:stretch;flex-direction:column}}.sidebar-nav-icon{display:grid;flex:0 0 22px;width:22px;place-items:center}.sidebar-nav-icon svg,.sidebar-footer button svg{display:block;flex-shrink:0}.sidebar-footer{display:grid;gap:10px;margin-top:auto}.secondary-button{justify-content:center;border-color:var(--line);background:color-mix(in srgb,var(--surface-strong) 86%,transparent);color:var(--text);font-weight:650}.danger-button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:8px;border:1px solid color-mix(in srgb,var(--danger) 28%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--danger) 7%,var(--surface-strong));color:var(--danger);padding:0 12px;font-weight:700}.drawer-header-action{display:inline-flex;min-height:28px;align-items:center;border:1px solid var(--line);border-radius:9px;background:color-mix(in srgb,var(--surface) 86%,transparent);color:var(--text);padding:3px 9px;font-size:12px;font-weight:700}.drawer-header-action.danger{border-color:color-mix(in srgb,var(--danger) 32%,var(--line));background:color-mix(in srgb,var(--danger) 8%,var(--surface));color:var(--danger)}.primary-action-button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--accent-gold) 34%,var(--line));border-radius:9px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-gold) 44%,var(--surface-strong)),color-mix(in srgb,var(--accent-gold) 30%,var(--surface)));color:#25211f;padding:0 16px;box-shadow:none;font-weight:750}.primary-action-button:disabled{border-color:var(--line);background:color-mix(in srgb,var(--surface-strong) 78%,transparent);color:var(--muted);cursor:not-allowed;opacity:.72}.primary-action-button:disabled:hover{border-color:var(--line);background:color-mix(in srgb,var(--surface-strong) 78%,transparent);color:var(--muted)}.dashboard-topbar{position:sticky;top:0;z-index:20;display:grid;grid-column:2;grid-template-columns:auto minmax(0,1fr) auto auto auto;min-height:74px;align-items:center;gap:12px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--surface-strong) 86%,transparent)),radial-gradient(circle at 96% 0%,color-mix(in srgb,var(--accent-gold) 11%,transparent),transparent 18rem);padding:10px 24px;box-shadow:0 12px 32px #25211f14;backdrop-filter:blur(32px) saturate(1.25);-webkit-backdrop-filter:blur(32px) saturate(1.25)}.dashboard-topbar p,.dashboard-topbar h1{margin:0}.dashboard-topbar p{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.dashboard-topbar h1{font-size:24px;line-height:1.1}.menu-button{display:none}.topbar-status{display:inline-flex;min-height:36px;max-width:250px;align-items:center;gap:8px;overflow:hidden;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface) 82%,transparent);color:var(--muted);padding:0 12px;font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.topbar-status span{width:8px;height:8px;flex:0 0 auto;border-radius:999px;background:var(--good);box-shadow:0 0 0 4px color-mix(in srgb,var(--good) 14%,transparent)}.dashboard-main,.state-page{min-width:0;padding:34px}.dashboard-main{grid-column:2}.cms-route{max-width:1440px}.lms-route{max-width:1480px}.lms-inline-state{margin:0;color:var(--muted)}.lms-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.lms-metrics .metric-card{display:grid;gap:7px;min-height:112px;align-content:center;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 92%,transparent);padding:18px}.lms-metrics .metric-card span{color:var(--muted);font-size:13px;font-weight:750}.lms-metrics .metric-card strong{font-size:32px}.lms-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lms-quick-grid button{display:grid;gap:7px;min-height:120px;border:1px solid color-mix(in srgb,var(--accent-gold) 24%,var(--line));border-radius:14px;background:linear-gradient(135deg,var(--accent-soft),var(--surface-strong));color:var(--text);padding:22px;text-align:left}.lms-quick-grid strong{font-size:22px}.lms-quick-grid span{color:var(--muted)}.lms-filters{display:grid;grid-template-columns:minmax(220px,1.2fr) repeat(4,minmax(150px,1fr));gap:12px;margin-bottom:18px}.lms-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lms-filters input,.lms-filters select,.lms-form-grid input,.lms-form-grid select,.lms-form-grid textarea,.lms-access-form>label input{width:100%;min-height:42px;border:1px solid var(--line);border-radius:9px;background:var(--surface-strong);color:var(--text);padding:9px 11px}.lms-table{width:100%;border-collapse:collapse}.lms-table th,.lms-table td{border-bottom:1px solid var(--line);padding:13px 10px;text-align:left;vertical-align:top}.lms-table th{color:var(--muted);font-size:12px;text-transform:uppercase}.lms-table tbody tr[tabindex]{cursor:pointer}.lms-table tbody tr[tabindex]:hover{background:var(--accent-soft)}.lms-table td small{display:block;margin-top:4px;color:var(--soft)}.lms-table td .status-badge{margin-left:8px}.lms-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.lms-row-actions>button:not(.primary-action-button):not(.secondary-button){min-width:36px;min-height:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface-strong);color:var(--text)}.lms-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lms-form-grid label,.lms-access-form>label{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:750}.lms-form-grid .wide{grid-column:1 / -1}.lms-form-grid textarea{min-height:100px;resize:vertical}.lms-check{display:flex!important;align-items:center}.lms-check input{width:auto;min-height:0}.field-error{color:var(--danger)}.lms-publish-readiness>header,.lms-section-header,.lms-module-list>header,.lms-module-header,.lms-lesson-editor>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.lms-publish-readiness h3,.lms-publish-readiness p,.lms-section-header h3,.lms-section-header p,.lms-module-list h3,.lms-module-list p,.lms-module-header h3,.lms-module-header p{margin:0}.lms-publish-readiness ul{margin-bottom:0;color:var(--warning)}.lms-module-list{display:grid;gap:16px}.lms-module-card{display:grid;gap:16px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 92%,transparent);padding:20px}.lms-module-header span,.lms-module-header p{color:var(--muted);font-size:13px}.lms-lesson-editor{display:grid;gap:14px;border-top:1px solid var(--line);padding-top:18px}.lms-lesson-editor header div{display:grid;gap:3px}.lms-lesson-editor header span{color:var(--muted);font-size:12px}.lms-system-info dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lms-system-info dl div{border-bottom:1px solid var(--line);padding-bottom:9px}.lms-system-info dt{color:var(--soft);font-size:12px}.lms-system-info dd{margin:4px 0 0;overflow-wrap:anywhere}.lms-access-form{display:grid;gap:16px}.lms-search-results{display:grid;gap:6px;max-height:280px;overflow:auto}.lms-search-results button{display:grid;gap:3px;border:1px solid var(--line);border-radius:9px;background:var(--surface-strong);color:var(--text);padding:11px;text-align:left}.lms-search-results button.selected{border-color:var(--accent-gold);background:var(--accent-soft)}.lms-search-results span,.lms-selected-user span{color:var(--muted);font-size:12px}.lms-selected-user{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:10px;background:var(--accent-soft);padding:12px}.lms-selected-user div{display:grid;gap:3px}.lms-link-button{border:0;background:transparent;color:var(--accent-strong);padding:0;text-decoration:underline}.lms-progress-list{display:grid;gap:10px}.lms-progress-item{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;border:1px solid var(--line);border-radius:12px;padding:14px}.lms-progress-item>div:last-child{display:grid;gap:8px}.lms-progress-item header{display:flex;justify-content:space-between;gap:12px}.lms-progress-item p,.lms-progress-item small{margin:0;color:var(--muted)}.lms-progress-marker{display:grid;width:34px;height:34px;place-items:center;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-weight:850}.lms-progress-item.locked{opacity:.72}.lms-progress-item.completed{border-color:color-mix(in srgb,var(--good) 35%,var(--line))}.lms-progress-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0 0}.lms-progress-details div{border-radius:8px;background:var(--surface-soft);padding:8px}.lms-progress-details dt{color:var(--soft);font-size:11px}.lms-progress-details dd{margin:3px 0 0;font-size:13px}@media(max-width:1100px){.lms-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.lms-progress-details{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.lms-metrics,.lms-quick-grid,.lms-summary-grid,.lms-form-grid,.lms-filters,.lms-system-info dl{grid-template-columns:1fr}.lms-form-grid .wide{grid-column:auto}.lms-progress-details{grid-template-columns:1fr}.lms-selected-user,.lms-module-header,.lms-publish-readiness>header{align-items:stretch;flex-direction:column}}.cms-section-stack{display:grid;gap:18px}.cms-section-stack>h3,.cms-system-info h3{margin:0;font-size:22px}.cms-section-help,.cms-inline-state{margin:0;color:var(--muted)}.cms-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cms-form-grid .wide{grid-column:1 / -1}.cms-form-grid label,.cms-section-stack>label,.cms-field{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:750}.cms-form-grid input,.cms-form-grid select,.cms-form-grid textarea,.cms-section-stack>label input,.cms-section-stack>label select,.cms-field input,.cms-field textarea,.cms-list-filters input,.cms-list-filters select,.cms-media-tools input,.cms-media-tools select,.cms-add-block select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:9px;background:var(--surface-strong);color:var(--text);padding:9px 11px}.cms-form-grid textarea,.cms-field textarea{min-height:100px;resize:vertical}.cms-field label span{color:var(--soft);font-weight:500}.cms-field small{color:var(--soft);text-align:right}.cms-field small.warning{color:var(--warning)}.cms-checks,.cms-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.cms-row-actions button:not(.primary-action-button):not(.secondary-button):not(.danger-button){min-height:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface-strong);color:var(--text);padding:0 10px}.cms-message{margin:0;border:1px solid var(--line);border-radius:9px;padding:12px 14px}.cms-message.error{border-color:color-mix(in srgb,var(--danger) 45%,var(--line));background:color-mix(in srgb,var(--danger) 7%,var(--surface));color:var(--danger)}.cms-message.success{border-color:color-mix(in srgb,var(--good) 45%,var(--line));background:color-mix(in srgb,var(--good) 7%,var(--surface));color:var(--good)}.cms-message p{margin:0 0 10px}.cms-list-filters,.cms-media-tools{display:grid;grid-template-columns:minmax(220px,1fr) repeat(2,minmax(150px,auto));gap:10px;margin-bottom:18px}.cms-table{width:100%;border-collapse:collapse}.cms-table th,.cms-table td{border-bottom:1px solid var(--line);padding:13px 10px;text-align:left;vertical-align:top}.cms-table th{color:var(--muted);font-size:12px;text-transform:uppercase}.cms-table tbody tr{cursor:pointer}.cms-table tbody tr:hover{background:var(--accent-soft)}.cms-table td span,.cms-table td small{display:block}.cms-table td small{margin-top:4px;color:var(--soft)}.cms-block-editor,.cms-block-card{display:grid;gap:14px}.cms-block-card{border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--surface-strong) 80%,transparent);padding:16px}.cms-block-card>header{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding-bottom:12px}.cms-block-card header span{color:var(--soft);font-size:12px}.cms-block-card h3{margin:2px 0 0}.cms-toggle{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}.cms-validation-list{margin:0;border-left:3px solid var(--danger);color:var(--danger);padding:8px 8px 8px 28px;font-size:13px}.cms-add-block{display:grid;grid-template-columns:auto minmax(220px,380px) auto;align-items:center;gap:10px;border:1px dashed var(--line);border-radius:12px;padding:16px}.cms-add-block small{color:var(--soft)}.shared-rich-text{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface-strong)}.shared-editor-toolbar{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid var(--line);padding:8px}.shared-editor-toolbar [role=group]{display:flex;gap:4px;padding-right:8px;border-right:1px solid var(--line)}.shared-editor-toolbar [role=group]:last-child{border-right:0}.shared-editor-toolbar button{display:inline-grid;min-width:34px;min-height:34px;place-items:center;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:0 8px}.shared-editor-toolbar button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-strong)}.shared-rich-text-surface{min-height:260px;padding:18px;outline:none;line-height:1.72}.shared-rich-text-surface h2{margin:1.5em 0 .55em;font-size:1.55rem}.shared-rich-text-surface h3{margin:1.25em 0 .45em;font-size:1.25rem}.shared-rich-text-surface p:first-child{margin-top:0}.contract-editor{position:relative}.contract-editor-toolbar button{min-height:32px}.contract-editor-toolbar .contract-data-cta{margin-left:auto;border-color:var(--accent-gold);background:var(--accent-soft);font-weight:800}.contract-editor-surface{min-height:440px;padding:22px}.contract-variable-token{display:inline-flex;max-width:100%;align-items:center;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);padding:1px 8px;font-size:.88em;font-weight:750;white-space:nowrap}.contract-variable-token.ProseMirror-selectednode{outline:2px solid var(--accent)}.contract-variable-catalogue{display:grid;grid-template-columns:170px minmax(0,1fr);max-height:330px;border-bottom:1px solid var(--line);background:var(--surface)}.contract-variable-catalogue nav{display:grid;align-content:start;border-right:1px solid var(--line);padding:8px}.contract-variable-catalogue nav button,.contract-variable-catalogue>div button{border:0;border-radius:7px;background:transparent;color:var(--text);padding:9px;text-align:left}.contract-variable-catalogue nav button.active{background:var(--accent-soft);color:var(--accent-strong);font-weight:800}.contract-variable-catalogue>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;overflow:auto;padding:8px}.contract-variable-search{display:grid;grid-column:1/-1;gap:4px;color:var(--muted);font-size:11px;font-weight:750}.contract-variable-search input{min-height:36px;border:1px solid var(--line);border-radius:7px;background:var(--surface-strong);color:var(--text);padding:7px 9px}.contract-variable-catalogue>div button{display:grid;gap:3px;border:1px solid var(--line)}.contract-variable-catalogue>div button:hover{border-color:var(--accent)}.contract-variable-catalogue>div span{color:var(--muted);font-size:11px}.cms-media-picker summary,.cms-section-stack details>summary{cursor:pointer;color:var(--accent-strong);font-weight:750}.cms-media-library{display:grid;gap:14px;margin-top:12px}.cms-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.cms-media-grid article{display:grid;gap:7px;min-width:0;border:1px solid var(--line);border-radius:10px;padding:10px}.cms-media-grid article.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.cms-media-grid strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cms-media-grid span{color:var(--muted);font-size:12px}.cms-media-placeholder{display:grid;min-height:90px;place-items:center;border-radius:7px;background:var(--surface-soft);color:var(--soft);font-weight:850;letter-spacing:.12em}.cms-compact-list{display:grid;gap:6px;margin:0;padding-left:24px}.cms-compact-list li{display:flex;align-items:center;justify-content:space-between;gap:10px}.cms-compact-list code{overflow:hidden;text-overflow:ellipsis}.cms-taxonomy{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cms-taxonomy fieldset,.cms-section-stack fieldset{display:grid;gap:9px;border:1px solid var(--line);border-radius:9px;padding:14px}.cms-taxonomy label{display:flex;gap:8px;align-items:center}.cms-search-preview{display:grid;gap:5px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:16px;color:#25211f}.cms-search-preview span{color:#2f7d57;font-size:13px}.cms-search-preview strong{color:#2457a6;font-size:20px;font-weight:500}.cms-search-preview p{margin:0;color:#4d5156}.cms-system-info dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cms-system-info dl div{border-bottom:1px solid var(--line);padding-bottom:9px}.cms-system-info dt{color:var(--soft);font-size:12px}.cms-system-info dd{margin:4px 0 0;overflow-wrap:anywhere}.cms-publishing-panel>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.cms-publishing-panel>header h3,.cms-publishing-panel>header p{margin:0}.cms-publication-result{display:flex;flex-wrap:wrap;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;padding:14px}.cms-publication-result span{color:var(--muted)}.cms-publication-result a{color:var(--accent-strong);font-weight:750}@media(max-width:760px){.contract-variable-catalogue{grid-template-columns:1fr}.contract-variable-catalogue nav{grid-template-columns:repeat(3,minmax(0,1fr));border-right:0;border-bottom:1px solid var(--line)}.contract-variable-catalogue>div{grid-template-columns:1fr}.cms-form-grid,.cms-taxonomy,.cms-system-info dl{grid-template-columns:1fr}.cms-form-grid .wide{grid-column:auto}.cms-list-filters,.cms-media-tools{grid-template-columns:1fr}.cms-block-card>header{align-items:flex-start;flex-direction:column}.cms-add-block{grid-template-columns:1fr}}.cms-editor-route{width:min(100%,1440px);padding-bottom:96px}.cms-editor-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:20px}.cms-editor-header h2{margin:3px 0 8px;font-size:clamp(30px,4vw,46px);line-height:1.08}.cms-back-link{border:0;background:transparent;color:var(--muted);padding:0 0 12px;font:inherit;font-weight:750;cursor:pointer}.cms-back-link:hover{color:var(--accent-strong)}.cms-document-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;color:var(--muted);font-size:13px}.cms-status-pill{display:inline-flex;width:fit-content;align-items:center;border-radius:999px;background:var(--surface-soft);color:var(--muted);padding:5px 9px;font-size:11px;font-weight:800}.cms-status-pill.status-published{background:color-mix(in srgb,var(--good) 13%,var(--surface));color:var(--good)}.cms-status-pill.status-in_review{background:color-mix(in srgb,var(--warning) 13%,var(--surface));color:var(--warning)}.cms-editor-menu{position:relative}.cms-icon-button{display:inline-grid;min-width:40px;place-items:center;padding:0}.cms-overflow-menu{position:absolute;z-index:20;top:calc(100% + 8px);right:0;display:grid;width:230px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong);box-shadow:0 18px 50px #00000024;padding:6px}.cms-overflow-menu button{display:flex;align-items:center;gap:9px;border:0;border-radius:8px;background:transparent;color:var(--text);padding:10px;text-align:left;cursor:pointer}.cms-overflow-menu button:hover{background:var(--surface-soft)}.cms-overflow-menu button.danger{color:var(--danger)}.cms-overflow-menu svg{width:17px}.cms-editor-tabs{position:sticky;z-index:10;top:0;display:flex;overflow-x:auto;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.cms-editor-tabs button{display:inline-flex;min-width:max-content;align-items:center;gap:7px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:13px 18px 11px;font:inherit;font-size:14px;font-weight:750;cursor:pointer}.cms-editor-tabs button:hover{color:var(--text)}.cms-editor-tabs button.active{border-bottom-color:var(--accent);color:var(--accent-strong)}.cms-editor-tab-content{display:grid;min-width:0}.cms-section-stack>header,.cms-preview-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.cms-section-stack>header h3,.cms-section-stack>header p,.cms-preview-panel>header h3,.cms-preview-panel>header p{margin:0}.cms-section-stack>header h3,.cms-preview-panel>header h3{margin:3px 0 5px;font-size:24px}.cms-section-stack>header p,.cms-preview-panel>header p{color:var(--muted)}.cms-sticky-actions{position:fixed;z-index:30;right:34px;bottom:20px;left:calc(var(--sidebar-width, 250px) + 34px);display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--surface-strong) 94%,transparent);box-shadow:0 18px 50px #00000029;padding:12px 16px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.cms-sticky-actions>div:first-child{display:grid;gap:2px}.cms-sticky-actions span,.cms-sticky-actions small{color:var(--muted);font-size:12px}.cms-sticky-actions button,.cms-media-field button,.cms-preview-switch button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.cms-content-layout{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}.cms-block-outline{position:sticky;top:68px;z-index:4;display:flex;align-items:center;gap:10px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong);padding:8px}.cms-block-outline>strong{padding:8px 9px;color:var(--muted);font-size:12px;text-transform:uppercase}.cms-block-outline>select{display:none;min-width:0}.cms-block-outline-links{display:flex;min-width:0;gap:5px;overflow-x:auto}.cms-block-outline button{display:grid;flex:0 0 auto;gap:2px;border:0;border-radius:8px;background:transparent;color:var(--text);padding:7px 10px;text-align:left;cursor:pointer}.cms-block-outline button:hover,.cms-block-outline button.active{background:var(--surface-soft)}.cms-block-outline button.active{box-shadow:inset 0 0 0 1px var(--accent)}.cms-block-outline i{color:var(--good);font-size:10px;font-style:normal}.cms-block-outline i.invalid{color:var(--danger)}.cms-highlight-editor{display:grid;gap:10px;border:1px solid var(--line);border-radius:12px;padding:14px}.cms-highlight-editor legend{padding:0 6px;font-weight:700}.cms-highlight-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.cms-highlight-row label,.cms-highlight-row input{width:100%}.cms-block-card{scroll-margin-top:72px;padding:0}.cms-block-card>header{border:0;padding:14px 16px}.cms-block-card.expanded>header{border-bottom:1px solid var(--line)}.cms-block-card>:not(header){margin-right:16px;margin-left:16px}.cms-block-card>:last-child{margin-bottom:16px}.cms-block-title{flex:1;border:0;background:transparent;color:var(--text);padding:0;text-align:left;cursor:pointer}.cms-block-title h3{font-size:18px}.cms-validation-summary{display:grid;gap:3px;border-left:3px solid var(--danger);color:var(--danger);padding:9px 12px;font-size:13px}.cms-media-field{display:grid;grid-template-columns:132px minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong);padding:12px}.cms-media-field-preview{overflow:hidden;height:86px;border-radius:9px;background:var(--surface-soft)}.cms-media-field-preview img,.cms-media-thumbnail img,.cms-media-details-preview img,.cms-gallery-selection img{width:100%;height:100%;object-fit:cover}.cms-media-field-copy{display:grid;min-width:0;gap:4px}.cms-media-field-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cms-media-field-copy span,.cms-media-field-copy small{color:var(--muted);font-size:12px}.cms-media-empty{display:grid;height:100%;place-items:center;color:var(--muted);font-size:12px}.cms-media-empty svg{width:22px}.cms-gallery-selection{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.cms-gallery-selection article{display:grid;gap:8px;border:1px solid var(--line);border-radius:10px;padding:9px}.cms-gallery-selection img,.cms-gallery-selection .cms-media-empty{height:110px;border-radius:7px;background:var(--surface-soft)}.cms-media-drawer{width:min(95vw,1180px)}.cms-media-drawer .family-drawer-body{display:block;padding:18px}.cms-media-library{margin-top:0}.cms-media-tools{grid-template-columns:minmax(210px,1fr) 170px 170px auto;align-items:center}.cms-media-search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;background:var(--surface-strong);padding:0 10px}.cms-media-search input{border:0;padding-left:0}.cms-media-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;min-height:520px;overflow:hidden;border:1px solid var(--line);border-radius:12px}.cms-media-results{overflow-y:auto;max-height:calc(100vh - 240px);padding:14px}.cms-media-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}.cms-media-grid>button{display:grid;min-width:0;gap:6px;border:1px solid var(--line);border-radius:10px;background:var(--surface-strong);color:var(--text);padding:8px;text-align:left;cursor:pointer}.cms-media-grid>button.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.cms-media-grid>button>span:last-child{color:var(--muted);font-size:11px}.cms-media-grid>button>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cms-media-thumbnail{position:relative;overflow:hidden;height:116px;border-radius:7px;background:var(--surface-soft)}.cms-media-thumbnail>span{display:grid;height:100%;place-items:center}.cms-media-thumbnail i{position:absolute;top:7px;right:7px;display:grid;width:25px;height:25px;place-items:center;border-radius:999px;background:var(--accent);color:#fff}.cms-media-details{display:grid;align-content:start;gap:12px;border-left:1px solid var(--line);background:var(--surface-soft);padding:15px}.cms-media-details>div{display:grid;gap:4px}.cms-media-details>div span{color:var(--muted);font-size:12px}.cms-media-details label{display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:750}.cms-media-details input,.cms-media-details textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--surface-strong);color:var(--text);padding:8px}.cms-media-details-preview{overflow:hidden;height:190px;border-radius:9px;background:var(--surface-strong)}.cms-media-empty-state{display:grid;min-height:220px;place-items:center;align-content:center;gap:8px;color:var(--muted);text-align:center}.cms-media-empty-state svg{width:38px;height:38px}.cms-seo-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:start;gap:24px}.cms-seo-preview{position:sticky;top:76px;display:grid;gap:12px}.cms-seo-preview>span{color:var(--muted);font-size:12px;font-weight:750}.cms-search-preview small{color:#2f7d57}.cms-social-preview{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface-strong)}.cms-social-preview img{width:100%;max-height:190px;object-fit:cover}.cms-social-preview strong,.cms-social-preview p{display:block;margin:0;padding:8px 12px 0}.cms-social-preview p{padding:4px 12px 12px;color:var(--muted);font-size:13px}.cms-preview-panel{display:grid;gap:18px}.cms-preview-switch{display:flex;border:1px solid var(--line);border-radius:9px;padding:3px}.cms-preview-switch button{border:0;border-radius:7px;background:transparent;color:var(--muted);padding:8px 10px}.cms-preview-switch button.active{background:var(--accent-soft);color:var(--accent-strong)}.cms-preview-canvas{width:100%;overflow:auto;border:1px solid var(--line);border-radius:14px;background:#f3f0e9;padding:22px;transition:width .2s ease}.cms-preview-canvas.mobile{width:min(100%,420px);margin-inline:auto;padding:10px}.cms-draft-page{overflow:hidden;max-width:1080px;margin-inline:auto;border-radius:10px;background:#fff;color:#27231f;box-shadow:0 10px 32px #231d141a}.cms-draft-page section,.cms-draft-page figure{margin:0;padding:clamp(26px,6vw,72px)}.cms-draft-page img{width:100%;height:100%;object-fit:cover}.cms-preview-image-placeholder{display:grid;min-height:180px;place-items:center;background:#e8e4db;color:#756f65}.cms-preview-hero{position:relative;display:grid;min-height:420px;align-items:center;overflow:hidden;color:#fff}.cms-preview-hero>img,.cms-preview-hero>.cms-preview-image-placeholder{position:absolute;inset:0;height:100%;filter:brightness(.55)}.cms-preview-hero>div{position:relative;z-index:1;max-width:680px}.cms-preview-hero.center>div{margin-inline:auto;text-align:center}.cms-preview-hero h1{margin:8px 0;font-size:clamp(38px,6vw,68px)}.cms-preview-rich-text{max-width:740px;margin-inline:auto!important;line-height:1.75}.cms-preview-image figcaption{padding-top:8px;color:#756f65;font-size:13px}.cms-preview-image-text{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:38px}.cms-preview-image-text.right>:first-child{order:2}.cms-preview-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.cms-preview-gallery figure{padding:0}.cms-preview-gallery img,.cms-preview-gallery .cms-preview-image-placeholder{aspect-ratio:4 / 3;min-height:0}.cms-preview-cta{background:#312d27;color:#fff;text-align:center}.cms-preview-cta a{display:inline-block;border-radius:999px;background:#d7ad66;color:#211b14;padding:11px 18px;text-decoration:none}.cms-preview-features>div{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cms-preview-features article{border:1px solid #e4ddd1;border-radius:10px;padding:18px}.cms-preview-quote{text-align:center}.cms-preview-quote img{width:90px;height:90px;border-radius:999px}.cms-preview-quote blockquote{font-size:26px}.cms-preview-related{background:#f4f0e8}.cms-version-list{display:grid;gap:9px}.cms-version-list article{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:11px;padding:13px 15px}.cms-version-list article>div{display:grid;gap:4px}.cms-version-list article>div:last-child{justify-items:end}.cms-version-list span,.cms-version-list p{margin:0;color:var(--muted);font-size:12px}.cms-system-details{border-top:1px solid var(--line);padding-top:14px}.cms-system-details dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cms-system-details dl div{border-bottom:1px solid var(--line);padding:8px 0}.cms-system-details dt{color:var(--muted);font-size:12px}.cms-system-details dd{margin:3px 0 0}@media(max-width:1050px){.cms-content-layout,.cms-seo-layout{grid-template-columns:1fr}.cms-block-outline,.cms-seo-preview{position:static}.cms-block-outline>strong,.cms-block-outline-links{display:none}.cms-block-outline>select{display:block;width:100%}.cms-highlight-row{grid-template-columns:1fr}.cms-highlight-row .cms-row-actions{justify-content:flex-end}.cms-media-workspace{grid-template-columns:1fr}.cms-media-details{border-top:1px solid var(--line);border-left:0}.cms-media-results{max-height:450px}}@media(max-width:760px){.cms-editor-route{padding-bottom:150px}.cms-editor-header{grid-template-columns:minmax(0,1fr) auto}.cms-editor-header h2{font-size:30px}.cms-document-meta span:last-child{flex-basis:100%}.cms-editor-tabs{margin-right:-20px;margin-left:-20px;padding-left:12px}.cms-editor-tabs button{padding-inline:12px}.cms-sticky-actions{right:10px;bottom:10px;left:10px;align-items:stretch;flex-direction:column;gap:8px}.cms-sticky-actions .cms-row-actions{display:grid;grid-template-columns:1fr 1fr}.cms-sticky-actions .primary-action-button{grid-column:1 / -1}.cms-media-field{grid-template-columns:90px minmax(0,1fr)}.cms-media-field>.cms-row-actions{grid-column:1 / -1}.cms-media-field-preview{height:72px}.cms-media-tools{grid-template-columns:1fr}.cms-media-drawer{width:100vw}.cms-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-media-thumbnail{height:100px}.cms-section-stack>header,.cms-preview-panel>header,.cms-version-list article{align-items:stretch;flex-direction:column}.cms-version-list article>div:last-child{justify-items:stretch}.cms-preview-switch{width:fit-content}.cms-preview-image-text,.cms-preview-features>div{grid-template-columns:1fr}.cms-preview-image-text.right>:first-child{order:0}.cms-preview-gallery{grid-template-columns:repeat(2,1fr)}.cms-draft-page section,.cms-draft-page figure{padding:24px}.cms-system-details dl{grid-template-columns:1fr}}.state-page{display:grid;min-height:100vh;place-items:center}.access-denied-card{display:grid;width:min(100%,620px);gap:14px}.route-stack{display:grid;width:min(100%,1180px);gap:20px}.route-header{display:grid;gap:8px}.route-header-with-action{grid-template-columns:minmax(0,1fr) auto;align-items:end}.eyebrow{margin:0;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.route-header h2,.login-copy h1{margin:0;font-size:clamp(34px,6vw,56px);line-height:1.02}.route-header p,.login-copy p,.panel-title p,.empty-state p{max-width:720px;margin:0;color:var(--muted);line-height:1.6}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric-card,.data-panel,.login-card{border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-strong) 96%,transparent),color-mix(in srgb,var(--surface) 92%,transparent));box-shadow:var(--shadow)}.metric-card{display:grid;gap:10px;min-height:146px;padding:18px}.metric-card span,.metric-card small{color:var(--muted)}.metric-card strong{font-size:38px;line-height:1}.data-panel{display:grid;gap:18px;padding:18px}.panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.placeholder-list{display:flex;flex-wrap:wrap;gap:10px}.placeholder-list span{border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font-size:13px;font-weight:700;padding:8px 11px}.panel-title{display:flex;justify-content:space-between;gap:16px}.panel-title h2{margin:0 0 4px;font-size:19px}.empty-state{display:grid;min-height:160px;place-content:center;gap:8px;border:1px dashed var(--line);border-radius:8px;padding:22px;text-align:center}.filter-bar{display:grid;grid-template-columns:minmax(220px,1fr) 180px 180px;gap:10px}.filter-bar label{display:grid;gap:6px}.filter-bar label span{color:var(--muted);font-size:13px;font-weight:700}.filter-bar input,.filter-bar select,.login-card input,.dog-form-grid input,.dog-form-grid select,.dog-notes-field textarea{font-family:inherit;min-height:42px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface-strong) 82%,var(--surface));color:var(--text);padding:0 12px}.table-shell{overflow:auto;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface) 86%,transparent)}table{font-family:inherit;width:100%;min-width:1080px;border-collapse:collapse}.dogs-table{min-width:860px}th,td{border-bottom:1px solid var(--line);padding:13px 14px;text-align:left}.clickable-row{cursor:pointer;transition:background .16s ease,color .16s ease}.clickable-row:hover,.clickable-row:focus-visible{outline:0;background:var(--accent-soft)}th{color:var(--muted);font-size:12px;text-transform:uppercase;background:color-mix(in srgb,var(--surface-soft) 62%,transparent)}.sample-row{color:var(--soft)}.muted-cell{display:block;margin-top:3px;color:var(--muted);font-size:12px}.dog-avatar{display:grid;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:999px;background:radial-gradient(circle at 34% 28%,color-mix(in srgb,var(--accent-gold) 28%,transparent),transparent 44%),linear-gradient(135deg,var(--accent-soft),var(--surface-strong));color:var(--accent-strong);object-fit:cover;font-weight:900}.dog-avatar-sm{width:42px;height:42px;font-size:16px}.dog-avatar-lg{width:76px;height:76px;font-size:24px}img.dog-avatar{display:block}.dog-form-photo-control{position:relative;width:76px;height:76px}.dog-form-photo-control .dog-avatar{width:100%;height:100%}.dog-photo-edit-button{position:absolute;right:-2px;bottom:-2px;display:grid;width:28px;height:28px;place-items:center;border:1px solid color-mix(in srgb,var(--accent-gold) 42%,var(--line));border-radius:999px;background:var(--surface-strong);color:var(--accent-strong);box-shadow:0 8px 18px color-mix(in srgb,var(--text) 18%,transparent);cursor:pointer;font-size:14px;font-weight:900;line-height:1}.dog-photo-edit-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.dog-photo-helper{max-width:420px;margin:8px 0 0;color:var(--muted);font-size:12px;font-weight:700;line-height:1.35}.status-badge{font-family:inherit;display:inline-flex;width:fit-content;align-items:center;border-radius:999px;padding:5px 9px;background:var(--accent-soft);color:var(--accent-strong);font-size:12px;font-weight:700}.status-badge.good{background:color-mix(in srgb,var(--good) 14%,transparent);color:var(--good)}.status-badge.warning{background:color-mix(in srgb,var(--warning) 16%,transparent);color:var(--warning)}.status-badge.danger{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.settings-list{display:grid;gap:10px}.settings-list>div{display:flex;justify-content:space-between;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding:10px 0}.settings-list span{color:var(--muted)}.compact-list{display:grid;gap:10px}.compact-list article{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:10px 0}.compact-list article div{display:grid;gap:3px}.compact-list span,.compact-list small{color:var(--muted)}.error-message{margin:0;border:1px solid color-mix(in srgb,var(--danger) 28%,transparent);border-radius:8px;background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--danger);padding:10px 12px}.success-message{margin:0;border:1px solid color-mix(in srgb,var(--good) 28%,transparent);border-radius:8px;background:color-mix(in srgb,var(--good) 10%,transparent);color:var(--good);padding:10px 12px}.family-drawer-layer{position:fixed;z-index:80;inset:0}.family-drawer-backdrop{position:absolute;inset:0;border:0;background:radial-gradient(circle at 70% 18%,color-mix(in srgb,var(--accent-gold) 14%,transparent),transparent 30%),color-mix(in srgb,var(--text) 44%,transparent);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.family-drawer{position:absolute;inset:0 0 0 auto;display:grid;width:min(960px,calc(100vw - 32px));height:100%;grid-template-rows:auto minmax(0,1fr);border-left:1px solid var(--line);background:radial-gradient(circle at 12% 0%,var(--accent-soft),transparent 26rem),var(--background);box-shadow:-24px 0 80px #00000047}.family-drawer-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start;border-bottom:1px solid var(--line);padding:20px 22px}.family-avatar{display:grid;width:58px;height:58px;place-items:center;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,var(--accent-soft),var(--surface-strong));color:var(--accent-strong);font-size:18px;font-weight:800}.family-heading{min-width:0}.family-heading h2{margin:0;font-size:clamp(26px,2.8vw,36px);font-weight:700;line-height:1.06}.drawer-header-meta-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.family-meta{display:flex;flex-wrap:wrap;flex:1 1 auto;gap:8px;align-items:center;margin-top:12px;color:var(--muted);font-size:12px}.family-meta span{display:inline-flex;min-height:24px;align-items:center;border:1px solid var(--line);border-radius:999px;background:var(--surface);padding:3px 8px}.drawer-header-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px}.drawer-close-button{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong);color:var(--text);font-size:27px;line-height:1}.family-drawer-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px;overflow-y:auto;padding:14px 22px 24px}.lead-drawer .family-drawer-body,.delivery-route-drawer .family-drawer-body{grid-template-columns:1fr}.family-drawer-body>.data-panel:first-child,.family-drawer-body>.empty-state,.family-drawer-body>.drawer-skeleton{grid-column:1 / -1}.dog-drawer .family-drawer-body>.data-panel:first-child{grid-column:auto}.dog-form-body>.error-message,.dog-form-body>.success-message,.dog-form-body>.drawer-action-bar{grid-column:1 / -1}.family-drawer .data-panel{gap:8px;padding:12px 14px}.family-drawer .primary-action-button{min-height:38px;padding:0 14px;box-shadow:none;font-size:14px;font-weight:700}.family-drawer .panel-title h2{font-size:16px;font-weight:700;line-height:1.15}.family-drawer .panel-title p{font-size:12px;line-height:1.35}.drawer-detail-table{display:grid;overflow:hidden}.drawer-detail-row{display:grid;grid-template-columns:minmax(128px,.38fr) minmax(0,1fr);gap:14px;align-items:start;border-bottom:1px solid var(--line);padding:7px 0}.drawer-detail-row:last-child{border-bottom:0}.drawer-detail-row span{color:var(--muted);font-size:12px;font-weight:600}.drawer-detail-row strong{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);font-size:13px;font-weight:650;line-height:1.38;text-align:right}.lead-drawer .drawer-detail-table{gap:3px}.lead-drawer .drawer-detail-row{grid-template-columns:minmax(150px,.3fr) minmax(0,1fr);border-bottom:0;border-radius:6px;background:color-mix(in srgb,var(--surface-strong) 58%,transparent);padding:9px 10px}.lead-drawer .drawer-detail-row:nth-child(2n){background:color-mix(in srgb,var(--surface-soft) 62%,transparent)}.lead-drawer .drawer-detail-row span{color:var(--muted);font-weight:500}.lead-drawer .drawer-detail-row strong{color:color-mix(in srgb,var(--text) 76%,var(--muted));font-weight:400;line-height:1.7;text-align:left}.lead-drawer .drawer-detail-row strong br{display:block;content:"";margin-top:.45em}.drawer-workflow-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.workflow-editor,.notes-panel{display:grid;gap:12px}.drawer-workflow-control{display:grid;gap:5px}.drawer-workflow-control>span,.drawer-workflow-checkbox span,.qualification-grid label>span,.rating-control>span{color:var(--muted);font-size:11px;font-weight:650}.drawer-workflow-control select,.drawer-workflow-control input,.drawer-workflow-control output,.drawer-workflow-control textarea,.qualification-grid select,.qualification-grid textarea{font-family:inherit;display:flex;min-height:34px;border:1px solid var(--line);border-radius:7px;background:color-mix(in srgb,var(--surface) 72%,transparent);color:var(--text);padding:7px 9px;font-size:13px;font-weight:650}.drawer-workflow-control output{align-items:center}.drawer-workflow-control textarea{min-height:58px;resize:vertical}.drawer-workflow-checkbox{display:grid;grid-template-columns:auto minmax(0,1fr);align-content:end;align-items:center;gap:8px;min-height:55px}.follow-up-note-row{display:grid;grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);gap:10px}.workflow-rating-row{display:grid;grid-template-columns:minmax(200px,1fr) auto;gap:10px;align-items:end}.workflow-save-button{justify-self:end}.qualification-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:10px}.qualification-grid label,.rating-control{display:grid;gap:6px}.qualification-reason{grid-column:1 / -1}.rating-control div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.rating-control button{min-height:34px;border:1px solid var(--line);border-radius:7px;background:color-mix(in srgb,var(--surface) 74%,transparent);color:var(--muted);font-family:inherit;font-weight:700}.rating-control button.active{border-color:color-mix(in srgb,var(--accent) 64%,var(--line));background:var(--accent-soft);color:var(--accent-strong)}.rating-control.compact div{display:flex;gap:5px}.rating-control.compact button{width:30px;min-height:28px;padding:0;border-radius:999px;font-size:12px}.notes-list,.history-list{display:grid;gap:8px}.note-item,.history-item{display:grid;gap:6px;border-bottom:1px solid var(--line);padding:9px 0}.note-item:last-child,.history-item:last-child{border-bottom:0}.note-item div,.history-item div{display:flex;flex-wrap:wrap;gap:8px}.note-item strong,.history-item strong{color:var(--text);font-size:12px;font-weight:900}.note-item span,.history-item span,.history-item p{margin:0;color:var(--muted);font-size:12px;font-weight:700}.note-item p{margin:0;color:var(--text);font-size:13px;font-weight:800;line-height:1.35}.drawer-skeleton{display:grid;gap:16px}.drawer-skeleton-panel{display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-strong);padding:18px}.drawer-skeleton-panel span,.drawer-skeleton-panel strong,.drawer-skeleton-panel p{display:block;height:13px;margin:0;border-radius:999px;background:linear-gradient(90deg,var(--surface),var(--accent-soft),var(--surface));background-size:220% 100%;animation:drawerSkeleton 1.2s ease-in-out infinite}.drawer-skeleton-panel strong{width:44%;height:18px}.drawer-skeleton-panel p{width:72%}.drawer-skeleton-panel p:last-child{width:58%}.drawer-action-bar{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface) 82%,transparent);padding:12px}.drawer-action-bar-inline{justify-content:flex-start;border:0;background:transparent;padding:0}.muted-copy{margin:0;color:var(--muted);font-weight:700}.assignment-panel{display:grid;gap:12px}.assignment-action-button{min-height:34px;padding:0 13px;box-shadow:none;font-size:12px;line-height:1}.delivery-address-panel{display:grid;gap:12px}.delivery-ready-status{display:grid;gap:3px;border:1px solid color-mix(in srgb,var(--good) 42%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--good) 12%,var(--surface));padding:10px 12px}.delivery-ready-status strong{color:var(--text);font-size:13px;font-weight:900}.delivery-ready-status span{color:var(--muted);font-size:12px;font-weight:700}.delivery-geocoding-status{display:grid;gap:8px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface-strong) 76%,transparent);padding:10px 12px}.delivery-geocoding-status>div{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.delivery-geocoding-status>div>span,.delivery-geocoding-status p{color:var(--muted);font-size:12px;font-weight:800}.delivery-geocoding-status p{display:grid;gap:3px;margin:0}.delivery-geocoding-status p strong{color:var(--text);font-size:13px}.assignment-list{display:grid;gap:8px}.assignment-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;border-bottom:1px solid var(--line);padding:9px 0}.assignment-list-row:last-child{border-bottom:0}.assignment-list-row div{display:grid;min-width:0;gap:2px}.assignment-list-row strong,.assignment-list-row>span,.assignment-list-row time{color:var(--text);font-size:13px;font-weight:800}.assignment-list-row div span,.assignment-list-row time{color:var(--muted)}.delivery-map-route{width:min(100%,1260px)}.delivery-toolbar{display:flex;justify-content:flex-end}.delivery-toolbar label{display:grid;width:min(100%,340px);gap:6px}.delivery-toolbar span{color:var(--muted);font-size:12px;font-weight:800}.delivery-toolbar select{font-family:inherit;min-height:42px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface-strong) 82%,var(--surface));color:var(--text);padding:0 12px}.delivery-group-list{display:grid;gap:16px}.delivery-map-canvas-wrap{position:relative;overflow:hidden;min-height:clamp(320px,42vh,520px);border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface-strong) 84%,transparent)}.delivery-map-canvas{width:100%;min-height:clamp(320px,42vh,520px)}.delivery-map-error,.delivery-map-placeholder{display:grid;gap:8px;min-height:260px;place-content:center;border:1px dashed var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface-strong) 70%,transparent);padding:24px;text-align:center}.delivery-map-error{position:absolute;inset:16px;min-height:auto;background:color-mix(in srgb,var(--surface-strong) 92%,transparent)}.delivery-map-error strong,.delivery-map-placeholder strong{color:var(--text);font-size:18px}.delivery-map-error p,.delivery-map-placeholder p{max-width:460px;margin:0 auto;color:var(--muted)}.delivery-litter-group{display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface) 78%,transparent);padding:14px}.delivery-litter-group.archived{border-style:dashed;opacity:.84}.delivery-litter-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:12px}.delivery-litter-header h3{margin:2px 0 4px;font-size:22px;line-height:1.1}.delivery-litter-header span{color:var(--muted);font-weight:800}.delivery-litter-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.delivery-litter-meta strong,.delivery-litter-meta>span{display:inline-flex;min-height:28px;align-items:center;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);padding:4px 9px;font-size:12px;font-weight:900}.delivery-litter-meta>span{color:var(--warning)}.delivery-family-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.delivery-family-card{display:grid;gap:13px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface-strong) 84%,transparent);padding:14px}.delivery-family-main{display:flex;justify-content:space-between;gap:12px;align-items:start}.delivery-family-main h4{margin:0;font-size:18px;line-height:1.15}.delivery-family-main p{margin:4px 0 0;color:var(--muted);font-size:13px;font-weight:800}.delivery-family-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;margin:0}.delivery-family-details div{display:grid;grid-template-columns:minmax(96px,.42fr) minmax(0,1fr);gap:10px;border-bottom:1px solid var(--line);padding:8px 0}.delivery-family-details dt,.delivery-family-details dd{margin:0;min-width:0;overflow-wrap:anywhere;font-size:12px}.delivery-family-details dt{color:var(--muted);font-weight:800}.delivery-family-details dd{color:var(--text);font-weight:900;text-align:right}.delivery-family-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.delivery-family-actions .secondary-button,.delivery-family-actions .danger-button{min-height:38px;text-decoration:none}.delivery-route-list,.route-family-picker,.route-stop-list{display:grid;gap:12px}.delivery-route-card,.route-stop-item,.route-family-option,.route-litter-card{border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.delivery-route-card{display:grid;gap:12px;padding:16px}.delivery-route-card.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-soft)}.delivery-route-card-main{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.delivery-route-card-main h3,.route-stop-item h4{margin:0;color:var(--text);font-size:18px}.delivery-route-card-main p,.route-stop-item p{margin:4px 0 0;color:var(--muted)}.delivery-route-detail{display:grid;gap:16px}.delivery-route-drawer{width:min(980px,100vw)}.route-wizard-steps{display:flex;gap:8px}.route-wizard-steps button{width:36px;height:36px;border-radius:999px;border:1px solid var(--line);background:var(--surface-soft);color:var(--text);font-weight:800}.route-wizard-steps button.active{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.route-litter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.route-litter-card{display:grid;gap:8px;padding:14px;color:var(--text);text-align:left}.route-litter-card.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-soft)}.route-litter-card span{color:var(--accent);font-weight:800}.route-litter-card strong{color:var(--text)}.route-litter-card em{color:var(--muted);font-style:normal}.route-checkbox{display:flex;align-items:center;min-height:48px;gap:10px}.route-checkbox input{width:auto}.route-family-option{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:12px;padding:14px;color:var(--text)}.route-family-option.disabled{opacity:.58}.route-family-option input{margin-top:4px}.route-family-option span{display:grid;gap:4px}.route-family-option small,.route-family-option em{color:var(--muted);font-style:normal}.route-stop-item{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:14px;padding:14px}.route-stop-item>strong{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:var(--accent);color:var(--accent-contrast);font-weight:900}.route-stop-actions{display:flex;align-items:center;gap:8px}.route-stop-actions .secondary-button{min-width:42px;padding-inline:0}.route-detail-section{display:grid;gap:14px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--surface-soft) 78%,transparent);padding:14px}.route-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.route-section-heading h3,.route-section-heading p{margin:0}.route-section-heading h3{font-size:18px}.route-section-heading p{color:var(--muted);font-size:13px}.route-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.route-cost-grid{align-items:end}.route-order-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.route-order-columns>div,.route-history-item{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:12px}.route-order-columns h4{margin:0 0 10px;color:var(--text);font-size:14px}.route-order-list{display:grid;gap:8px;margin:0;padding-left:22px;color:var(--text)}.route-order-list li::marker{color:var(--accent);font-weight:900}.route-history-list{display:grid;gap:10px}.route-history-item{display:flex;align-items:center;justify-content:space-between;gap:14px}.route-history-item div{display:grid;gap:4px;min-width:0}.route-history-item strong{color:var(--text)}.route-history-item span,.route-history-item small{color:var(--muted)}.route-history-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dog-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dog-form-grid label,.dog-notes-field{display:grid;gap:6px}.dog-form-grid label>span,.dog-notes-field>span{color:var(--muted);font-size:12px;font-weight:800}.dog-notes-field textarea{min-height:132px;resize:vertical;padding:10px 12px}.dog-checkbox-field{grid-template-columns:auto minmax(0,1fr);align-content:center;align-items:center;min-height:42px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface) 72%,transparent);padding:0 12px}.dog-checkbox-field input{width:16px;height:16px}.dog-litter-count-field small{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.modal-layer{position:fixed;z-index:90;inset:0;display:grid;place-items:center;padding:18px}.modal-backdrop{position:absolute;inset:0;border:0;background:color-mix(in srgb,var(--text) 45%,transparent);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.placeholder-modal{position:relative;z-index:1;display:grid;width:min(100%,520px);gap:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-strong);box-shadow:var(--shadow-strong);padding:22px}.placeholder-modal>.drawer-close-button{justify-self:end}@keyframes drawerSkeleton{0%{background-position:0% 50%}to{background-position:220% 50%}}.login-page{display:grid;min-height:100vh;grid-template-columns:minmax(0,1fr) minmax(320px,440px);gap:28px;align-items:center;background:radial-gradient(circle at 20% 0%,var(--accent-soft),transparent 34%),var(--background);padding:34px}.platform-theme-toggle{position:fixed;z-index:5;top:18px;right:18px}.login-copy{display:grid;gap:14px}.login-card{display:grid;gap:14px;padding:20px}.login-card label{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:700}.login-card button{min-height:44px;border:0;border-radius:10px;background:var(--accent-strong);color:var(--surface-strong);font-weight:800}.theme-toggle{display:inline-flex;min-height:38px;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface-strong) 82%,transparent);color:var(--text);padding:0 11px;font-size:12px;font-weight:900}.theme-toggle-track{position:relative;display:inline-flex;width:34px;height:20px;align-items:center;border:1px solid color-mix(in srgb,var(--accent-gold) 32%,var(--line));border-radius:999px;background:var(--accent-soft);padding:2px}.theme-toggle-thumb{width:14px;height:14px;border-radius:999px;background:var(--accent-gold);box-shadow:0 5px 14px color-mix(in srgb,var(--accent-gold) 28%,transparent);transform:translate(0);transition:transform .16s ease}.theme-toggle[aria-pressed=true] .theme-toggle-thumb{transform:translate(14px)}.topbar-logout{min-height:38px;border:1px solid var(--line);border-radius:10px;background:var(--surface-strong);color:var(--text);padding:0 12px;font-weight:800}.sidebar-backdrop{display:none}@media(max-width:940px){.dashboard-shell{font-family:inherit;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.dashboard-topbar{grid-column:1;grid-template-columns:auto minmax(0,1fr) auto;min-height:72px;padding:10px 14px}.dashboard-topbar h1{font-size:20px}.menu-button{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:10px;background:transparent;padding:10px}.menu-button span{display:block;width:20px;height:2px;border-radius:999px;background:var(--text)}.topbar-status,.topbar-logout{display:none}.theme-toggle>span:last-child{display:none}.dashboard-sidebar{position:fixed;z-index:30;inset:0 auto 0 0;width:min(84vw,310px);transform:translate(-105%);transition:transform .16s ease}.sidebar-open .dashboard-sidebar{transform:translate(0)}.sidebar-open .sidebar-backdrop{position:fixed;inset:0;z-index:25;display:block;border:0;background:#0000006b}.dashboard-main{grid-column:1;padding:22px 14px}.route-header-with-action,.metric-grid,.panel-grid,.filter-bar,.delivery-family-list,.login-page{grid-template-columns:1fr}.delivery-toolbar{justify-content:stretch}.delivery-toolbar label{width:100%}.delivery-litter-header{grid-template-columns:1fr}.delivery-litter-meta{justify-content:flex-start}.delivery-family-main{display:grid}.delivery-family-details{grid-template-columns:1fr}.delivery-family-actions{justify-content:stretch}.delivery-family-actions .secondary-button,.delivery-family-actions .danger-button{width:100%}.delivery-route-card-main,.route-stop-item{display:grid;grid-template-columns:1fr}.route-stop-actions{width:100%}.route-stop-actions .secondary-button,.route-stop-actions .danger-button{flex:1;min-height:44px}.route-order-columns,.route-history-item{grid-template-columns:1fr}.route-history-item{display:grid}.route-history-item .secondary-button{width:100%}.delivery-map-canvas-wrap,.delivery-map-canvas{min-height:320px}.family-drawer{inset:0;width:100%;border-left:0}.family-drawer-header{grid-template-columns:auto minmax(0,1fr) auto;padding:18px 14px}.family-avatar{width:48px;height:48px;border-radius:15px}.family-drawer-body{grid-template-columns:1fr;padding:14px}.dog-drawer-header{grid-template-columns:auto minmax(0,1fr) auto}.drawer-header-meta-row{flex-direction:column;gap:0}.drawer-header-actions{justify-content:flex-start}.drawer-workflow-strip,.follow-up-note-row,.workflow-rating-row{grid-template-columns:1fr}.workflow-save-button{justify-self:stretch;width:100%}.dog-form-grid{grid-template-columns:1fr}.drawer-detail-row{grid-template-columns:minmax(104px,.38fr) minmax(0,1fr)}.login-page{align-content:center}.platform-theme-toggle{top:12px;right:12px}}.platform-login-page{position:relative;isolation:isolate;width:min(100%,1180px);min-height:100vh;margin:0 auto;grid-template-columns:minmax(0,1fr) minmax(320px,390px);grid-template-rows:auto auto;column-gap:clamp(24px,3vw,42px);row-gap:clamp(18px,2vw,26px);align-content:center;align-items:center;overflow-x:hidden;background:transparent;color:#f7efe5;padding:clamp(24px,4vw,54px)}.platform-login-page:before{position:fixed;inset:0;z-index:-2;content:"";background:radial-gradient(circle at 76% 14%,rgba(216,211,91,.14),transparent 24rem),radial-gradient(circle at 12% 14%,rgba(130,192,199,.14),transparent 28rem),linear-gradient(135deg,#100c0a,#17110e 45%,#231913);pointer-events:none}.platform-login-page:after{position:absolute;inset:auto -12% -26% 28%;z-index:-1;height:520px;content:"";background:radial-gradient(circle,rgba(209,173,133,.16),transparent 66%);pointer-events:none}.platform-landing{position:relative;z-index:1;display:grid;grid-column:1;grid-row:1;gap:clamp(18px,2.3vw,28px);min-width:0;align-content:center}.platform-atmosphere{position:absolute;inset:-22% 8% auto -12%;z-index:-1;height:420px;border-radius:999px;background:radial-gradient(circle at 35% 45%,rgba(216,211,91,.18),transparent 34%),radial-gradient(circle at 64% 24%,rgba(247,239,229,.12),transparent 32%);filter:blur(16px);pointer-events:none}.platform-brand{display:grid;width:100%;justify-items:center;gap:10px;text-align:center}.platform-brand img{display:block;width:clamp(220px,24vw,320px);max-width:100%;height:auto}.platform-brand>span{min-width:0;color:#f7efe5b8;font-size:12px;font-weight:800;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}.platform-story{display:grid;max-width:620px;gap:16px}.platform-story .eyebrow,.platform-login-card .eyebrow{color:#d8d35b}.platform-story h1{max-width:min(100%,620px);margin:0;color:#fff8ed;font-size:clamp(42px,5vw,70px);font-weight:800;letter-spacing:0;line-height:.96;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.platform-story p:not(.eyebrow){max-width:590px;margin:0;color:#f7efe5c7;font-size:clamp(16px,1.3vw,19px);line-height:1.62}.platform-service-grid{display:grid;grid-column:1;grid-row:2;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:min(100%,700px)}.platform-service-grid article{display:grid;grid-template-columns:28px minmax(0,1fr);gap:11px;min-height:104px;align-items:start;border:1px solid rgba(247,239,229,.13);border-radius:14px;background:#f7efe50e;padding:15px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.platform-service-grid article>span{display:grid;width:28px;height:28px;place-items:center;border:1px solid rgba(216,211,91,.36);border-radius:999px;background:#d8d35b1f}.platform-service-grid article>span:before{width:8px;height:8px;border-radius:50%;background:#d8d35b;content:"";box-shadow:0 0 22px #d8d35b80}.platform-service-grid strong{display:block;color:#fff8ed;font-size:15px;line-height:1.2}.platform-service-grid p{margin:5px 0 0;color:#f7efe5a8;font-size:13px;line-height:1.45}.login-panel-wrap{position:relative;z-index:2;display:grid;grid-column:2;grid-row:1 / span 2;width:min(100%,390px);justify-self:start;align-content:center;gap:0}.platform-portal{position:relative;justify-self:center;width:clamp(170px,18vw,220px);max-width:100%;aspect-ratio:1;margin:0 0 -26px}.platform-portal img{position:absolute;inset:10%;z-index:2;width:80%;height:80%;border:1px solid rgba(247,239,229,.24);border-radius:50%;box-shadow:0 30px 80px #0000006b,0 0 0 14px #f7efe509;object-fit:cover;object-position:54% 48%}.platform-orbit{position:absolute;inset:8%;border:1px solid rgba(216,211,91,.22);border-radius:50%;pointer-events:none}.platform-orbit-one{transform:rotate(-8deg) scaleX(1.18)}.platform-orbit-two{inset:0;border-color:#82c0c72e;transform:rotate(18deg) scaleY(.88)}.platform-orbit-three{inset:17%;border-color:#f7efe529;transform:rotate(42deg) scaleX(1.28)}.platform-portal figcaption{position:absolute;z-index:3;right:0;bottom:3%;display:grid;max-width:158px;gap:3px;border:1px solid rgba(247,239,229,.16);border-radius:18px;background:#100c0a9e;box-shadow:0 22px 50px #00000047;padding:10px 12px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.platform-portal figcaption span{color:#d8d35b;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.platform-portal figcaption strong{color:#fff8ed;font-size:13px;line-height:1.35}.platform-login-card{width:100%;gap:15px;border:1px solid rgba(247,239,229,.2);border-radius:28px;background:linear-gradient(180deg,#f7efe524,#f7efe513),#1f1813b8;box-shadow:0 34px 120px #0000006b,inset 0 1px #ffffff24;padding:clamp(20px,2.4vw,28px);backdrop-filter:blur(34px) saturate(1.2);-webkit-backdrop-filter:blur(34px) saturate(1.2)}.login-card-heading{display:grid;gap:8px;margin-bottom:4px}.login-card-heading h2{margin:0;color:#fff8ed;font-size:clamp(26px,3vw,38px);line-height:1.05}.login-card-heading p:not(.eyebrow){margin:0;color:#f7efe5ad;line-height:1.55}.platform-login-card label{color:#f7efe5c7;font-size:13px;letter-spacing:.02em}.platform-login-card input{min-height:48px;border-color:#f7efe52e;border-radius:14px;background:#100c0a8f;color:#fff8ed;padding:0 15px;outline:none}.platform-login-card input::placeholder{color:#f7efe566}.platform-login-card input:focus{border-color:#d8d35ba8;box-shadow:0 0 0 4px #d8d35b1f}.platform-login-card button[type=submit]{min-height:50px;border-radius:999px;background:linear-gradient(135deg,#f7efe5,#d8d35b 52%,#d1ad85),#d8d35b;color:#17110e;box-shadow:0 20px 54px #d8d35b38;font-weight:900}.platform-login-card .error-message{border-color:#c74a4a73;background:#c74a4a24;color:#ffb1aa}.auth-form{display:grid;gap:14px}.auth-field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.auth-field-row>label,.auth-field-row input{min-width:0}.auth-field-row input{width:100%}.auth-inline-link,.auth-switch-link,.auth-hint{margin:0;color:#f7efe5a8;font-size:13px;line-height:1.5}.auth-inline-link{margin-top:-4px;text-align:right}.auth-switch-link{text-align:center}.platform-login-card a{color:#e4df73;font-weight:800;text-underline-offset:3px}.success-message,.auth-success-panel,.auth-expired-panel{border:1px solid rgba(119,186,141,.38);border-radius:16px;background:#77ba8d1c;color:#c8efd4;padding:14px}.success-message{margin:0;font-size:13px;line-height:1.5}.auth-success-panel,.auth-expired-panel{display:grid;gap:12px}.auth-expired-panel{border-color:#ff8f8661;background:#c74a4a1f;color:#ffd2ce}.auth-success-panel h3,.auth-success-panel p,.auth-expired-panel h3,.auth-expired-panel p{margin:0}.auth-success-panel p,.auth-expired-panel p{line-height:1.6}.auth-primary-link{justify-self:start}.client-dashboard-page{min-height:100vh;background:radial-gradient(circle at 82% 8%,var(--accent-soft),transparent 30rem),var(--background);padding:clamp(18px,4vw,52px)}.client-dashboard-header{display:flex;max-width:1120px;align-items:center;justify-content:space-between;gap:20px;margin:0 auto}.client-dashboard-header>img{width:min(240px,54vw);height:auto}.client-dashboard-header>div{display:flex;align-items:center;gap:10px}.client-welcome-card{display:grid;max-width:760px;gap:18px;border:1px solid var(--line);border-radius:28px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:var(--shadow-strong);margin:clamp(72px,12vh,132px) auto 0;padding:clamp(26px,5vw,56px)}.client-welcome-card h1,.client-welcome-card p{margin:0}.client-welcome-card h1{font-family:Raleway,Inter,sans-serif;font-size:clamp(36px,6vw,62px);line-height:1}.client-welcome-card>p:not(.eyebrow){max-width:620px;color:var(--muted);font-size:17px;line-height:1.7}.client-account-state{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:18px}.client-account-state>span{width:11px;height:11px;border-radius:50%;background:var(--good);box-shadow:0 0 0 6px color-mix(in srgb,var(--good) 14%,transparent)}.client-account-state div{display:grid;gap:3px}.client-account-state small{color:var(--muted)}html[data-theme=light] .platform-login-page{color:var(--text)}html[data-theme=light] .platform-login-page:before{background:radial-gradient(circle at 76% 14%,rgba(186,183,35,.16),transparent 24rem),radial-gradient(circle at 12% 14%,rgba(130,192,199,.13),transparent 28rem),linear-gradient(135deg,#faf8f1,#fffdf7 48%,#efe7d9)}html[data-theme=light] .platform-login-page:after{background:radial-gradient(circle,rgba(209,173,133,.2),transparent 66%)}html[data-theme=light] .platform-atmosphere{background:radial-gradient(circle at 35% 45%,rgba(186,183,35,.16),transparent 34%),radial-gradient(circle at 64% 24%,rgba(113,97,91,.1),transparent 32%)}html[data-theme=light] .platform-brand>span,html[data-theme=light] .platform-story p:not(.eyebrow),html[data-theme=light] .platform-service-grid p,html[data-theme=light] .login-card-heading p:not(.eyebrow),html[data-theme=light] .platform-login-card label{color:var(--muted)}html[data-theme=light] .platform-story .eyebrow,html[data-theme=light] .platform-login-card .eyebrow,html[data-theme=light] .platform-portal figcaption span{color:var(--accent)}html[data-theme=light] .platform-story h1,html[data-theme=light] .platform-service-grid strong,html[data-theme=light] .login-card-heading h2,html[data-theme=light] .platform-portal figcaption strong{color:var(--text)}html[data-theme=light] .platform-service-grid article{border-color:#71615b29;background:#fffdf7b8;box-shadow:0 18px 42px #25211f14}html[data-theme=light] .platform-service-grid article>span{border-color:#8f8c1847;background:#bab72324}html[data-theme=light] .platform-service-grid article>span:before{background:var(--accent);box-shadow:0 0 20px #bab72352}html[data-theme=light] .platform-portal img{border-color:#71615b2e;box-shadow:0 24px 70px #25211f29,0 0 0 14px #fffdf7c7}html[data-theme=light] .platform-orbit{border-color:#8f8c1838}html[data-theme=light] .platform-orbit-two{border-color:#82c0c738}html[data-theme=light] .platform-orbit-three{border-color:#71615b21}html[data-theme=light] .platform-portal figcaption{border-color:#71615b29;background:#fffdf7c7;box-shadow:0 18px 46px #25211f24}html[data-theme=light] .platform-login-card{border-color:#71615b2e;background:linear-gradient(180deg,#fffdf7eb,#faf8f1d1),#ffffffb8;box-shadow:0 34px 100px #25211f29,inset 0 1px #ffffffd1}html[data-theme=light] .platform-login-card input{border-color:#71615b2e;background:#fffdf7e6;color:var(--text)}html[data-theme=light] .platform-login-card input::placeholder{color:#71615b70}html[data-theme=light] .platform-login-card input:focus{border-color:#8f8c188f;box-shadow:0 0 0 4px #bab72324}html[data-theme=light] .platform-login-card button[type=submit]{background:linear-gradient(135deg,#fff4b8,#bab723 52%,#d1ad85),#bab723;color:#25211f;box-shadow:0 20px 54px #8f8c182e}html[data-theme=light] .platform-login-card .error-message{border-color:#c74a4a6b;background:#c74a4a1a;color:var(--danger)}html[data-theme=light] .auth-inline-link,html[data-theme=light] .auth-switch-link,html[data-theme=light] .auth-hint{color:var(--muted)}html[data-theme=light] .platform-login-card a{color:var(--accent)}html[data-theme=light] .success-message,html[data-theme=light] .auth-success-panel{color:var(--good)}html[data-theme=light] .auth-expired-panel{color:var(--danger)}@media(min-width:1181px){.platform-login-page{padding-inline:clamp(34px,4.4vw,62px)}}@media(max-width:1180px){.platform-login-page{width:min(100%,1040px);grid-template-columns:minmax(0,1fr) minmax(310px,360px);column-gap:26px;padding:28px}.platform-story h1{font-size:clamp(40px,5.3vw,62px)}.platform-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-portal{width:clamp(166px,21vw,210px)}}@media(max-width:900px){.platform-login-page{grid-template-columns:minmax(0,1fr) minmax(300px,340px);column-gap:22px;padding:24px}.platform-story h1{font-size:clamp(36px,5vw,52px)}.platform-service-grid{grid-template-columns:1fr;max-width:520px}.platform-portal figcaption{right:50%;bottom:-4%;transform:translate(50%);width:min(86%,180px)}}@media(max-width:767px){.platform-login-page{width:100%;min-height:100vh;grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:24px;align-content:start;overflow-x:hidden;padding:18px}.platform-landing,.login-panel-wrap,.platform-service-grid{grid-column:1;width:100%;max-width:100%}.platform-landing{grid-row:1;gap:18px}.login-panel-wrap{grid-row:2;justify-self:stretch;align-content:start;justify-items:center;gap:18px}.platform-service-grid{grid-row:3;grid-template-columns:1fr}.platform-brand img{width:min(68vw,240px)}.platform-story h1{max-width:100%;font-size:clamp(38px,10.6vw,54px);line-height:.98}.platform-story p:not(.eyebrow){max-width:100%;font-size:16px}.platform-portal{width:min(68vw,240px)}.platform-login-card{border-radius:22px}}@media(max-width:480px){.platform-login-page{gap:22px;padding:14px}.platform-brand{gap:8px}.platform-brand img{width:min(72vw,220px)}.platform-story h1{font-size:clamp(34px,11.8vw,46px)}.platform-portal{width:min(70vw,210px)}.platform-portal figcaption{bottom:-10%;max-width:164px;padding:10px 11px}.platform-portal figcaption span{font-size:10px}.platform-portal figcaption strong{font-size:12px}.platform-login-card{padding:20px}.auth-field-row{grid-template-columns:1fr}.client-dashboard-header{align-items:flex-start}.client-dashboard-header>div{align-items:stretch;flex-direction:column}}.family-drawer-body.with-sticky-footer{padding-bottom:96px}.delivery-route-sticky-footer{position:sticky;bottom:0;z-index:4;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:12px 18px}.delivery-route-sticky-footer .primary-action-button,.delivery-route-sticky-footer .secondary-button,.compact-route-actions .secondary-button{min-height:38px;padding:0 16px;font-size:14px}.route-family-picker-combined{gap:10px}.route-family-option.selected{border-color:var(--accent-soft);background:color-mix(in srgb,var(--surface-soft) 82%,var(--accent-soft))}.route-family-option.draggable{cursor:grab}.route-family-option.draggable:active{cursor:grabbing}.route-family-option label{display:grid;grid-template-columns:auto 34px 28px 1fr;align-items:center;gap:10px;min-width:0}.route-stop-number,.route-drag-handle{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;border:1px solid var(--line);color:var(--muted);font-weight:800}.route-family-option.selected .route-stop-number{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.route-drag-handle{border-style:dashed;font-size:13px}.route-family-option-copy{min-width:0}.compact-result-list{margin-top:12px}.delivery-route-archive{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.delivery-route-archive summary{cursor:pointer;color:var(--muted);font-size:14px;font-weight:750}.delivery-route-list-collapsed{margin-top:12px}.delivery-route-list-collapsed .delivery-route-card{padding:14px 16px}.delivery-route-card-compact{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:760px){.delivery-route-sticky-footer{display:grid;grid-template-columns:1fr;padding:10px 14px}.delivery-route-sticky-footer .primary-action-button,.delivery-route-sticky-footer .secondary-button{width:100%}.route-family-option,.route-family-option label{grid-template-columns:1fr}.route-family-option label{align-items:start}}
