:root{color-scheme:light;--bg: #f7f8fc;--bg-image: radial-gradient(820px 520px at 90% -18%, rgba(91, 84, 232, .05), transparent 60%), radial-gradient(680px 480px at -6% 0%, rgba(91, 84, 232, .03), transparent 58%);--surface: #ffffff;--surface-strong: #f6f7fb;--surface-sunken: #eef0f6;--border: #e5e7f0;--border-strong: #d3d7e3;--text: #404a61;--text-strong: #181d2e;--muted: #767f96;--muted-strong: #4c5670;--accent: #5b54e8;--accent-strong: #4a43cf;--accent-soft: #bcb9f4;--accent-tint: rgba(91, 84, 232, .06);--accent-tint-strong: rgba(91, 84, 232, .12);--accent-glow: rgba(91, 84, 232, .22);--accent-hi: #6b63f0;--accent-2: #6366f1;--accent-3: #8b5cf6;--grad: linear-gradient(120deg, #6b63f0 0%, #5b54e8 100%);--grad-cool: linear-gradient(120deg, #6b63f0 0%, #5b54e8 100%);--grad-soft: linear-gradient(120deg, rgba(91, 84, 232, .1), rgba(91, 84, 232, .05));--heading: #20263c;--positive: #16895a;--positive-soft: rgba(22, 137, 90, .11);--negative: #cf3a52;--negative-soft: rgba(207, 58, 82, .09);--warning: #bf760e;--alert: #e0573f;--danger: #cf2b46;--tint-blue: #fbfbfe;--tint-blue-strong: #f3f3fb;--tint-blue-accent: #eaeaf8;--shadow-xs: 0 1px 1px rgba(30, 35, 60, .04), 0 1px 2px rgba(30, 35, 60, .03);--shadow-sm: 0 1px 1px rgba(30, 35, 60, .04), 0 2px 4px rgba(30, 35, 60, .04), 0 4px 8px rgba(30, 35, 60, .03);--shadow: 0 1px 1px rgba(30, 35, 60, .05), 0 2px 4px rgba(30, 35, 60, .04), 0 6px 12px rgba(30, 35, 60, .05), 0 14px 26px rgba(30, 35, 60, .05);--shadow-lg: 0 1px 2px rgba(30, 35, 60, .06), 0 4px 8px rgba(30, 35, 60, .05), 0 12px 22px rgba(30, 35, 60, .07), 0 26px 50px rgba(30, 35, 60, .08);--radius-xs: 5px;--radius-sm: 7px;--radius-button: 9px;--radius-md: 9px;--radius-lg: 12px;--radius-xl: 16px;--label-tracking: .04em;--control-height: 28px;--control-height-sm: 26px;--app-top-row-height: 64px;--font-sans: "Inter", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);font-feature-settings:"cv11","ss03","cv02","cv09";font-size:14px;line-height:1.5;background-color:var(--bg);background-image:var(--bg-image);background-attachment:fixed;background-repeat:no-repeat;color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input,select,textarea{font-family:inherit;font-feature-settings:inherit}::selection{background:var(--accent-tint-strong);color:var(--text-strong)}a{color:inherit;text-decoration:none}button{font:inherit}#root{min-height:100vh}.app-shell{display:grid;grid-template-columns:224px 1fr;min-height:100vh;transition:grid-template-columns .2s cubic-bezier(.2,.8,.2,1)}.app-shell--collapsed{grid-template-columns:0 1fr}.sidebar__backdrop{display:none}.sidebar{border-right:1px solid var(--border);background:var(--surface);padding:0 0 14px;transition:opacity .2s ease,transform .2s ease,padding .2s ease,border-color .2s ease}.sidebar--collapsed{opacity:0;overflow:hidden;transform:translate(-100%);padding:0;border-color:transparent;pointer-events:none}.sidebar__brand-row{display:flex;align-items:center;gap:12px;height:var(--app-top-row-height);padding:0 12px;border-bottom:1px solid var(--border);margin-bottom:10px}.sidebar__menu-button{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted-strong);font-size:16px;line-height:1;cursor:pointer;transition:background .14s ease,color .14s ease,border-color .14s ease}.sidebar__menu-button:hover{background:var(--surface-strong);color:var(--accent);border-color:var(--border-strong)}.sidebar__brand{display:grid;gap:1px;line-height:1}.sidebar__brand small,.eyebrow{color:var(--muted);letter-spacing:.04em;font-size:.66rem;font-weight:600;text-transform:uppercase}.sidebar__brand strong{display:block;font-size:1.08rem;line-height:1;font-weight:800;letter-spacing:-.02em;color:var(--text-strong);text-transform:none}.sidebar__brand strong span{display:block}.sidebar__nav{display:grid;gap:14px;padding:4px 8px}.sidebar__section{display:grid;gap:1px}.sidebar__section-title{padding:6px 10px 4px;color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:var(--label-tracking);text-transform:uppercase}.sidebar__link{position:relative;display:flex;align-items:center;justify-content:space-between;padding:7px 10px;border-radius:var(--radius-sm);color:var(--muted-strong);font-size:.875rem;font-weight:500;text-decoration:none;transition:background .12s ease,color .12s ease}.sidebar__link-content{display:inline-flex;align-items:center;gap:10px;min-width:0}.sidebar__link--disabled{color:#adb6cd;background:transparent;cursor:default}.sidebar__link.is-active{background:var(--grad-soft);color:var(--text-strong);font-weight:600}.sidebar__link.is-active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 3px 3px 0;background:var(--grad)}.sidebar__link.is-active .sidebar__icon{color:var(--accent)}.sidebar__link:not(.sidebar__link--disabled):hover{background:var(--surface-sunken);color:var(--text-strong)}.sidebar__icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);font-size:.95rem;flex:0 0 auto}.sidebar__meta{padding:1px 6px;border-radius:999px;background:var(--surface-sunken);color:var(--muted-strong);font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.content-shell{display:grid;grid-template-rows:auto 1fr;min-width:0}.topbar__title{display:flex;align-items:center;gap:12px;min-width:0}.breadcrumb-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:clamp(1rem,1.2vw,1.15rem);font-weight:600;letter-spacing:-.01em;color:var(--text-strong)}.breadcrumb-title__segment{display:inline-flex;align-items:center;gap:8px}.breadcrumb-title__link{border:0;padding:0;background:transparent;color:var(--muted-strong);cursor:pointer;font:inherit;font-weight:500;text-decoration:none;transition:color .12s ease}.breadcrumb-title__link:hover{color:var(--text-strong)}.breadcrumb-title__separator{color:var(--border-strong);font-weight:400}.topbar__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.user-menu{position:relative}.user-menu__trigger{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 12px;border:0;border-radius:999px;background-image:var(--grad);background-size:140% 140%;background-position:0% 50%;color:#fff;font-weight:600;font-size:.85rem;cursor:pointer;box-shadow:0 2px 10px var(--accent-glow);transition:background-position .24s ease,box-shadow .14s ease}.user-menu__trigger:hover,.user-menu__trigger.is-open{background-position:100% 50%;box-shadow:0 4px 16px var(--accent-glow)}.user-menu__chevron{display:inline-flex;align-items:center;color:#ffffffd9;transition:transform .14s ease}.user-menu__trigger.is-open .user-menu__chevron{transform:rotate(180deg)}.user-menu__dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:160px;display:grid;gap:2px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-lg);z-index:20}.user-menu__item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:var(--text);font-weight:600;text-align:left;cursor:pointer}.user-menu__item:hover{background:var(--tint-blue-strong);color:var(--accent)}.user-menu__item-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);width:16px}.alerts-menu{position:relative}.alerts-menu__trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:32px;min-width:32px;padding:4px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease}.alerts-menu__trigger:hover,.alerts-menu__trigger.is-open{border-color:var(--accent);color:var(--accent)}.alerts-menu__count{margin-left:4px;min-width:18px;padding:0 5px;border-radius:999px;background:var(--danger);color:#fff;font-size:.7rem;font-weight:700;line-height:18px;text-align:center}.alerts-menu__dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:260px;max-width:320px;display:grid;gap:8px;padding:8px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-lg);z-index:20}.alerts-menu__empty{padding:8px 10px;color:var(--muted);font-size:.85rem}.alerts-menu__section{display:grid;gap:2px}.alerts-menu__section-title{display:flex;align-items:center;gap:6px;padding:4px 10px;color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.alerts-menu__item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:6px;color:var(--text);font-size:.85rem;font-weight:600;text-decoration:none}.alerts-menu__item:hover{background:var(--tint-blue-strong);color:var(--accent)}.alerts-menu__item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alerts-menu__item-meta{flex-shrink:0;color:var(--muted);font-weight:500;font-size:.8rem}.alerts-menu__see-all{padding:6px 10px;color:var(--accent);font-size:.8rem;font-weight:600;text-decoration:none}.alerts-menu__see-all:hover{text-decoration:underline}.action-menu{position:relative;display:inline-flex}.action-menu__trigger-button{display:inline-flex;align-items:center;gap:8px}.action-menu__chevron{color:currentColor;opacity:.72;font-size:.72rem;transition:transform .14s ease}.action-menu__trigger-button.is-open .action-menu__chevron{transform:rotate(180deg)}.action-menu__dropdown{position:absolute;top:calc(100% + 6px);min-width:220px;display:grid;gap:2px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-lg);z-index:20}.action-menu__dropdown--right{right:0}.action-menu__dropdown--left{left:0}.action-menu__item{display:flex;align-items:center;width:100%;min-height:28px;padding:6px 10px;border:0;border-radius:6px;background:transparent;color:var(--text);font-size:.76rem;font-weight:600;line-height:1.2;text-align:left;cursor:pointer}.action-menu__item:hover{background:var(--tint-blue-strong);color:var(--accent)}.action-menu__item:disabled{opacity:.55;cursor:not-allowed}.action-menu__item--danger{color:var(--danger)}.action-menu__item--danger:hover:not(:disabled){background:#fdecec;color:var(--danger)}.page-tabs{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:fit-content;max-width:100%;overflow-x:auto;scrollbar-width:none}.page-tabs::-webkit-scrollbar{display:none}.page-tabs__tab{display:inline-flex;align-items:center;padding:5px 12px;border-radius:var(--radius-sm);color:var(--muted-strong);font-size:.82rem;font-weight:500;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .12s ease,color .12s ease}.page-tabs__tab:hover{color:var(--text-strong)}.page-tabs__tab.is-active{background:var(--accent-tint);color:var(--accent);font-weight:600}button.stat-card{width:100%;text-align:left;font:inherit;color:inherit}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;height:var(--app-top-row-height);margin-bottom:0;padding:10px 20px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:15}.topbar h1{margin:0;font-size:clamp(1.05rem,1.2vw,1.2rem);line-height:1.2;font-weight:600;letter-spacing:-.012em;color:var(--text-strong)}.chip{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md);padding:9px 12px}.page-content,.stack{display:grid;gap:0;padding:14px 20px 20px;min-width:0}.stack--tight{gap:14px;align-content:start;align-self:start}.stack-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:stretch}.stack-row>.table-card{height:100%}@media(max-width:1000px){.stack-row{grid-template-columns:minmax(0,1fr)}}.route-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:240px;color:var(--muted);font-size:.86rem}.route-loading__spinner{width:28px;height:28px;border:2.5px solid var(--accent-tint-strong);border-top-color:var(--accent);border-radius:999px;animation:inline-spinner-rotate .7s linear infinite}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:linear-gradient(180deg,#ffffffc7,#ffffffe6),linear-gradient(135deg,#e7edf8,#f5f7fc)}.auth-card{width:min(460px,100%);background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.auth-card__content{display:grid;gap:14px;padding:28px}.auth-card__heading{display:grid;gap:8px}.auth-card h1{margin:0;font-size:1.65rem;line-height:1.1;color:var(--accent)}.auth-card__lead{margin:0;color:var(--muted);font-size:.98rem;line-height:1.5}.auth-card__error{margin:0;color:var(--danger);font-size:.92rem;font-weight:600}.auth-field{display:grid;gap:6px}.auth-field__label{font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.auth-field__input{height:40px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text-strong);font:inherit;font-size:.92rem;transition:border-color .12s ease,box-shadow .12s ease}.auth-field__input:focus,.auth-field__input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.auth-card__button{justify-self:start}.stat-card,.table-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.stat-card{padding:18px 18px 16px;display:grid;grid-template-columns:42px 1fr;column-gap:14px;align-items:center}.stat-card span,.muted{color:var(--muted);font-size:.95rem}.stat-card strong{display:block;font-size:1.18rem;margin-top:0;color:var(--heading)}.stat-card strong,.stat-card span{grid-column:2}.stat-card--plain{display:grid;grid-template-columns:1fr;gap:6px;padding:16px 18px}.stat-card--plain span{grid-column:1;order:1;color:var(--muted);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.stat-card--plain strong{grid-column:1;order:2;color:var(--heading);font-size:1.32rem;font-weight:700;letter-spacing:-.01em}.stats-grid--clean{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--control-height);border:0;border-radius:var(--radius-button);background-image:var(--grad);background-size:140% 140%;background-position:0% 50%;color:#fff;padding:0 10px;font-size:.78rem;font-weight:550;letter-spacing:-.005em;cursor:pointer;box-shadow:inset 0 1px #ffffff38,0 1px 2px #141f361a,0 3px 12px var(--accent-glow);transition:background-position .24s ease,transform .12s ease,box-shadow .14s ease}.primary-button:hover:not(:disabled){background-position:100% 50%;box-shadow:inset 0 1px #ffffff42,0 2px 4px #141f361a,0 6px 18px var(--accent-glow)}.primary-button:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 1px 2px #141f3633,0 1px 2px var(--accent-glow)}.primary-button:focus-visible,.ghost-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.primary-button:disabled,.ghost-button:disabled{opacity:.5;cursor:not-allowed}.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--control-height);border:1px solid var(--border);border-radius:var(--radius-button);background:var(--surface);color:var(--text-strong);padding:0 10px;font-size:.78rem;font-weight:550;letter-spacing:-.005em;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.ghost-button:hover:not(:disabled){background:var(--accent-tint);border-color:#5b54e859;color:var(--accent);box-shadow:0 1px 2px var(--accent-glow)}.ghost-button--danger{border-color:#e5484d66;color:var(--negative)}.ghost-button--danger:hover:not(:disabled){background:var(--negative-soft);border-color:#e5484d99;color:var(--negative)}.price-recommendation-row__apply,.price-recommendation-row__discard{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 9px;border-radius:6px;font-size:.72rem;font-weight:600;letter-spacing:-.005em;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease,transform .12s ease}.price-recommendation-row__apply{border:0;color:#fff;background:linear-gradient(180deg,var(--accent-hi) 0%,var(--accent) 100%);box-shadow:inset 0 1px #ffffff2e,0 1px 2px #141f361a,0 2px 5px var(--accent-glow)}.price-recommendation-row__apply:hover:not(:disabled){background:linear-gradient(180deg,var(--accent) 0%,var(--accent-strong) 100%);box-shadow:inset 0 1px #fff3,0 2px 4px #141f361a,0 4px 10px var(--accent-glow)}.price-recommendation-row__apply:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 1px 2px #141f3633,0 1px 2px var(--accent-glow)}.price-recommendation-row__discard{background:var(--surface);border:1px solid rgba(229,72,77,.4);color:var(--negative)}.price-recommendation-row__discard:hover:not(:disabled){background:var(--negative-soft);border-color:#e5484d99;color:var(--negative);box-shadow:0 1px 2px #e5484d40}.price-recommendation-row__apply:focus-visible,.price-recommendation-row__discard:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.price-recommendation-row__apply:disabled,.price-recommendation-row__discard:disabled{opacity:.5;cursor:not-allowed}.table-card{overflow:hidden;min-width:0}.table-card--overflow-visible{overflow:visible;position:relative;z-index:2}.table-card--stretch{display:grid;grid-template-rows:1fr auto;min-height:calc(100vh - 320px)}.table-card__body{overflow-x:auto;min-width:0}.table-card__body>table{width:100%;min-width:0;table-layout:auto}.table-card__body>table.table--nowrap th,.table-card__body>table.table--nowrap td{white-space:nowrap}.table-card__body>table th.table-cell-action,.table-card__body>table td.table-cell-action{width:88px}.table-card__body>table th.table-cell-numeric,.table-card__body>table td.table-cell-numeric{width:96px}.table-section-title{display:flex;align-items:center;gap:8px;background:var(--surface-strong);color:var(--text-strong);font-size:.9rem;font-weight:600;letter-spacing:-.01em;text-transform:none;padding:11px 16px;border-bottom:1px solid var(--border)}.table-section-title--with-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px 8px 16px}.table-section-title__actions{display:inline-flex;align-items:center;gap:8px}.table-section-title__heading{display:inline-flex;align-items:center;gap:12px;min-width:0}.panel-header-actions{display:inline-flex;align-items:center;gap:8px}.panel-header-actions .primary-button,.panel-header-actions .ghost-button,.panel-header-actions .action-menu__trigger-button{min-height:28px;padding:6px 10px;border-radius:7px;font-size:.76rem;line-height:1.2}.icon-button{width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:var(--accent);color:#fff;font-size:18px;line-height:1;font-weight:600;cursor:pointer}.icon-button:hover{background:var(--accent-strong)}.icon-button:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-tint)}.icon-button:disabled{opacity:.5;cursor:not-allowed}.calibration-proposals{padding:12px 16px;border-bottom:1px solid var(--border);background:var(--surface-strong)}.calibration-proposal{margin-top:12px}.calibration-proposal__actions{display:inline-flex;align-items:center;gap:8px;margin-top:8px}.filter-toolbar{display:flex;flex-direction:column;gap:0;background:transparent;border:0;border-radius:0;padding:0;box-shadow:none;width:100%;align-self:start}.filter-toolbar+.table-card__body{margin-top:14px}.filter-toolbar__row{display:flex;flex-wrap:wrap;gap:6px;align-items:stretch;width:100%}.filter-toolbar__row--status{display:flex;align-items:center;gap:8px;color:var(--muted-strong);font-size:.82rem}.filter-toolbar__row--inline{flex-wrap:nowrap;align-items:center}.filter-toolbar__row--inline .filter-field--search{flex:1 1 0;max-width:none;min-width:0}.table-sort-button{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;transition:color .12s ease}.table-sort-button:hover{color:var(--text-strong)}.table-sort-button span{font-size:.65rem;color:var(--border-strong)}.filter-field{display:flex;flex-direction:column;justify-content:stretch;min-width:0;flex:1 1 140px;max-width:220px}.filter-field--dropdown{position:relative}.filter-field--search{flex:2 1 220px;max-width:none}.filter-dropdown__trigger,.filter-input,select.filter-input{width:100%;height:var(--control-height);padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text-strong);font-size:.82rem;font-weight:500;min-width:0;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.filter-input:hover:not(:disabled),.filter-dropdown__trigger:hover:not(:disabled){border-color:var(--border-strong)}.filter-input:focus,.filter-input:focus-visible,.filter-dropdown__trigger:focus-visible,.filter-dropdown__trigger.is-open{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.filter-input:disabled,.filter-dropdown__trigger:disabled{background:var(--surface-strong);color:var(--muted);cursor:not-allowed}.filter-dropdown__trigger{display:flex;align-items:center;justify-content:space-between;cursor:pointer;text-align:left;gap:8px}.filter-dropdown__value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto}.filter-dropdown__trigger:not(.is-set) .filter-dropdown__value{color:var(--muted);font-weight:500}.filter-dropdown__chevron{color:var(--muted);font-size:.68rem;flex:0 0 auto;transition:transform .14s ease}.filter-dropdown__trigger.is-open .filter-dropdown__chevron{transform:rotate(180deg)}.filter-dropdown__menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;display:grid;gap:1px;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:280px;overflow-y:auto}.filter-dropdown__menu--align-right{left:auto;right:0;min-width:100%}.filter-dropdown__option{display:flex;align-items:center;min-height:28px;padding:0 10px;border:0;border-radius:var(--radius-xs);background:transparent;color:var(--text);font-size:.82rem;font-weight:500;text-align:left;cursor:pointer}.filter-dropdown__option:hover{background:var(--surface-sunken);color:var(--text-strong)}.filter-dropdown__option.is-selected{background:var(--accent-tint);color:var(--accent);font-weight:600}.filter-input::placeholder{color:var(--muted);font-weight:500}.filter-field--range{display:flex;flex-direction:row;align-items:stretch;height:var(--control-height);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden;flex:1 1 260px;max-width:none;transition:border-color .12s ease,box-shadow .12s ease}.filter-field--range:hover{border-color:var(--border-strong)}.filter-field--range:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.filter-field__prefix{flex:0 0 auto;display:inline-flex;align-items:center;padding:0 10px;background:var(--surface-strong);border-right:1px solid var(--border);color:var(--muted-strong);font-size:.72rem;font-weight:600;letter-spacing:-.005em;white-space:nowrap}.filter-field--range>input[type=date]{flex:1 1 0;min-width:0;height:100%;padding:0 10px;border:0;background:transparent;font:inherit;font-size:.8rem;color:var(--text-strong);font-variant-numeric:tabular-nums}.filter-field--range>input[type=date]:focus,.filter-field--range>input[type=date]:focus-visible{outline:none;box-shadow:none;background:var(--accent-tint)}.filter-field__separator{flex:0 0 auto;display:inline-flex;align-items:center;padding:0 4px;color:var(--border-strong);font-size:.8rem;font-weight:500;-webkit-user-select:none;user-select:none}.filter-reset-icon{flex:0 0 auto;align-self:stretch;width:var(--control-height);height:var(--control-height);display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--muted);cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease,opacity .12s ease}.filter-reset-icon:hover:not(:disabled){background:var(--negative-soft);color:var(--negative);border-color:#b2371f2e}.filter-reset-icon:disabled,.filter-reset-icon.is-disabled{opacity:.35;cursor:not-allowed}.filter-reset-icon:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.filter-reset-icon svg{width:14px;height:14px;display:block}.page-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;justify-content:flex-end}.page-actions--start{justify-content:flex-start}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}th,td{padding:7px 12px;text-align:left;border-bottom:1px solid var(--border);font-size:.82rem;line-height:1.3;vertical-align:middle}th:first-child,td:first-child{padding-left:16px}th:last-child,td:last-child{padding-right:16px}thead th{background:var(--surface-strong);color:var(--muted-strong);font-size:.7rem;text-transform:uppercase;letter-spacing:var(--label-tracking);font-weight:600;padding-top:8px;padding-bottom:8px;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1}tbody tr{transition:background .1s ease}tbody tr:hover:not(.table-empty-state){background:var(--surface-strong)}tbody tr:last-child td{border-bottom:0}.table-row--selected{background:var(--accent-tint);box-shadow:inset 2px 0 0 var(--accent)}.table-row--cancelled td{text-decoration:line-through;color:var(--muted)}.table-cell-strong{font-weight:600;color:var(--text-strong)}.table-cell-action,.table-cell-numeric{white-space:nowrap}.table-cell-action{width:1%;text-align:right}.table-cell-numeric{font-variant-numeric:tabular-nums;text-align:right}.table-link-button{border:0;padding:0;background:transparent;color:inherit;cursor:pointer;font:inherit;font-weight:600;text-decoration:none}.table-link-button:hover{color:var(--accent)}.table-link-button--inline{text-align:left}.table-empty-state{color:var(--muted);text-align:center}.table-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--muted-strong);font-size:.78rem;padding:8px 16px;border-top:1px solid var(--border);background:var(--surface-strong)}.table-pagination__controls{display:flex;align-items:center;gap:6px}.table-pagination__button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-height-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer;font-size:.78rem;font-weight:500;padding:0 10px;transition:background .12s ease,border-color .12s ease}.table-pagination__button:hover:not(:disabled){background:var(--surface-sunken);border-color:var(--border-strong)}.table-pagination__button:disabled{cursor:not-allowed;opacity:.4}.table-pagination__page{min-width:80px;text-align:center;font-variant-numeric:tabular-nums}.table-pagination__summary{font-variant-numeric:tabular-nums}.algorithm-detail-page{padding:22px 22px 18px;align-content:start}.algorithm-detail-stack{display:grid;gap:20px}.algorithm-detail-page__header{display:flex;justify-content:space-between;align-items:start;gap:24px;padding-bottom:18px}.algorithm-detail-page__header h2{margin:4px 0 0;font-size:1.3rem}.algorithm-detail-page__context{margin-left:10px;color:var(--muted);font-size:.95rem;font-weight:600}.scenario-card__error{margin:12px 16px 0}.scenario-name{display:inline-flex;align-items:center;gap:8px;font-weight:600}.scenario-name__swatch{width:10px;height:10px;border-radius:var(--radius-xs);flex:0 0 auto}.scenario-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}.scenario-field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;font-weight:600}.scenario-properties{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:12px}.scenario-checkbox{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:.9rem}.scenario-checkbox input{flex:0 0 auto}.scenario-properties__col{display:flex;flex-direction:column;min-height:0}.scenario-properties__head{display:flex;align-items:center;gap:8px;font-weight:600;margin-bottom:8px}.scenario-properties__table-wrap{flex:1 1 auto;min-height:0;max-height:50vh;overflow-y:auto;border:1px solid var(--border);border-radius:8px}.scenario-properties__table{width:100%;border-collapse:collapse}.scenario-properties__table td{padding:8px 10px;border-bottom:1px solid var(--border);font-size:.9rem}.scenario-properties__table tr:last-child td{border-bottom:none}.scenario-properties__table a{color:inherit;text-decoration:none}.scenario-properties__table a:hover{text-decoration:underline}.scenario-properties__pager{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;font-size:.85rem}.scenario-editor{margin:12px 0;max-height:50vh;overflow-y:auto}.table-actions{display:inline-flex;align-items:center;gap:4px;justify-content:flex-end}.table-action-icon{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted-strong);cursor:pointer;transition:background .14s ease,color .14s ease,border-color .14s ease}.table-action-icon:hover:not(:disabled):not(.table-action-icon--disabled){color:var(--accent);background:var(--accent-tint);border-color:var(--border-strong)}.table-action-icon:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.table-action-icon:disabled,.table-action-icon--disabled{background:transparent;color:#b8c1d4;border-color:var(--border);cursor:not-allowed}a.table-action-icon{text-decoration:none}.table-action-icon svg{width:14px;height:14px;display:block;flex:none}.chip-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.chip-row--start{justify-content:flex-start}.chip{border-radius:999px;color:var(--accent);font-size:.72rem;font-weight:600;padding:5px 10px;border:1px solid var(--border)}.chip--soft{background:var(--accent-tint);border-color:#2f3e6324}.status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:0 8px;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.01em;line-height:1;white-space:nowrap;border:1px solid transparent}.status-badge--healthy,.status-badge--active{background:#1f7a4a1f;color:#156a3d;border-color:#1f7a4a33}.status-badge--warning,.status-badge--draft{background:#c45c121a;color:var(--warning);border-color:#c45c1238}.status-badge--review,.status-badge--archived{background:var(--surface-sunken);color:var(--muted-strong);border-color:var(--border-strong)}.status-badge--applied{background:var(--accent-tint);color:var(--accent);border-color:#2f3e632e}.audit-axis-signals{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.3rem}.warmup-badge{margin-left:.5rem}.warmup-badge--leading{margin-left:0;margin-right:.5rem}.status-badge--pending{background:#daa52024;color:#8a6300;border-color:#daa52047}.status-badge--ai{background:#4e8ef71f;color:#1d4ed8;border-color:#4e8ef747;min-height:16px;padding:0 6px;font-size:.62rem;letter-spacing:var(--label-tracking);text-transform:uppercase}.status-badge--extends{background:#6366f11a;color:#4338ca;border-color:#6366f133;min-height:16px;padding:0 6px;font-size:.62rem;letter-spacing:var(--label-tracking);text-transform:uppercase}.status-badge--stale{background:#dc26261a;color:#b91c1c;border-color:#dc26263d;min-height:16px;padding:0 6px;font-size:.62rem;letter-spacing:var(--label-tracking);text-transform:uppercase}.status-badge--unverified{background:#c45c1214;color:#b45309;border-color:#fed7aacc;min-width:16px;min-height:16px;padding:0 5px;font-size:.7rem;font-weight:700;line-height:1}.status-badge--custom{background:#10b9811f;color:#047857;border-color:#10b98147;min-height:16px;padding:0 6px;font-size:.62rem;letter-spacing:var(--label-tracking);text-transform:uppercase}.status-badge--cancelled{background:#b91c1c1a;color:#b91c1c;border-color:#b91c1c38}.event-row__badges{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.event-row__badges:empty{display:none}.status-badge--repricing{gap:6px;background:#4e8ef71f;color:#1d4ed8;border-color:#4e8ef747}.property-status-cell{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.inline-spinner{display:inline-block;width:14px;height:14px;flex:none;border:2px solid currentColor;border-right-color:transparent;border-radius:999px;animation:inline-spinner-rotate .7s linear infinite}.inline-spinner--badge{width:11px;height:11px;border-width:1.8px}@keyframes inline-spinner-rotate{to{transform:rotate(360deg)}}.tag-badge{display:inline-flex;align-items:center;min-height:20px;padding:0 10px;border-radius:999px;font-size:.72rem;font-weight:600;line-height:1;color:#fff;white-space:nowrap}.tag-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.tag-list__item{display:inline-flex;align-items:center;gap:4px}.tag-remove{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:999px;background:transparent;color:var(--muted, #6b7280);font-size:1rem;line-height:1;cursor:pointer}.tag-remove:hover:not(:disabled){color:#b91c1c}.tag-remove:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-tint)}.tag-remove:disabled{opacity:.5;cursor:default}.tag-add-row{display:flex;align-items:center;gap:8px;margin-bottom:14px}.tag-add-row select.tag-add-select{width:auto;min-width:0;max-width:180px}.tag-color-picker{display:flex;flex-wrap:wrap;gap:8px}.tag-color-swatch{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;border:2px solid transparent;padding:0;color:#fff;font-size:.78rem;font-weight:700;line-height:1;cursor:pointer}.tag-color-swatch--selected{border-color:var(--text, #111827);box-shadow:0 0 0 2px #fff inset}.tag-color-custom{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:.8rem}.tag-color-custom__label{color:var(--muted, #6b7280)}.tag-color-custom__input{width:30px;height:26px;padding:0;border:1px solid var(--border, #d1d5db);border-radius:var(--radius-md, 6px);background:none;cursor:pointer}.tag-color-custom__input::-webkit-color-swatch-wrapper{padding:2px}.tag-color-custom__input::-webkit-color-swatch{border:none;border-radius:4px}.tag-color-custom__input::-moz-color-swatch{border:none;border-radius:4px}.tag-preview{margin-top:12px}.tag-color-cell{display:inline-flex;align-items:center;gap:8px;font-size:.8rem}.tag-color-dot{width:14px;height:14px;border-radius:999px;flex:none}.pricing-page__lead{margin:6px 0 0}.pricing-page__content{display:grid;gap:18px;padding:22px 22px 18px}.pricing-page__header{display:flex;justify-content:space-between;align-items:start;gap:24px}.pricing-page__header h2{margin:4px 0 0;font-size:1.3rem}.algorithm-title-row{display:flex;align-items:center;gap:8px}.algorithm-title-row .table-action-icon{color:var(--muted)}.pricing-page__lead.link-button{border:0;padding:0;background:transparent;cursor:pointer;font:inherit;text-align:left;text-decoration:underline;text-decoration-style:dotted}.pricing-page__lead.link-button:hover{color:var(--accent)}.pricing-calendar{display:grid;gap:16px;padding:18px}.pricing-preview{display:grid;gap:14px;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--surface-strong)}.pricing-preview__header{display:flex;justify-content:space-between;align-items:start;gap:16px;flex-wrap:wrap}.pricing-preview__run-context{display:grid;gap:6px;min-width:0}.pricing-preview__run-context strong{color:var(--heading);font-size:1rem;font-weight:700}.pricing-preview__run-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pricing-preview__window{font-size:.8rem;font-weight:600}.pricing-preview__stats{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:6px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:.78rem;font-weight:600;color:var(--muted)}.pricing-preview__stats strong{display:inline;margin:0 0 0 4px;color:var(--heading);font-size:.88rem}.pricing-preview__stat-group{display:flex;align-items:center;gap:10px}.pricing-preview__stat-group+.pricing-preview__stat-group{padding-left:14px;border-left:1px solid var(--border)}.pricing-preview__stat-label{text-transform:uppercase;letter-spacing:.04em;font-size:.68rem;color:var(--muted)}.pricing-preview__frame{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-items:stretch}.pricing-preview__y-axis{display:grid;align-content:stretch;color:var(--muted);font-size:.76rem;font-weight:600}.pricing-preview__y-axis span{display:flex;align-items:center;justify-content:flex-end}.pricing-preview__plot{position:relative}.pricing-preview__svg{width:100%;height:auto;aspect-ratio:960 / 220;border:1px solid var(--border);border-radius:8px;background:linear-gradient(to bottom,#a7ab6914,#a7ab6900),var(--surface)}.pricing-preview__grid-line{stroke:#c9d3e6;stroke-width:1}.pricing-preview__area{fill:#5b8aff29}.pricing-preview__curve{stroke:var(--accent)}.pricing-preview__curve-segment{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.pricing-preview__curve-segment.is-dashed{stroke-dasharray:3 5;stroke-linecap:round}.pricing-preview__point-hitbox{fill:transparent;cursor:crosshair}.pricing-preview__point{fill:var(--accent);stroke:#fff;stroke-width:2;transition:fill .12s ease}.pricing-preview__point.is-active{fill:var(--text-strong)}.pricing-preview__tooltip-card{position:absolute;transform:translate(-50%,calc(-100% - 12px));display:grid;gap:2px;min-width:132px;padding:8px 10px;border:1px solid rgba(47,62,99,.16);border-radius:8px;background:#fffffffa;box-shadow:0 10px 24px #2f3e6329;pointer-events:none;z-index:2}.pricing-preview__tooltip-card span{color:var(--muted);font-size:.72rem;font-weight:600;line-height:1.2}.pricing-preview__tooltip-card strong{color:var(--accent);font-size:.84rem;line-height:1.2}.pricing-preview__x-axis{position:relative;height:18px;margin-left:68px;color:var(--muted);font-size:.72rem;font-weight:700}.pricing-preview__x-axis span{position:absolute;transform:translate(-50%);white-space:nowrap}.pricing-calendar__months{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.pricing-month-card{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-strong)}.pricing-month-strip{display:flex;align-items:center;gap:6px;padding:4px;border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow-x:auto;scrollbar-width:thin}.pricing-month-strip::-webkit-scrollbar{height:6px}.pricing-month-strip::-webkit-scrollbar-thumb{background:#cfd6e5;border-radius:99px}.pricing-month-strip__tab{flex:0 0 auto;padding:7px 14px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:.84rem;font-weight:600;white-space:nowrap;cursor:pointer;transition:background .14s ease,color .14s ease}.pricing-month-strip__tab:hover{color:var(--accent);background:var(--surface-strong)}.pricing-month-strip__tab.is-active{background:var(--accent);color:#fff;box-shadow:0 2px 6px #2f3e632e}.pricing-month-strip__tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pricing-month-card__weekdays,.pricing-month-card__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.pricing-month-card__weekdays span{color:var(--muted);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;text-align:center}.pricing-day-card{min-height:108px;display:grid;grid-template-rows:auto 1fr auto;gap:4px;padding:10px 10px 8px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}button.pricing-day-card{font:inherit;color:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}button.pricing-day-card:hover{border-color:var(--accent);box-shadow:0 6px 16px #2f3e631f;transform:translateY(-1px)}button.pricing-day-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pricing-day-card--empty{background:transparent;border-style:dashed;border-color:#2f3e6314}.pricing-day-card--booked{background:linear-gradient(180deg,#eaf1ff,#f5f8ff 50%);border-color:#cdd8ef}.pricing-day-card--unavailable{background:linear-gradient(180deg,#f4f4f8,#fafafc 50%);border-color:#dcdfe7}.pricing-day-card--past{opacity:.62;border-style:dashed}.pricing-day-card--past:not(.pricing-day-card--booked):not(.pricing-day-card--unavailable){background:linear-gradient(180deg,#f6f7f9,#fbfbfc 50%)}.chip--status-booked{background:#dbe6ff;color:#2c4583}.chip--status-unavailable{background:#e4e6ee;color:#5c6375}.pricing-day-card__day{display:flex;align-items:center;justify-content:space-between;gap:6px;color:var(--muted);font-size:.72rem;font-weight:700}.pricing-day-card__status-tag{padding:2px 6px;border-radius:99px;font-size:.62rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.pricing-day-card__status-tag.is-booked{background:#dbe6ff;color:#2c4583}.pricing-day-card__status-tag.is-unavailable{background:#e4e6ee;color:#5c6375}.pricing-day-card__price{align-self:center;color:var(--accent);font-size:1.18rem;font-weight:700;letter-spacing:-.01em;line-height:1}.pricing-day-card--booked .pricing-day-card__price,.pricing-day-card--unavailable .pricing-day-card__price{color:#8b97b1}.pricing-day-card__booked-price{align-self:center;margin-top:-2px;color:#c0392b;font-size:.72rem;font-weight:700;letter-spacing:-.01em;line-height:1}.pricing-day-card__footer{display:flex;align-items:center;justify-content:space-between;gap:6px;color:var(--muted);font-size:.7rem;font-weight:600}.pricing-day-card__min{font-variant-numeric:tabular-nums}.pricing-day-card__markers{display:inline-flex;align-items:center;gap:3px}.pricing-day-card__marker{display:inline-grid;place-items:center;padding:1px 5px;min-width:22px;border:1px solid #c9d3e6;border-radius:99px;background:var(--surface-strong);color:var(--accent);font-size:.58rem;font-weight:800;letter-spacing:.04em}.pricing-empty-state{padding:18px 16px;border:1px dashed #cbd5e6;border-radius:8px;color:var(--muted);font-size:.9rem;background:#ffffffb3}.pricing-history-row{cursor:pointer}.pricing-history-row:hover td{background:#f8faff}.settings-page__state{padding:18px}.settings-page__hero{display:flex;justify-content:space-between;align-items:start;gap:24px;padding:18px 18px 16px}.settings-page__hero h2{margin:4px 0 0;font-size:1.34rem}.settings-page__section{display:grid;gap:16px;padding:18px}.settings-page__grid{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:16px;align-items:stretch}.settings-field{display:grid;align-content:start;gap:8px;min-height:100%;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--surface-strong)}.settings-field__label{color:var(--muted);font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.settings-field__input{width:100%;max-width:180px}.settings-page__note{display:grid;align-content:start;gap:12px;min-height:100%;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--tint-blue)}.settings-page__note-title{margin:0;color:var(--heading);font-size:.92rem;font-weight:700}.settings-page__list{margin:0;padding-left:18px;color:var(--muted);font-size:.86rem;line-height:1.6}.settings-page__list strong{color:var(--heading)}.settings-page__success{margin:0;color:#217a3b;font-size:.92rem;font-weight:600}.users-page__messages{padding-top:12px;padding-bottom:12px}.users-page__messages .modal-error,.users-page__messages .settings-page__success{margin:0}.users-modal{width:min(720px,calc(100vw - 48px))}.users-modal__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-bottom:16px}.users-modal__full-row{grid-column:1 / -1}.amenity-columns{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));margin:0;padding:0;list-style:none;border-top:1px solid var(--border);border-left:1px solid var(--border);border-radius:5px;overflow:hidden;background:var(--surface)}.amenity-columns__item{display:block;padding:4px 8px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);font-size:.74rem;line-height:1.25;color:var(--text-strong);background:var(--surface)}.amenity-columns__item:hover{background:var(--surface-strong)}.amenity-columns__label{display:block;font-weight:600}.amenity-columns__options{display:block;margin-top:1px;font-size:.68rem;font-weight:500;color:var(--muted);white-space:pre-wrap}.rental-detail-section{display:grid;gap:16px;padding:18px}.rental-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 18px}.rental-detail-list{display:grid;grid-template-columns:1fr;gap:0}.rental-detail-list .rental-detail-field{display:grid;grid-template-columns:minmax(140px,.35fr) minmax(0,1fr);gap:16px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}.rental-detail-list .rental-detail-field:last-child{border-bottom:0}.rental-detail-list .rental-detail-field strong{font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.rental-detail-list .rental-detail-field span{font-size:.88rem;font-weight:600;color:var(--heading)}.rental-detail-list .rental-detail-field span.rental-detail-value--warn{color:var(--warning)}.rental-detail-value-stack{display:flex;flex-direction:column;gap:2px;min-width:0}.rental-detail-value-stack small{font-size:.74rem;font-weight:400;line-height:1.3}.rental-detail-list .price-recommendation-list-row{background:var(--accent-tint)}.rental-detail-list .price-recommendation-list-row--empty{background:transparent}.price-recommendation-list-row__value{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.price-recommendation-list-row__price{font-size:.88rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--accent-strong)}.price-recommendation-list-row__delta{display:inline-flex;align-items:center;gap:2px;font-size:.78rem;font-weight:600;font-variant-numeric:tabular-nums}.price-recommendation-list-row__delta--raise{color:#15803d}.price-recommendation-list-row__delta--lower{color:var(--danger)}.price-recommendation-list-row__delta--no_change{color:var(--muted)}.price-recommendation-list-row__actions{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.rental-detail-field{display:grid;gap:6px}.rental-detail-field--span-2{grid-column:span 2}.rental-detail-field--span-3{grid-column:1 / -1}.rental-detail-field strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.rental-detail-field span{color:var(--heading);font-size:.95rem;font-weight:600}.rental-detail-field .status-badge{justify-self:start;align-self:start}.property-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:4px 4px 10px}.property-details-grid>div{display:grid;gap:6px}.property-details-grid strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.property-details-grid span{color:var(--heading);font-size:.95rem;font-weight:600}.property-details-grid .status-badge{justify-self:start;align-self:start}.detail-span-3{grid-column:1 / -1}.seasonality-detail-stack{display:grid;gap:14px}.seasonality-card{display:grid;gap:12px;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--tint-blue)}.seasonality-typology-picker{display:inline-flex;align-items:center;gap:0;padding:2px;border-radius:4px;background:var(--tint-blue-accent);border:1px solid #bcd0ef;width:fit-content}.seasonality-typology-picker__label{font-size:.65rem;font-weight:700;color:#2a4a82;text-transform:uppercase;letter-spacing:.08em;padding:0 8px;-webkit-user-select:none;user-select:none}.seasonality-typology-picker__select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding:3px 24px 3px 8px;border:1px solid #bcd0ef;border-radius:var(--radius-xs);background-color:var(--tint-blue);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'><path d='M1 1L5 5L9 1' stroke='%234f46e5' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 8px center;background-size:10px 6px;font-size:.8rem;font-weight:600;color:var(--text-strong);cursor:pointer;min-width:140px;transition:border-color .12s ease,box-shadow .12s ease}.seasonality-typology-picker__select:hover{border-color:var(--accent)}.seasonality-typology-picker__select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-tint-strong)}.day-of-week-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;padding:14px 16px 4px}.day-of-week-control{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);transition:border-color .12s ease,box-shadow .12s ease}.day-of-week-control--active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:var(--accent-tint, var(--surface))}.day-of-week-control--inactive{border-color:var(--border);background:#2f3e6308;color:var(--muted)}.day-of-week-control--inactive .day-of-week-control__title{color:var(--muted)}.day-of-week-control__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.day-of-week-control__title{font-size:.82rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text-strong)}.day-of-week-control__hint{font-size:.8rem;line-height:1.45;color:var(--muted);margin:0}.day-of-week-control__hint .link-button{border:0;padding:0;background:transparent;color:var(--accent);font:inherit;font-size:inherit;text-decoration:underline;text-decoration-style:dotted;cursor:pointer}.day-of-week-control__hint .link-button:hover{text-decoration-style:solid}.day-of-week-control__number{width:96px;padding:6px 10px;font-variant-numeric:tabular-nums}.day-of-week-control__switch{position:relative;display:inline-block;width:36px;height:20px;flex-shrink:0}.day-of-week-control__switch input{opacity:0;width:0;height:0;margin:0}.day-of-week-control__switch-track{position:absolute;inset:0;border-radius:999px;background:#d6dde9;transition:background-color .14s ease}.day-of-week-control__switch-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:999px;background:#fff;box-shadow:0 1px 2px #0f172a2e;transition:transform .14s ease}.day-of-week-control__switch input:checked+.day-of-week-control__switch-track{background:var(--accent)}.day-of-week-control__switch input:checked+.day-of-week-control__switch-track:after{transform:translate(16px)}.day-of-week-control__switch input:focus-visible+.day-of-week-control__switch-track{box-shadow:0 0 0 3px var(--accent-tint, rgba(59, 130, 246, .25))}.seasonality-chart__heading{display:flex;justify-content:space-between;flex-wrap:wrap;flex-direction:column;align-items:flex-start;gap:2px;margin-bottom:10px}.seasonality-chart__head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.seasonality-chart__head-row .seasonality-chart__heading{margin-bottom:0;flex:1}.seasonality-chart__reset-zoom{flex-shrink:0}.seasonality-chart__heading strong{display:block;margin-bottom:3px;font-size:.95rem;color:var(--heading)}.seasonality-chart__heading span{color:var(--muted);font-size:.8rem;font-weight:600}.seasonality-ranges{display:grid;gap:10px}.seasonality-ranges-table{overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.seasonality-ranges-table th,.seasonality-ranges-table td{padding:3px 8px}.seasonality-ranges-table thead th{font-size:.7rem}.seasonality-ranges-table .seasonality-input,.seasonality-ranges-table .modal-input.seasonality-input{width:100%;min-width:0;height:20px;padding:0 5px;font-size:.76rem}.seasonality-input--number{max-width:82px}.seasonality-ranges-table .ghost-button{min-height:20px;padding:0 8px;font-size:.76rem}.seasonality-ranges-table .table-cell-action .ghost-button{border-color:#e8b4b1;border-radius:0;background:#fff1f0;color:var(--danger)}.seasonality-ranges-table .table-cell-action .ghost-button:hover{border-color:#dc8d87;background:#ffe5e2;color:#982e2e}.seasonality-empty-state{padding:14px 12px;border:1px dashed #cbd5e6;border-radius:6px;color:var(--muted);font-size:.9rem;background:#ffffffb3}.yield-detail{display:flex;flex-direction:column;gap:24px}.yield-detail__section--boxed{border:1px solid var(--border);border-radius:10px;padding:16px 18px;background:var(--surface)}.yield-detail__section h3{margin:0 0 8px;font-size:1rem;font-weight:600}.yield-detail__section p{margin:0 0 8px;font-size:.9rem;line-height:1.5;color:#334155}.yield-detail__params{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:0;font-size:.9rem}.yield-detail__params dt{font-weight:600;color:#475569}.yield-detail__params dd{margin:0;color:#1e293b}.close-in-suppression__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;padding:14px 16px 18px}.close-in-suppression__tile{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);transition:border-color .12s ease,box-shadow .12s ease}.close-in-suppression__tile--active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:var(--accent-tint, var(--surface))}.close-in-suppression__tile-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.close-in-suppression__tile-title{font-size:.82rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text-strong)}.close-in-suppression__tile-hint{font-size:.8rem;line-height:1.45;color:var(--muted)}.close-in-suppression__switch{position:relative;display:inline-block;width:36px;height:20px;flex-shrink:0}.close-in-suppression__switch input{opacity:0;width:0;height:0;margin:0}.close-in-suppression__switch-track{position:absolute;inset:0;border-radius:999px;background:#d6dde9;transition:background-color .14s ease}.close-in-suppression__switch-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:999px;background:#fff;box-shadow:0 1px 2px #0f172a2e;transition:transform .14s ease}.close-in-suppression__switch input:checked+.close-in-suppression__switch-track{background:var(--accent)}.close-in-suppression__switch input:checked+.close-in-suppression__switch-track:after{transform:translate(16px)}.close-in-suppression__switch input:focus-visible+.close-in-suppression__switch-track{box-shadow:0 0 0 3px var(--accent-tint, rgba(59, 130, 246, .25))}.strategy-modes-stack{display:flex;flex-direction:column;gap:16px;padding:16px 18px;border:1px solid #d3e0f5;border-radius:10px;background:#f3f7ff}.strategy-mode-card{display:flex;flex-direction:column;gap:12px;padding:16px 18px;border:1px solid var(--border);border-radius:10px;background:var(--surface);transition:border-color .14s ease,box-shadow .14s ease}.strategy-mode-card--default{border-color:#22c55e;box-shadow:0 0 0 1px #22c55e,0 0 10px #22c55e73}.strategy-mode-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.strategy-mode-card__head h3{margin:0}.strategy-detail__nightcap-tiles{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.strategy-detail__nightcap-tiles>.close-in-suppression__tile{flex:1 1 240px}.close-in-suppression__number{width:80px;padding:6px 10px;font-variant-numeric:tabular-nums}.close-in-suppression__tile-fields{display:grid;gap:8px}.close-in-suppression__field{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.8rem;color:var(--text-strong)}.stay-at-least-rules{display:grid;gap:14px}.stay-at-least-rule-card{border:1px solid var(--border);border-radius:10px;padding:16px;display:grid;gap:16px;background:var(--surface)}.stay-at-least-rule-card__header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.stay-at-least-rule-card__fields{flex:1}.stay-at-least-rule-card__tiers{display:grid;gap:10px}.stay-at-least-rule-card__tiers-title{font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.stay-at-least-rule-card__tiers .yield-detail__table-wrap{max-width:400px}.stay-at-least-tier-table{table-layout:fixed;width:100%}.stay-at-least-tier-table th:first-child,.stay-at-least-tier-table td:first-child,.stay-at-least-tier-table th:nth-child(2),.stay-at-least-tier-table td:nth-child(2){width:calc(50% - 22px)}.stay-at-least-tier-table th:last-child,.stay-at-least-tier-table td:last-child{width:44px;text-align:right}.stay-at-least-tier-table .modal-input{width:100%}.stay-at-least-tier-table .icon-button{width:26px;height:26px;background:transparent;border:1px solid var(--border);color:var(--danger)}.stay-at-least-tier-table .icon-button:hover:not(:disabled){background:#fdecec;border-color:#e5484d}.stay-at-least-rule-card__add-tier{display:flex;justify-content:flex-start}.yield-detail__table-wrap{overflow-x:auto;min-width:0;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.yield-detail__table-wrap--plain{border:0;border-radius:0;background:transparent}.yield-detail__table{width:100%;border-collapse:collapse;font-size:.86rem}.yield-parameters-table{width:min(100%,600px)}.minstay-configuration-group{display:grid;gap:12px}.minstay-criteria-table{table-layout:fixed;width:100%}.minstay-criteria-table th:first-child,.minstay-criteria-table td:first-child{width:14%;white-space:nowrap}.minstay-criteria-table th:nth-child(2),.minstay-criteria-table td:nth-child(2){width:24%;white-space:nowrap}.minstay-criteria-table th:nth-child(3),.minstay-criteria-table td:nth-child(3){width:18%;white-space:nowrap}.minstay-criteria-table th:last-child,.minstay-criteria-table td:last-child{width:44%;white-space:normal;word-break:normal;overflow-wrap:normal}.minstay-value-lines{display:grid;gap:3px}.minstay-seasonal-table{table-layout:fixed;width:100%}.minstay-seasonal-table th:first-child,.minstay-seasonal-table td:first-child{width:18%;white-space:nowrap}.minstay-seasonal-table th:nth-child(2),.minstay-seasonal-table td:nth-child(2){width:42%;white-space:nowrap}.minstay-seasonal-table th:last-child,.minstay-seasonal-table td:last-child{width:40%}.yield-detail__table--framed{overflow:hidden;border:1px solid var(--border);border-radius:8px;border-collapse:separate;border-spacing:0;background:var(--surface);box-shadow:0 8px 18px #2f3e630f}.yield-detail__table th,.yield-detail__table td{padding:6px 10px;text-align:left;border-bottom:1px solid #eef2f7;vertical-align:middle}.yield-detail__date-ranges{font-variant-numeric:tabular-nums;font-size:.82rem;color:#334155;line-height:1.35;word-spacing:-1px}.yield-detail__row-pending{background:#fafbfd}.yield-detail__row-compact td{font-size:.78rem;padding:4px 10px}.yield-detail__row-compact td:first-child{overflow-wrap:anywhere;word-break:break-word}.yield-detail__table:not(.minstay-criteria-table):not(.minstay-seasonal-table):not(.pricing-breakdown__table):not(.stay-at-least-tier-table) th:not(:first-child),.yield-detail__row-compact td:not(:first-child){width:1%;white-space:nowrap}.yield-detail__row-compact .yield-detail__date-ranges>div{white-space:nowrap}.yield-detail__row-actions{display:flex;flex-direction:row;flex-wrap:nowrap;gap:4px;justify-content:flex-end;white-space:nowrap}.yield-detail__row-actions .yield-detail__row-action{flex:0 0 auto}.yield-detail__row-action{min-height:26px;padding:4px 10px;border-radius:6px;font-size:.76rem;line-height:1.1;font-weight:600;white-space:nowrap;display:inline-block;vertical-align:middle}.yield-detail__table th{background:#f8fafc;font-weight:600;color:#475569}.short-gap-factor-list{margin:0;display:grid;grid-template-columns:200px 1fr;column-gap:24px;row-gap:12px;align-items:start}.short-gap-factor-list dt{margin:0;font-weight:600;color:var(--heading)}.short-gap-factor-list dd{margin:0;color:var(--text);line-height:1.5}.yield-detail__bucket-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px 14px}.yield-detail__bucket-list--inline{display:flex;flex-wrap:wrap;gap:4px 18px}.yield-detail__bucket-list li{font-variant-numeric:tabular-nums}.muted{color:var(--muted);font-size:.86rem}.seasonality-warning{padding:10px 12px;border:1px solid #f2c185;border-radius:6px;background:#fff7ed;color:#9a5b18;font-size:.86rem;font-weight:600}.seasonality-chart{display:grid;gap:16px;padding:18px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.seasonality-chart__canvas{width:100%}.seasonality-chart__frame{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:stretch}.seasonality-chart__y-axis{display:grid;align-content:stretch;color:var(--muted);font-size:.76rem;font-weight:600}.seasonality-chart__y-axis span{display:flex;align-items:center;justify-content:flex-end}.seasonality-chart__svg{width:100%;height:auto;aspect-ratio:1200 / 320;border:1px solid var(--border);border-radius:8px;background:linear-gradient(to bottom,#a7ab6914,#a7ab6900),var(--surface-strong);overflow:hidden;touch-action:pan-y}.seasonality-chart__grid-line{stroke:#d7deeb}.seasonality-chart__month-line{stroke:#2f3e6314;stroke-dasharray:3 6}.seasonality-chart__zero-line{stroke:#2f3e6338}.seasonality-chart__average-line{stroke:#a7ab69e6;stroke-dasharray:6 6}.seasonality-chart__average-label{fill:#6d7241;font-size:11px;font-weight:700}.seasonality-chart__area{fill:#5b8aff29}.seasonality-chart__curve{stroke:#4e8ef7;filter:drop-shadow(0 2px 8px rgba(78,142,247,.24))}.seasonality-chart__handle{pointer-events:none}.seasonality-chart__handle-ring{fill:#fffffff0;stroke:#4e8ef747;stroke-width:1.5}.seasonality-chart__handle-core{fill:#4e8ef7;stroke:#fff;stroke-width:2}.seasonality-chart__handle-label{fill:#2f3e63;font-size:11px;font-weight:700}.seasonality-chart__months{position:relative;height:20px;margin-left:64px;color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;overflow:hidden}.seasonality-amplifier{margin-top:20px;display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--border);border-radius:var(--radius-xl, 8px);background:var(--surface);box-shadow:var(--shadow)}.seasonality-amplifier .day-of-week-controls{padding:0}.seasonality-amplifier__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.seasonality-chart__curve--raw{stroke:var(--muted, #99a3b3)}.seasonality-chart__month-label{position:absolute;transform:translate(-50%);white-space:nowrap}.modal-overlay{position:fixed;inset:0;display:grid;place-items:center;background:#0f162873;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:24px;z-index:50}.modal-card{width:min(1080px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:0 30px 60px #0f162838,0 2px #0f16280a;padding:24px 24px 20px}.modal-card__header{display:flex;justify-content:space-between;align-items:start;gap:24px;padding-bottom:18px}.modal-card__header h2{margin:4px 0 0;font-size:1.3rem}.modal-card__actions,.modal-card__footer{display:flex;align-items:center;gap:10px}.modal-card__footer{justify-content:flex-end;padding-top:10px}.modal-error{margin:0 0 14px;color:var(--danger);font-size:.92rem;font-weight:600}.modal-hint{margin:0 0 16px;color:var(--muted);font-size:.88rem;line-height:1.45}.modal-input{height:36px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text-strong);font:inherit;font-size:.86rem;transition:border-color .12s ease,box-shadow .12s ease}.modal-input:focus,.modal-input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:20px;padding:0 7px;border-radius:999px;background:var(--alert);color:#fff;font-size:.72rem;font-weight:700}.freshness-stale{color:var(--danger);font-weight:500}.toast-stack{position:fixed;bottom:16px;right:16px;display:flex;flex-direction:column;gap:8px;z-index:60;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;min-width:240px;max-width:360px;padding:10px 12px;border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm);color:var(--text-strong);font-size:.84rem;pointer-events:auto;animation:toast-in .14s ease}.toast--success{border-left-color:var(--positive)}.toast--error{border-left-color:var(--negative)}.toast__message{flex:1;line-height:1.4}.toast__dismiss{flex:none;border:0;padding:0;width:20px;height:20px;background:transparent;color:var(--muted);font-size:1.1rem;line-height:1;cursor:pointer;transition:color .12s ease}.toast__dismiss:hover{color:var(--text-strong)}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.confirm-modal{width:min(440px,calc(100vw - 48px))}.empty-state{display:flex;flex-direction:column;align-items:center;gap:6px;padding:32px 16px;color:var(--muted);text-align:center}.empty-state__icon{color:var(--border-strong);font-size:1.6rem;line-height:1}.empty-state__message{margin:0;font-weight:600;color:var(--muted-strong)}.empty-state__hint{margin:0;font-size:.84rem}.empty-state__action{margin-top:8px}.numeric-input-wrap{display:inline-flex;flex-direction:column;gap:2px}.numeric-input-clamp-hint{color:var(--warning);font-size:.72rem;line-height:1.2}@media(max-width:1100px){.filter-field{flex:1 1 calc(50% - 6px);max-width:none}.filter-field--search{flex:1 1 100%}}@media(max-width:960px){.app-shell,.app-shell--collapsed{grid-template-columns:1fr}.sidebar{position:fixed;top:0;bottom:0;left:0;width:min(280px,82vw);z-index:30;border-right:1px solid var(--border);border-bottom:0;box-shadow:var(--shadow-lg);overflow-y:auto;transform:translate(0);transition:transform .22s cubic-bezier(.2,.8,.2,1)}.sidebar--collapsed{opacity:1;transform:translate(-100%);pointer-events:none;border-right-color:transparent;box-shadow:none}.sidebar__backdrop{display:block;position:fixed;inset:0;border:0;padding:0;background:#0f162873;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:25;cursor:pointer;animation:drawer-backdrop-in .2s ease}@keyframes drawer-backdrop-in{0%{opacity:0}to{opacity:1}}.topbar{height:auto;min-height:var(--app-top-row-height);padding:10px 14px;flex-wrap:wrap;align-items:center;gap:8px}.topbar__title{flex:1 1 0;min-width:0}.topbar h1{font-size:1rem}.breadcrumb-title{font-size:.92rem;flex-wrap:wrap;row-gap:2px}.breadcrumb-title__segment{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.topbar__actions{flex:0 0 auto;width:auto;justify-content:flex-end}.page-actions{flex:1 1 100%;justify-content:flex-start}.page-content,.stack{padding:12px 14px 16px}.stack--tight{gap:12px}.filter-field{flex:1 1 calc(50% - 3px)}.filter-field--search{flex:1 1 100%}.filter-toolbar__meta{flex-wrap:wrap}th.table-cell--mobile-hidden,td.table-cell--mobile-hidden{display:none!important}.table-card__body{overflow-x:auto}.table-card__body>table{table-layout:auto;width:max-content;min-width:100%}.pricing-month-card{overflow-x:auto}.pricing-month-card__weekdays,.pricing-month-card__grid{grid-template-columns:repeat(7,minmax(96px,1fr));min-width:700px}.pricing-day-card{min-height:92px;padding:8px 8px 6px}.pricing-breakdown__table-wrapper{overflow-x:visible}.pricing-breakdown__table colgroup,.pricing-breakdown__table thead{display:none}.pricing-breakdown__table,.pricing-breakdown__table tbody,.pricing-breakdown__table tr,.pricing-breakdown__table td{display:block;width:auto}.pricing-breakdown__table tr{padding:12px 14px;border-bottom:1px solid var(--border)}.pricing-breakdown__table tr:last-child{border-bottom:0}.pricing-breakdown__table td{padding:3px 0!important;border:0!important;white-space:normal!important;width:auto!important;min-width:0!important;max-width:none!important}.pricing-breakdown__table .pricing-breakdown__index{color:var(--muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.pricing-breakdown__table .pricing-breakdown__index:before{content:"Step "}.pricing-breakdown__evaluator{min-width:0;white-space:normal}.yield-detail__table-wrap{overflow-x:visible}.yield-detail__table--stack thead,.responsive-card-table thead{display:none}.yield-detail__table--stack,.yield-detail__table--stack tbody,.yield-detail__table--stack tr,.yield-detail__table--stack td,.responsive-card-table,.responsive-card-table tbody,.responsive-card-table tr,.responsive-card-table td{display:block;width:auto}.yield-detail__table--stack tr,.responsive-card-table tr{padding:12px 14px;border-bottom:1px solid var(--border)}.yield-detail__table--stack tr:last-child,.responsive-card-table tr:last-child{border-bottom:0}.yield-detail__table--stack td,.responsive-card-table td{padding:3px 0!important;border:0!important;white-space:normal!important;width:auto!important}.yield-detail__table--stack td[data-label]:before,.responsive-card-table td[data-label]:before{content:attr(data-label);display:block;margin-bottom:2px;color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.yield-detail__table--stack .yield-detail__date-ranges>div{white-space:normal!important}.yield-detail__table--stack td.table-cell-action,.responsive-card-table td.table-cell-action{margin-top:8px;display:flex!important;flex-wrap:wrap;gap:6px}.yield-detail__table--stack td.table-cell-action button,.responsive-card-table td.table-cell-action button{margin:0!important}.property-details-grid{grid-template-columns:1fr}.rental-detail-page__hero,.rental-detail-section__header,.settings-page__hero{flex-direction:column;align-items:stretch}.settings-page__grid,.users-modal__grid,.rental-detail-grid{grid-template-columns:1fr}.rental-detail-field--span-2{grid-column:auto}.modal-card__header,.pricing-page__header{flex-direction:column}.pricing-preview__frame{grid-template-columns:1fr}.pricing-preview__x-axis{margin-left:0}.seasonality-range{grid-template-columns:1fr}.seasonality-chart{padding:12px;gap:10px}.seasonality-chart__heading span{display:none}.seasonality-chart__canvas{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding-bottom:18px}.seasonality-chart__frame{grid-template-columns:42px 720px;gap:6px;width:max-content}.seasonality-chart__y-axis{position:sticky;left:0;z-index:2;background:var(--surface);padding-right:4px;font-size:.7rem}.seasonality-chart__svg{width:720px;aspect-ratio:2 / 1}.seasonality-chart__months{margin-left:48px;width:720px;font-size:.7rem}th,td{padding:6px 10px;font-size:.78rem}th:first-child,td:first-child{padding-left:12px}th:last-child,td:last-child{padding-right:12px}.table-section-title{padding:10px 12px 8px;font-size:.85rem}.table-pagination{padding:6px 12px;flex-direction:column;gap:6px;align-items:stretch}.table-pagination__controls{justify-content:space-between}.short-gap-factor-list,.yield-detail__params{grid-template-columns:1fr;row-gap:4px}.short-gap-factor-list dt,.yield-detail__params dt{margin-top:6px}.short-gap-factor-list dd code,.yield-detail__params dd code,pre,code{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.yield-detail__section--boxed,.yield-detail{min-width:0}.yield-detail__section--boxed{padding:12px 14px}.modal-card{padding:18px 16px 14px}.filter-field--range{flex:1 1 100%}}@media(max-width:560px){.filter-field{flex:1 1 100%;max-width:none}.filter-reset-icon{margin-left:auto}th,td{padding:5px 8px;font-size:.74rem}}.pricing-breakdown-modal{width:min(980px,calc(100vw - 48px))}.pricing-breakdown-modal__subtitle{margin:8px 0 0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:.88rem}.pricing-breakdown-modal__subtitle strong{color:var(--heading)}.pricing-breakdown-modal__dot{color:#c4cbdb}.pricing-breakdown-modal__title-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.pricing-breakdown-modal__reservation-link{display:inline-flex;align-items:center;padding:6px 14px;border-radius:8px;background:var(--accent);color:#fff;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .14s ease}.pricing-breakdown-modal__reservation-link:hover{background:var(--accent-strong);text-decoration:none}.pricing-breakdown-modal__close{width:32px;height:32px;display:grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--muted);font-size:1.3rem;line-height:1;cursor:pointer;transition:border-color .14s ease,color .14s ease,background .14s ease}.pricing-breakdown-modal__close:hover{border-color:var(--accent);color:var(--accent);background:var(--surface-strong)}.pricing-breakdown{display:grid;gap:18px}.pricing-breakdown__summary{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap}.pricing-breakdown__summary-card{flex:1 1 130px;display:grid;gap:4px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-strong)}.pricing-breakdown__summary-card span{color:var(--muted);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.pricing-breakdown__summary-card strong{color:var(--heading);font-size:1.12rem;font-weight:700;letter-spacing:-.01em}.pricing-breakdown__summary-card.is-final{background:var(--accent);border-color:var(--accent)}.pricing-breakdown__summary-card.is-final span,.pricing-breakdown__summary-card.is-final strong{color:#fff}.pricing-breakdown__summary-card.is-final.is-clamped{background:#a14e3f;border-color:#a14e3f}.pricing-breakdown__summary-card.is-range{flex-basis:180px}.pricing-breakdown__arrow{align-self:center;color:#c4cbdb;font-size:1.2rem;font-weight:700}.pricing-breakdown__table-wrapper{overflow-x:auto;min-width:0}.pricing-breakdown__table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}.pricing-breakdown__col-index{width:30px}.pricing-breakdown__col-evaluator{width:auto}.pricing-breakdown__col-adjustment{width:120px}.pricing-breakdown__col-path{width:190px}.pricing-breakdown__col-effects{width:110px}.pricing-breakdown__table.yield-detail__table--framed{border-collapse:separate;border-spacing:0}.pricing-breakdown__table thead th{padding:10px 12px;background:var(--surface-strong);color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;text-align:left;border-bottom:1px solid var(--border)}.pricing-breakdown__table tbody td{padding:12px;border-bottom:1px solid var(--border);vertical-align:middle;font-size:.9rem}.pricing-breakdown__table thead th:first-child,.pricing-breakdown__table tbody td:first-child{width:30px;min-width:30px;max-width:30px;padding-right:6px;padding-left:6px;text-align:center;white-space:nowrap}.pricing-breakdown__table tbody tr:last-child td{border-bottom:0}.pricing-breakdown__index{width:30px;color:var(--muted);font-weight:700;font-variant-numeric:tabular-nums}.pricing-breakdown__evaluator{display:grid;gap:2px;min-width:0}.pricing-breakdown__evaluator strong{color:var(--heading);font-size:.94rem;overflow-wrap:anywhere}.pricing-breakdown__evaluator span{color:var(--muted);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.pricing-breakdown__evaluator .pricing-breakdown__evaluator-note{margin-top:2px;color:#3a4256;font-size:.78rem;font-weight:500;text-transform:none;letter-spacing:0}.pricing-breakdown__evaluator-details{margin-top:2px}.pricing-breakdown__evaluator-details summary{color:var(--muted);cursor:pointer;font-size:.76rem;font-weight:700;line-height:1.2;text-transform:none}.pricing-breakdown__evaluator-details[open] summary{margin-bottom:3px}.pricing-breakdown__adjustment{display:inline-block;padding:3px 10px;border-radius:99px;background:#eef0f5;color:#5c6375;font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums}.pricing-breakdown__adjustment.is-positive{background:#42a26d24;color:#1f7a4a}.pricing-breakdown__adjustment.is-negative{background:#f04b371f;color:#b2371f}.pricing-breakdown__path{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.pricing-breakdown__path strong{color:var(--heading);font-weight:700}.pricing-breakdown__path-arrow{color:#c4cbdb}.pricing-breakdown__effects{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:flex-end}.capture-kpis-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:14px 16px}@media(max-width:720px){.capture-kpis-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.capture-kpi-stat{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:var(--surface-strong);border:1px solid var(--border);border-radius:6px;min-width:0}.capture-kpi-stat__label{font-size:.75rem;color:var(--text-muted);letter-spacing:-.01em}.capture-kpi-stat__value{font-size:1.1rem;font-weight:600;color:var(--text-strong);font-variant-numeric:tabular-nums}.headline-kpis-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:14px 16px}@media(max-width:720px){.headline-kpis-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.headline-kpi-card{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:4px;padding:14px;background:var(--surface-strong);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0}.headline-kpis-grid--market .headline-kpi-card{background:transparent;border-style:dashed}.headline-kpi-card__value{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;color:var(--text-strong);font-variant-numeric:tabular-nums;line-height:1.1}.headline-kpis-grid--market .headline-kpi-card__value{color:var(--muted-strong);font-weight:700}.table-subsection-title{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:10px 16px 6px}.market-revpar-sparkline__chart{padding:0 16px 12px}.market-revpar-sparkline__chart svg{display:block;width:100%;height:44px}.market-revpar-sparkline__line{stroke:var(--accent, #4f7cff)}.market-revpar-sparkline__bounds{display:flex;justify-content:space-between;font-size:.7rem;color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:4px}.experiment-summary__header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:14px 16px 0}.experiment-summary__header h2{margin:2px 0 0;font-size:1.05rem;color:var(--text-strong)}.experiment-summary__header .muted{margin:4px 0 0;font-size:.84rem}.experiment-modal{width:min(540px,calc(100vw - 48px));padding:0;overflow:hidden}.experiment-modal__header{display:flex;align-items:center;gap:14px;padding:20px 24px 18px;border-bottom:1px solid var(--border);background:radial-gradient(460px 150px at 8% -40%,var(--accent-tint-strong),transparent 70%),var(--surface)}.experiment-modal__header h2{margin:2px 0 0;font-size:1.18rem;color:var(--text-strong)}.experiment-modal__glyph{flex:0 0 auto;display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius-lg);border:1px solid var(--accent-tint-strong);background:var(--accent-tint);color:var(--accent)}.experiment-modal__body{display:grid;gap:16px;padding:18px 24px 20px}.experiment-modal__body .modal-error{margin:0}.experiment-field{display:flex;flex-direction:column;gap:6px}.experiment-label{color:var(--muted-strong);font-size:.7rem;font-weight:700;letter-spacing:var(--label-tracking);text-transform:uppercase}.experiment-split{display:flex;flex-direction:column;gap:6px;padding:12px 14px 14px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-strong)}.experiment-split__readout{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:2px}.experiment-split__arm{display:flex;flex-direction:column;gap:1px}.experiment-split__arm--baseline{align-items:flex-end;text-align:right}.experiment-split__value{font-family:var(--font-mono);font-size:1.5rem;font-weight:700;line-height:1.1;color:var(--muted-strong);font-variant-numeric:tabular-nums}.experiment-split__arm--treatment .experiment-split__value{color:var(--accent)}.experiment-split__caption{font-size:.74rem;font-weight:600;color:var(--muted)}.experiment-split__slider{appearance:none;-webkit-appearance:none;width:100%;height:22px;margin:6px 0 0;background:transparent;cursor:pointer}.experiment-split__slider:focus-visible{outline:none;border-radius:999px;box-shadow:0 0 0 3px var(--accent-tint-strong)}.experiment-split__slider::-webkit-slider-runnable-track{height:10px;border-radius:999px;background-color:var(--surface-sunken);background-image:repeating-linear-gradient(-55deg,var(--accent-hi) 0 5px,var(--accent) 5px 10px);background-size:var(--pct, 20%) 100%;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px var(--border)}.experiment-split__slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;margin-top:-4px;border-radius:50%;background:var(--surface);border:2px solid var(--accent);box-shadow:var(--shadow-sm)}.experiment-split__slider::-moz-range-track{height:10px;border-radius:999px;background-color:var(--surface-sunken);background-image:repeating-linear-gradient(-55deg,var(--accent-hi) 0 5px,var(--accent) 5px 10px);background-size:var(--pct, 20%) 100%;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px var(--border)}.experiment-split__slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--surface);border:2px solid var(--accent);box-shadow:var(--shadow-sm)}.experiment-split__hint{margin:4px 0 0;font-size:.8rem;line-height:1.4;color:var(--muted);font-weight:400}.experiment-sources{display:grid;grid-template-columns:1fr 1fr;gap:10px}.experiment-source{position:relative;display:flex;flex-direction:column;gap:2px;padding:10px 36px 10px 12px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);cursor:pointer;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.experiment-source:hover{border-color:var(--border-strong)}.experiment-source--on{border-color:var(--accent);background:var(--accent-tint)}.experiment-source:has(input:focus-visible){box-shadow:0 0 0 3px var(--accent-tint-strong)}.experiment-source input{position:absolute;opacity:0;pointer-events:none}.experiment-source__name{font-size:.88rem;font-weight:700;color:var(--text-strong)}.experiment-source__desc{font-size:.76rem;font-weight:400;line-height:1.35;color:var(--muted)}.experiment-source__check{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;border:1.5px solid var(--border-strong);background:var(--surface);color:transparent;font-size:.62rem;font-weight:800;line-height:1;transition:background .12s ease,border-color .12s ease,color .12s ease}.experiment-source--on .experiment-source__check{border-color:var(--accent);background:var(--accent);color:#fff}.experiment-modal__footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px 24px;border-top:1px solid var(--border);background:var(--surface-strong)}.experiment-modal__note{font-size:.78rem;color:var(--muted)}.calendar-today-button{margin-left:auto;display:inline-flex;align-items:center;height:32px;padding:0 12px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-strong);font-size:.85rem;cursor:pointer}.calendar-today-button:hover{background:var(--accent-tint);border-color:var(--accent);color:var(--accent)}.calendar-banner{padding:8px 14px;border-radius:6px;border:1px solid var(--border);background:var(--accent-tint);color:var(--accent-strong);font-size:.82rem}.calendar-placeholder{padding:32px;text-align:center;color:var(--muted);font-size:.9rem}.calendar-grid-wrap{position:relative}.calendar-grid__nav{display:flex;align-items:center;gap:8px;padding:0 0 8px}.calendar-grid__nav-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-strong);font-size:1.1rem;line-height:1;cursor:pointer}.calendar-grid__nav-button:hover{background:var(--accent-tint);border-color:var(--accent);color:var(--accent)}.calendar-grid__nav-month{min-width:130px;text-align:center;font-size:.85rem;font-weight:600;color:var(--text-strong)}.calendar-legend{margin-left:auto;display:inline-flex;align-items:center;gap:9px}.calendar-legend__label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.calendar-legend__scale{display:inline-flex;align-items:center;gap:6px;font-size:.66rem;font-variant-numeric:tabular-nums;color:var(--muted)}.calendar-legend__bar{width:96px;height:8px;border-radius:999px;border:1px solid var(--border);background:linear-gradient(90deg,#a2eba2,#e6e689,#e17070)}.calendar-grid{position:relative;overflow:auto;max-height:calc(100vh - 220px);cursor:grab;-webkit-user-select:none;user-select:none;background:var(--surface);border-radius:8px}.calendar-grid--dragging{cursor:grabbing}.calendar-grid__inner{position:relative}.calendar-grid__header{position:sticky;top:0;z-index:4;background:var(--surface);border-bottom:1px solid var(--border)}.calendar-grid__corner{position:sticky;left:0;top:0;height:100%;background:var(--surface);border-right:1px solid var(--border);z-index:2}.calendar-grid__header-days{position:absolute;top:0;bottom:0}.calendar-grid__month-label{position:absolute;top:4px;height:18px;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding-left:6px;white-space:nowrap;overflow:hidden;border-left:1px solid var(--border)}.calendar-grid__day{position:absolute;top:22px;bottom:0;display:flex;align-items:center;justify-content:center;font-size:.72rem;color:var(--muted);border-left:1px solid transparent}.calendar-grid__day.is-weekend{background:var(--surface-sunken)}.calendar-grid__day-num{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;font-variant-numeric:tabular-nums;font-weight:600;color:var(--text);border-radius:999px;padding:0 6px}.calendar-grid__day.is-today .calendar-grid__day-num{background-image:var(--grad);color:#fff;box-shadow:0 2px 8px var(--accent-glow)}.calendar-grid__day.is-weekend .calendar-grid__day-num{color:var(--muted)}.calendar-grid__body{position:relative}.calendar-grid__row{position:relative;border-bottom:1px solid var(--border);display:flex;align-items:stretch}.calendar-grid__row.is-odd{background:var(--surface-strong)}.calendar-grid__rental{position:sticky;left:0;z-index:3;display:flex;align-items:center;padding:0 12px;background:inherit;border-right:1px solid var(--border);font-size:.83rem;color:var(--text-strong);overflow:hidden}.calendar-grid__row.is-odd .calendar-grid__rental{background:var(--surface-strong)}.calendar-grid__row.is-even .calendar-grid__rental{background:var(--surface)}.calendar-grid__rental-link{color:inherit;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.calendar-grid__rental-link:hover{color:var(--accent)}.calendar-grid__row-days{position:relative}.calendar-grid__cell{position:absolute;top:0;bottom:0;border-right:1px solid var(--border);color:var(--muted)}.calendar-grid__cell.is-weekend{background:#5b54e80a}.calendar-grid__cell.is-unavailable{background-image:repeating-linear-gradient(-45deg,rgba(20,31,54,.22) 0,rgba(20,31,54,.22) 4px,transparent 4px,transparent 8px)}.calendar-grid__price{position:absolute;top:1px;left:0;right:0;text-align:center;font-variant-numeric:tabular-nums;font-size:.66rem;color:var(--muted-strong);pointer-events:none;z-index:2}.calendar-grid__bar{position:absolute;top:15px;bottom:4px;background:#5b54e824;border:1px solid rgba(91,84,232,.34);border-radius:6px;color:var(--accent-strong);font-size:.72rem;display:flex;align-items:center;gap:6px;padding:0 6px;overflow:hidden;white-space:nowrap;z-index:1;cursor:pointer;font-family:inherit;text-align:left;transition:box-shadow .14s ease,filter .14s ease}.calendar-grid__bar:hover{background:#5b54e833;border-color:var(--accent)}.calendar-grid__bar-label{flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis;font-weight:500}.calendar-grid__bar-price{flex:0 0 auto;font-variant-numeric:tabular-nums;font-weight:600}.calendar-grid__today-line{position:absolute;top:0;width:3px;margin-left:-1px;background:var(--alert);box-shadow:0 0 0 1px #fff6;pointer-events:none;z-index:2}.calendar-grid__today-flag{position:absolute;top:2px;left:1px;transform:translate(-50%);padding:1px 6px;border-radius:999px;background:var(--alert);color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.calendar-grid__empty{padding:32px;text-align:center;color:var(--muted);font-size:.9rem}.calendar-reservation-modal{width:min(420px,92vw)}.calendar-reservation-modal__table{width:100%;border-collapse:collapse;margin-top:12px}.calendar-reservation-modal__table th,.calendar-reservation-modal__table td{padding:8px 14px;font-size:.85rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.calendar-reservation-modal__table th{color:var(--muted);font-weight:500;width:40%;white-space:nowrap}.calendar-reservation-modal__table td{color:var(--text-strong);font-variant-numeric:tabular-nums}.calendar-reservation-modal__table tr:last-child th,.calendar-reservation-modal__table tr:last-child td{border-bottom:none}.view-filter-summary{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.view-summary-chip{display:inline-flex;align-items:center;min-height:20px;padding:0 10px;border-radius:999px;font-size:.72rem;font-weight:600;line-height:1;background:var(--surface-muted, #eef2f7);color:var(--text-secondary, #475569);white-space:nowrap}.view-status-badge{display:inline-flex;align-items:center;min-height:20px;padding:0 10px;border-radius:999px;font-size:.72rem;font-weight:600;line-height:1;background:#059669;color:#fff}.view-editor{width:min(620px,calc(100vw - 48px));display:grid;gap:22px}.view-editor .modal-card__header{padding-bottom:18px;border-bottom:1px solid var(--border, #e2e8f0)}.view-editor__section{display:grid;gap:12px}.view-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.view-filter-cell{display:grid;gap:6px;min-width:0}.view-filter-cell__label{font-size:.72rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text-secondary, #64748b)}.view-filter-cell .filter-field--dropdown,.view-filter-cell .filter-dropdown__trigger{width:100%}.view-tag-picker{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0}@media(max-width:560px){.view-filter-grid{grid-template-columns:minmax(0,1fr)}}.view-tag-option{cursor:pointer;min-height:28px;padding:0 14px;border:1px solid transparent;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.view-tag-option--muted{background:transparent;color:var(--text-secondary, #475569);border-color:var(--border-subtle, #cbd5e1)}.view-tag-option--muted:hover{border-color:var(--text-secondary, #94a3b8);color:var(--text-primary, #1e293b)}.active-view-switcher{display:inline-flex;align-items:center;gap:4px;color:var(--text-secondary, #475569)}.active-view-switcher.is-active{color:var(--accent, #2563eb)}.investigation-collapse-toggle{display:inline-flex;align-items:center;gap:9px;padding:0;margin:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left}.investigation-collapse-toggle:hover{color:var(--accent)}.investigation-collapse-toggle__chevron{flex:none;color:var(--muted);transform:rotate(-90deg);transition:transform .16s ease}.investigation-collapse-toggle__chevron.is-open{transform:rotate(0)}.investigation-collapse-toggle:hover .investigation-collapse-toggle__chevron{color:var(--accent)}.investigation-panel__body{display:grid;gap:12px;padding:16px 20px 20px}.investigation-intro{margin:0;color:var(--muted-strong)}.investigation-empty{margin:0;padding:4px 0;color:var(--muted)}.investigation-running{display:grid;gap:4px;padding:4px 0}.investigation-runs{display:flex;flex-wrap:wrap;gap:6px;padding:10px 20px 0}.investigation-run-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;font-size:.75rem;color:var(--muted-strong);background:var(--surface-strong);border:1px solid var(--border);border-radius:999px;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.investigation-run-pill:hover{background:var(--surface);color:var(--text-strong)}.investigation-run-pill.is-active{color:#fff;background:var(--accent);border-color:var(--accent)}.investigation-run-pill.is-failed{text-decoration:line-through;opacity:.7}.investigation-run-pill__label{font-weight:600}.investigation-run-pill__meta{opacity:.75}.investigation-run-pill__count{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 5px;font-size:.65rem;font-weight:700;color:var(--text-strong);background:var(--surface);border-radius:999px}.investigation-run-pill.is-active .investigation-run-pill__count{color:var(--accent);background:#fff}.investigation-run-pill__dot{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:investigation-pulse 1.1s ease-in-out infinite}.investigation-run-pill.is-active .investigation-run-pill__dot{background:#fff}@keyframes investigation-pulse{0%,to{opacity:.35}50%{opacity:1}}.investigation-findings{display:grid;gap:0;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-strong)}.investigation-finding{display:grid;gap:8px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-strong)}.investigation-finding--row{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:2px 12px;min-height:28px;font-size:.8125rem;border:none;border-radius:0;border-bottom:1px solid var(--border);background:transparent}.investigation-finding--row:last-child{border-bottom:none}.investigation-finding--row:hover{background:var(--surface)}.investigation-finding--row .status-badge{font-size:.675rem;padding:0 7px;line-height:1.5;white-space:nowrap}.investigation-finding__head{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.investigation-finding__name{flex-shrink:0;max-width:34%;overflow:hidden;font-weight:600;white-space:nowrap;text-overflow:ellipsis;color:var(--text-strong)}.investigation-finding__details{flex-shrink:0;margin-left:auto;font-size:.75rem;white-space:nowrap}.investigation-finding__text{margin:0;line-height:1.55;color:var(--text)}.investigation-ai-modal{--ai-grad: linear-gradient(120deg, #4f46e5 0%, #7c3aed 48%, #d946ef 100%);width:min(720px,calc(100vw - 48px));padding:0}.ai-drawer__header{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;gap:14px;padding:22px 26px 20px;color:#fff;background:var(--ai-grad)}.ai-drawer__glyph{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#ffffff2e;box-shadow:inset 0 0 0 1px #ffffff47}.ai-drawer__heading{flex:1 1 auto;min-width:0}.ai-drawer__eyebrow{margin:0 0 3px;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ffffffd9}.ai-drawer__header h2{margin:0;font-size:1.32rem;line-height:1.2;color:#fff}.ai-drawer__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:9px;font-size:.78rem;color:#ffffffe6}.ai-drawer__meta>span{display:inline-flex;align-items:center;gap:5px}.ai-drawer__model{padding:3px 10px;border-radius:999px;font-weight:600;background:#ffffff2e;box-shadow:inset 0 0 0 1px #ffffff4d}.ai-drawer__close{flex:0 0 auto;cursor:pointer;padding:7px 15px;border-radius:var(--radius-button);font:inherit;font-weight:600;color:#fff;background:#ffffff29;border:1px solid rgba(255,255,255,.42);transition:background .15s ease}.ai-drawer__close:hover{background:#ffffff47}.ai-drawer__body{display:grid;gap:16px;padding:22px 26px 26px}.ai-hero{position:relative;padding:22px 26px 24px 28px;border-radius:var(--radius-lg);border:1px solid var(--accent-tint-strong);background:radial-gradient(130% 130% at 0% 0%,var(--accent-tint),transparent 62%),var(--surface-strong);overflow:hidden}.ai-hero:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--ai-grad)}.ai-hero__label{display:inline-flex;align-items:center;gap:6px;margin:0 0 12px;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-strong)}.ai-hero__text{margin:0;font-size:.9rem;line-height:1.6;color:var(--text)}.ai-report{display:grid;gap:14px;margin-top:16px}.ai-report__section{display:grid;gap:3px;padding-left:12px;border-left:2px solid color-mix(in srgb,var(--accent) 45%,transparent)}.ai-report__heading{margin:0;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.ai-report__body{margin:0;font-size:.875rem;line-height:1.55;color:var(--text)}.ai-hero__findings{display:grid;gap:14px;margin-top:18px}.ai-chip{justify-self:start;display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.03em;line-height:1.5;text-transform:capitalize}.ai-chip--primary{color:#fff;background:var(--ai-grad);box-shadow:0 2px 10px var(--accent-glow)}.ai-drivers{list-style:none;margin:0;padding:0;display:grid;gap:7px}.ai-drivers li{position:relative;padding-left:18px;font-size:.82rem;line-height:1.45;color:var(--text)}.ai-drivers li:before{content:"";position:absolute;left:3px;top:.5em;width:6px;height:6px;border-radius:50%;background:var(--ai-grad)}.ai-metrics{border-top:1px solid var(--border)}.ai-metrics>summary{cursor:pointer;list-style:none;padding:10px 0 4px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-strong)}.ai-metrics>summary::-webkit-details-marker{display:none}.ai-metrics>summary:before{content:"▸ "}.ai-metrics[open]>summary:before{content:"▾ "}.ai-metrics__inner{display:grid;gap:14px;padding-top:8px}.ai-metrics__inner .rental-detail-section{padding:0;gap:8px}.ai-metrics__inner .rental-detail-section h3{margin:0 0 2px;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.ai-metrics__inner .rental-detail-list{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.ai-metrics__inner .rental-detail-list .rental-detail-field{display:flex;flex-direction:column;gap:3px;padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong)}.ai-metrics__inner .rental-detail-list .rental-detail-field:last-child{border-bottom:1px solid var(--border)}.ai-metrics__inner .rental-detail-list .rental-detail-field strong{font-size:.6rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.ai-metrics__inner .rental-detail-list .rental-detail-field span{font-size:.9rem;font-weight:600;color:var(--text-strong)}.ai-metrics__inner .yield-detail__table{font-size:.78rem}.overview-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}@media(max-width:1180px){.overview-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.overview-kpis{grid-template-columns:1fr}}.okpi{position:relative;overflow:hidden;display:grid;gap:11px;padding:16px 16px 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.okpi:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:var(--accent);opacity:.55}.okpi__top{display:flex;align-items:center;justify-content:space-between;gap:8px}.okpi__label{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.okpi__icon{width:30px;height:30px;flex:none;display:grid;place-items:center;border-radius:9px;color:var(--accent);background:var(--grad-soft)}.okpi__value{font-size:1.9rem;font-weight:800;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums;color:var(--text-strong)}.okpi__foot{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:20px}.okpi__sub{font-size:.78rem;color:var(--muted)}.okpi__bar{height:6px;border-radius:999px;background:var(--surface-sunken);overflow:hidden}.okpi__bar>span{display:block;height:100%;border-radius:999px;background:var(--grad)}.delta{display:inline-flex;align-items:center;gap:3px;font-size:.74rem;font-weight:700;padding:2px 8px;border-radius:999px;font-variant-numeric:tabular-nums;white-space:nowrap}.delta svg{width:12px;height:12px}.delta--up{color:var(--positive);background:var(--positive-soft)}.delta--down{color:var(--negative);background:var(--negative-soft)}.delta--flat{color:var(--muted-strong);background:var(--surface-sunken)}.res-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:8px;flex:none;vertical-align:middle}.res-dot--ok{background:var(--positive)}.res-dot--warm{background:var(--warning)}.res-dot--cancelled{background:var(--negative)}.list-summary{display:flex;align-items:center;gap:22px;padding:12px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.list-summary__stat{display:flex;flex-direction:column;gap:3px}.list-summary__value{font-size:1.3rem;font-weight:800;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums;color:var(--text-strong)}.list-summary__value--muted{color:var(--muted-strong)}.list-summary__label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.list-summary__live{display:inline-flex;align-items:center;gap:7px;color:var(--accent)}.list-summary__divider{width:1px;align-self:stretch;background:var(--border)}.list-summary__spacer{flex:1}.list-summary__filtered{font-size:.74rem;font-weight:600;color:var(--accent);padding:4px 11px;border-radius:999px;background:var(--grad-soft)}.prop-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:9px;flex:none;vertical-align:middle}.prop-dot--active{background:var(--positive);box-shadow:0 0 0 3px var(--positive-soft)}.prop-dot--pending{background:var(--warning);box-shadow:0 0 0 3px var(--warning-soft, rgba(217, 129, 10, .13))}.prop-dot--inactive{background:var(--muted)}.rec-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;font-size:.72rem;font-weight:700;color:var(--accent);background:var(--accent-tint-strong);border:1px solid var(--accent-soft)}.table-row--clickable:hover td:first-child{box-shadow:inset 3px 0 0 0 var(--accent)}
