.cstr-btn{--_bg: var(--brand);--_fg: var(--on-brand);--_bd: transparent;--_bgh: var(--brand-hover);--_bga: var(--brand-active);display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-family:var(--font-sans);font-weight:600;line-height:1;border:var(--border-width) solid var(--_bd);border-radius:var(--radius-md);background:var(--_bg);color:var(--_fg);cursor:pointer;white-space:nowrap;text-decoration:none;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard);-webkit-tap-highlight-color:transparent}.cstr-btn:hover{background:var(--_bgh)}.cstr-btn:active{background:var(--_bga);transform:translateY(.5px)}.cstr-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.cstr-btn[disabled],.cstr-btn[aria-disabled=true]{cursor:not-allowed;opacity:.5;transform:none}.cstr-btn--md{height:38px;padding:0 16px;font-size:var(--text-base)}.cstr-btn--sm{height:30px;padding:0 12px;font-size:var(--text-sm);border-radius:var(--radius-sm)}.cstr-btn--lg{height:46px;padding:0 22px;font-size:var(--text-md);border-radius:var(--radius-lg)}.cstr-btn--full{width:100%}.cstr-btn--secondary{--_bg: var(--surface);--_fg: var(--text-primary);--_bd: var(--border-strong);--_bgh: var(--bg-subtle);--_bga: var(--stone-150);box-shadow:var(--shadow-xs)}.cstr-btn--ghost{--_bg: transparent;--_fg: var(--text-secondary);--_bd: transparent;--_bgh: var(--bg-subtle);--_bga: var(--stone-150)}.cstr-btn--accent{--_bg: var(--accent);--_fg: #fff;--_bgh: var(--accent-hover);--_bga: var(--clay-700)}.cstr-btn--warning{--_bg: var(--warning);--_fg: #fff;--_bgh: var(--warning-700);--_bga: var(--warning-700)}.cstr-btn--danger{--_bg: var(--danger);--_fg: #fff;--_bgh: var(--danger-700);--_bga: var(--danger-700)}.cstr-btn__spin{width:1em;height:1em;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:cstr-btn-spin .6s linear infinite}@keyframes cstr-btn-spin{to{transform:rotate(360deg)}}.cstr-iconbtn{display:inline-flex;align-items:center;justify-content:center;flex:none;border:var(--border-width) solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);cursor:pointer;padding:0;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.cstr-iconbtn:hover{background:var(--bg-subtle);color:var(--text-primary)}.cstr-iconbtn:active{background:var(--stone-150)}.cstr-iconbtn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.cstr-iconbtn[disabled]{cursor:not-allowed;opacity:.45}.cstr-iconbtn--sm{width:30px;height:30px;border-radius:var(--radius-sm)}.cstr-iconbtn--md{width:38px;height:38px}.cstr-iconbtn--lg{width:46px;height:46px}.cstr-iconbtn--solid{background:var(--brand);color:var(--on-brand)}.cstr-iconbtn--solid:hover{background:var(--brand-hover);color:var(--on-brand)}.cstr-iconbtn--outline{border-color:var(--border-strong);color:var(--text-primary);box-shadow:var(--shadow-xs)}.cstr-iconbtn--outline:hover{background:var(--surface);border-color:var(--stone-400)}.cstr-input{display:flex;align-items:center;gap:8px;width:100%;background:var(--surface);color:var(--text-primary);border:var(--border-width) solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.cstr-input:hover{border-color:var(--stone-400)}.cstr-input:focus-within{border-color:var(--brand);box-shadow:var(--shadow-focus)}.cstr-input--md{height:38px;padding:0 12px;font-size:var(--text-base)}.cstr-input--sm{height:30px;padding:0 10px;font-size:var(--text-sm);border-radius:var(--radius-sm)}.cstr-input--lg{height:46px;padding:0 14px;font-size:var(--text-md)}.cstr-input--invalid{border-color:var(--danger)}.cstr-input--invalid:focus-within{box-shadow:0 0 0 3px #bc463947}.cstr-input--disabled{background:var(--bg-subtle);opacity:.7;cursor:not-allowed}.cstr-input__el{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;color:inherit;padding:0;height:100%}.cstr-input__el::-moz-placeholder{color:var(--text-disabled)}.cstr-input__el::placeholder{color:var(--text-disabled)}.cstr-input__affix{color:var(--text-muted);display:inline-flex;align-items:center;font-size:.95em;flex:none}.cstr-select{position:relative;display:flex;align-items:center;width:100%;background:var(--surface);border:var(--border-width) solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.cstr-select:hover{border-color:var(--stone-400)}.cstr-select:focus-within{border-color:var(--brand);box-shadow:var(--shadow-focus)}.cstr-select--invalid{border-color:var(--danger)}.cstr-select--invalid:focus-within{box-shadow:0 0 0 3px #bc463947}.cstr-select--disabled{background:var(--bg-subtle);opacity:.7}.cstr-select--md{height:38px}.cstr-select--sm{height:30px;border-radius:var(--radius-sm)}.cstr-select--lg{height:46px}.cstr-select__field{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;font:inherit;font-family:var(--font-sans);color:var(--text-primary);padding:0 12px;cursor:text}.cstr-select__field--button{display:inline-flex;align-items:center;text-align:left;cursor:pointer}.cstr-select__value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cstr-select__field--placeholder .cstr-select__value{color:var(--text-disabled)}.cstr-select--md .cstr-select__field{font-size:var(--text-base)}.cstr-select--sm .cstr-select__field{font-size:var(--text-sm);padding-left:10px}.cstr-select--lg .cstr-select__field{font-size:var(--text-md);padding-left:14px}.cstr-select__field::-moz-placeholder{color:var(--text-disabled)}.cstr-select__field::placeholder{color:var(--text-disabled)}.cstr-select__field:disabled{cursor:not-allowed}.cstr-select__chev{position:absolute;right:12px;top:0;bottom:0;display:flex;align-items:center;pointer-events:none;color:var(--text-muted)}.cstr-select--caret .cstr-select__field{padding-right:32px}.cstr-select__menu{z-index:var(--z-overlay);margin:0;padding:5px;list-style:none;max-height:240px;overflow-y:auto;background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.cstr-select__option{padding:8px 10px;border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-primary);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cstr-select__option[data-active=true]{background:var(--brand-subtle)}.cstr-select__option[aria-selected=true]{color:var(--brand);font-weight:600}.cstr-select__option[aria-disabled=true]{color:var(--text-disabled);cursor:not-allowed}.cstr-select__option[aria-disabled=true][data-active=true]{background:transparent}.cstr-select__empty{padding:10px;font-size:var(--text-sm);color:var(--text-muted);text-align:center}.cstr-select__divider{height:1px;margin:5px 6px;background:var(--border)}.cstr-select__option--clear{color:var(--text-secondary)}.cstr-select--ghost{height:auto;background:transparent;border-color:transparent;box-shadow:none;border-radius:7px}.cstr-select--ghost:hover{border-color:var(--border-strong);background:var(--stone-50)}.cstr-select--ghost:focus-within{border-color:var(--brand);box-shadow:var(--shadow-focus)}.cstr-select--ghost .cstr-select__field{height:auto;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-sm);padding:3px 4px 3px 8px}.cstr-select--accent{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 30%,transparent);border-radius:999px}.cstr-select--accent .cstr-select__value{color:var(--accent)}.cstr-datefield{position:relative;display:flex;align-items:center;width:100%;background:var(--surface);border:var(--border-width) solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.cstr-datefield:hover{border-color:var(--stone-400)}.cstr-datefield:focus-within{border-color:var(--brand);box-shadow:var(--shadow-focus)}.cstr-datefield--invalid{border-color:var(--danger)}.cstr-datefield--invalid:focus-within{box-shadow:0 0 0 3px #bc463947}.cstr-datefield--disabled{background:var(--bg-subtle);opacity:.7}.cstr-datefield--md{height:38px}.cstr-datefield--sm{height:30px;border-radius:var(--radius-sm)}.cstr-datefield--lg{height:46px}.cstr-datefield__input{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;font:inherit;font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.01em;color:var(--text-primary);padding:0 4px 0 12px;cursor:text}.cstr-datefield--md .cstr-datefield__input{font-size:var(--text-base)}.cstr-datefield--sm .cstr-datefield__input{font-size:var(--text-sm);padding-left:10px}.cstr-datefield--lg .cstr-datefield__input{font-size:var(--text-md);padding-left:14px}.cstr-datefield__input::-moz-placeholder{color:var(--text-disabled)}.cstr-datefield__input::placeholder{color:var(--text-disabled)}.cstr-datefield__input:disabled{cursor:not-allowed}.cstr-datefield__toggle{flex:none;display:inline-flex;align-items:center;justify-content:center;height:100%;padding:0 10px;background:none;border:0;color:var(--text-muted);cursor:pointer}.cstr-datefield__toggle:hover{color:var(--text-secondary)}.cstr-datefield__toggle:disabled{cursor:not-allowed}.cstr-datefield__pop{z-index:var(--z-overlay);width:320px;padding:18px;background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.cstr-cal__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cstr-cal__title{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;letter-spacing:.02em;color:var(--text-primary)}.cstr-cal__nav{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:var(--radius-sm);background:none;color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.cstr-cal__nav:hover{background:var(--surface-sunken);color:var(--text-primary)}.cstr-cal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.cstr-cal__dowcell{text-align:center;font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-disabled);padding:4px 0 8px}.cstr-cal__day{aspect-ratio:1;display:grid;place-items:center;border:0;border-radius:7px;background:transparent;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums;cursor:pointer;transition:background .1s ease,color .1s ease}.cstr-cal__day:hover{background:var(--surface-sunken)}.cstr-cal__day:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.cstr-cal__day.is-out{color:var(--text-disabled)}.cstr-cal__day.is-today{font-weight:600;color:var(--brand)}.cstr-cal__day.is-selected{background:var(--text-primary);color:#fff;font-weight:600}.cstr-cal__day.is-selected:hover{background:var(--text-primary)}.cstr-cal__day.is-selected.is-today{color:#fff}.cstr-cal__divider{height:1px;background:var(--border);margin:14px -18px}.cstr-cal__time{display:flex;align-items:center;justify-content:space-between;gap:10px}.cstr-cal__time-label{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.cstr-cal__time-pill{display:inline-flex;align-items:center;gap:2px;background:var(--bg-subtle);border:var(--border-width) solid var(--border);border-radius:8px;padding:4px 6px}.cstr-cal__time-field{width:32px;height:24px;border:0;outline:0;background:transparent;text-align:center;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-md);font-weight:600;letter-spacing:.02em;color:var(--text-primary);padding:0;-moz-appearance:textfield}.cstr-cal__time-field::-webkit-outer-spin-button,.cstr-cal__time-field::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cstr-cal__time-field:focus{background:var(--brand-subtle);color:var(--brand);border-radius:var(--radius-xs)}.cstr-cal__time-sep{font-family:var(--font-mono);font-size:var(--text-md);font-weight:600;color:var(--text-disabled)}.cstr-cal__foot{margin-top:14px;display:flex;align-items:center;justify-content:space-between}.cstr-cal__foot-value{font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--text-primary)}.cstr-cal__done{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:600;color:var(--brand);padding:4px 10px;border-radius:var(--radius-sm);background:none;border:0;cursor:pointer}.cstr-cal__done:hover{background:var(--brand-subtle)}.cstr-field{display:flex;flex-direction:column;gap:6px;width:100%}.cstr-field__label{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;color:var(--text-primary);display:inline-flex;align-items:center;gap:5px}.cstr-field__req{color:var(--danger);font-weight:700}.cstr-field__optional{color:var(--text-muted);font-weight:400;font-size:var(--text-xs)}.cstr-field__hint{font-size:var(--text-xs);color:var(--text-muted);line-height:1.4}.cstr-field__error{font-size:var(--text-xs);color:var(--danger-700);line-height:1.4;display:flex;gap:5px}.cstr-textarea{width:100%;font:inherit;font-family:var(--font-sans);color:var(--text-primary);background:var(--surface);border:var(--border-width) solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:10px 12px;font-size:var(--text-base);line-height:var(--leading-normal);resize:vertical;min-height:84px;transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.cstr-textarea:hover{border-color:var(--stone-400)}.cstr-textarea:focus-visible{outline:none;border-color:var(--brand);box-shadow:var(--shadow-focus)}.cstr-textarea::-moz-placeholder{color:var(--text-disabled)}.cstr-textarea::placeholder{color:var(--text-disabled)}.cstr-textarea:disabled{background:var(--bg-subtle);opacity:.7;cursor:not-allowed}.cstr-textarea--invalid{border-color:var(--danger)}.cstr-check{display:inline-flex;align-items:flex-start;gap:10px;cursor:pointer;font-family:var(--font-sans)}.cstr-check--disabled{cursor:not-allowed;opacity:.55}.cstr-check__input{position:absolute;opacity:0;width:0;height:0}.cstr-check__box{flex:none;width:18px;height:18px;margin-top:1px;border:1.5px solid var(--border-strong);border-radius:var(--radius-xs);background:var(--surface);display:inline-flex;align-items:center;justify-content:center;color:#fff;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.cstr-check:hover .cstr-check__box{border-color:var(--brand)}.cstr-check__input:checked+.cstr-check__box{background:var(--brand);border-color:var(--brand)}.cstr-check__input:indeterminate+.cstr-check__box{background:var(--brand);border-color:var(--brand)}.cstr-check__input:focus-visible+.cstr-check__box{box-shadow:var(--shadow-focus)}.cstr-check__mark{opacity:0;transition:opacity var(--duration-fast) var(--ease-standard)}.cstr-check__input:checked+.cstr-check__box .cstr-check__mark{opacity:1}.cstr-check__body{display:flex;flex-direction:column;gap:2px}.cstr-check__label{font-size:var(--text-base);color:var(--text-primary);line-height:1.35}.cstr-check__desc{font-size:var(--text-xs);color:var(--text-muted)}.cstr-switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-family:var(--font-sans)}.cstr-switch--disabled{cursor:not-allowed;opacity:.55}.cstr-switch__input{position:absolute;opacity:0;width:0;height:0}.cstr-switch__track{flex:none;position:relative;width:42px;height:24px;border-radius:var(--radius-full);background:var(--stone-300);transition:background var(--duration-fast) var(--ease-standard)}.cstr-switch__knob{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:var(--radius-full);background:var(--surface);box-shadow:0 1px 2px #1c181340;transition:transform var(--duration-fast) var(--ease-standard)}.cstr-switch:hover .cstr-switch__track{background:var(--stone-400)}.cstr-switch__input:checked+.cstr-switch__track{background:var(--brand)}.cstr-switch:hover .cstr-switch__input:checked+.cstr-switch__track{background:var(--brand-hover)}.cstr-switch__input:checked+.cstr-switch__track .cstr-switch__knob{transform:translate(18px)}.cstr-switch__input:focus-visible+.cstr-switch__track{box-shadow:var(--shadow-focus)}.cstr-switch__label{font-size:var(--text-sm);font-weight:500;color:var(--text-primary)}.cstr-badge{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-sans);font-weight:600;line-height:1;border-radius:var(--radius-full);white-space:nowrap;border:var(--border-width) solid transparent}.cstr-badge--md{height:22px;padding:0 10px;font-size:var(--text-xs)}.cstr-badge--sm{height:18px;padding:0 8px;font-size:11px}.cstr-badge__dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.cstr-badge--neutral{background:var(--stone-100);color:var(--stone-700);border-color:var(--stone-200)}.cstr-badge--brand{background:var(--brand-subtle);color:var(--green-700);border-color:var(--brand-subtle-border)}.cstr-badge--success{background:var(--success-bg);color:var(--success-700);border-color:#3f8a5c38}.cstr-badge--warning{background:var(--warning-bg);color:var(--warning-700);border-color:#c8861c3d}.cstr-badge--danger{background:var(--danger-bg);color:var(--danger-700);border-color:#bc463933}.cstr-badge--info{background:var(--info-bg);color:var(--info-700);border-color:#3f738333}.cstr-badge--accent{background:var(--accent-subtle);color:var(--clay-700);border-color:#c0613a33}.cstr-badge--solid.cstr-badge--brand{background:var(--brand);color:var(--on-brand);border-color:transparent}.cstr-badge--solid.cstr-badge--success{background:var(--success);color:#fff;border-color:transparent}.cstr-badge--solid.cstr-badge--warning{background:var(--warning);color:#fff;border-color:transparent}.cstr-badge--solid.cstr-badge--danger{background:var(--danger);color:#fff;border-color:transparent}.cstr-badge--solid.cstr-badge--neutral{background:var(--stone-700);color:var(--stone-50);border-color:transparent}.cstr-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);overflow:visible;flex:none;font-family:var(--font-sans);font-weight:600;color:#fff;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cstr-avatar__img{width:100%;height:100%;border-radius:inherit;-o-object-fit:cover;object-fit:cover;display:block}.cstr-avatar__initials{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:inherit}.cstr-avatar--xs{width:22px;height:22px;font-size:9px}.cstr-avatar--sm{width:28px;height:28px;font-size:11px}.cstr-avatar--md{width:36px;height:36px;font-size:13px}.cstr-avatar--lg{width:48px;height:48px;font-size:17px}.cstr-avatar--xl{width:64px;height:64px;font-size:22px}.cstr-avatar__ring{box-shadow:0 0 0 2px var(--surface)}.cstr-avatar__status{position:absolute;right:-1px;bottom:-1px;border-radius:50%;box-shadow:0 0 0 2px var(--surface);width:30%;height:30%;min-width:8px;min-height:8px}.cstr-avatar__status--online{background:var(--success)}.cstr-avatar__status--off{background:var(--stone-400)}.cstr-avatar__status--busy{background:var(--warning)}.cstr-card{background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden}.cstr-card--warm{background:var(--surface-warm)}.cstr-card--flat{box-shadow:none}.cstr-card--pad{padding:var(--space-5)}.cstr-card--interactive{cursor:pointer;transition:box-shadow var(--duration-normal) var(--ease-standard),border-color var(--duration-normal) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.cstr-card--interactive:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong)}.cstr-card--interactive:active{transform:translateY(.5px)}.cstr-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:var(--space-5) var(--space-5) 0}.cstr-card__header--bordered{padding-bottom:var(--space-4);border-bottom:var(--border-width) solid var(--border);margin-bottom:var(--space-4)}.cstr-card__titles{min-width:0}.cstr-card__title{font-size:var(--text-lg);font-weight:700;letter-spacing:var(--tracking-snug);line-height:1.25;color:var(--text-primary)}.cstr-card__subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin-top:2px}.cstr-card__action{flex:none}.cstr-card__body{padding:0 var(--space-5) var(--space-5)}.cstr-card__body--first{padding-top:var(--space-5)}.cstr-card__footer{padding:var(--space-4) var(--space-5);border-top:var(--border-width) solid var(--border);background:var(--bg-subtle);display:flex;align-items:center;gap:10px}.cstr-card__footer-button{display:flex;align-items:center;gap:var(--space-2);width:100%;border:0;border-top:var(--border-width) solid var(--border);background:none;padding:var(--space-4) var(--space-5);color:var(--text-muted);font:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer}.cstr-card__footer-button:hover{color:var(--green-700)}.cstr-stat{background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5);display:flex;flex-direction:column;gap:8px}.cstr-stat__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.cstr-stat__label{font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.cstr-stat__icon{width:30px;height:30px;border-radius:var(--radius-sm);flex:none;display:inline-flex;align-items:center;justify-content:center;background:var(--brand-subtle);color:var(--green-600)}.cstr-stat__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-3xl);font-weight:500;line-height:1.05;color:var(--text-primary);letter-spacing:-.01em}.cstr-stat__unit{font-size:var(--text-lg);color:var(--text-secondary);margin-left:3px}.cstr-stat__foot{display:flex;align-items:center;gap:7px;font-size:var(--text-sm);color:var(--text-secondary)}.cstr-stat__delta{display:inline-flex;align-items:center;gap:3px;font-weight:600;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.cstr-stat__delta--up{color:var(--success-700)}.cstr-stat__delta--down{color:var(--danger-700)}.cstr-stat__delta--flat{color:var(--text-muted)}.cstr-table-wrap{width:100%;overflow-x:auto}.cstr-table{width:100%;border-collapse:collapse;font-family:var(--font-sans);font-size:var(--text-base)}.cstr-table th,.cstr-table td{text-align:left;padding:11px 16px;vertical-align:middle}.cstr-table thead th{font-size:var(--text-xs);font-weight:700;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);border-bottom:var(--border-width) solid var(--border);white-space:nowrap;background:var(--bg-subtle)}.cstr-table tbody td{border-bottom:var(--border-width) solid var(--border);color:var(--text-primary)}.cstr-table tbody tr:last-child td{border-bottom:0}.cstr-table--hover tbody tr{transition:background var(--duration-fast) var(--ease-standard)}.cstr-table--hover tbody tr:hover{background:var(--stone-50)}.cstr-table--zebra tbody tr:nth-child(2n){background:var(--stone-50)}.cstr-table--compact th,.cstr-table--compact td{padding:7px 12px;font-size:var(--text-sm)}.cstr-table .cstr-td--num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.cstr-table th.cstr-td--num{text-align:right}.cstr-table__sort{display:inline-flex;align-items:center;gap:4px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cstr-table__sort svg{opacity:.5}.cstr-tt{position:relative;display:inline-flex}.cstr-tt__bubble{position:absolute;z-index:var(--z-tooltip);pointer-events:none;background:var(--stone-900);color:var(--stone-50);font-family:var(--font-sans);font-size:var(--text-xs);font-weight:500;line-height:1.4;padding:6px 9px;border-radius:var(--radius-sm);white-space:nowrap;box-shadow:var(--shadow-md);opacity:0;transition:opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.cstr-tt:hover .cstr-tt__bubble,.cstr-tt:focus-within .cstr-tt__bubble{opacity:1}.cstr-tt__bubble:after{content:"";position:absolute;width:7px;height:7px;background:inherit;transform:rotate(45deg)}.cstr-tt--top .cstr-tt__bubble{bottom:calc(100% + 8px);left:50%;transform:translate(-50%,2px)}.cstr-tt--top:hover .cstr-tt__bubble,.cstr-tt--top:focus-within .cstr-tt__bubble{transform:translate(-50%)}.cstr-tt--top .cstr-tt__bubble:after{bottom:-3px;left:50%;margin-left:-3.5px}.cstr-tt--bottom .cstr-tt__bubble{top:calc(100% + 8px);left:50%;transform:translate(-50%,-2px)}.cstr-tt--bottom:hover .cstr-tt__bubble,.cstr-tt--bottom:focus-within .cstr-tt__bubble{transform:translate(-50%)}.cstr-tt--bottom .cstr-tt__bubble:after{top:-3px;left:50%;margin-left:-3.5px}.cstr-tt--right .cstr-tt__bubble{left:calc(100% + 8px);top:50%;transform:translate(-2px,-50%)}.cstr-tt--right:hover .cstr-tt__bubble,.cstr-tt--right:focus-within .cstr-tt__bubble{transform:translateY(-50%)}.cstr-tt--right .cstr-tt__bubble:after{left:-3px;top:50%;margin-top:-3.5px}.cstr-tt--left .cstr-tt__bubble{right:calc(100% + 8px);top:50%;transform:translate(2px,-50%)}.cstr-tt--left:hover .cstr-tt__bubble,.cstr-tt--left:focus-within .cstr-tt__bubble{transform:translateY(-50%)}.cstr-tt--left .cstr-tt__bubble:after{right:-3px;top:50%;margin-top:-3.5px}.cstr-tt__bubble--fixed{position:fixed;opacity:1;transform:translate(-50%,calc(-100% - 8px))}.cstr-tt__bubble--fixed:after{bottom:-3px;left:calc(50% + var(--tt-arrow, 0px));margin-left:-3.5px}.info-box{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.5}.info-box--row{flex-direction:row;align-items:center;gap:12px}.info-box--neutral{background:var(--bg-subtle);border:var(--border-width) solid var(--border);color:var(--text-secondary)}.info-box--danger{background:var(--danger-bg);border:1px solid color-mix(in srgb,var(--danger) 22%,transparent);color:var(--danger-700)}.info-box--info{background:var(--info-50);border:1px solid color-mix(in srgb,var(--info-500) 30%,transparent);color:var(--info-700)}.info-box__row{display:flex;align-items:center;justify-content:space-between;gap:12px}.info-box__label{font-size:var(--text-sm);color:var(--text-secondary)}.info-box__value{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.cstr-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:var(--border-width) solid var(--border-strong);border-radius:var(--radius-full);background:var(--surface);font:inherit;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:600;color:var(--text-secondary);cursor:pointer}.cstr-chip:hover:not(:disabled){background:var(--bg-subtle)}.cstr-chip:disabled{cursor:not-allowed;opacity:.55}.cstr-chip__dot{width:6px;height:6px;border-radius:99px}.cstr-chip em{font-style:normal;color:var(--text-muted);font-size:10px;font-family:var(--font-mono)}.cstr-chip--on{border-color:var(--brand);background:var(--brand-subtle);color:var(--green-700)}.cstr-chip--on em{color:var(--green-600)}
