@import"https://fonts.googleapis.com/css2?family=Public+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap";@font-face{font-family:Safiro;src:url(/fonts/Safiro-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Safiro;src:url(/fonts/Safiro-Medium.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Safiro;src:url(/fonts/Safiro-SemiBold.otf) format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Safiro;src:url(/fonts/Safiro-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}:root{--color-text: #1c1917;--color-subtle: #57534e;--color-muted: #6b7280;--color-faint: #6b7078;--color-danger: #dc2626;--color-success: #16a34a;--color-accent: #7c3aed;--color-white: #ffffff;--color-neutral: #3f3f46;--color-btn-destructive: #d92d20;--color-checkbox-border: #a9a29d;--color-checkbox-checked: #292524;--color-checkbox-disabled-bg: #f5f5f4;--color-checkbox-disabled-border: #d7d3d0;--color-badge-success-text: #067647;--color-badge-success-bg: #ecfdf3;--color-badge-success-border: #abefc6;--color-badge-warning-text: #b54708;--color-badge-warning-bg: #fffaeb;--color-badge-warning-border: #fedf89;--color-badge-error-text: #b42318;--color-badge-error-bg: #fef3f2;--color-badge-error-border: #fecdca;--color-badge-info-text: #175cd3;--color-badge-info-bg: #eff8ff;--color-badge-info-border: #b2ddff;--color-badge-brand-text: #7956ae;--color-badge-brand-bg: #f8f5ff;--color-badge-brand-border: #dccdff;--color-badge-gray-text: #44403c;--color-badge-gray-bg: #f5f5f4;--color-badge-gray-border: #d7d3d0;--color-border: #e5e7eb;--color-divider: #f1f1f3;--color-canvas: #f6f7f9;--color-surface: #ffffff;--color-surface-alt: #fafafa;--color-active-bg: #f4f4f5;--color-hover-bg: #fafafa;--color-switch-off: #d1d5db;--color-border-focus: #79716b;--color-text-disabled: #79716b;--color-nav-border: #eceae9;--color-nav-active: #171412;--color-nav-icon: #a9a29d;--color-breadcrumb-text: #79716b;--color-breadcrumb-text-current: #44403c;--layout-page-x: 2rem;--layout-page-y: 1.25rem;--layout-section-gap: 1rem;--layout-card-pad: 1.25rem;--layout-card-radius: 12px;--layout-form-gap: 1.25rem;--layout-option-card-radius: 20px;--font-heading: "Safiro", system-ui, sans-serif;--font-body: "Public Sans", system-ui, sans-serif;--text-h1: 2.25rem;--text-h2: 1.5rem;--text-h3: 1.25rem;--text-h4: 1.125rem;--text-body-lg: 1.1rem;--text-body: 1rem;--text-sm: .875rem;--text-xs: .8125rem;--text-2xs: .75rem;--text-caption: .78rem;--text-nav: .95rem;--text-nav-label: .7rem;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700}*,*:before,*:after{box-sizing:border-box}html{color-scheme:light;background:var(--color-canvas)}body{margin:0;background:var(--color-canvas);font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:400;line-height:1.1;margin:0}h1{font-size:var(--text-h1)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}h4{font-size:var(--text-h4)}p{margin:0;font-family:var(--font-body)}button,input,select,textarea{font-family:var(--font-body)}.t-h1{font-family:var(--font-heading);font-size:var(--text-h1);font-weight:var(--fw-regular);line-height:1.1;margin:0}.t-h2{font-family:var(--font-heading);font-size:var(--text-h2);font-weight:var(--fw-regular);line-height:1.2;margin:0}.t-h3{font-family:var(--font-heading);font-size:var(--text-h3);font-weight:var(--fw-regular);line-height:1.2;margin:0}.t-h4{font-family:var(--font-heading);font-size:var(--text-h4);font-weight:var(--fw-regular);line-height:1.3;margin:0}.t-body{font-family:var(--font-body);font-size:var(--text-body)}.t-body-lg{font-family:var(--font-body);font-size:var(--text-body-lg)}.t-sm{font-family:var(--font-body);font-size:var(--text-sm)}.t-xs{font-family:var(--font-body);font-size:var(--text-xs)}.t-2xs{font-family:var(--font-body);font-size:var(--text-2xs)}.t-label{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold)}.t-caption{font-family:var(--font-body);font-size:var(--text-caption);font-weight:var(--fw-semibold)}.t-nav{font-family:var(--font-body);font-size:var(--text-nav);font-weight:var(--fw-semibold)}.t-nav-label{font-family:var(--font-body);font-size:var(--text-nav-label);font-weight:var(--fw-semibold);letter-spacing:.08em}.t-subtitle{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-subtle)}.c-text{color:var(--color-text)}.c-muted{color:var(--color-muted)}.c-faint{color:var(--color-faint)}.c-subtle{color:var(--color-subtle)}.c-danger{color:var(--color-danger)}.c-success{color:var(--color-success)}.c-accent{color:var(--color-accent)}.c-white{color:var(--color-white)}.fw-regular{font-weight:var(--fw-regular)}.fw-medium{font-weight:var(--fw-medium)}.fw-semibold{font-weight:var(--fw-semibold)}.fw-bold{font-weight:var(--fw-bold)}.text-right{text-align:right}.text-center{text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;height:2.5rem;padding:0 .875rem;border-radius:8px;border:1px solid transparent;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer;transition:background .15s ease,opacity .15s ease,border-color .15s ease,box-shadow .15s ease}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.5}.btn--primary{background:var(--color-text);color:var(--color-white);border-color:#ffffff1f;box-shadow:0 1px 2px #0a0d120d,inset 0 -2px #0a0d120d,inset 0 0 0 1px #0a0d122e}.btn--primary:hover:not(:disabled){opacity:.9}.btn--primary:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked),0 1px 2px #0a0d120d,inset 0 -2px #0a0d120d,inset 0 0 0 1px #0a0d122e}.btn--secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border);box-shadow:0 1px 2px #0a0d120d,inset 0 -2px #0a0d120d,inset 0 0 0 1px #0a0d122e}.btn--secondary:hover:not(:disabled){background:var(--color-hover-bg)}.btn--secondary:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked),0 1px 2px #0a0d120d,inset 0 -2px #0a0d120d,inset 0 0 0 1px #0a0d122e}.btn--ghost{background:none;border:none;color:var(--color-text)}.btn--ghost:hover:not(:disabled){background:var(--color-active-bg)}.btn--ghost:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.btn--destructive{background:var(--color-btn-destructive);color:var(--color-white);border-color:#ffffff1f;box-shadow:0 1px 2px #0a0d120d,inset 0 -2px #0a0d120d,inset 0 0 0 1px #0a0d122e}.btn--destructive:hover:not(:disabled){opacity:.9}.btn--destructive:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-btn-destructive),0 1px 2px #0a0d120d,inset 0 -2px #0a0d120d,inset 0 0 0 1px #0a0d122e}.btn--danger-soft{border-color:#fecaca;background:#fef2f2;color:var(--color-danger)}.btn--success-soft{border-color:#bbf7d0;background:#f0fdf4;color:var(--color-success)}.btn--link{height:auto;padding:.125rem .25rem;background:none;border:none;color:var(--color-accent);font-size:var(--text-sm);font-weight:var(--fw-semibold);gap:.25rem}.btn--link:hover:not(:disabled){text-decoration:underline}.btn--link:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-accent);border-radius:4px}.btn--sm{height:2.25rem}.btn--lg{height:2.75rem;padding:0 1.1rem}.btn--xl{height:3.25rem;border-radius:10px;font-size:var(--text-body);width:100%}.btn--block{width:100%}.icon-btn{display:grid;place-items:center;border:none;background:none;border-radius:8px;color:var(--color-muted);cursor:pointer;line-height:1;transition:background .15s ease}.icon-btn:hover:not(:disabled){background:var(--color-hover-bg)}.icon-btn:disabled{cursor:not-allowed;opacity:.5}.icon-btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.breadcrumb-crumb{display:inline-flex;align-items:center;border:none;background:none;padding:.25rem .5rem;border-radius:.375rem;cursor:pointer;transition:background .15s ease}.breadcrumb-crumb:hover{background:var(--color-hover-bg)}.toggle-switch:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.skip-link{position:absolute;left:0;top:0;z-index:100;background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-text);border-radius:6px;padding:.5rem 1rem;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);text-decoration:none;transform:translateY(-150%);transition:transform .15s ease}.skip-link:focus-visible{transform:translateY(8px);outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.x-close{background:none;border:none;cursor:pointer;color:var(--color-muted);line-height:1;padding:.1rem .3rem;font-size:var(--text-h2);flex:0 0 auto}.x-remove{background:none;border:none;cursor:pointer;color:var(--color-muted);line-height:1;font-family:var(--font-body);font-size:var(--text-body)}.x-remove:disabled,.x-close:disabled{cursor:not-allowed;opacity:.5}.x-close:focus-visible,.x-remove:focus-visible{outline:none;border-radius:4px;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.field{display:grid;gap:.3rem}.field-label{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text)}.input{width:100%;box-sizing:border-box;height:2.5rem;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-body);padding:0 .7rem;transition:border-color .15s ease}.input:focus-visible{outline:none;border-color:var(--color-text);box-shadow:0 0 0 3px #1c191726}.input:focus{outline:none;border-color:var(--color-text)}.input::placeholder{color:var(--color-faint)}textarea.input{min-height:4.75rem;height:auto;padding:.6rem .7rem;line-height:1.45;resize:vertical}.input--sm{height:2rem;border-radius:6px;padding:0 .6rem}.input--lg{height:3rem;border-radius:10px;padding:0 .9rem}.helper-text{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-muted);margin:0}.error-text{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-danger);margin:0}.dropdown-trigger{width:100%;box-sizing:border-box;height:2.5rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;border-radius:8px;border:1px solid var(--color-badge-gray-border);background:var(--color-surface);font-family:var(--font-body);font-size:var(--text-body);padding:0 .7rem;cursor:pointer;box-shadow:0 1px 2px #0a0d120d;transition:border-color .15s ease}.dropdown-trigger-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-trigger:hover:not(:disabled){border-color:var(--color-border-focus)}.dropdown-trigger:focus-visible,.dropdown-trigger[aria-expanded=true]{outline:none;border:2px solid var(--color-border-focus)}.dropdown-trigger:disabled{cursor:not-allowed;background:var(--color-surface-alt);border-color:var(--color-badge-gray-border);color:var(--color-text-disabled)}.dropdown-menu{position:absolute;top:calc(100% + .4rem);left:0;right:0;z-index:30;max-height:16rem;overflow-y:auto;margin:0;padding:.25rem;list-style:none;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 12px 16px -4px #0a0d1214,0 4px 6px -2px #0a0d1208,0 2px 2px -1px #0a0d120a}.dropdown-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem;border-radius:6px;cursor:pointer;font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text)}.dropdown-item:hover,.dropdown-item--highlighted{background:var(--color-hover-bg)}.dropdown-item[aria-selected=true]{background:var(--color-active-bg)}.button-group{display:inline-flex;align-items:stretch;justify-self:start;border:1px solid var(--color-badge-gray-border);border-radius:8px;background:var(--color-surface);box-shadow:0 12px 8px -4px #0a0d1214,0 4px 3px -2px #0a0d1208,0 2px 1px -1px #0a0d120a}.button-group-segment{display:flex;align-items:center;gap:.4rem;min-height:40px;padding:.5rem 1rem;border:none;border-right:1px solid var(--color-badge-gray-border);background:var(--color-surface);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-badge-gray-text);cursor:pointer;white-space:nowrap}.button-group-segment:first-child{border-radius:8px 0 0 8px}.button-group-segment:last-child{border-right:none;border-radius:0 8px 8px 0}.button-group-segment:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-hover-bg)}.button-group-segment:disabled,.button-group-segment[aria-disabled=true]{cursor:not-allowed;opacity:.5}.button-group-label{color:var(--color-text);cursor:default}.button-group-label:hover{background:var(--color-surface)}.button-group-icon-only{padding:.5rem .75rem}.action-menu{z-index:30;min-width:270px;margin:0;padding:.35rem;list-style:none;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 12px 16px -4px #0a0d1214,0 4px 6px -2px #0a0d1208,0 2px 2px -1px #0a0d120a}.action-menu-item{width:100%;display:flex;align-items:flex-start;gap:.6rem;padding:.5rem .6rem;border-radius:6px;border:none;background:none;cursor:pointer;text-align:left;color:var(--color-text)}.action-menu-item:hover:not(:disabled){background:var(--color-hover-bg)}.action-menu-item:disabled{cursor:not-allowed;opacity:.5}.group-picker-popover{position:absolute;top:calc(100% + .4rem);left:0;right:0;z-index:30;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:.6rem;display:grid;gap:.4rem;box-shadow:0 12px 16px -4px #0a0d1214,0 4px 6px -2px #0a0d1208,0 2px 2px -1px #0a0d120a}.group-picker-search{display:flex;align-items:center;gap:.5rem;border:1px solid var(--color-badge-gray-border);border-radius:8px;padding:.4rem .6rem}.group-picker-search-input{flex:1;min-width:0;border:none;outline:none;background:none;font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text)}.group-picker-search-input::placeholder{color:var(--color-text-disabled)}.group-picker-list{max-height:14rem;overflow-y:auto;display:grid;gap:.1rem;border-top:1px solid var(--color-border);padding-top:.3rem}.picker-row{display:flex;align-items:center;gap:.4rem;padding:.35rem .4rem;border-radius:6px;cursor:pointer}.picker-row:hover:not(.picker-row--disabled){background:var(--color-hover-bg)}.picker-row--disabled{cursor:not-allowed;color:var(--color-text-disabled)}.picker-row--root{border-bottom:1px solid var(--color-border);padding-bottom:.5rem;margin-bottom:.2rem}.picker-row-spacer{width:16px;height:16px;flex:0 0 auto}.option-card{border:2px solid var(--color-divider);border-radius:var(--layout-option-card-radius);padding:1rem;transition:box-shadow .12s ease,border-color .12s ease}.option-card--selected{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.option-card-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;cursor:pointer}.date-range-trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;cursor:pointer}.date-range-trigger:disabled{cursor:not-allowed;opacity:.6}.date-range-popover{position:absolute;top:calc(100% + .4rem);left:0;z-index:30;width:288px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 8px 24px #0a0d1224;padding:1rem}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-weekday{display:flex;align-items:center;justify-content:center;height:1.75rem}.calendar-day{display:flex;align-items:center;justify-content:center;height:2rem;border:none;background:none;border-radius:9999px;cursor:pointer;font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text)}.calendar-day:hover:not(:disabled){background:var(--color-hover-bg)}.calendar-day:disabled{cursor:not-allowed}.calendar-day--muted{color:var(--color-faint)}.calendar-day--in-range{background:var(--color-active-bg)}.calendar-day--selected{background:var(--color-checkbox-checked);color:var(--color-white)}.page{min-height:100vh;background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);padding:0 var(--layout-page-x)}.page-content{padding:var(--layout-page-y) 0;display:grid;gap:var(--layout-section-gap)}.card{border:1px solid var(--color-border);border-radius:var(--layout-card-radius);background:var(--color-surface);padding:var(--layout-card-pad)}.section{display:grid;gap:.75rem}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.form-grid{display:grid;gap:var(--layout-form-gap)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.badge,.pill{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;font-family:var(--font-body);font-size:var(--text-2xs);font-weight:var(--fw-medium);line-height:1.5;border:1px solid;white-space:nowrap;color:var(--color-badge-gray-text);background:var(--color-badge-gray-bg);border-color:var(--color-badge-gray-border)}.badge{border-radius:9999px}.pill{border-radius:6px}.badge--success,.pill--success{color:var(--color-badge-success-text);background:var(--color-badge-success-bg);border-color:var(--color-badge-success-border)}.badge--warning,.pill--warning{color:var(--color-badge-warning-text);background:var(--color-badge-warning-bg);border-color:var(--color-badge-warning-border)}.badge--error,.pill--error{color:var(--color-badge-error-text);background:var(--color-badge-error-bg);border-color:var(--color-badge-error-border)}.badge--info,.pill--info{color:var(--color-badge-info-text);background:var(--color-badge-info-bg);border-color:var(--color-badge-info-border)}.badge--brand,.pill--brand{color:var(--color-badge-brand-text);background:var(--color-badge-brand-bg);border-color:var(--color-badge-brand-border)}.badge--gray,.pill--gray{color:var(--color-badge-gray-text);background:var(--color-badge-gray-bg);border-color:var(--color-badge-gray-border)}.badge--active{color:var(--color-badge-success-text);background:var(--color-badge-success-bg);border-color:var(--color-badge-success-border)}.badge--disabled{color:var(--color-badge-error-text);background:var(--color-badge-error-bg);border-color:var(--color-badge-error-border)}.pill--purple{color:var(--color-badge-brand-text);background:var(--color-badge-brand-bg);border-color:var(--color-badge-brand-border)}.badge--dot{background:var(--color-surface);border-color:var(--color-border);box-shadow:0 1px 2px #0a0d120d;color:var(--color-badge-gray-text)}.badge--dot.badge--success{color:var(--color-badge-success-text)}.badge--dot.badge--warning{color:var(--color-badge-warning-text)}.badge--dot.badge--error{color:var(--color-badge-error-text)}.badge--dot.badge--info{color:var(--color-badge-info-text)}.badge--dot.badge--brand{color:var(--color-badge-brand-text)}.badge-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;background:currentColor}.admin-badge{font-family:var(--font-body);font-size:var(--text-2xs);font-weight:var(--fw-medium);color:var(--color-badge-brand-text);background:var(--color-badge-brand-bg);border-radius:9999px;padding:.125rem .5rem;border:1px solid var(--color-badge-brand-border)}.count-tag{min-width:1.5rem;text-align:center;font-family:var(--font-body);font-size:var(--text-2xs);font-weight:var(--fw-medium);color:var(--color-badge-gray-text);background:var(--color-badge-gray-bg);border-radius:6px;padding:.1rem .4rem;border:1px solid var(--color-badge-gray-border)}.table-wrap{border:1px solid var(--color-border);border-radius:12px;overflow:hidden;background:var(--color-surface)}.table{width:100%;border-collapse:collapse;font-family:var(--font-body);font-size:var(--text-sm)}.th{text-align:left;padding:.85rem 1rem;font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--color-muted);background:var(--color-surface-alt);border-bottom:1px solid var(--color-border)}.td{padding:.85rem 1rem;color:var(--color-text);vertical-align:middle}.tr{border-top:1px solid var(--color-divider)}.tr:hover{background:var(--color-hover-bg)}.tr--selected,.tr--selected:hover{background:var(--color-badge-gray-bg)}.product-filter-form{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap;padding:1.25rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-alt)}.product-filter-field{min-width:16rem;flex:0 1 18rem}.product-filter-field--search{min-width:17rem;flex-basis:19rem}.product-filter-actions{display:flex;align-items:center;align-self:center;margin-left:auto}.product-clear-filters-button{font-size:var(--text-body)}.product-create-form{display:grid;gap:.85rem;width:100%;padding:1.7rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);box-shadow:0 1px 2px #0a0d120a,0 3px 8px #0a0d120a}.product-create-grid{display:grid;grid-template-columns:minmax(12rem,1.2fr) minmax(10rem,1fr) minmax(8rem,.7fr) minmax(8rem,.6fr);gap:.75rem;align-items:end}.product-create-field--half{grid-column:span 2}.product-create-family{grid-column:1 / span 2}.product-create-usd-asset{grid-column:3 / span 2}.product-create-prices,.product-create-description{grid-column:1 / -1}.catalog-price-editor{display:grid;gap:.5rem}.catalog-price-editor__label-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.product-create-price-lock-note{margin:-.15rem 0 .1rem}.catalog-price-row{display:grid;grid-template-columns:minmax(8rem,.9fr) minmax(8rem,1fr) minmax(7rem,.75fr) auto;gap:.5rem;align-items:center}.catalog-price-row--fixed{grid-template-columns:minmax(8rem,.9fr) minmax(8rem,1fr) minmax(7rem,.75fr)}.product-draft-table-section{display:grid;gap:.85rem}.product-draft-table-wrap .table-wrap{box-shadow:0 1px 2px #0a0d120a,0 3px 8px #0a0d120a}.product-draft-table-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.product-draft-table-title{font-size:1rem;font-weight:var(--fw-semibold)}.product-builder-tabs{display:grid;gap:0}.product-builder-tabs .tabs{border-bottom:1px solid var(--color-border)}.product-builder-tabs .tab{flex:0 0 auto;min-width:9rem;font-size:.96rem;padding-bottom:.7rem}.product-builder-tab-panel{min-height:7rem;padding:1.5rem}.product-structure-builder{display:grid;grid-template-columns:minmax(14rem,30%) minmax(0,1fr);gap:.75rem;align-items:start}.product-structure-builder--with-form{grid-template-columns:minmax(14rem,30%) minmax(22rem,1fr)}.product-structure-panel{display:grid;gap:.75rem;min-width:0;padding:1.5rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-alt);box-shadow:0 1px 2px #0a0d120a,0 3px 8px #0a0d120a}.product-structure-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.product-catalog-groups-panel{min-height:15rem;grid-template-rows:auto 1fr auto;padding:2rem;background:var(--color-surface)}.product-add-catalog-group-button{width:100%;justify-content:center}.product-group-list,.product-group-form{display:grid;gap:.65rem}.product-group-form-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding-bottom:.65rem;border-bottom:1px solid var(--color-border)}.product-group-form-panel{padding:2.5rem;background:var(--color-surface)}.product-group-list{align-content:start}.product-groups-empty-panel{place-items:center;align-content:center;gap:.75rem;min-height:17rem;text-align:center;background:var(--color-surface)}.product-groups-empty__icon{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border:1px solid var(--color-border);border-radius:999px;color:var(--color-muted);background:var(--color-surface-alt)}.product-groups-empty__copy{display:grid;gap:.3rem;max-width:32rem}.product-group-list-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.35rem .45rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);transition:background-color .15s ease,border-color .15s ease}.product-group-list-item:hover,.product-group-list-item.is-selected{border-color:var(--color-border-strong);background:var(--color-surface-muted)}.product-group-list-item--placeholder,.product-group-list-item--placeholder:hover{border-style:dashed;background:var(--color-surface-alt)}.product-group-list-item__select{display:flex;align-items:center;justify-content:space-between;gap:.55rem;min-width:0;flex:1 1 auto;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left}.product-group-list-item__select:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.product-group-reorder-controls{display:inline-flex;align-items:center;gap:.15rem}.product-group-reorder-button{width:1.75rem;height:1.75rem;border-radius:6px}.product-catalog-items-section{display:grid;grid-template-rows:auto 1fr;gap:.75rem;min-height:11rem;padding:1.8rem;border:1px dashed var(--color-border-strong);border-radius:8px;background:var(--color-surface)}.product-catalog-items-section__count{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-muted)}.product-catalog-items-section__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.product-catalog-items-empty{display:grid;place-items:center;align-content:center;gap:.7rem;min-height:9.2rem;text-align:center}.product-catalog-items-empty__icon{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border:1px solid var(--color-border);border-radius:999px;color:var(--color-muted);background:var(--color-surface-alt)}.product-catalog-items-empty__copy{display:grid;gap:.25rem;max-width:29rem}.product-catalog-items-list{display:grid;gap:.5rem;align-content:start}.product-catalog-items-list__item{display:grid;gap:.35rem}.product-catalog-items-list__row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .65rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface-alt)}.product-catalog-items-list__row.is-expanded{border-color:var(--color-border-strong);background:var(--color-surface)}.product-catalog-items-list__summary-button{display:flex;align-items:center;gap:.45rem;min-width:0;flex:1 1 auto;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left}.product-catalog-items-list__summary-button:hover .t-sm{text-decoration:underline}.product-catalog-items-list__summary-button:focus-visible{outline:2px solid var(--color-text);outline-offset:2px;border-radius:4px}.product-catalog-items-list__expand-icon{flex:0 0 auto;color:var(--color-muted);transition:transform .12s ease}.product-catalog-items-list__left{display:grid;gap:.1rem;min-width:0}.product-catalog-items-list__right{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;justify-content:flex-end;flex:0 0 auto}.product-catalog-items-list__price{color:var(--color-muted);font-size:var(--text-xs);font-weight:var(--fw-semibold);white-space:nowrap}.product-catalog-variants-panel{display:grid;gap:.35rem;margin-left:1.35rem;padding:.9rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface)}.product-catalog-variants-empty{padding:.35rem .45rem;color:var(--color-muted);font-size:var(--text-xs)}.product-catalog-variant-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.45rem .5rem .45rem .75rem;border-radius:5px;background:var(--color-surface-alt)}.product-catalog-variant-row__main{display:grid;gap:.1rem;min-width:0}.product-catalog-variant-row__meta{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem .65rem;color:var(--color-muted);font-size:var(--text-xs)}.product-catalog-variant-row__actions{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex:0 0 auto}.product-dependency-builder{display:grid;grid-template-columns:minmax(18rem,.9fr) minmax(24rem,1.1fr);gap:.75rem;align-items:start}.product-dependency-summary-panel,.product-dependency-editor-panel{background:var(--color-surface)}.product-dependency-summary-panel{min-height:20rem;align-content:start}.product-dependency-editor-panel{min-height:20rem}.product-dependency-empty{display:grid;place-items:center;align-content:center;gap:.65rem;min-height:11rem;text-align:center}.product-dependency-empty--editor{min-height:15rem}.product-dependency-rule-list{display:grid;gap:.55rem;align-content:start}.product-dependency-rule-card{border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.product-dependency-rule-card:hover,.product-dependency-rule-card.is-selected{border-color:var(--color-border-strong);box-shadow:0 1px 2px #1018280a}.product-dependency-rule-card__title-section{position:relative;background:var(--color-surface-alt)}.product-dependency-rule-card__select,.product-dependency-rule-card__details-section{width:100%;border:0;color:inherit;cursor:pointer;font:inherit;text-align:left}.product-dependency-rule-card__select{display:block;padding:.7rem 2.85rem .7rem .75rem;background:transparent}.product-dependency-rule-card__details-section{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.45rem .75rem;padding:.7rem .75rem;border-top:1px solid var(--color-border);background:var(--color-surface)}.product-dependency-rule-card__select:focus-visible,.product-dependency-rule-card__details-section:focus-visible,.product-dependency-rule-card__delete:focus-visible{outline:2px solid var(--color-text);outline-offset:-2px}.product-dependency-rule-card__title-text,.product-dependency-rule-card__details-row{min-width:0}.product-dependency-rule-card__details-row{display:flex;align-items:center;gap:.65rem}.product-dependency-rule-card__details-label{display:inline-flex;align-items:baseline;flex:0 0 auto;gap:.3rem}.product-dependency-rule-card__title-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-dependency-rule-card__delete{position:absolute;top:.5rem;right:.5rem;background:var(--color-surface)}.product-dependency-rule-card__preview{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-dependency-editor{display:grid;gap:1rem}.product-dependency-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.product-dependency-editor-grid__wide{grid-column:1 / -1}.product-dependency-prototype-banner{display:flex;align-items:center;gap:.55rem;min-width:0;padding:.7rem .8rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface-alt)}.product-dependency-segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.product-dependency-segmented__option{min-height:2.5rem;padding:.45rem .55rem;border:1px solid var(--color-border);border-right:0;background:var(--color-surface);color:var(--color-muted);cursor:pointer;font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--fw-semibold)}.product-dependency-segmented__option:first-child{border-radius:6px 0 0 6px}.product-dependency-segmented__option:last-child{border-right:1px solid var(--color-border);border-radius:0 6px 6px 0}.product-dependency-segmented__option:hover:not(.is-selected){background:var(--color-hover-bg);color:var(--color-text)}.product-dependency-segmented__option.is-selected{background:var(--color-text);border-color:var(--color-text);color:var(--color-surface)}.product-dependency-segmented__option.is-selected+.product-dependency-segmented__option{border-left-color:var(--color-text)}.product-dependency-condition-list{display:grid;gap:.7rem}.product-dependency-condition-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.65rem}.product-dependency-condition-row__variant{min-width:0}.product-dependency-condition-row__remove{width:2.5rem;height:2.5rem;margin-bottom:0}.product-dependency-prototype-preview{display:grid;gap:.45rem;padding:.85rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface-alt)}.product-dependency-detail-section{display:grid;gap:.65rem;padding:1rem;border:1px dashed var(--color-border-strong);border-radius:8px;background:var(--color-surface-alt)}.product-dependency-tree,.product-dependency-tree ul{display:grid;gap:.45rem;margin:0;padding:0;list-style:none}.product-dependency-tree .product-dependency-tree{margin-left:1.2rem;padding-left:.8rem;border-left:1px solid var(--color-border)}.product-dependency-tree__item{display:grid;gap:.45rem;min-width:0}.product-dependency-node{display:flex;align-items:flex-start;gap:.6rem;min-width:0;padding:.6rem .7rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface)}.product-dependency-node__type{min-width:4.3rem;justify-content:center}.product-dependency-node__body{display:grid;gap:.1rem;min-width:0}.product-dependency-node__body>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-dependency-tree-empty{padding:.45rem .55rem;color:var(--color-muted);font-size:var(--text-xs)}.product-dependency-editor__footer{display:flex;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}.product-item-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;justify-content:flex-end}.product-item-drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#44403c61;cursor:default}.product-item-drawer{position:relative;z-index:1;width:min(32rem,calc(100vw - 2rem));height:100%;background:var(--color-surface);border-left:1px solid var(--color-border);box-shadow:-16px 0 40px #1c191729}.product-item-drawer__form{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%}.product-item-drawer__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:2rem;border-bottom:1px solid var(--color-border)}.product-item-drawer__title{font-weight:var(--fw-semibold)}.product-item-drawer__body{display:grid;align-content:start;gap:.85rem;min-height:0;overflow-y:auto;padding:2rem}.product-item-drawer__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.product-material-colour-control{display:flex;align-items:center;gap:.5rem}.product-material-colour-control .input{min-width:0;flex:1 1 auto}.product-material-colour-swatch{flex:0 0 auto;width:2.5rem;height:2.5rem;border:1px solid var(--color-border);border-radius:6px;box-shadow:inset 0 0 0 1px #0a0d120d}.product-material-colour-swatch--empty{background-color:var(--color-surface-alt);background-image:linear-gradient(45deg,rgba(68,64,60,.12) 25%,transparent 25%),linear-gradient(-45deg,rgba(68,64,60,.12) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(68,64,60,.12) 75%),linear-gradient(-45deg,transparent 75%,rgba(68,64,60,.12) 75%);background-position:0 0,0 .375rem,.375rem -.375rem,-.375rem 0;background-size:.75rem .75rem}.product-item-drawer__footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:2rem;border-top:1px solid var(--color-border);background:var(--color-surface)}.selection-rule-summary-badge{justify-self:start;white-space:nowrap}.selection-rule-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.selection-rule-option{min-height:36px;padding:.4rem .45rem;border:1px solid var(--color-border);border-right:none;background:var(--color-surface);color:var(--color-muted);cursor:pointer;font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--fw-semibold);white-space:nowrap}.selection-rule-option:first-child{border-radius:6px 0 0 6px}.selection-rule-option:last-child{border-right:1px solid var(--color-border);border-radius:0 6px 6px 0}.selection-rule-option:hover:not(.is-selected){background:var(--color-hover-bg);color:var(--color-text)}.selection-rule-option.is-selected{background:var(--color-text);border-color:var(--color-text);color:var(--color-surface)}.selection-rule-option.is-selected+.selection-rule-option{border-left-color:var(--color-text)}@media (max-width: 980px){.product-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-create-field--half,.product-create-family{grid-column:span 1}.product-structure-builder--with-form,.product-structure-builder,.product-dependency-builder{grid-template-columns:1fr}}@media (max-width: 640px){.product-create-grid{grid-template-columns:1fr}.product-create-field--half,.product-create-family,.product-create-prices,.product-create-usd-asset{grid-column:1 / -1}.catalog-price-row{grid-template-columns:1fr;padding:.65rem;border:1px solid var(--color-border);border-radius:6px}.product-item-drawer{width:100%}.product-item-drawer__grid{grid-template-columns:1fr}.product-item-drawer__footer{flex-direction:column-reverse;align-items:stretch}.product-catalog-items-list__row{align-items:flex-start;flex-direction:column}.product-catalog-items-list__summary-button{width:100%}.product-catalog-items-list__right{justify-content:flex-start}.product-catalog-variants-panel{margin-left:0}.product-catalog-variant-row{align-items:flex-start;flex-direction:column}.product-catalog-variant-row__actions{justify-content:flex-start}.product-dependency-rule-card__details-section,.product-dependency-editor-grid,.product-dependency-condition-row{grid-template-columns:1fr}.product-dependency-condition-row__remove{justify-self:start}.product-dependency-editor__footer{justify-content:flex-start}.product-dependency-tree .product-dependency-tree{margin-left:.4rem;padding-left:.6rem}.selection-rule-options{grid-template-columns:repeat(2,minmax(0,1fr))}.selection-rule-option:nth-child(2){border-right:1px solid var(--color-border);border-radius:0 6px 6px 0}.selection-rule-option:nth-child(3){border-radius:6px 0 0 6px;border-top:none}.selection-rule-option:nth-child(4){border-top:none}}.product-status-badge--live{background:#e7f8ef;border-color:#2e9f6b;color:#05603a}.product-family-row,.product-family-row:hover{background:var(--color-surface-alt)}.product-family-row--selected,.product-family-row--selected:hover{background:#e4e4e2}.product-selection-cell{width:2.5rem;padding-right:.35rem;text-align:center}.product-selection-cell--family{padding-top:.45rem;padding-bottom:.45rem;border-top:1px solid #d9dee7;border-bottom:1px solid #e4e8ef}.product-selection-checkbox{width:1.15rem;height:1.15rem}.product-family-cell{padding:.45rem 1rem;border-top:1px solid #d9dee7;border-bottom:1px solid #e4e8ef}.product-family-separator{display:flex;align-items:center;justify-content:space-between;gap:1rem}.product-family-separator__left{display:inline-flex;align-items:center;gap:.35rem;min-width:0}.product-family-separator__name{color:#17202e;font-size:.95rem;font-weight:700}.product-family-separator__count{color:#667085;font-size:.78rem;font-weight:650;white-space:nowrap}.product-family-separator__actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.45rem;flex:0 0 auto}.product-metadata-cell{padding:.48rem .75rem}.product-metadata-row--selected,.product-metadata-row--selected:hover{background:#e9edf2}.product-metadata-cell--product{padding-left:1.5rem}.product-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:.4rem}.product-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:1rem}.product-confirm-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#44403c6b}.product-confirm-dialog{position:relative;z-index:1;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.85rem;width:min(29rem,100%);padding:1rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);box-shadow:0 18px 48px #1c191738}.product-confirm-dialog__icon{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:999px;background:#fef2f2;color:var(--color-danger)}.product-confirm-dialog__body{display:grid;gap:.55rem}.product-confirm-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin:0;padding:.65rem;border-radius:8px;background:var(--color-surface-alt)}.product-confirm-details div{display:grid;gap:.15rem}.product-confirm-details dt{font-family:var(--font-body);font-size:var(--text-2xs);color:var(--color-muted)}.product-confirm-details dd{margin:0;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text)}.product-confirm-dialog__actions{grid-column:1 / -1;display:flex;align-items:center;justify-content:flex-end;gap:.65rem;margin-top:.15rem}.product-sort-header{display:inline-flex;align-items:center;gap:.35rem}.product-sort-arrows{display:inline-flex;align-items:center;gap:.08rem}.product-sort-arrow{display:grid;place-items:center;width:1rem;height:1rem;padding:0;border:0;border-radius:4px;background:transparent;color:#98a2b3;cursor:pointer;line-height:1;transition:background .15s ease,color .15s ease}.product-sort-arrow:hover{background:var(--color-hover-bg);color:var(--color-text)}.product-sort-arrow:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.product-sort-arrow--active{background:#eef1f5;color:#17202e}.usd-assets-file-cell{min-width:13rem;font-weight:600}.usd-assets-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;flex-wrap:wrap}.usd-assets-register-form{display:grid;gap:1.1rem}.usd-assets-assigned-cell{min-width:8rem;white-space:nowrap}.usd-assets-error-cell{max-width:18rem;white-space:nowrap}.usd-assets-source-cell{max-width:24rem;white-space:nowrap}.usd-assets-truncated-text{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:help}.usd-assets-actions-cell{width:3.5rem}.usd-assets-delete-impact{display:grid;gap:.5rem;padding:.7rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-alt)}.usd-assets-delete-impact__title{margin:0;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold)}.usd-assets-delete-impact__list{display:grid;gap:.4rem;max-height:12rem;margin:0;padding:0;overflow:auto;list-style:none}.usd-assets-delete-impact__item{display:grid;gap:.12rem;padding:.45rem .5rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface)}.usd-assets-delete-impact__name{color:var(--color-text);font-size:var(--text-sm);font-weight:var(--fw-semibold)}.usd-assets-delete-impact__details{color:var(--color-muted);font-size:var(--text-xs)}.product-structure-summary{display:grid;gap:2px}.product-structure-summary__primary{display:flex;align-items:center;gap:0;color:#17202e;font-weight:700}.product-structure-summary__separator{display:inline-flex;align-items:center;color:#98a2b3;font-size:.82rem;font-weight:700;line-height:1;margin:0 2px}.product-structure-summary__secondary{color:#667085;font-weight:400}.pagination{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.filter-tabs{display:inline-flex;border:1px solid var(--color-badge-gray-border);border-radius:8px;overflow:hidden;box-shadow:0 1px 1px #0a0d120d}.filter-tab{position:relative;border:none;border-right:1px solid var(--color-badge-gray-border);padding:.5rem 1rem;min-height:40px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);cursor:pointer;background:var(--color-surface);color:var(--color-badge-gray-text);white-space:nowrap;transition:background .1s ease}.filter-tab:last-child{border-right:none}.filter-tab:hover:not(.is-selected){background:var(--color-hover-bg)}.filter-tab:focus-visible{outline:none;z-index:1;box-shadow:inset 0 0 0 2px var(--color-checkbox-checked)}.filter-tab.is-selected{background:var(--color-surface-alt);color:var(--color-text);box-shadow:inset 0 2px 3px #0a0d1212}.nav-item{color:var(--color-badge-gray-text);font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--fw-semibold);display:flex;align-items:center;height:40px;border-radius:6px;text-decoration:none;white-space:nowrap;transition:background .12s ease,color .12s ease}.nav-item:hover:not(.active){background:var(--color-hover-bg)}.nav-item.active{background:var(--color-nav-active);color:var(--color-white)}.nav-item:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.nav-item svg{color:var(--color-nav-icon)}.nav-item.active svg{color:var(--color-white)}.nav-item--disabled{cursor:not-allowed;opacity:.6}.nav-item--disabled:hover{background:none}.nav-section-label{font-family:var(--font-body);font-size:var(--text-nav-label);font-weight:var(--fw-semibold);letter-spacing:.08em;color:var(--color-faint);padding:0 .6rem;margin-bottom:.15rem}.tree-row-btn{display:flex;align-items:center;gap:.4rem;width:100%;border:none;background:transparent;border-radius:8px;padding:.5rem .6rem;cursor:pointer;text-align:left;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text)}.tree-row-btn:hover{background:var(--color-hover-bg)}.tree-row-btn.is-selected{background:var(--color-active-bg);font-weight:var(--fw-bold)}.tree-row-btn.is-inactive{color:var(--color-faint)}.tree-row-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-checkbox-checked)}.tree-toggle:focus-visible{outline:none;border-radius:4px;box-shadow:0 0 0 2px var(--color-checkbox-checked)}.login-input:focus{outline:none;border-color:var(--color-text)}.login-input::placeholder{color:var(--color-faint)}@media (max-width: 860px){.login-art{display:none}}.checkbox-input,.radio-input{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-block;flex-shrink:0;width:1rem;height:1rem;margin:0;border:1px solid var(--color-checkbox-border);background-color:var(--color-surface);background-repeat:no-repeat;background-position:center;background-size:75%;cursor:pointer;vertical-align:middle;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.checkbox-input{border-radius:4px}.radio-input{border-radius:9999px}.checkbox-input:hover:not(:disabled),.radio-input:hover:not(:disabled){border-color:var(--color-checkbox-checked)}.checkbox-input:checked{background-color:var(--color-checkbox-checked);border-color:var(--color-checkbox-checked);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2 6.5L5 9L10 3' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.radio-input:checked{background-color:var(--color-checkbox-checked);border-color:var(--color-checkbox-checked);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Ccircle cx='6' cy='6' r='2.25' fill='white'/%3E%3C/svg%3E");background-size:100%}.checkbox-input:indeterminate{background-color:var(--color-checkbox-checked);border-color:var(--color-checkbox-checked);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 6H9.5' stroke='white' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E")}.checkbox-input:focus-visible,.radio-input:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.checkbox-input:disabled,.radio-input:disabled{background-color:var(--color-checkbox-disabled-bg);border-color:var(--color-checkbox-disabled-border);cursor:not-allowed}.checkbox-input:checked:disabled,.radio-input:checked:disabled{background-color:var(--color-checkbox-disabled-border);background-image:none}.field-checkbox{display:inline-flex;align-items:flex-start;gap:.5rem;cursor:pointer}.field-checkbox .checkbox-input,.field-checkbox .radio-input{margin-top:.125rem}.field-checkbox-text{display:flex;flex-direction:column}.tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border)}.tab{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;cursor:pointer;padding:.5rem .75rem;margin-bottom:-1px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-muted);border-bottom:2px solid transparent;transition:color .12s ease,border-color .12s ease}.tab:hover:not(.is-active){color:var(--color-text)}.tab.is-active{color:var(--color-text);border-bottom-color:var(--color-text)}.tab:focus-visible{outline:none;border-radius:4px;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.tooltip{position:relative;display:inline-flex}.tooltip-trigger{display:inline-grid;place-items:center;width:16px;height:16px;padding:0;border:none;background:none;cursor:help;color:var(--color-faint);border-radius:9999px}.tooltip-trigger:hover{color:var(--color-muted)}.tooltip-trigger:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 3px var(--color-checkbox-checked)}.tooltip-bubble{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);z-index:30;width:max-content;max-width:220px;background:var(--color-text);color:var(--color-white);font-family:var(--font-body);font-size:var(--text-2xs);font-weight:var(--fw-medium);line-height:1.4;padding:.4rem .6rem;border-radius:6px;box-shadow:0 4px 12px #0a0d122e}.tooltip-bubble:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--color-text)}.callout{display:flex;gap:.5rem;padding:.75rem .85rem;border-radius:10px;border:1px solid var(--color-badge-gray-border);background:var(--color-badge-gray-bg)}.callout--warning{border-color:var(--color-badge-warning-border);background:var(--color-badge-warning-bg)}.callout--success{border-color:var(--color-badge-success-border);background:var(--color-badge-success-bg)}.callout--danger{border-color:var(--color-badge-error-border);background:var(--color-badge-error-bg)}.callout-icon{flex:0 0 auto;margin-top:1px}.callout--warning .callout-icon{color:var(--color-badge-warning-text)}.callout--success .callout-icon{color:var(--color-badge-success-text)}.callout--danger .callout-icon{color:var(--color-badge-error-text)}.callout-title{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold)}.callout--warning .callout-title{color:var(--color-badge-warning-text)}.callout--success .callout-title{color:var(--color-badge-success-text)}.callout--danger .callout-title{color:var(--color-badge-error-text)}.callout-body{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-subtle);margin-top:.15rem}.access-card{border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface-alt);padding:.85rem .95rem;display:grid;gap:.7rem}.access-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.access-card-remove{display:inline-flex;align-items:center;gap:.3rem;border:none;background:none;cursor:pointer;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-muted)}.access-card-remove:hover:not(:disabled){color:var(--color-text)}.access-card-remove:disabled{cursor:not-allowed;opacity:.5}.access-card-remove:focus-visible{outline:none;border-radius:4px;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.group-block{border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:.55rem .65rem;display:grid;gap:.5rem}.group-chip{display:inline-flex;align-items:center;gap:.4rem;align-self:flex-start;justify-self:start;border:1px solid var(--color-badge-gray-border);background:var(--color-badge-gray-bg);border-radius:6px;padding:.125rem .5rem;font-family:var(--font-body);font-size:var(--text-2xs);font-weight:var(--fw-medium);color:var(--color-badge-gray-text);max-width:100%}.group-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-chip-x{flex:0 0 auto;display:inline-grid;place-items:center;border:none;background:none;cursor:pointer;color:var(--color-muted);padding:0;line-height:1}.group-chip-x:hover:not(:disabled){color:var(--color-text)}.group-chip-x:disabled{cursor:not-allowed;opacity:.5}.group-chip-x:focus-visible{outline:none;border-radius:4px;box-shadow:0 0 0 2px var(--color-surface),0 0 0 3px var(--color-checkbox-checked)}.link-btn{display:inline-flex;align-items:center;gap:.3rem;border:none;background:none;cursor:pointer;padding:0;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text)}.link-btn:hover:not(:disabled){text-decoration:underline}.link-btn:disabled{cursor:not-allowed;opacity:.5}.link-btn:focus-visible{outline:none;border-radius:4px;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.link-btn--danger{color:var(--color-danger)}.meta-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.stat-card{border:1px solid var(--color-border);border-radius:var(--layout-card-radius);background:var(--color-surface);padding:1rem 1.1rem;display:flex;align-items:center;gap:.85rem}.stat-card-icon{flex:0 0 auto;width:40px;height:40px;border-radius:8px;border:1px solid var(--color-border);display:grid;place-items:center;color:var(--color-muted)}.stat-card-number{font-family:var(--font-heading);font-size:2rem;font-weight:var(--fw-regular);color:var(--color-text);line-height:1;flex:0 0 auto}.stat-card-text{display:grid;gap:.1rem;min-width:0}.stat-card-label{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text)}.stat-card-subtext{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-muted);margin:0}.stat-card-subtext--warning{color:var(--color-badge-warning-text)}.stat-card-subtext--success{color:var(--color-badge-success-text)}a.stat-card{text-decoration:none;color:inherit;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease}a.stat-card:hover{border-color:var(--color-checkbox-checked);box-shadow:0 1px 2px #0a0d120f}a.stat-card:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-checkbox-checked)}.coming-soon-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.coming-soon-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.coming-soon-title{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text);margin:.65rem 0 0}.coming-soon-desc{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-muted);margin:.2rem 0 0}.progress-track{width:100%;height:8px;border-radius:9999px;background:var(--color-active-bg);overflow:hidden}.progress-fill{height:100%;border-radius:9999px;background:var(--color-nav-active);transition:width .2s ease}.checklist{border:1px solid var(--color-border);border-radius:10px;overflow:hidden;background:var(--color-surface)}.checklist-item{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-top:1px solid var(--color-border);text-decoration:none;color:inherit}.checklist-item:first-child{border-top:none}a.checklist-item:hover{background:var(--color-hover-bg)}a.checklist-item:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-checkbox-checked)}.checklist-icon{flex:0 0 auto;width:32px;height:32px;border-radius:9999px;display:grid;place-items:center;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold)}.checklist-icon--done{background:var(--color-badge-success-bg);color:var(--color-badge-success-text)}.checklist-icon--current{background:var(--color-nav-active);color:var(--color-white)}.checklist-icon--pending{background:var(--color-active-bg);color:var(--color-muted)}.checklist-text{flex:1;min-width:0;display:grid;gap:.1rem}.checklist-title{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-text)}.checklist-title--done{color:var(--color-muted)}.checklist-desc{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-muted);margin:0}.checklist-arrow{flex:0 0 auto;color:var(--color-faint)}.attention-list{border:1px solid var(--color-border);border-radius:10px;overflow:hidden;background:var(--color-surface)}.attention-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;border-top:1px solid var(--color-divider)}.attention-row:first-child{border-top:none}.analytics-toolbar{display:flex;align-items:end;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}.analytics-filter-field{display:grid;gap:.3rem;min-width:9.5rem}.analytics-refresh-button{flex:0 0 auto}.analytics-loading-section{display:inline-flex;align-items:center;gap:.5rem}.analytics-loading-dot{width:.55rem;height:.55rem;border-radius:9999px;background:var(--color-accent);animation:pulse 1.2s ease-in-out infinite}.analytics-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.analytics-chart-card{min-width:0;display:grid;gap:.85rem;padding:1rem;border:1px solid var(--color-border);border-radius:var(--layout-card-radius);background:var(--color-surface)}.analytics-chart-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.analytics-chart-card__head .t-sm{margin-top:.2rem}.analytics-chart-shell{width:100%;aspect-ratio:16 / 6;min-height:220px}.analytics-chart-svg{width:100%;height:100%;overflow:visible}.analytics-chart-svg text{fill:var(--color-muted);font-family:var(--font-body);font-size:.72rem}.analytics-chart-axis{stroke:var(--color-border);stroke-width:1}.analytics-chart-gridline{stroke:var(--color-divider);stroke-width:1}.analytics-chart-empty{min-height:220px;display:grid;place-items:center;border:1px dashed var(--color-border);border-radius:8px;color:var(--color-muted);font-family:var(--font-body);font-size:var(--text-sm)}.analytics-legend{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.analytics-legend-item{display:inline-flex;align-items:center;gap:.35rem;min-height:1.4rem;font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--color-text)}.analytics-legend-dot{width:.55rem;height:.55rem;border-radius:9999px;flex:0 0 auto}@keyframes pulse{0%,to{opacity:.45;transform:scale(.9)}50%{opacity:1;transform:scale(1)}}@media (max-width: 980px){.analytics-chart-grid{grid-template-columns:1fr}}@media (max-width: 720px){.analytics-toolbar{width:100%;justify-content:stretch}.analytics-filter-field,.analytics-refresh-button{width:100%}.analytics-chart-shell,.analytics-chart-empty{min-height:190px}}.avatar{border-radius:9999px;object-fit:cover;flex:0 0 auto;background:var(--color-active-bg)}.avatar--initials{display:inline-flex;align-items:center;justify-content:center;background:var(--color-nav-active);color:var(--color-white);font-family:var(--font-body);font-weight:var(--fw-semibold);line-height:1}
