:root{--color-brand: #4f46e5;--color-brand-600: #4338ca;--color-brand-500: #6366f1;--color-brand-50: #eef0fe;--color-accent: #0d9488;--color-gold: #a97d3f;--color-gold-600: #8c6631;--color-gold-50: #f6eede;--color-danger: #e5484d;--color-warn: #d97706;--color-danger-700: #b91c1c;--color-warn-700: #92400e;--color-bg: #ffffff;--color-canvas: #faf9f6;--color-card: #ffffff;--color-surface: #f4f5f7;--color-surface-2: #eceef1;--color-border: #e8eaed;--color-border-strong: #d6d9df;--color-text: #0f1729;--color-text-muted: #64748b;--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--radius-xl: 22px;--space: 8px;--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--font-display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, "Times New Roman", serif;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .05);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05), 0 1px 3px rgba(15, 23, 42, .06);--shadow-md: 0 4px 12px rgba(15, 23, 42, .07), 0 2px 6px rgba(15, 23, 42, .04);--shadow-lg: 0 14px 34px rgba(15, 23, 42, .11), 0 4px 12px rgba(15, 23, 42, .06);--ring: 0 0 0 3px color-mix(in srgb, var(--color-brand-500) 32%, transparent);--transition: .16s cubic-bezier(.32, .72, 0, 1);--header-h: 56px;--sidebar-w: 244px;--consent-h: 0px;--content-max: 1180px;--measure: 68ch;--form-max: 640px;--aside-w: 340px;--z-sticky: 100;--z-drawer: 200;--z-overlay: 300;--z-modal: 400;--z-popover: 500;--z-toast: 600;--z-consent: 700;--z-skip: 900;--grad-brand: linear-gradient(125deg, #4338ca 0%, #6d28d9 48%, #0d9488 100%);--grad-gold: linear-gradient(120deg, #c79a54 0%, #9a7638 100%)}[data-theme=dark]{--color-bg: #12151d;--color-canvas: #0a0b0f;--color-card: #14171f;--color-surface: #191d26;--color-surface-2: #21262f;--color-border: #262a33;--color-border-strong: #363b45;--color-text: #f3f4f6;--color-text-muted: #9aa3b2;--color-brand: #6366f1;--color-brand-600: #7c7ef3;--color-brand-500: #818cf8;--color-brand-50: #1c1f3d;--color-accent: #2dd4bf;--color-gold: #d8b878;--color-gold-600: #e6cb95;--color-gold-50: #241f16;--color-danger: #f0616a;--color-warn: #f59e0b;--color-danger-700: var(--color-danger);--color-warn-700: var(--color-warn);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .5);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .55);--shadow-md: 0 6px 18px rgba(0, 0, 0, .55);--shadow-lg: 0 18px 44px rgba(0, 0, 0, .65);--grad-brand: linear-gradient(125deg, #3730a3 0%, #6d28d9 48%, #0f766e 100%);--grad-gold: linear-gradient(120deg, #d8b878 0%, #b0894e 100%)}*{box-sizing:border-box}html,body,#root{height:100%}button,input,select,textarea{font:inherit}body{margin:0;font-family:var(--font-sans);color:var(--color-text);background:var(--color-canvas);line-height:1.5;letter-spacing:-.006em;font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1{font-family:var(--font-display);font-optical-sizing:auto;font-size:2.25rem;font-weight:600;letter-spacing:-.021em;line-height:1.08;margin:0 0 calc(var(--space) * 1.5)}h2{font-size:1.3rem;font-weight:680;letter-spacing:-.02em;line-height:1.3;margin:calc(var(--space) * 3) 0 var(--space)}h3{font-size:1.02rem;font-weight:620;letter-spacing:-.01em;line-height:1.35;margin:calc(var(--space) * 2) 0 var(--space)}p{margin:0 0 var(--space)}.display-num{font-family:var(--font-display);font-optical-sizing:auto;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.page-enter{animation:page-in .28s cubic-bezier(.4,0,.2,1)}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}a{color:var(--color-brand-500);text-decoration:none}a:hover{text-decoration:underline}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--color-text-muted) 45%,transparent) transparent}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-text-muted) 42%,transparent);border-radius:999px;border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-text-muted) 68%,transparent);background-clip:padding-box}::-webkit-scrollbar-corner{background:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--color-brand-500);outline-offset:2px}.skip-link{position:absolute;inset-block-start:-100%;inset-inline-start:var(--space);z-index:var(--z-skip);padding:calc(var(--space) * 1) calc(var(--space) * 2);background:var(--color-brand);color:#fff;border-radius:var(--radius);text-decoration:none}.skip-link:focus{inset-block-start:var(--space)}.topbar{position:sticky;inset-block-start:0;z-index:var(--z-sticky);display:flex;align-items:center;gap:12px;height:var(--header-h);padding-inline:calc(var(--space) * 2);border-bottom:1px solid var(--color-border);background:color-mix(in srgb,var(--color-card) 72%,transparent);-webkit-backdrop-filter:saturate(1.6) blur(12px);backdrop-filter:saturate(1.6) blur(12px)}.topbar__right{margin-inline-start:auto;display:flex;align-items:center;gap:calc(var(--space) * 2)}.topbar__email{font-size:.8125rem;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar__burger{display:none;align-items:center;justify-content:center;min-width:40px;min-height:40px;background:none;border:none;cursor:pointer;font-size:1.25rem;color:var(--color-text);padding:4px 6px;border-radius:var(--radius-sm)}.topbar__burger:hover{background:var(--color-surface)}.topbar__icon-link{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;font-size:1rem;text-decoration:none;transition:background var(--transition)}.topbar__icon-link:hover{background:var(--color-surface);text-decoration:none}.topbar__icon-link .nav-badge{position:absolute;inset-block-start:2px;inset-inline-end:0;margin:0}.topbar__back{display:inline-flex;align-items:center;gap:6px;padding:6px 13px 6px 10px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-card);color:var(--color-text);font:inherit;font-size:.85rem;font-weight:550;cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition)}.topbar__back:hover{background:var(--color-surface);border-color:var(--color-brand-500);color:var(--color-brand-500)}.topbar__back>span[aria-hidden]{font-size:1.05rem;line-height:1}.topbar__public{display:flex;align-items:center;gap:2px;margin-inline-start:calc(var(--space) * 1.5);min-width:0;overflow-x:auto;scrollbar-width:none}.topbar__public::-webkit-scrollbar{display:none}.topbar__public,.route-tabs{scroll-padding-inline:calc(var(--space) * 3);scroll-snap-type:none;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 24px,#000 calc(100% - 24px),transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 24px,#000 calc(100% - 24px),transparent 100%);animation:nav-scroll-fade steps(1) both;animation-timeline:scroll(self inline)}@keyframes nav-scroll-fade{0%{-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 24px),transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 24px),transparent 100%)}to{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 24px,#000 100%);mask-image:linear-gradient(to right,transparent 0,#000 24px,#000 100%)}}@media(prefers-reduced-motion:reduce){.topbar__public,.route-tabs{animation:none}}.topbar__public-link{padding:7px 12px;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;color:var(--color-text-muted);text-decoration:none;white-space:nowrap;transition:background var(--transition),color var(--transition)}.topbar__public-link:hover{color:var(--color-text);background:var(--color-surface);text-decoration:none}.topbar__public-link.is-active{color:var(--color-brand-500);background:var(--color-brand-50)}@media(max-width:640px){.topbar__back-label{display:none}.topbar__public-link{padding:7px 9px;font-size:.82rem}}.app-body{display:flex;align-items:flex-start}.sidebar{position:sticky;inset-block-start:var(--header-h);flex:0 0 var(--sidebar-w);width:var(--sidebar-w);height:calc(100vh - var(--header-h));display:flex;flex-direction:column;overflow:visible;padding:calc(var(--space) * 1.75) calc(var(--space) * 1.5);border-inline-end:1px solid var(--color-border);background:var(--color-card);transition:transform var(--transition),flex-basis var(--transition),width var(--transition)}.sidebar__nav{display:flex;flex-direction:column;flex:1 1 auto;gap:2px;overflow-y:auto;padding-bottom:var(--space)}.sidebar-role{display:flex;flex-direction:column;gap:5px;margin:0 calc(var(--space) * .5) calc(var(--space) * 1.5);padding:calc(var(--space) * 1.25) calc(var(--space) * 1.5);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.sidebar-role__label{font-size:.66rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-muted)}.sidebar-role__select{width:100%;padding:7px 10px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font:inherit;font-weight:600;cursor:pointer;transition:border-color var(--transition),box-shadow var(--transition)}.sidebar-scrim{display:none}.nav-group{display:flex;flex-direction:column;gap:2px;margin-bottom:calc(var(--space) * 1.5)}.nav-group__label{font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);padding:calc(var(--space) * 1) calc(var(--space) * 1.25) 4px}.nav-link{display:flex;align-items:center;gap:10px;padding:8px calc(var(--space) * 1.25);border-radius:var(--radius-sm);color:var(--color-text);font-size:.9rem;font-weight:500;line-height:1.2;text-decoration:none;transition:background var(--transition),color var(--transition)}.nav-link__icon{flex:0 0 auto;color:var(--color-text-muted);transition:color var(--transition)}.nav-link:hover{background:var(--color-surface);text-decoration:none}.nav-link.is-active{background:var(--color-brand-50);color:var(--color-brand-500);font-weight:650;box-shadow:inset 3px 0 0 var(--color-brand-500)}.brand{font-weight:800;font-size:1.3rem;color:var(--color-brand);letter-spacing:-.02em;white-space:nowrap}.brand:before{content:"";display:inline-block;width:10px;height:10px;margin-inline-end:8px;border-radius:3px;background:linear-gradient(135deg,var(--color-brand-500),var(--color-accent));vertical-align:baseline}.nav-badge{display:inline-block;margin-inline-start:4px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--color-accent);color:#fff;font-size:.6875rem;line-height:16px;text-align:center;vertical-align:top}.role-switcher{display:flex;align-items:center;gap:var(--space);font-size:.8125rem;color:var(--color-text-muted)}.role-switcher__label{white-space:nowrap}.role-switcher select{padding:6px 10px;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text)}.app-main{flex:1 1 auto;min-width:0;max-width:var(--content-max);margin-inline:auto;padding:calc(var(--space) * 4.5) calc(var(--space) * 6)}.app-main--full{max-width:1100px}.app-main--marketing{max-width:none;margin:0;padding:0}.hero h1{font-size:2rem;letter-spacing:-.02em;margin-bottom:var(--space)}.hero p{color:var(--color-text-muted);font-size:1.125rem}.home-hero{padding:calc(var(--space) * 8) calc(var(--space) * 4);border-radius:var(--radius-lg);background:radial-gradient(1000px 380px at 15% -20%,color-mix(in srgb,var(--color-accent) 34%,transparent),transparent),linear-gradient(135deg,var(--color-brand) 0%,var(--color-brand-600) 62%,var(--color-brand-500) 100%);color:#fff;text-align:center;box-shadow:var(--shadow-lg)}.home-hero__eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;padding:4px 13px;border-radius:999px;background:#ffffff29;margin-bottom:calc(var(--space) * 1.5)}.home-hero h1{font-size:clamp(1.9rem,4vw,2.7rem);color:#fff;max-width:18ch;margin:0 auto var(--space)}.home-hero__sub{font-size:1.15rem;color:#ffffffe0;max-width:48ch;margin:0 auto calc(var(--space) * 3.5)}.home-hero__cta{display:flex;gap:calc(var(--space) * 1.5);justify-content:center;flex-wrap:wrap}.home-hero__cta .btn{background:#fff;color:var(--color-brand);border-color:#fff}.home-hero__cta .btn:hover{background:#ffffffe6}.home-hero__cta .btn--ghost{background:#ffffff24;color:#fff;border-color:#ffffff8c}.home-hero__cta .btn--ghost:hover{background:#ffffff3d}.home-features{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:calc(var(--space) * 2);margin-top:calc(var(--space) * 3)}.feature-card{display:flex;flex-direction:column;gap:6px;padding:calc(var(--space) * 2.5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-sm);color:var(--color-text);text-decoration:none;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.feature-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--color-brand-500);text-decoration:none}.feature-card__icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:var(--radius);background:var(--color-brand-50);color:var(--color-brand-500);margin-bottom:6px;transition:background var(--transition),color var(--transition)}.feature-card:hover .feature-card__icon{background:var(--color-brand-500);color:#fff}.feature-card__title{font-weight:650;font-size:1.02rem}.feature-card__desc{font-size:.875rem;color:var(--color-text-muted);line-height:1.45}.auth-page{display:flex;justify-content:center;padding-top:calc(var(--space) * 4)}.auth-card{width:100%;max-width:420px}.auth-card h1{margin-bottom:4px}.auth-card__brand{font-weight:800;font-size:1.4rem;color:var(--color-brand);letter-spacing:-.02em;margin-bottom:calc(var(--space) * 2)}.auth-card__brand:before{content:"";display:inline-block;width:11px;height:11px;margin-inline-end:8px;border-radius:3px;background:linear-gradient(135deg,var(--color-brand-500),var(--color-accent))}.auth-card__aux{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space) calc(var(--space) * 2);margin:calc(var(--space) * 2) 0 0;font-size:.875rem}.checkbox-field{display:flex;flex-direction:row;align-items:center;gap:8px;font-weight:400}.muted{color:var(--color-text-muted)}.route-fallback{display:flex;align-items:center;justify-content:center;min-height:40vh;color:var(--color-text-muted);font-size:.9375rem}.card{display:flex;align-items:center;justify-content:space-between;padding:calc(var(--space) * 2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-card);box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-border-strong)}.card__title{font-weight:600}.badge{display:inline-flex;align-items:center;font-size:.72rem;font-weight:600;padding:3px 9px;border-radius:999px;text-transform:lowercase;letter-spacing:.01em;white-space:nowrap}.badge--neutral{background:var(--color-surface-2);color:var(--color-text-muted)}.badge--info{background:color-mix(in srgb,var(--color-brand-500) 16%,transparent);color:var(--color-brand-500)}.badge--ok{background:color-mix(in srgb,var(--color-accent) 18%,transparent);color:var(--color-accent)}.badge--danger{background:color-mix(in srgb,var(--color-danger) 18%,transparent);color:var(--color-danger)}.badge--off{background:color-mix(in srgb,var(--color-danger) 14%,transparent);color:var(--color-danger-700)}.badge--gold{background:var(--color-gold-50);color:var(--color-gold-600);gap:4px}.conv-row{display:flex;align-items:center;gap:12px;width:100%;text-align:start;color:var(--color-text);padding:10px 12px;border-radius:var(--radius);cursor:pointer;border:1px solid var(--color-border);background:var(--color-card);transition:border-color var(--transition),background var(--transition)}.conv-row,.conv-row:hover{text-decoration:none}.conv-row:hover{border-color:var(--color-border-strong);background:var(--color-surface)}.conv-row.is-active{border-color:var(--color-brand-500);background:color-mix(in srgb,var(--color-brand-500) 8%,transparent)}.conv-row__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.conv-row__head{display:flex;align-items:center;gap:8px;min-width:0}.conv-row__title{min-width:0;font-size:.9375rem;font-weight:650;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-row__preview{min-width:0;font-size:.85rem;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-row__meta{font-size:.75rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.msg-list{display:flex;flex-direction:column;gap:calc(var(--space) * 1.5);min-width:0;max-height:min(52vh,560px);overflow-y:auto;overscroll-behavior:contain;margin-bottom:calc(var(--space) * 2.5)}.msg-row{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;max-width:100%}.msg-row--mine{align-items:flex-end}.msg-row>.row-actions{margin-top:0;gap:var(--space)}.msg-bubble{max-width:min(560px,88%);min-width:0;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);border-end-start-radius:4px;padding:10px 13px}.msg-bubble--mine{background:var(--color-brand-50);border-color:color-mix(in srgb,var(--color-brand-500) 28%,var(--color-border));border-end-start-radius:var(--radius);border-end-end-radius:4px}.msg-bubble__body{font-size:.9375rem;line-height:1.5;color:var(--color-text);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.msg-bubble .row-actions{margin-top:6px;gap:var(--space)}.msg-row--mine .msg-bubble .row-actions{justify-content:flex-end}.callout__title,.callout__text,.toast__title,.empty-state__title,.empty-state__msg,.listing-card__title,.stat-card__value,.section-head__title,.section-head__sub{overflow-wrap:anywhere}.time-chip{flex:0 0 auto;min-width:58px;padding:8px 10px;border-radius:var(--radius);text-align:center;background:var(--color-surface-2);color:var(--color-brand-500);font-variant-numeric:tabular-nums}.time-chip__t{display:block;font-size:1.05rem;font-weight:700;line-height:1.1}.stat-card--selected{border-color:var(--color-brand-500);box-shadow:0 0 0 1px var(--color-brand-500),var(--shadow-sm)}.field-label{display:block;font-size:.8125rem;font-weight:600;color:var(--color-text-muted);margin-bottom:6px}.danger-card{border-color:color-mix(in srgb,var(--color-danger) 38%,var(--color-border))}.list{list-style:none;padding:0;margin:calc(var(--space) * 2) 0 0}.list__item{padding:calc(var(--space) * 1.5) calc(var(--space) * 1.25);border-bottom:1px solid var(--color-border);border-radius:var(--radius-sm);transition:background var(--transition)}.list__item:last-child{border-bottom:none}.list__item--row:hover{background:var(--color-surface)}.form-card{max-width:460px;padding:calc(var(--space) * 3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-sm)}.form-card>h1:first-child,.form-card>h2:first-child{margin-top:0}.form-card form{display:flex;flex-direction:column;gap:calc(var(--space) * 1.75);margin-top:calc(var(--space) * 2)}form.form-card{display:flex;flex-direction:column;gap:calc(var(--space) * 1.75)}.form-card label:not(.checkbox-field,.dropzone,.inline-field,.segmented,.form-field__label),.form-field,.sheet__body form label:not(.checkbox-field,.dropzone,.inline-field,.segmented,.form-field__label),.modal form label:not(.checkbox-field,.dropzone,.inline-field,.segmented,.form-field__label){display:flex;flex-direction:column;gap:6px;font-size:.8125rem;font-weight:600;color:var(--color-text-muted)}.form-field__label{display:block;font-size:.8125rem;font-weight:600;color:var(--color-text-muted)}.form-field__required{color:var(--color-danger)}.form-field__hint{font-size:.8125rem;font-weight:400;color:var(--color-text-muted)}.sheet__body form:not(.row-actions,.toolbar),.modal form:not(.row-actions,.toolbar){display:flex;flex-direction:column;gap:calc(var(--space) * 1.75)}.form-card input:not([type=checkbox],[type=radio],[type=file]),.form-card select,.form-card textarea,.form-field input:not([type=checkbox],[type=radio],[type=file]),.form-field select,.form-field textarea,.sheet__body form input:not([type=checkbox],[type=radio],[type=file]),.sheet__body form select,.sheet__body form textarea,.modal form input:not([type=checkbox],[type=radio],[type=file]),.modal form select,.modal form textarea{width:100%;min-width:0;padding:9px 12px;border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:.9375rem;font-weight:400;transition:border-color var(--transition),box-shadow var(--transition)}.form-card textarea,.form-field textarea,.sheet__body form textarea,.modal form textarea{min-height:84px;resize:vertical;line-height:1.5}.form-card input:focus,.form-card select:focus,.form-card textarea:focus,.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.sheet__body form input:focus,.sheet__body form select:focus,.sheet__body form textarea:focus,.modal form input:focus,.modal form select:focus,.modal form textarea:focus{outline:none;border-color:var(--color-brand-500);box-shadow:var(--ring)}.form-field input:hover:not(:focus,[type=checkbox],[type=radio],[type=file]),.form-field select:hover:not(:focus),.form-field textarea:hover:not(:focus){border-color:var(--color-text-muted)}.form-field__error{display:flex;align-items:center;gap:6px;font-size:.8125rem;font-weight:550;color:var(--color-danger)}.form-field__error:before{content:"!";flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:50%;background:var(--color-danger);color:var(--color-card);font-size:.6875rem;font-weight:700;line-height:1}.form-field.is-invalid input:not([type=checkbox],[type=radio],[type=file]),.form-field.is-invalid select,.form-field.is-invalid textarea{border-color:var(--color-danger)}.form-field.is-invalid input:focus,.form-field.is-invalid select:focus,.form-field.is-invalid textarea:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-danger) 30%,transparent)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}input[type=checkbox],input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex:0 0 auto;width:18px;height:18px;margin:0;display:inline-grid;place-content:center;border:1px solid var(--color-border-strong);border-radius:5px;background:var(--color-bg);cursor:pointer;transition:background var(--transition),border-color var(--transition),box-shadow var(--transition)}input[type=radio]{border-radius:50%}input[type=checkbox]:hover:not(:disabled),input[type=radio]:hover:not(:disabled){border-color:var(--color-brand-500)}input[type=checkbox]:checked,input[type=radio]:checked,input[type=checkbox]:indeterminate{background:var(--color-brand);border-color:var(--color-brand)}input[type=checkbox]:after{content:"";width:5px;height:9px;margin-top:-2px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform var(--transition)}input[type=checkbox]:checked:after{transform:rotate(45deg) scale(1)}input[type=checkbox]:indeterminate:after{width:9px;height:0;margin-top:0;border-width:0 0 2px 0;transform:none}input[type=radio]:after{content:"";width:8px;height:8px;border-radius:50%;background:#fff;transform:scale(0);transition:transform var(--transition)}input[type=radio]:checked:after{transform:scale(1)}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:none;box-shadow:var(--ring)}input[type=checkbox]:disabled,input[type=radio]:disabled{opacity:.5;cursor:default}label:has(input[type=checkbox]:disabled),label:has(input[type=radio]:disabled){opacity:.7;cursor:default}button.link{background:none;border:none;color:var(--color-brand-500);cursor:pointer;padding:0;font:inherit;font-weight:500;border-radius:4px;transition:color var(--transition)}button.link:hover{color:var(--color-brand-600);text-decoration:underline}button.link:disabled{opacity:.5;cursor:default;text-decoration:none}.error{color:var(--color-danger)}.status{margin-top:var(--space);color:var(--color-accent)}.row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--space) * 1.5);margin-top:6px;font-size:.875rem}.inline-field{display:inline-flex;align-items:center;gap:var(--space);font-size:.875rem;color:var(--color-text-muted)}.inline-field input:not([type=checkbox],[type=radio]),.inline-field select{padding:7px 10px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font:inherit;transition:border-color var(--transition),box-shadow var(--transition)}.inline-field input:focus,.inline-field select:focus,.modal input:focus,.modal select:focus,.modal textarea:focus,.role-switcher select:focus{outline:none;border-color:var(--color-brand-500);box-shadow:var(--ring)}.search-bar{display:flex;flex-direction:column;gap:calc(var(--space) * 1.5);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:calc(var(--space) * 1.25) calc(var(--space) * 1.5);box-shadow:var(--shadow-sm);margin-bottom:calc(var(--space) * 2)}.search-bar .toolbar{margin:0}.search-bar__main{flex:1 1 300px;min-width:0;display:flex;align-items:center;gap:6px;padding-inline:6px}.search-bar__icon{color:var(--color-text-muted);display:inline-flex}.search-bar__input{flex:1 1 auto;min-width:0;border:none;background:none;font-size:1.02rem;color:var(--color-text);padding:10px 4px}.search-bar__input:focus{outline:none}.search-bar__sort{position:relative;display:inline-flex;align-items:center}.search-bar__sort select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding:9px 32px 9px 12px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:.9rem;cursor:pointer;transition:border-color var(--transition),box-shadow var(--transition)}.search-bar__sort:after{content:"";position:absolute;inset-inline-end:13px;width:6px;height:6px;border-right:1.5px solid var(--color-text-muted);border-bottom:1.5px solid var(--color-text-muted);transform:translateY(-1px) rotate(45deg);pointer-events:none}.search-bar__sort select:focus{outline:none;border-color:var(--color-brand-500);box-shadow:var(--ring)}.results-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space) calc(var(--space) * 2);flex-wrap:wrap;padding-bottom:calc(var(--space) * 1.5);border-bottom:1px solid var(--color-border);margin-bottom:calc(var(--space) * 2.5)}.results-bar__stats{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 20px;color:var(--color-text-muted);font-size:.9rem}.results-bar__stat{display:inline-flex;align-items:baseline;gap:6px}.results-bar__stat b{color:var(--color-text);font-weight:700;font-size:1.02rem;font-variant-numeric:tabular-nums}.results-bar__actions{display:inline-flex;align-items:center;gap:calc(var(--space) * 1.5)}.btn.is-active{background:var(--color-surface);border-color:var(--color-brand-500);color:var(--color-brand-500)}.search-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space);padding-top:calc(var(--space) * 1.5);border-top:1px solid var(--color-border)}.search-filters .field{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:500;color:var(--color-text-muted)}.search-filters .field select,.search-filters .field input:not([type=checkbox],[type=radio]){padding:8px 10px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:.9375rem;font-weight:400;transition:border-color var(--transition),box-shadow var(--transition)}.search-filters .field select:focus,.search-filters .field input:focus{outline:none;border-color:var(--color-brand-500);box-shadow:var(--ring)}.search-filters__actions{grid-column:1 / -1;display:flex;align-items:center;gap:calc(var(--space) * 2);padding-top:4px}.search-map{height:300px;border-radius:var(--radius);overflow:hidden;margin:0 0 calc(var(--space) * 3);border:1px solid var(--color-border);isolation:isolate}.search-map.is-hidden{display:none}.search-map-wrap{position:relative;margin-bottom:calc(var(--space) * 1.5)}.search-map--rail{height:calc(100dvh - var(--header-h) - var(--space) * 4);min-height:320px;max-height:820px}@media(max-width:1200px){.search-map--rail{height:360px;min-height:0}}.map-overlay-top{position:absolute;top:calc(var(--space) * 1.5);left:50%;transform:translate(-50%);z-index:15;max-width:calc(100% - 24px)}.map-overlay-top--error{width:min(420px,calc(100% - 24px))}.map-overlay-bl{position:absolute;left:calc(var(--space) * 1.5);bottom:calc(var(--space) * 1.5);z-index:15;max-width:min(320px,calc(60% - 12px))}.map-overlay-br{position:absolute;right:calc(var(--space) * 1.5);bottom:calc(var(--space) * 1.5);z-index:15;max-width:min(220px,38%)}@media(max-width:480px){.map-overlay-bl{max-width:calc(100% - 24px)}.map-overlay-br{max-width:168px}}.search-map .leaflet-bar{border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);overflow:hidden}.search-map .leaflet-bar a{width:30px;height:30px;line-height:30px;color:var(--color-text-muted);background:var(--color-card);border-block-end:1px solid var(--color-border);font-size:1.05rem;font-weight:600;transition:background var(--transition),color var(--transition)}.search-map .leaflet-bar a:last-child{border-block-end:none}.search-map .leaflet-bar a:hover{background:var(--color-surface);color:var(--color-brand-500)}.search-map .leaflet-bar a.leaflet-disabled{color:var(--color-border-strong);background:var(--color-surface);cursor:default}.search-map .leaflet-bar a:first-child{border-start-start-radius:var(--radius-sm);border-start-end-radius:var(--radius-sm)}.search-map .leaflet-bar a:last-child{border-end-start-radius:var(--radius-sm);border-end-end-radius:var(--radius-sm)}.search-map .leaflet-control-attribution{padding:2px 8px;border-radius:var(--radius-sm) 0 0 0;background:color-mix(in srgb,var(--color-card) 82%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-block-start:1px solid var(--color-border);border-inline-start:1px solid var(--color-border);color:var(--color-text-muted);font-size:.6875rem;line-height:1.5}.search-map .leaflet-control-attribution a{color:var(--color-text-muted)}.search-map .leaflet-control-attribution a:hover{color:var(--color-brand-500)}.search-map .leaflet-attribution-flag{display:none!important}.search-map a.btn{color:#fff}.search-map a.btn--ghost{color:var(--color-text)}.search-map a.btn--soft{color:var(--color-brand-500)}.map-popup-overlay{position:static;pointer-events:none}.map-popup-pos{position:relative}.map-popup-pos--floating{position:absolute;z-index:750;width:min(300px,calc(100% - 20px));pointer-events:auto}.map-popup-pos--floating.is-measuring{visibility:hidden}.map-popup-pos__close{position:absolute;top:8px;inset-inline-end:8px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-card) 88%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--color-text-muted);cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color var(--transition),color var(--transition)}.map-popup-pos__close:hover{background:var(--color-surface);color:var(--color-text)}.listing-card.is-highlighted{outline:2px solid var(--color-brand-500);outline-offset:2px;box-shadow:var(--ring)}.media-strip{display:inline-flex;flex-wrap:wrap;gap:var(--space);align-items:center}.media-thumb{width:56px;height:56px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface)}.media-tile{position:relative;display:inline-flex;line-height:0}.media-tile__remove.btn{position:absolute;top:-6px;inset-inline-end:-6px;padding:0;width:20px;height:20px;min-height:0;border-radius:999px;background:var(--color-card);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.media-tile__remove.btn:hover{color:var(--color-danger);border-color:var(--color-danger)}.media-tile__cover{position:absolute;inset-inline-start:2px;bottom:2px;padding:1px 5px;border-radius:999px;font-size:.6rem;line-height:1.4;font-weight:600;color:var(--color-card);background:color-mix(in srgb,var(--color-text) 72%,transparent)}.listing-photo{width:200px;height:150px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface)}.listing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:calc(var(--space) * 2.5);margin-top:calc(var(--space) * 3)}.listing-card{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.listing-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-border-strong)}.listing-card__media{position:relative;aspect-ratio:3 / 2;background:var(--color-surface-2);overflow:hidden}.listing-card__media-link{display:block;width:100%;height:100%}.listing-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.listing-card:hover .listing-card__media img{transform:scale(1.06)}.listing-card__ph{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:color-mix(in srgb,var(--color-brand-500) 60%,var(--color-text-muted));background:linear-gradient(135deg,var(--color-brand-50),var(--color-surface-2))}.listing-card__intent{position:absolute;inset-block-start:10px;inset-inline-start:10px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 9px;border-radius:999px;background:#0f172a9e;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.listing-card__overlay{position:absolute;inset-block-start:8px;inset-inline-end:8px}.listing-card__score{background:#0f172ab8;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.listing-card__body{display:flex;flex-direction:column;gap:5px;padding:calc(var(--space) * 1.75)}.listing-card__price-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space)}.listing-card__price{font-size:1.18rem;font-weight:750;letter-spacing:-.01em}.listing-card__title{font-weight:600;color:var(--color-text);font-size:.95rem;line-height:1.35;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.listing-card__title:hover{color:var(--color-brand-500);text-decoration:none}.listing-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--space) * 1.5);margin-top:3px;font-size:.82rem;color:var(--color-text-muted)}.listing-card__meta span{display:inline-flex;align-items:center;gap:4px}.listing-card__subtype{text-transform:capitalize}.listing-card__actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space);margin-top:8px;padding-top:10px;border-top:1px solid var(--color-border);font-size:.875rem}.fav-btn{display:inline-flex;align-items:center;justify-content:center;font:inherit;width:36px;height:36px;border-radius:50%;background:color-mix(in srgb,var(--color-card) 92%,transparent);border:1px solid var(--color-border);color:var(--color-danger);font-size:1.15rem;line-height:1;cursor:pointer;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:transform var(--transition),background var(--transition)}.fav-btn:hover{transform:scale(1.12);background:var(--color-card)}.fav-btn:disabled{opacity:.6;cursor:default}.listing-detail-page .back-link{display:inline-block;margin-bottom:calc(var(--space) * 2);font-weight:500}.listing-detail{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:calc(var(--space) * 4);align-items:start}.listing-detail__main{min-width:0}.listing-gallery{display:flex;flex-direction:column;min-width:0}.listing-gallery__hero{position:relative;aspect-ratio:16 / 10;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface-2);box-shadow:var(--shadow-md);border:1px solid var(--color-border)}.listing-gallery__hero img{width:100%;height:100%;object-fit:cover;display:block}.listing-gallery__ph{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:color-mix(in srgb,var(--color-brand-500) 55%,var(--color-text-muted));background:linear-gradient(135deg,var(--color-brand-50),var(--color-surface-2))}.listing-gallery__fav{position:absolute;inset-block-start:12px;inset-inline-end:12px}.listing-gallery__thumbs{display:flex;gap:var(--space);margin-top:var(--space);overflow-x:auto;padding-bottom:4px}.listing-gallery__thumb{flex:0 0 auto;width:88px;height:64px;padding:0;border-radius:var(--radius-sm);overflow:hidden;border:2px solid transparent;cursor:pointer;background:var(--color-surface-2);transition:border-color var(--transition)}.listing-gallery__thumb img{width:100%;height:100%;object-fit:cover}.listing-gallery__thumb.is-active{border-color:var(--color-brand-500)}.listing-lightbox__img{display:block;width:100%;height:auto;max-height:calc(100dvh - var(--space) * 26);object-fit:contain;border-radius:var(--radius);background:var(--color-surface-2)}.listing-head{margin-top:calc(var(--space) * 2.5)}.listing-head h1{margin-bottom:6px}.listing-head__meta{display:flex;align-items:center;gap:var(--space);flex-wrap:wrap;text-transform:capitalize}.feature-chips{display:flex;flex-wrap:wrap;gap:var(--space);margin:calc(var(--space) * 2) 0}.feature-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface);font-size:.875rem;font-weight:500}.feature-chip svg{color:var(--color-brand-500)}.listing-detail__aside{position:sticky;inset-block-start:calc(var(--header-h) + var(--space) * 2)}.price-card{padding:calc(var(--space) * 3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-lg)}.price-card__price{font-family:var(--font-display);font-optical-sizing:auto;font-size:2.05rem;font-weight:600;letter-spacing:-.02em;line-height:1.05}.price-card__sub{text-transform:capitalize;margin-bottom:calc(var(--space) * 2)}.price-card__form{display:flex;flex-direction:column;gap:var(--space)}.price-card__form h3{margin:0 0 2px;font-size:.9rem}.price-card__form input:not([type=checkbox],[type=radio]){padding:9px 12px;border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:.9375rem;transition:border-color var(--transition),box-shadow var(--transition)}.price-card__form input:focus{outline:none;border-color:var(--color-brand-500);box-shadow:var(--ring)}.price-card__form .btn{width:100%}.price-card__divider{height:1px;background:var(--color-border);margin:calc(var(--space) * 2) 0}.listing-similar{margin-top:calc(var(--space) * 4)}@media(max-width:900px){.listing-detail{grid-template-columns:1fr}.listing-detail__aside{position:static}}.syndicate-context{justify-content:flex-start;gap:calc(var(--space) * 3);margin-top:calc(var(--space) * 2);font-size:.875rem}.syndicate-context strong{color:var(--color-text-muted);font-weight:600}.lang-switcher{display:inline-flex;align-items:center;gap:4px;font-size:.8125rem}.sidebar__lang{display:none;padding:calc(var(--space) * 1.5) calc(var(--space) * 2);border-block-start:1px solid var(--color-border)}.lang-switcher__btn{background:none;border:none;padding:2px 4px;cursor:pointer;color:var(--color-text-muted);font:inherit;border-radius:6px}.lang-switcher__btn:hover{color:var(--color-text)}.lang-switcher__btn.is-active{color:var(--color-brand-500);font-weight:600}.lang-switcher__sep{color:var(--color-border)}.toaster{position:fixed;inset-block-end:calc(var(--space) * 3);inset-inline-end:calc(var(--space) * 3);display:flex;flex-direction:column;gap:var(--space);z-index:var(--z-toast);max-width:min(360px,calc(100vw - var(--space) * 6))}.toast{display:flex;align-items:flex-start;gap:var(--space);padding:calc(var(--space) * 1.5) calc(var(--space) * 2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-lg);animation:toast-in .16s ease-out}.toast__title{flex:1;min-width:0;font-size:.875rem;line-height:1.35}.toast__close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:1.125rem;line-height:1;padding:0}.toast__close:hover{color:var(--color-text)}.toast__close{min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.toast__icon{flex:0 0 auto;display:inline-flex;margin-top:1px;color:var(--color-text-muted)}.toast--success{border-color:color-mix(in srgb,var(--color-accent) 42%,var(--color-border))}.toast--success .toast__icon{color:var(--color-accent)}.toast--danger{border-color:color-mix(in srgb,var(--color-danger) 46%,var(--color-border));background:color-mix(in srgb,var(--color-danger) 8%,var(--color-card))}.toast--danger .toast__icon{color:var(--color-danger)}.toast--info .toast__icon{color:var(--color-brand-500)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-start;justify-content:center;padding-inline:calc(var(--space) * 2);padding-block:calc(var(--space) * 4);overflow-y:auto;overscroll-behavior:contain;background:#00000073;z-index:var(--z-modal)}.modal{width:min(480px,100%);margin-block:auto;max-height:calc(100dvh - var(--space) * 8);display:flex;flex-direction:column;padding:calc(var(--space) * 3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);color:var(--color-text);box-shadow:var(--shadow-lg);animation:modal-in .16s cubic-bezier(.4,0,.2,1)}.modal--sm{width:min(400px,100%)}.modal--md{width:min(480px,100%)}.modal--lg{width:min(880px,100%)}.modal__head{display:flex;align-items:flex-start;gap:var(--space);margin:calc(var(--space) * -3) calc(var(--space) * -3) calc(var(--space) * 2.5);padding:calc(var(--space) * 2) calc(var(--space) * 3);border-bottom:1px solid var(--color-border)}.modal__titles{flex:1 1 auto;min-width:0}.modal__head .modal__title{margin:0;font-size:1.125rem;font-weight:680;letter-spacing:-.015em;line-height:1.3;overflow-wrap:anywhere}.modal__sub{margin:3px 0 0;font-size:.85rem;line-height:1.45;color:var(--color-text-muted)}.modal__close{flex:0 0 auto;margin-inline-start:auto;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-block-start:calc(var(--space) * -1);margin-inline-end:calc(var(--space) * -1);padding:0;border:none;border-radius:var(--radius-sm);background:none;color:var(--color-text-muted);cursor:pointer;transition:background var(--transition),color var(--transition)}.modal__close:hover{background:var(--color-surface);color:var(--color-text)}.modal__body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}@keyframes modal-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.modal h2{margin-top:0;font-size:1.125rem}.modal form{display:flex;flex-direction:column;gap:calc(var(--space) * 1.5);margin-top:calc(var(--space) * 2)}.modal__body>form:first-child{margin-top:0}.modal__actions{display:flex;gap:var(--space);justify-content:flex-end;margin-top:var(--space);flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 15px;border:1px solid transparent;border-radius:var(--radius);background:var(--color-brand);color:#fff;font-weight:560;font-size:.9rem;cursor:pointer;font-family:inherit;letter-spacing:-.01em;line-height:1.2;white-space:nowrap;box-shadow:0 1px 2px #0f172a1f;transition:background var(--transition),transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.btn:hover{background:var(--color-brand-600);box-shadow:0 2px 8px color-mix(in srgb,var(--color-brand) 34%,transparent)}.btn:active{transform:translateY(.5px)}.btn:disabled{opacity:.5;cursor:default;box-shadow:none;transform:none}.btn--ghost{background:var(--color-card);color:var(--color-text);border-color:var(--color-border-strong);box-shadow:var(--shadow-xs)}.btn--ghost:hover{background:var(--color-surface);border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}a.btn:visited{color:#fff}a.btn--ghost:visited{color:var(--color-text)}a.btn--soft:visited{color:var(--color-brand-500)}a.btn--gold:visited{color:#2c2008}.btn--danger{background:var(--color-danger);box-shadow:0 1px 2px color-mix(in srgb,var(--color-danger) 30%,transparent)}.btn--danger:hover{background:color-mix(in srgb,var(--color-danger) 86%,#000);box-shadow:0 2px 8px color-mix(in srgb,var(--color-danger) 36%,transparent)}.btn--danger:focus-visible{outline-color:var(--color-danger)}.btn--sm{padding:6px 12px;font-size:.8125rem;font-weight:540}@media(pointer:coarse),(max-width:640px){.btn,.btn--sm,.icon-btn,.segmented__btn,.menu__item,.route-tabs__link,.check-chip{min-height:44px}.icon-btn{min-width:44px}.toolbar .toolbar__search>input{min-height:44px}}.tabs{display:flex;flex-wrap:wrap;gap:var(--space);border-bottom:1px solid var(--color-border);margin:calc(var(--space) * 2) 0 calc(var(--space) * 3)}.tabs__btn{background:none;border:none;border-bottom:2px solid transparent;padding:calc(var(--space) * 1.5) calc(var(--space) * 1.5);cursor:pointer;color:var(--color-text-muted);font:inherit}.tabs__btn:hover{color:var(--color-text)}.tabs__btn.is-active{color:var(--color-brand-500);border-bottom-color:var(--color-brand-500);font-weight:600}.data-table{width:100%;border-collapse:collapse;margin-top:calc(var(--space) * 2);font-size:.875rem}.data-table th,.data-table td{text-align:start;padding:calc(var(--space) * 1) calc(var(--space) * 1.5);border-bottom:1px solid var(--color-border)}.data-table th{color:var(--color-text-muted);font-weight:600}.data-table td.num,.data-table th.num{text-align:end;font-variant-numeric:tabular-nums}@media(max-width:640px){.data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}}.aging-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space);margin-top:calc(var(--space) * 2)}.aging-cell{padding:calc(var(--space) * 1.5);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.aging-cell span{display:block;font-size:.75rem;color:var(--color-text-muted)}.aging-cell strong{font-variant-numeric:tabular-nums}.impersonation-banner{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--space) * 2);padding:calc(var(--space) * 1.25) calc(var(--space) * 3);background:color-mix(in srgb,var(--color-warn) 75%,#000);color:#fff;font-size:.875rem}.impersonation-banner button{background:#fff3;border:1px solid rgba(255,255,255,.5);color:#fff;padding:4px 12px;border-radius:var(--radius);cursor:pointer;font:inherit;margin-inline-start:auto}.badge--warn{background:color-mix(in srgb,var(--color-warn) 14%,transparent);color:var(--color-warn-700)}.badge--promoted{background:var(--color-gold-50);color:var(--color-gold-600);gap:4px;margin-inline-start:6px}.consent-banner{position:fixed;inset-inline:calc(var(--space) * 2);bottom:calc(var(--space) * 2);z-index:var(--z-consent);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:calc(var(--space) * 2);max-width:720px;margin-inline:auto;padding:calc(var(--space) * 1.5) calc(var(--space) * 2);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.consent-banner__body{display:flex;gap:calc(var(--space) * 1.5);align-items:flex-start;min-width:0;flex:1 1 340px}.consent-banner__icon{color:var(--color-brand-500);margin-top:2px}.consent-banner__copy{min-width:0}.consent-banner__copy p{margin:4px 0 0;font-size:.85rem}.consent-banner__options{display:flex;flex-direction:column;gap:6px;margin-top:10px}.consent-banner__option{display:flex;align-items:center;gap:8px;font-size:.85rem}.consent-banner__actions{display:flex;gap:8px;flex-wrap:wrap;margin-inline-start:auto}body:has(.modal-overlay) .consent-banner,body:has(.sheet-overlay) .consent-banner{display:none}.list__item--row{display:flex;align-items:center;justify-content:space-between;gap:var(--space)}.list__item--active{background:color-mix(in srgb,var(--color-brand-500) 8%,transparent)}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:calc(var(--space) * 2);margin-top:calc(var(--space) * 2);align-items:start}.dash-card{display:flex;flex-direction:column;gap:var(--space);padding:calc(var(--space) * 2.5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.dash-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-border-strong)}.dash-card__count{color:var(--color-brand-500)}.dash-card__head{display:flex;align-items:center;gap:10px}.dash-card__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:34px;height:34px;border-radius:var(--radius-sm);background:var(--color-brand-50);color:var(--color-brand-500)}.dash-card__title{font-weight:600;font-size:.9375rem;flex:1;min-width:0}.dash-card__count{font-variant-numeric:tabular-nums;font-weight:700;font-size:1.25rem;color:var(--color-brand-500)}.dash-card__items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.dash-card__items li{font-size:.8125rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-card a{align-self:flex-start;font-size:.875rem}.dash-empty{padding:calc(var(--space) * 3);border:1px dashed var(--color-border);border-radius:var(--radius);text-align:center;color:var(--color-text-muted);margin-top:calc(var(--space) * 2)}.pill{font-size:.75rem;padding:2px 8px;border-radius:999px;background:var(--color-surface);border:1px solid var(--color-border)}.pill--high{background:color-mix(in srgb,var(--color-danger) 16%,transparent);color:var(--color-danger);border-color:transparent}.pill--med{background:color-mix(in srgb,var(--color-warn) 16%,transparent);color:var(--color-warn);border-color:transparent}.pill--low{background:color-mix(in srgb,var(--color-accent) 16%,transparent);color:var(--color-accent);border-color:transparent}.compare-tray{position:sticky;inset-block-end:0;margin-top:calc(var(--space) * 2);padding:calc(var(--space) * 1.5) calc(var(--space) * 2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);display:flex;align-items:center;gap:var(--space);flex-wrap:wrap}.compare-chip{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;padding:2px 4px 2px 10px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-card)}::selection{background:color-mix(in srgb,var(--color-brand-500) 28%,transparent)}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:calc(var(--space) * 6) calc(var(--space) * 3);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-muted);margin-top:calc(var(--space) * 2);background:radial-gradient(420px 180px at 50% 4%,color-mix(in srgb,var(--color-brand) 7%,transparent),transparent),color-mix(in srgb,var(--color-surface) 40%,transparent)}.empty-state__icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--color-card);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);color:var(--color-brand-500);margin-bottom:4px}.empty-state__title{font-family:var(--font-display);font-optical-sizing:auto;font-weight:600;font-size:1.3rem;letter-spacing:-.01em;color:var(--color-text);margin:4px 0 0}.empty-state__msg{margin:0;max-width:46ch;font-size:.95rem;line-height:1.6}.empty-state__action{margin-top:calc(var(--space) * 2)}.accordion{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-sm);margin-bottom:calc(var(--space) * 2);overflow:hidden;transition:box-shadow var(--transition),border-color var(--transition)}.accordion.is-open{box-shadow:var(--shadow-md);border-color:var(--color-border-strong)}.accordion__head{display:flex;align-items:center;gap:12px;width:100%;padding:calc(var(--space) * 2) calc(var(--space) * 2.5);background:none;border:none;cursor:pointer;font:inherit;text-align:start;color:var(--color-text);transition:background var(--transition)}.accordion__head:hover{background:var(--color-surface)}.accordion__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:34px;height:34px;border-radius:var(--radius-sm);background:var(--color-brand-50);color:var(--color-brand-500)}.accordion__titles{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.accordion__title{font-weight:650;font-size:.98rem}.accordion__sub{font-size:.8125rem;color:var(--color-text-muted)}.accordion__chev{flex:0 0 auto;color:var(--color-text-muted);transition:transform var(--transition)}.accordion.is-open .accordion__chev{transform:rotate(90deg)}.accordion__body{padding:calc(var(--space) * 2) calc(var(--space) * 2.5) calc(var(--space) * 2.5);border-top:1px solid var(--color-border)}.accordion__body .form-card{max-width:none;padding:0;border:none;background:none;box-shadow:none}.accordion__body .form-card:hover{box-shadow:none}.skeleton{display:block;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--color-surface-2) 25%,var(--color-surface) 37%,var(--color-surface-2) 63%);background-size:400% 100%;animation:shimmer 1.4s ease infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.skeleton-region{display:contents}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media(max-width:900px){.topbar{padding-inline:calc(var(--space) * 2);gap:var(--space)}.topbar__burger{display:inline-flex}.topbar__email,.role-switcher__label,.lang-switcher{display:none}.sidebar__lang{display:block}.sidebar__lang .lang-switcher{display:flex}.sidebar{position:fixed;inset-block-start:var(--header-h);inset-inline-start:0;z-index:var(--z-drawer);transform:translate(-100%);transition:transform var(--transition);box-shadow:var(--shadow-lg)}.sidebar.is-open{transform:none}[dir=rtl] .sidebar{transform:translate(100%)}[dir=rtl] .sidebar.is-open{transform:none}.sidebar-scrim{display:block;position:fixed;inset-block-start:var(--header-h);inset-inline:0;inset-block-end:0;z-index:calc(var(--z-drawer) - 1);background:#00000073;animation:fade-in .16s ease-out}}.btn--accent{background:var(--color-accent)}.btn--accent:hover{background:color-mix(in srgb,var(--color-accent) 86%,#000)}.btn--soft{background:var(--color-brand-50);color:var(--color-brand-500);border-color:transparent;box-shadow:none}.btn--soft:hover{background:color-mix(in srgb,var(--color-brand-500) 16%,var(--color-brand-50))}.btn--gold{background:var(--grad-gold);color:#2c2008;border-color:transparent;box-shadow:0 1px 2px color-mix(in srgb,var(--color-gold) 45%,transparent)}.btn--gold:hover{background:var(--grad-gold);filter:brightness(1.05);box-shadow:0 3px 12px color-mix(in srgb,var(--color-gold) 48%,transparent)}.btn--lg{padding:12px 22px;font-size:1rem;border-radius:var(--radius)}.btn--block{width:100%}.btn__icon{display:inline-flex}.btn--icon{padding-inline:9px}.btn--icon.btn--sm{padding-inline:7px}.btn--icon.btn--lg{padding-inline:14px}.btn__spinner{flex:0 0 auto;width:14px;height:14px;border-radius:50%;border:2px solid color-mix(in srgb,currentColor 28%,transparent);border-block-start-color:currentColor;animation:btn-spin .62s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.btn__spinner{animation:none;opacity:.75}}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:50%;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition)}.icon-btn:hover{background:var(--color-brand-50);color:var(--color-brand-500);border-color:var(--color-brand-500)}.icon-btn:disabled{opacity:.5;cursor:default}.page-head{display:flex;align-items:flex-start;gap:calc(var(--space) * 3);margin-bottom:calc(var(--space) * 4);padding-bottom:calc(var(--space) * 2.5);border-bottom:1px solid var(--color-border)}.page-head__main{min-width:0;flex:1 1 auto}.page-head__crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:2px 4px;margin-bottom:10px;font-size:.8125rem;line-height:1.4}.page-head__crumb{min-width:0;padding:2px 4px;margin-inline:-4px 0;border-radius:4px;color:var(--color-text-muted);text-decoration:none;transition:color var(--transition),background var(--transition)}a.page-head__crumb:hover{color:var(--color-brand-500);background:var(--color-surface);text-decoration:none}.page-head__crumb[aria-current=page]{color:var(--color-text);font-weight:600}.page-head__crumb-sep{flex:0 0 auto;color:var(--color-border-strong)}.page-head__eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-gold-600);margin-bottom:12px}.page-head__eyebrow:before{content:"";width:22px;height:2px;border-radius:2px;background:var(--grad-gold)}.page-head__titlerow{display:flex;align-items:center;gap:calc(var(--space) * 2);flex-wrap:wrap}.page-head__title{margin:0;flex:1 1 auto}.page-head__actions{display:flex;align-items:center;gap:var(--space);flex-wrap:wrap}.page-head__sub{color:var(--color-text-muted);font-size:1.05rem;line-height:1.55;max-width:64ch;margin:12px 0 0}.page-head__spot{flex:0 0 auto;display:none}.page-head__spot svg{filter:drop-shadow(0 10px 20px color-mix(in srgb,var(--color-brand) 22%,transparent))}@media(min-width:901px){.page-head__spot{display:flex;align-items:center;align-self:center}}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(var(--space) * 2);margin:calc(var(--space) * 2) 0 calc(var(--space) * 3);align-items:stretch}.stat-grid>.stat-card:only-child{max-width:340px}.stat-card{display:flex;flex-direction:column;gap:2px;text-align:start;padding:calc(var(--space) * 2.25);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.stat-card--btn{cursor:pointer;font:inherit;color:inherit}.stat-card--btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-brand-500)}.stat-card__icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius);margin-bottom:8px;background:var(--color-brand-50);color:var(--color-brand-500)}.stat-card__icon--accent{background:color-mix(in srgb,var(--color-accent) 16%,transparent);color:var(--color-accent)}.stat-card__icon--warn{background:color-mix(in srgb,var(--color-warn) 16%,transparent);color:var(--color-warn)}.stat-card__icon--danger{background:color-mix(in srgb,var(--color-danger) 16%,transparent);color:var(--color-danger)}.stat-card__label{font-size:.78rem;color:var(--color-text-muted);font-weight:600;letter-spacing:.01em}.stat-card__value{font-family:var(--font-display);font-optical-sizing:auto;font-size:1.95rem;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1;margin-top:2px}.stat-card__foot{display:flex;align-items:center;gap:var(--space);margin-top:4px;font-size:.8rem}.stat-card__hint{color:var(--color-text-muted)}.stat-card__delta{font-weight:650;font-variant-numeric:tabular-nums}.stat-card__delta--up{color:var(--color-accent)}.stat-card__delta--down{color:var(--color-danger)}.stat-card__delta--flat{color:var(--color-text-muted)}.section-card{padding:calc(var(--space) * 3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-sm);margin-bottom:calc(var(--space) * 2.5)}.section-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:calc(var(--space) * 2)}.section-head__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:36px;height:36px;border-radius:var(--radius-sm);background:var(--color-brand-50);color:var(--color-brand-500)}.section-head__titles{flex:1 1 240px;min-width:0}.section-head__title{font-weight:650;font-size:1.05rem;margin:0}.section-head__sub{font-size:.85rem;color:var(--color-text-muted);margin:1px 0 0;max-width:var(--measure)}.app-main p.muted{max-width:var(--measure)}.section-head__actions{display:flex;align-items:center;gap:var(--space);flex-wrap:wrap;margin-inline-start:auto}.section-card>.section-head:first-child{margin-top:0}.section-card h2:first-child,.section-card h3:first-child{margin-top:0}.admin-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:calc(var(--space) * 1.5)}.admin-row__main{display:flex;align-items:center;gap:var(--space);min-width:0;flex:1 1 260px}.admin-row__main .avatar{flex:0 0 auto}.admin-row .row-actions{margin-top:0;justify-content:flex-end}.id-chip{overflow-wrap:anywhere}.admin-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:calc(var(--space) * 1.5);margin-bottom:calc(var(--space) * 1.5)}.admin-form__actions{display:flex;gap:var(--space);flex-wrap:wrap;margin-top:calc(var(--space) * .5)}.callout{display:flex;align-items:flex-start;gap:var(--space);padding:calc(var(--space) * 1.5) calc(var(--space) * 2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);margin:calc(var(--space) * 1.5) 0;font-size:.9rem;line-height:1.5}.callout__icon{flex:0 0 auto;display:inline-flex;margin-top:1px}.callout__body{flex:1;min-width:0}.callout__title{font-weight:650;margin-bottom:2px}.callout__text{color:var(--color-text-muted)}.callout__action{flex:0 0 auto}.callout--info{border-color:color-mix(in srgb,var(--color-brand-500) 34%,var(--color-border));background:color-mix(in srgb,var(--color-brand-50) 60%,var(--color-card))}.callout--info .callout__icon{color:var(--color-brand-500)}.callout--success{border-color:color-mix(in srgb,var(--color-accent) 40%,var(--color-border));background:color-mix(in srgb,var(--color-accent) 10%,var(--color-card))}.callout--success .callout__icon{color:var(--color-accent)}.callout--warn{border-color:color-mix(in srgb,var(--color-warn) 40%,var(--color-border));background:color-mix(in srgb,var(--color-warn) 10%,var(--color-card))}.callout--warn .callout__icon{color:var(--color-warn)}.callout--danger{border-color:color-mix(in srgb,var(--color-danger) 40%,var(--color-border));background:color-mix(in srgb,var(--color-danger) 9%,var(--color-card))}.callout--danger .callout__icon{color:var(--color-danger)}.kv{display:grid;grid-template-columns:minmax(120px,200px) 1fr;gap:6px calc(var(--space) * 2);margin:var(--space) 0}.kv__k{color:var(--color-text-muted);font-size:.85rem}.kv__v{font-weight:500;min-width:0;word-break:break-word}.id-chip{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:var(--radius-sm);background:var(--color-surface-2);border:1px solid var(--color-border);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;color:var(--color-text-muted)}.dropzone{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:calc(var(--space) * 3);border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;transition:border-color var(--transition),background var(--transition)}.dropzone:hover,.dropzone:focus-within{border-color:var(--color-brand-500);background:var(--color-brand-50)}.dropzone.is-dragging{border-color:var(--color-brand-600);border-style:solid;background:color-mix(in srgb,var(--color-brand-50) 70%,var(--color-brand-500))}.dropzone input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.dropzone__icon{color:var(--color-brand-500)}.dropzone__hint{font-size:.8rem}.segmented{display:inline-flex;padding:3px;gap:2px;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:999px}.segmented__btn{border:none;background:none;cursor:pointer;font:inherit;font-size:.875rem;font-weight:550;padding:6px 16px;border-radius:999px;color:var(--color-text-muted);transition:background var(--transition),color var(--transition)}.segmented__btn:hover{color:var(--color-text)}.segmented__btn.is-active{background:var(--color-card);color:var(--color-brand-500);box-shadow:var(--shadow-xs)}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;background:#00000073;animation:fade-in .16s ease-out}.sheet{display:flex;flex-direction:column;width:min(480px,100%);height:100%;background:var(--color-card);box-shadow:var(--shadow-lg);animation:sheet-in-end .24s cubic-bezier(.4,0,.2,1)}.sheet--end{margin-inline-start:auto}.sheet--start{margin-inline-end:auto;animation-name:sheet-in-start}@keyframes sheet-in-end{0%{transform:translate(100%)}to{transform:none}}@keyframes sheet-in-start{0%{transform:translate(-100%)}to{transform:none}}[dir=rtl] .sheet--end{animation-name:sheet-in-start}[dir=rtl] .sheet--start{animation-name:sheet-in-end}.sheet__head{display:flex;align-items:flex-start;gap:var(--space);padding:calc(var(--space) * 2.5) calc(var(--space) * 3);border-bottom:1px solid var(--color-border)}.sheet__title{margin:0;font-size:1.15rem}.sheet__sub{margin:2px 0 0;font-size:.85rem;color:var(--color-text-muted)}.sheet__close{margin-inline-start:auto;flex:0 0 auto;background:none;border:none;cursor:pointer;font-size:1.6rem;line-height:1;color:var(--color-text-muted);padding:0 4px;border-radius:var(--radius-sm)}.sheet__close:hover{color:var(--color-text)}.sheet__body{flex:1;overflow-y:auto;padding:calc(var(--space) * 3)}.sheet__body .form-card{max-width:none;padding:0;border:none;background:none;box-shadow:none}.sheet__foot{display:flex;gap:var(--space);justify-content:flex-end;padding:calc(var(--space) * 2) calc(var(--space) * 3);border-top:1px solid var(--color-border)}.empty-state__art{display:inline-flex;margin-bottom:calc(var(--space) * 1.5)}.toolbar{display:flex;align-items:end;gap:calc(var(--space) * 1.5);flex-wrap:wrap;margin:calc(var(--space) * 2) 0}.toolbar__spacer{flex:1 1 auto}.avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--color-brand-500),var(--color-accent));color:#fff;font-weight:700;font-size:.95rem;text-transform:uppercase;overflow:hidden}.avatar--img{padding:0}.avatar__img{width:100%;height:100%;object-fit:cover;display:block}.avatar--sm{width:30px;height:30px;font-size:.78rem}.avatar--lg{width:56px;height:56px;font-size:1.3rem}.org-logo{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:var(--radius);overflow:hidden;background:var(--color-canvas);border:1px solid var(--color-border);color:var(--color-brand-600);font-weight:700;text-transform:uppercase;width:48px;height:48px;font-size:1rem}.org-logo--img{background:#fff}.org-logo__img{width:100%;height:100%;object-fit:contain;display:block}.org-logo--sm{width:32px;height:32px;font-size:.78rem}.org-logo--md{width:48px;height:48px;font-size:1rem}.org-logo--lg{width:96px;height:96px;font-size:1.8rem}.soft-panel{padding:calc(var(--space) * 2.5);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-brand-50) 55%,var(--color-card));border:1px solid var(--color-border)}.feature-picker{display:flex;flex-direction:column;gap:calc(var(--space) * 2);margin-top:var(--space)}.feature-picker__group{display:flex;flex-direction:column;gap:10px}.feature-picker__legend{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}.feature-picker__options{display:flex;flex-wrap:wrap;gap:8px}.check-chip{display:inline-flex;align-items:center;gap:8px;cursor:pointer;padding:7px 13px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);font-size:.85rem;font-weight:500;transition:border-color var(--transition),background var(--transition),color var(--transition)}.check-chip:hover{border-color:var(--color-brand-500)}.check-chip.is-on{border-color:var(--color-brand-500);background:var(--color-brand-50);color:var(--color-brand-600)}.check-chip input{margin:0;accent-color:var(--color-brand-500)}.facts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.fact{display:flex;flex-direction:column;gap:3px;padding:12px 14px;background:var(--color-card)}.fact__label{font-size:.72rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--color-text-muted)}.fact__value{font-size:.95rem;font-weight:600}.amenity-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--space)}.amenity-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);font-size:.83rem;font-weight:500}.amenity-chip svg{color:var(--color-brand-500)}.mesh-bg{background:radial-gradient(420px 200px at 8% 0%,color-mix(in srgb,var(--color-brand-500) 12%,transparent),transparent),radial-gradient(420px 200px at 96% 30%,color-mix(in srgb,var(--color-accent) 12%,transparent),transparent)}@media(max-width:640px){.kv{grid-template-columns:1fr;gap:2px}.kv__k{margin-top:8px}}.skeleton-lines{display:flex;flex-direction:column}.brand{display:inline-flex;align-items:center;gap:9px;font-weight:750;font-size:1.12rem;color:var(--color-text);letter-spacing:-.03em}.brand:before{content:none}.brand-logo{height:22px;width:auto;display:block}[data-theme=dark] .brand-logo,.brand-logo--on-dark{filter:brightness(0) invert(1)}.brand__mark{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:8px;background:linear-gradient(140deg,var(--color-brand-500),var(--color-brand) 55%,var(--color-accent));box-shadow:0 2px 6px color-mix(in srgb,var(--color-brand) 40%,transparent)}.topbar__search{display:inline-flex;align-items:center;gap:9px;height:34px;margin-inline-start:10px;padding:0 8px 0 11px;min-width:216px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);color:var(--color-text-muted);font:inherit;font-size:.85rem;cursor:pointer;transition:background var(--transition),border-color var(--transition)}.topbar__search:hover{background:var(--color-card);border-color:var(--color-border-strong)}.topbar__search-label{flex:1;text-align:start}.topbar__kbd,.cmdk__kbd{font-family:var(--font-sans);font-size:.68rem;font-weight:600;letter-spacing:.02em;padding:2px 6px;border:1px solid var(--color-border-strong);border-radius:6px;background:var(--color-surface-2);color:var(--color-text-muted);line-height:1}.topbar__right{margin-inline-start:auto;display:flex;align-items:center;gap:14px}.topbar__icon-link{width:36px;height:36px;color:var(--color-text-muted);border-radius:10px}.topbar__icon-link:hover{background:var(--color-surface);color:var(--color-text)}.account-menu{position:relative}.account-menu__trigger{padding:2px;background:none;border:none;cursor:pointer;border-radius:50%;line-height:0}.account-menu__trigger:hover .avatar{box-shadow:0 0 0 3px var(--color-brand-50)}.account-menu__pop{position:absolute;inset-block-start:calc(100% + 8px);inset-inline-end:0;z-index:var(--z-popover);min-width:246px;padding:6px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:menu-pop .14s cubic-bezier(.32,.72,0,1)}@keyframes menu-pop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.account-menu__head{display:flex;align-items:center;gap:10px;padding:8px 8px 10px}.account-menu__id{min-width:0;display:flex;flex-direction:column}.account-menu__email{font-weight:600;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.account-menu__role{font-size:.78rem}.account-menu__sep{height:1px;background:var(--color-border);margin:4px 0}.account-menu__item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;background:none;cursor:pointer;font:inherit;font-size:.875rem;color:var(--color-text);text-decoration:none;border-radius:var(--radius-sm);text-align:start}.account-menu__item:hover{background:var(--color-surface);text-decoration:none}.account-menu__item svg{color:var(--color-text-muted)}.account-menu__item--danger{color:var(--color-danger)}.account-menu__item--danger svg{color:var(--color-danger)}.nav-group{margin-bottom:14px}.nav-group__label{font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-muted);padding:6px 12px 5px;opacity:.8}.nav-link{gap:11px;padding:8px 12px;border-radius:9px;font-size:.9rem;font-weight:500;color:var(--color-text-muted)}.nav-link__icon{color:var(--color-text-muted)}.nav-link:hover{background:var(--color-surface);color:var(--color-text)}.nav-link:hover .nav-link__icon{color:var(--color-text)}.nav-link.is-active{background:var(--color-brand-50);color:var(--color-brand-500);font-weight:600;box-shadow:none}.nav-link.is-active .nav-link__icon{color:var(--color-brand-500)}.sidebar-role{display:flex;flex-direction:column;gap:5px;padding:4px 8px 12px;margin-bottom:6px;border-bottom:1px solid var(--color-border)}.sidebar-role__label{font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-muted)}.sidebar-role__select{padding:8px 10px;border:1px solid var(--color-border-strong);border-radius:9px;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.875rem;font-weight:550;cursor:pointer}.sidebar-role__select:focus{outline:none;border-color:var(--color-brand-500);box-shadow:var(--ring)}.sidebar__collapse{display:flex;align-items:center;gap:11px;width:100%;padding:9px 12px;margin-top:4px;border:none;border-radius:9px;background:none;color:var(--color-text-muted);cursor:pointer;font:inherit;font-size:.85rem;font-weight:500;border-top:1px solid var(--color-border)}.sidebar__collapse:hover{background:var(--color-surface);color:var(--color-text)}.sidebar__collapse-icon{transform:rotate(180deg);transition:transform var(--transition);flex:0 0 auto}@media(min-width:901px){.app-shell.is-collapsed .sidebar{flex-basis:68px;width:68px}.app-shell.is-collapsed .nav-link{justify-content:center;padding-inline:0}.app-shell.is-collapsed .nav-link__label,.app-shell.is-collapsed .nav-group__label,.app-shell.is-collapsed .sidebar-role,.app-shell.is-collapsed .sidebar__collapse .nav-link__label{display:none}.app-shell.is-collapsed .sidebar__collapse{justify-content:center}.app-shell.is-collapsed .sidebar__collapse-icon{transform:rotate(0)}}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-popover);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;background:color-mix(in srgb,#0a0c11 55%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in .14s ease-out}.cmdk{width:min(560px,92vw);max-height:70vh;display:flex;flex-direction:column;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;animation:modal-in .18s cubic-bezier(.32,.72,0,1)}.cmdk__search{display:flex;align-items:center;gap:11px;padding:14px 16px;border-bottom:1px solid var(--color-border);color:var(--color-text-muted)}.cmdk__input{flex:1;min-width:0;border:none;background:none;font:inherit;font-size:1rem;color:var(--color-text);outline:none}.cmdk__list{list-style:none;margin:0;padding:6px;overflow-y:auto}.cmdk__item{display:flex;align-items:center;gap:11px;width:100%;padding:10px 12px;border:none;background:none;border-radius:10px;cursor:pointer;font:inherit;color:var(--color-text);text-align:start}.cmdk__item.is-active{background:var(--color-brand-50);color:var(--color-brand-500)}.cmdk__item-icon{color:var(--color-text-muted);display:inline-flex;flex:0 0 auto}.cmdk__item.is-active .cmdk__item-icon{color:var(--color-brand-500)}.cmdk__item-label{flex:1;font-weight:500}.cmdk__item-group{font-size:.75rem;color:var(--color-text-muted)}.cmdk__empty{padding:20px;text-align:center;color:var(--color-text-muted)}@media(max-width:900px){.topbar__search{min-width:0}.topbar__search-label,.topbar__kbd{display:none}}@media(max-width:640px){.topbar__search{display:none}}h2{margin-block:calc(var(--space) * 4) calc(var(--space) * 1.5)}h3{margin-block:calc(var(--space) * 3) var(--space)}.page-head{margin-bottom:calc(var(--space) * 4)}.stat-grid{gap:calc(var(--space) * 2.5);margin-block:calc(var(--space) * 2.5) calc(var(--space) * 4)}.dash-grid{gap:calc(var(--space) * 2.5);margin-top:calc(var(--space) * 2.5)}.listing-grid{gap:calc(var(--space) * 3);margin-top:calc(var(--space) * 3.5)}.home-features{gap:calc(var(--space) * 2.5);margin-top:calc(var(--space) * 4)}.section-card{padding:calc(var(--space) * 3.25);margin-bottom:calc(var(--space) * 3)}.section-head{margin-bottom:calc(var(--space) * 2.5)}.list{margin-top:calc(var(--space) * 2.5)}.list__item{padding-block:calc(var(--space) * 1.75)}.row-actions{gap:calc(var(--space) * 2)}.feature-chips{gap:calc(var(--space) * 1.25);margin-block:calc(var(--space) * 2.5)}.callout{margin-block:calc(var(--space) * 2)}.data-table tbody tr{transition:background var(--transition)}.data-table tbody tr:hover{background:var(--color-surface)}.feature-chip{transition:border-color var(--transition),background var(--transition),transform var(--transition),box-shadow var(--transition)}.feature-chip:hover{border-color:var(--color-brand-500);background:var(--color-brand-50);transform:translateY(-1px);box-shadow:var(--shadow-xs)}.form-card input:hover:not(:focus),.form-card select:hover:not(:focus),.form-card textarea:hover:not(:focus),.inline-field input:hover:not(:focus),.inline-field select:hover:not(:focus),.price-card__form input:hover:not(:focus){border-color:var(--color-border-strong)}.icon-btn{transition:background var(--transition),color var(--transition),border-color var(--transition),transform var(--transition)}.icon-btn:hover{transform:translateY(-1px)}.icon-btn:active{transform:scale(.92)}.nav-link{transition:background var(--transition),color var(--transition),transform var(--transition)}.nav-link:active{transform:scale(.98)}.nav-link__icon{transition:color var(--transition),transform var(--transition)}.nav-link:hover .nav-link__icon{transform:translate(1px)}.aging-cell{transition:border-color var(--transition),background var(--transition),transform var(--transition)}.aging-cell:hover{border-color:var(--color-border-strong);transform:translateY(-1px)}.badge,.pill,.id-chip{transition:background var(--transition),color var(--transition),border-color var(--transition)}.btn__icon,.btn svg{transition:transform var(--transition)}.btn:hover .btn__icon,.btn:hover svg{transform:translate(1px)}.app-main p a,.callout__text a,.kv__v a{background-image:linear-gradient(var(--color-brand-500),var(--color-brand-500));background-size:0% 1.5px;background-position:0 100%;background-repeat:no-repeat;text-decoration:none;transition:background-size var(--transition)}.app-main p a:hover,.callout__text a:hover,.kv__v a:hover{background-size:100% 1.5px;text-decoration:none}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:no-preference){.stat-grid>*,.dash-grid>*,.listing-grid>*,.home-features>*,.app-main .section-card{animation:rise .46s cubic-bezier(.32,.72,0,1) both}.stat-grid>*:nth-child(2),.dash-grid>*:nth-child(2),.listing-grid>*:nth-child(2),.home-features>*:nth-child(2){animation-delay:50ms}.stat-grid>*:nth-child(3),.dash-grid>*:nth-child(3),.listing-grid>*:nth-child(3),.home-features>*:nth-child(3){animation-delay:.1s}.stat-grid>*:nth-child(4),.dash-grid>*:nth-child(4),.listing-grid>*:nth-child(4),.home-features>*:nth-child(4){animation-delay:.15s}.stat-grid>*:nth-child(5),.dash-grid>*:nth-child(5),.listing-grid>*:nth-child(5),.home-features>*:nth-child(5){animation-delay:.2s}.stat-grid>*:nth-child(6),.dash-grid>*:nth-child(6),.listing-grid>*:nth-child(6),.home-features>*:nth-child(6){animation-delay:.25s}.stat-grid>*:nth-child(n+7),.dash-grid>*:nth-child(n+7),.listing-grid>*:nth-child(n+7),.home-features>*:nth-child(n+7){animation-delay:.3s}}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition)}.theme-toggle:hover{background:var(--color-brand-50);color:var(--color-brand-500);border-color:var(--color-brand-500)}.realtime-pill{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 5px 0 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-warn) 42%,var(--color-border));background:color-mix(in srgb,var(--color-warn) 10%,var(--color-card));color:var(--color-text);font-size:.78rem;font-weight:550;white-space:nowrap}.realtime-pill__dot{flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--color-warn)}.realtime-pill--busy .realtime-pill__dot{animation:realtime-pulse 1.4s ease-in-out infinite}@keyframes realtime-pulse{0%,to{opacity:1}50%{opacity:.25}}.realtime-pill__action{padding:3px 10px;border-radius:999px;border:1px solid var(--color-border-strong);background:var(--color-card);color:var(--color-text);font:inherit;font-size:.75rem;font-weight:600;cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition)}.realtime-pill__action:hover{background:var(--color-surface);border-color:var(--color-brand-500);color:var(--color-brand-500)}@media(prefers-reduced-motion:reduce){.realtime-pill--busy .realtime-pill__dot{animation:none}}@media(max-width:640px){.realtime-pill__label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.realtime-pill{padding-inline-start:8px}}.stay-cal{display:flex;flex-direction:column;gap:calc(var(--space) * 1.5)}.stay-cal__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space)}.stay-cal__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.stay-cal__day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;padding:4px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-card);color:var(--color-text);font:inherit;cursor:pointer;text-align:center}.stay-cal__day:disabled{cursor:not-allowed}.stay-cal__day--out{opacity:.35}.stay-cal__day--blocked{background:var(--color-surface-2);color:var(--color-text-muted);text-decoration:line-through}.stay-cal__day--booked{background:color-mix(in srgb,var(--color-warn) 16%,transparent);color:var(--color-text)}.stay-cal__day--sel{background:var(--color-brand);color:#fff;border-color:var(--color-brand)}.stay-cal__rate{font-size:.72rem;font-variant-numeric:tabular-nums}.stay-cal__legend{display:flex;flex-wrap:wrap;gap:calc(var(--space) * 1.5);font-size:.82rem;color:var(--color-text-muted)}.stay-steps{display:flex;align-items:center;gap:6px}.stay-steps__dot{width:10px;height:10px;border-radius:50%;background:var(--color-border)}.stay-steps__dot--done{background:var(--color-accent)}.stay-steps__dot--now{background:var(--color-brand)}.stay-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space)}.stay-photo{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--color-border)}.stay-money{display:flex;flex-direction:column;gap:6px}.stay-money__row{display:flex;align-items:baseline;justify-content:space-between;gap:calc(var(--space) * 1.5);font-variant-numeric:tabular-nums}.stay-money__row--total{font-weight:600;border-top:1px solid var(--color-border);padding-top:6px}@media(max-width:640px){.stay-cal__day{min-height:44px}.stay-cal__rate{display:none}}.page-layout{width:100%;min-width:0;margin-inline:auto}.page-layout--wide{max-width:var(--content-max)}.page-layout--prose{max-width:var(--measure)}.page-layout--full{max-width:none}.stack{display:flex;flex-direction:column;align-items:stretch;gap:calc(var(--space) * 3)}.stack>*{min-width:0}.stack--sm{gap:calc(var(--space) * 1.5)}.stack--md{gap:calc(var(--space) * 3)}.stack--lg{gap:calc(var(--space) * 4)}.stack>.section-card{margin-bottom:0}.form-col{display:flex;flex-direction:column;align-items:stretch;gap:calc(var(--space) * 2.5);width:100%;max-width:var(--form-max)}.form-col>*{min-width:0}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(var(--space) * 2);align-items:start}.fieldset{display:flex;flex-direction:column;align-items:stretch;gap:calc(var(--space) * 2.5);min-width:0;margin:0;padding:0;border:0}.fieldset__legend{padding:0;margin-bottom:calc(var(--space) * 1.25);font-size:.95rem;font-weight:650;letter-spacing:-.01em;color:var(--color-text)}.fieldset__desc{margin:0;max-width:var(--measure);font-size:.85rem;color:var(--color-text-muted)}.split-view{display:grid;grid-template-columns:minmax(0,var(--split-list-w, 360px)) minmax(0,1fr);gap:calc(var(--space) * 3);align-items:stretch;height:calc(100dvh - var(--header-h) - var(--space) * 12);min-height:420px}.split-view__list{min-width:0;min-height:0;overflow-y:auto}.split-view__detail{min-width:0;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.split-view__back{display:none}@media(max-width:900px){.split-view{height:auto;min-height:0}.split-view__list,.split-view__detail{overflow:visible}.split-view__back{display:inline-flex;align-self:flex-start;min-height:44px;margin-bottom:calc(var(--space) * 2)}}.form-field__static{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:40px;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-size:.9375rem}.typeahead{position:relative}.typeahead__pop{position:absolute;inset-inline:0;inset-block-start:calc(100% + 4px);z-index:var(--z-popover);max-height:260px;overflow-y:auto;padding:4px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.typeahead__option{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;border:none;background:none;border-radius:var(--radius-sm);font:inherit;color:var(--color-text);text-align:start;cursor:pointer}.typeahead__option:hover{background:var(--color-surface)}.typeahead__option.is-active{background:var(--color-brand-50);color:var(--color-brand-500)}.typeahead__option-sub{font-size:.8rem;color:var(--color-text-muted)}.typeahead__empty{padding:12px;text-align:center;color:var(--color-text-muted);font-size:.875rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) var(--aside-w);gap:calc(var(--space) * 4);align-items:start}.detail-layout__main{min-width:0}.detail-layout__aside{min-width:0;position:sticky;inset-block-start:calc(var(--header-h) + var(--space) * 2)}.record-head{display:flex;flex-direction:column;gap:calc(var(--space) * 1.5);margin-bottom:calc(var(--space) * 3);padding-bottom:calc(var(--space) * 2);border-bottom:1px solid var(--color-border)}.record-head__back{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding-inline:calc(var(--space) * 1.25);margin-inline-start:calc(var(--space) * -1.25);border:none;border-radius:var(--radius-sm);background:none;color:var(--color-text-muted);font:inherit;font-size:.875rem;font-weight:550;text-decoration:none;cursor:pointer;transition:background var(--transition),color var(--transition)}.record-head__back:hover{background:var(--color-surface);color:var(--color-brand-500);text-decoration:none}.record-head__main{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--space) * 2)}.record-head__title{flex:1 1 320px;min-width:0;margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--space) * 1.5);font-family:var(--font-sans);font-size:1.55rem;font-weight:680;letter-spacing:-.02em;line-height:1.2}.record-head__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space) calc(var(--space) * 2);font-size:.875rem;color:var(--color-text-muted)}.record-head__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space);margin-inline-start:auto}.route-tabs{display:flex;align-items:stretch;gap:2px;margin:0 0 calc(var(--space) * 3);border-bottom:1px solid var(--color-border);overflow-x:auto;scrollbar-width:none}.route-tabs::-webkit-scrollbar{display:none}.route-tabs__link{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding-inline:calc(var(--space) * 1.5);border-bottom:2px solid transparent;color:var(--color-text-muted);font-size:.9rem;font-weight:550;text-decoration:none;white-space:nowrap;transition:color var(--transition),border-color var(--transition)}.route-tabs__link:hover{color:var(--color-text);text-decoration:none}.route-tabs__link.is-active{color:var(--color-brand-500);border-bottom-color:var(--color-brand-500);font-weight:650}.route-tabs__count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding-inline:6px;border-radius:999px;background:var(--color-surface-2);color:var(--color-text-muted);font-size:.72rem;font-weight:650;font-variant-numeric:tabular-nums}.route-tabs__link.is-active .route-tabs__count{background:var(--color-brand-50);color:var(--color-brand-500)}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;margin-top:calc(var(--space) * 2)}.table-scroll>.data-table{margin-top:0}.data-table th[aria-sort]{cursor:pointer}.data-table__sort{display:inline-flex;align-items:center;gap:5px;padding:0;border:none;background:none;cursor:pointer;font:inherit;font-weight:600;color:inherit}.data-table__sort:hover{color:var(--color-text)}.data-table__sort-caret{flex:0 0 auto;align-self:center}th[aria-sort=none] .data-table__sort-caret{opacity:.35}th[aria-sort=ascending] .data-table__sort-caret,th[aria-sort=descending] .data-table__sort-caret{opacity:1}.data-table__caption{caption-side:top;text-align:start;padding:0 0 calc(var(--space) * 1.25);font-size:.85rem;font-weight:600;color:var(--color-text-muted)}.data-table__row--clickable{cursor:pointer}.data-table__row--clickable:focus-visible{outline:2px solid var(--color-brand-500);outline-offset:-2px}@media(max-width:900px){.data-table .data-table__col--hide-md{display:none}}@media(max-width:640px){.data-table .data-table__col--hide-sm{display:none}}.desc-list{display:grid;grid-template-columns:1fr;gap:calc(var(--space) * 1.5) calc(var(--space) * 3);margin:0}.desc-list--2{grid-template-columns:repeat(2,minmax(0,1fr))}.desc-list__item{display:flex;flex-direction:column;gap:3px;min-width:0}.desc-list__item--full{grid-column:1 / -1}.desc-list__term{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.02em;color:var(--color-text-muted)}.desc-list__detail{margin:0;min-width:0;font-size:.9375rem;font-weight:500;overflow-wrap:anywhere}.entity-ref{display:inline-flex;align-items:center;gap:7px;min-width:0;max-width:100%;color:var(--color-text);text-decoration:none}.entity-ref:hover{text-decoration:none}.entity-ref__name{min-width:0;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}a.entity-ref:hover .entity-ref__name{color:var(--color-brand-500);text-decoration:underline}.entity-ref--loading,.entity-ref--unresolved{color:var(--color-text-muted);font-style:italic;font-weight:400;background:none;border:0;padding:0;font-size:inherit;font-family:inherit;text-align:left}.entity-ref--unresolved{cursor:copy}.entity-ref--unresolved:hover{color:var(--color-text)}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space) calc(var(--space) * 2);margin-top:calc(var(--space) * 3)}.pagination__info{margin-inline-end:auto;font-size:.85rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.menu{position:relative;display:inline-flex}.menu__trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:36px;min-height:36px;padding-inline:var(--space);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-card);color:var(--color-text-muted);font:inherit;font-size:.875rem;cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition)}.menu__trigger:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px}.menu__trigger:hover{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.menu__trigger[aria-expanded=true]{background:var(--color-surface);border-color:var(--color-brand-500);color:var(--color-brand-500)}.menu__pop{position:absolute;inset-block-start:calc(100% + 6px);inset-inline-end:0;z-index:var(--z-popover);min-width:216px;max-width:min(320px,calc(100vw - var(--space) * 4));margin:0;padding:6px;list-style:none;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:menu-pop .14s cubic-bezier(.32,.72,0,1)}.menu__pop--start{inset-inline-end:auto;inset-inline-start:0}.menu__pop--end{inset-inline-start:auto;inset-inline-end:0}.menu__item{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:8px 10px;border:none;border-radius:var(--radius-sm);background:none;color:var(--color-text);font:inherit;font-size:.875rem;text-align:start;text-decoration:none;cursor:pointer}.menu__item:hover:not(:disabled){background:var(--color-surface);text-decoration:none}.menu__item:disabled{opacity:.5;cursor:default}.menu__item svg{flex:0 0 auto;color:var(--color-text-muted)}.menu__item--danger{color:var(--color-danger)}.menu__item--danger svg{color:var(--color-danger)}.menu__item--danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-danger) 10%,transparent)}.menu__sep{height:1px;margin:4px 0;border:none;background:var(--color-border)}.action-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space)}.action-bar__end{margin-inline-start:auto}.toolbar__search{flex:1 1 260px;min-width:0;display:flex;align-items:center;gap:var(--space);padding-inline:calc(var(--space) * 1.5);border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-bg);transition:border-color var(--transition),box-shadow var(--transition)}.toolbar__search:focus-within{border-color:var(--color-brand-500);box-shadow:var(--ring)}.toolbar__search>input{flex:1 1 auto;min-width:0;min-height:42px;padding:0;border:none;background:none;color:var(--color-text);font:inherit;font-size:.9375rem}.toolbar__search>input:focus{outline:none;box-shadow:none}.toolbar__search>svg{flex:0 0 auto;color:var(--color-text-muted)}.toolbar__filters{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space);min-width:0}.toolbar__actions{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space);margin-inline-start:auto}.ai-search-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space);position:relative}.ai-search-bar__field{flex:1 1 320px;min-width:0;display:flex;align-items:center;gap:var(--space);padding-inline:calc(var(--space) * 1.5);border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-bg);transition:border-color var(--transition),box-shadow var(--transition)}.ai-search-bar__field:focus-within{border-color:var(--color-brand-500);box-shadow:var(--ring)}.ai-search-bar__field>svg{flex:0 0 auto;color:var(--color-text-muted)}.ai-search-bar__field>input{flex:1 1 auto;min-width:0;min-height:42px;padding:0;border:none;background:none;color:var(--color-text);font:inherit;font-size:.9375rem}.ai-search-bar__field>input:focus{outline:none;box-shadow:none}.ai-search-bar__mic{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--color-border-strong);border-radius:var(--radius-full, 999px);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition)}.ai-search-bar__mic:hover{color:var(--color-text)}.ai-search-bar__mic--listening{border-color:var(--color-danger);color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 10%,transparent);animation:ai-mic-pulse 1.4s ease-in-out infinite}@keyframes ai-mic-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--color-danger) 35%,transparent)}50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--color-danger) 0%,transparent)}}@media(prefers-reduced-motion:reduce){.ai-search-bar__mic--listening{animation:none}}.ai-search-bar__status{flex-basis:100%;font-size:.8125rem;color:var(--color-text-muted)}.ai-search-bar__status--error{color:var(--color-danger)}.money-input{display:flex;align-items:stretch;gap:var(--space);min-width:0}.money-input__adornment{flex:0 0 auto;display:inline-flex;align-items:center;min-height:40px;padding-inline:calc(var(--space) * 1.25);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text-muted);font-size:.8125rem;font-weight:650;letter-spacing:.02em}.money-input>input{flex:1 1 auto;min-width:0;text-align:end;font-variant-numeric:tabular-nums}.prose{max-width:var(--measure)}.prose>:last-child{margin-bottom:0}@media(max-width:1200px){.app-main{padding:calc(var(--space) * 3.5)}.detail-layout{grid-template-columns:1fr}.detail-layout__aside{position:static}}@media(max-width:900px){.app-main{padding:calc(var(--space) * 3) calc(var(--space) * 2)}.split-view{grid-template-columns:1fr}.split-view__detail,.split-view.is-detail-open .split-view__list{display:none}.split-view.is-detail-open .split-view__detail{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-drawer);padding:calc(var(--space) * 2);overflow-y:auto;overscroll-behavior:contain;background:var(--color-canvas)}}@media(min-width:901px){.stat-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.search-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.aging-grid,.facts-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media(max-width:640px){.field-row,.desc-list--2,.search-filters{grid-template-columns:1fr}.toolbar__search{flex-basis:100%}.toolbar__actions{margin-inline-start:0}.modal-overlay{padding-block:calc(var(--space) * 2)}.modal{max-height:calc(100dvh - var(--space) * 4)}.table-scroll>.data-table{display:table;overflow-x:visible;white-space:normal}.data-table--stack{display:block;white-space:normal;overflow-x:visible}.data-table--stack thead{display:none}.data-table--stack tbody,.data-table--stack tr,.data-table--stack td{display:block}.data-table--stack tr{padding-block:calc(var(--space) * 1.25);border-bottom:1px solid var(--color-border)}.data-table--stack tr:last-child{border-bottom:none}.data-table--stack td{display:flex;align-items:baseline;justify-content:space-between;gap:calc(var(--space) * 2);padding-inline:0;padding-block:4px;border:none;text-align:end}.data-table--stack td:before{content:attr(data-label);flex:0 0 auto;color:var(--color-text-muted);font-weight:600;text-align:start}.data-table--stack td:empty{display:none}}.unit-matrix{display:flex;flex-direction:column;gap:calc(var(--space) * 1.5)}.unit-matrix__scroll{overflow-x:auto}.unit-matrix__row{display:grid;grid-template-columns:72px 1fr;gap:calc(var(--space) * 1.5);align-items:start}.unit-matrix__floor{font-weight:600;color:var(--color-text-muted);padding-top:calc(var(--space) * 1.25)}.unit-matrix__cells{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:var(--space)}.unit-cell{display:flex;flex-direction:column;gap:2px;min-height:76px;padding:var(--space);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);text-align:start;text-decoration:none;transition:var(--transition)}.unit-cell:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.unit-cell--available{border-inline-start:3px solid var(--color-brand)}.unit-cell--unavailable{border-inline-start:3px solid var(--color-border-strong);opacity:.62}.unit-cell__ref{font-weight:600}.unit-cell__meta{font-size:.8125rem;color:var(--color-text-muted)}.unit-cell__price{font-variant-numeric:tabular-nums}@media(max-width:640px){.unit-matrix__row{grid-template-columns:1fr;gap:calc(var(--space) * .5)}.unit-matrix__cells{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}}.mkt-show__copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.welcome{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-consent) + 10);display:grid;place-items:center;padding:calc(var(--space) * 3);overflow:hidden;background:var(--color-card);opacity:0;transition:opacity .3s ease}.welcome.is-open{opacity:1}.welcome__controls{position:absolute;inset-block-start:14px;inset-inline-end:16px;display:inline-flex;align-items:center;gap:4px}.welcome__skip{border:0;background:transparent;cursor:pointer;min-height:44px;padding:0 14px;border-radius:var(--radius);font:inherit;font-weight:500;color:var(--color-text-muted);transition:background var(--transition),color var(--transition)}.welcome__skip:hover{background:var(--color-surface);color:var(--color-text)}.welcome__close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:999px;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background var(--transition),color var(--transition)}.welcome__close:hover{background:var(--color-surface);color:var(--color-text)}.welcome__stage{display:grid;place-items:center;grid-template-areas:"stage"}.welcome__cell{grid-area:stage;opacity:0;pointer-events:none;transition:opacity .26s ease}.welcome__cell.is-on{opacity:1;pointer-events:auto;transition:opacity .34s ease .28s}.welcome__logo{width:min(38vw,168px);height:auto;display:block;filter:drop-shadow(0 12px 30px color-mix(in srgb,var(--color-brand) 24%,transparent))}.welcome__logo-fill{opacity:0;animation:wel-fill .55s ease .5s forwards}.welcome__logo-fill.is-static{opacity:1;animation:none}.welcome__logo-draw{opacity:1}.welcome__logo-draw.is-ready{animation:wel-draw .8s ease forwards}.welcome__greeting{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:0 12px;text-align:center;padding-inline:var(--space)}.welcome__grad{font-family:var(--font-display);font-optical-sizing:auto;font-size:clamp(2rem,7vw,3.75rem);font-weight:600;letter-spacing:-.02em;background-image:linear-gradient(90deg,var(--color-brand),var(--color-brand-500),var(--color-accent),var(--color-brand-500),var(--color-brand));background-size:250% auto;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:wel-flow 4s linear infinite}.welcome__name{font-family:var(--font-display);font-optical-sizing:auto;font-size:clamp(2rem,7vw,3.75rem);font-weight:300;letter-spacing:-.02em;color:var(--color-text-muted);max-width:18ch;overflow-wrap:anywhere}.welcome__final{width:100%;max-width:640px;text-align:center}.welcome__tagline{margin:0 auto;max-width:34ch;font-size:clamp(1.05rem,2.6vw,1.5rem);font-weight:500;line-height:1.35;color:var(--color-text)}.welcome__actions{margin-top:calc(var(--space) * 3.5);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}.welcome__cta{padding:13px 26px;font-size:1rem;transition:transform .28s cubic-bezier(.2,.7,.2,1),background var(--transition)}.welcome__dismiss{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:0;border-radius:var(--radius);background:transparent;color:var(--color-text-muted);font:inherit;font-weight:500;text-decoration:none;cursor:pointer;transition:color var(--transition),background var(--transition)}.welcome__dismiss:hover{color:var(--color-text);background:var(--color-surface);text-decoration:none}.welcome__quick{margin-top:calc(var(--space) * 3.5);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space)}.welcome__chip{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 15px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-card);font-size:.875rem;font-weight:500;color:var(--color-text-muted);text-decoration:none;transition:border-color var(--transition),color var(--transition),background var(--transition)}.welcome__chip:hover{border-color:var(--color-border-strong);color:var(--color-text);background:var(--color-surface);text-decoration:none}.welcome__final.is-in .welcome__tagline{animation:wel-rise .5s cubic-bezier(.2,.7,.2,1) both}.welcome__final.is-in .welcome__actions{animation:wel-rise .5s cubic-bezier(.2,.7,.2,1) 80ms both}.welcome__final.is-in .welcome__quick{animation:wel-rise .5s cubic-bezier(.2,.7,.2,1) .16s both}@keyframes wel-flow{to{background-position:250% center}}@keyframes wel-fill{to{opacity:1}}@keyframes wel-draw{to{stroke-dashoffset:0}}@keyframes wel-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.welcome,.welcome__cell,.welcome__cell.is-on,.welcome__cta{transition:none}.welcome__grad,.welcome__logo-fill,.welcome__logo-draw{animation:none}.welcome__logo-fill{opacity:1}.welcome__final.is-in .welcome__tagline,.welcome__final.is-in .welcome__actions,.welcome__final.is-in .welcome__quick{animation:none}}.app-main{padding-block-end:calc(var(--consent-h, 0px) + var(--space) * 2)}.modal-overlay{padding-block-end:calc(var(--space) * 4 + var(--consent-h, 0px))}.toaster{inset-block-end:calc(var(--space) * 3 + var(--consent-h, 0px))}.compare-tray{inset-block-end:var(--consent-h, 0px)}.approval-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:calc(var(--space) * 2);list-style:none;margin:0;padding:0}.approval-photos img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius);display:block}@media(max-width:640px){.approval-photos{grid-template-columns:1fr}}.search-split{display:grid;grid-template-columns:3fr 2fr;gap:calc(var(--space) * 3);align-items:start;margin-top:calc(var(--space) * 2)}.search-split--list-only{grid-template-columns:1fr}.search-split__map{position:sticky;top:calc(var(--space) * 2)}.search-split__list{min-width:0}@media(max-width:899px){.search-split,.search-split--list-only{grid-template-columns:1fr}.search-split__map{position:static}.search-split__list.is-collapsed{max-height:0;overflow:hidden;transform:translateY(8px);opacity:0;pointer-events:none}}:root{--map-band-1: #c7d2fe;--map-band-2: #93a4fd;--map-band-3: #6366f1;--map-band-4: #4338ca;--map-band-5: #312e81}[data-theme=dark]{--map-band-1: #3730a3;--map-band-2: #4f46e5;--map-band-3: #6366f1;--map-band-4: #a5b4fc;--map-band-5: #e0e7ff}.map-legend{display:flex;flex-direction:column;gap:calc(var(--space) * 1.5);padding:calc(var(--space) * 1.5);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-card) 94%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--shadow-lg);max-height:100%;overflow-y:auto}.map-legend__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space);border:0;background:transparent;padding:0;font:inherit;color:inherit;text-align:start;cursor:pointer}.map-legend__chevron{display:inline-flex;color:var(--color-text-muted);transition:transform var(--transition)}.map-legend__chevron.is-expanded{transform:rotate(90deg)}.map-legend__body{display:flex;flex-direction:column;gap:calc(var(--space) * 1.5)}.map-legend__group{display:flex;flex-direction:column;gap:6px}.map-legend__title{font-size:.8rem;font-weight:700;color:var(--color-text)}.map-legend__hint{font-size:.75rem;color:var(--color-text-muted)}.map-legend__scale{display:flex;flex-wrap:wrap;gap:4px 14px}.map-legend__band{display:inline-flex;align-items:center;gap:7px;font-size:.75rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.map-legend__swatch{display:inline-block;border-radius:50%;border:2px solid var(--color-card);box-shadow:0 0 0 1px var(--color-border);flex:none}.map-pin{display:inline-flex;line-height:0;cursor:pointer;transform-origin:50% 100%;transition:transform var(--transition);filter:drop-shadow(0 1px 2px rgba(15,23,42,.35))}.map-pin--promoted svg path{filter:drop-shadow(0 0 4px color-mix(in srgb,var(--color-warn-500, #f59e0b) 85%,transparent))}.map-pin--selected{transform:scale(1.22);z-index:1000}.leaflet-marker-icon:focus-visible .map-pin,.leaflet-marker-icon:focus .map-pin{outline:3px solid var(--color-brand-500);outline-offset:2px;border-radius:50% 50% 50% 4px}.map-cluster{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:2px solid #fff;background:var(--color-brand-600);color:#fff;font-weight:700;font-size:.8rem;box-shadow:var(--shadow-sm);cursor:pointer}.map-notice{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space);padding:8px 12px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-card) 94%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--shadow-lg);font-size:.8rem;color:var(--color-text-muted)}.map-sheet{position:fixed;inset-inline:0;inset-block-end:0;z-index:900;max-height:62vh;overflow-y:auto;background:var(--color-card);border-start-start-radius:var(--radius);border-start-end-radius:var(--radius);border:1px solid var(--color-border);border-block-end:none;box-shadow:var(--shadow-lg);padding-block-end:calc(var(--space) * 2 + var(--consent-h, 0px))}.map-sheet__grip{width:40px;height:4px;border-radius:2px;background:var(--color-border);margin:8px auto 0}.map-popup-card{display:flex;flex-direction:column;gap:8px;padding:calc(var(--space) * 1.5);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);max-height:min(70vh,480px);overflow-y:auto}.map-popup-card__media{position:relative;margin:calc(var(--space) * -1.5) calc(var(--space) * -1.5) 0;aspect-ratio:16 / 10;overflow:hidden;border-radius:var(--radius) var(--radius) 0 0;background:var(--color-surface)}.map-popup-card__shot{width:100%;height:100%;object-fit:cover;display:block}.map-popup-card__photoCount{position:absolute;right:8px;bottom:8px;display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;background:#0f172ab8;color:#fff;font-size:.72rem;font-weight:600}.map-popup-card__price{font-size:1.05rem;font-weight:700;color:var(--color-text)}.map-popup-card__title{font-size:.9rem;font-weight:600;color:var(--color-text)}.map-popup-card__meta{font-size:.78rem;color:var(--color-text-muted)}.map-popup-card__badges{display:flex;flex-wrap:wrap;gap:6px}.map-popup-card__cta{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.map-popup-card__units{display:flex;flex-direction:column;gap:4px;max-height:220px;overflow-y:auto}.map-popup-card__unit{display:flex;align-items:center;justify-content:space-between;gap:var(--space);padding:6px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.8rem;min-height:44px}
