:root{--navy-900: #072032;--navy-800: #0C2C42;--navy-700: #123850;--navy-600: #1A4258;--navy-500: #33546A;--navy-400: #5A6B78;--navy-300: #9FB1BE;--navy-200: #C7D2DA;--navy-100: #DCE3E9;--navy-50: #EEF2F5;--navy-25: #FAFBFC;--green-900: #0C3B2C;--green-700: #0C7A4A;--green-600: #17B96A;--green-500: #21D37E;--green-100: #E4F9EF;--green-50: #F2FCF7;--red-700: #B3352F;--red-300: #FF8078;--background: #FAFBFC;--foreground: #072032;--card: #FFFFFF;--card-foreground: #072032;--popover: #FFFFFF;--popover-foreground: #072032;--primary: #21D37E;--primary-foreground: #072032;--secondary: #EEF2F5;--secondary-foreground: #072032;--muted: #F1F4F7;--muted-foreground: #5A6B78;--accent: #E4F9EF;--accent-foreground: #072032;--destructive: #B3352F;--destructive-foreground: #FFFFFF;--border: #DCE3E9;--input: #DCE3E9;--ring: #21D37E;--radius: .5rem;--success: #0C7A4A;--success-foreground: #FFFFFF;--chart-1: #21D37E;--chart-2: #123850;--chart-3: #9FB1BE;--chart-4: #E0A83E;--chart-5: #B3352F;--shadow-sm: 0 1px 2px rgba(7, 32, 50, .06);--shadow-md: 0 2px 8px rgba(7, 32, 50, .08);--shadow-lg: 0 8px 30px rgba(7, 32, 50, .12);--shadow-overlay: 0 16px 50px rgba(7, 32, 50, .24)}.dark{--background: #072032;--foreground: #E8EEF2;--card: #0C2C42;--card-foreground: #E8EEF2;--popover: #0C2C42;--popover-foreground: #E8EEF2;--primary: #21D37E;--primary-foreground: #072032;--secondary: #123850;--secondary-foreground: #E8EEF2;--muted: #0F3049;--muted-foreground: #9FB1BE;--accent: #0C3B2C;--accent-foreground: #A9F0CE;--destructive: #FF8078;--destructive-foreground: #33100C;--border: #163B54;--input: #163B54;--ring: #21D37E;--success: #21D37E;--success-foreground: #072032;--chart-1: #21D37E;--chart-2: #9FB1BE;--chart-3: #4E7A96;--chart-4: #E0A83E;--chart-5: #FF8078;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 2px 8px rgba(0, 0, 0, .35);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .45);--shadow-overlay: 0 16px 50px rgba(0, 0, 0, .6)}:root{--font-sans: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-xs: 12px;--text-sm: 14px;--text-base: 15px;--text-lg: 18px;--text-xl: 22px;--text-2xl: 28px;--text-3xl: 36px;--text-4xl: 48px;--leading-tight: 1.15;--leading-snug: 1.35;--leading-normal: 1.55;--tracking-tight: -.02em;--tracking-normal: 0;--tracking-wide: .06em;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700}body{font-family:var(--font-sans);color:var(--foreground);background:var(--background);-webkit-font-smoothing:antialiased}.ds-figure,.ds-table td[data-numeric]{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: calc(var(--radius) - 4px);--radius-md: calc(var(--radius) - 2px);--radius-lg: var(--radius);--radius-xl: calc(var(--radius) + 4px);--radius-full: 9999px;--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-fast: .12s;--duration-normal: .2s}.app-badge{display:inline-grid;place-items:center;min-width:28px;height:24px;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--card);color:var(--foreground);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;line-height:1}.app-badge--count{border-color:var(--navy-200);background:#fff;color:var(--navy-700)}.app-badge--selected{border-color:color-mix(in srgb,var(--primary) 45%,var(--navy-200));color:var(--success)}.app-badge--success{border-color:color-mix(in srgb,var(--success) 30%,var(--border));background:var(--accent);color:var(--success)}.app-badge--deadline{min-width:0;height:24px;font-family:var(--font-sans);font-size:var(--text-xs)}.app-badge--danger{border-color:color-mix(in srgb,var(--destructive) 34%,var(--border));background:color-mix(in srgb,var(--destructive) 10%,var(--card));color:var(--destructive)}.app-badge--warning{border-color:color-mix(in srgb,var(--chart-4) 40%,var(--border));background:color-mix(in srgb,var(--chart-4) 14%,var(--card));color:#8a5a00}.app-badge--neutral{border-color:var(--border);background:var(--secondary);color:var(--muted-foreground)}.status-icon{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:var(--radius-full);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:1}.status-icon--approved{border:1px solid var(--primary);background:var(--primary);color:var(--primary-foreground)}.status-icon--unapproved{border:1px solid #F1C565;background:#f1c565;color:#8a5a00}.status-icon--other{border:1px solid var(--navy-200);background:var(--navy-200);color:var(--navy-700)}.dark .status-icon--approved{background:var(--primary);color:var(--primary-foreground)}.dark .status-icon--unapproved{border-color:#f1c565;background:#f1c565;color:#8a5a00}.dark .status-icon--other{border-color:var(--navy-300);background:var(--navy-300);color:var(--navy-900)}.app-topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:64px;padding:0 var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.app-topbar>div{display:grid;gap:2px}.app-topbar strong{color:var(--foreground);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.app-topbar__eyebrow{color:var(--muted-foreground);font-size:var(--text-xs)}.data-table-shell{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:var(--space-4);min-height:0;overflow:hidden;padding:var(--space-5);border-radius:var(--radius-lg)}.data-table-toolbar,.data-table-pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.data-table-toolbar h2{margin:0;color:var(--foreground);font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight)}.data-table-toolbar p,.data-table-pagination{margin:var(--space-1) 0 0;color:var(--muted-foreground);font-size:var(--text-sm)}.data-table-filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:var(--space-2)}.filter-row-actions{display:flex;align-items:flex-end;gap:var(--space-2);margin-left:auto}.filter-clear{display:inline-flex;align-items:center;gap:var(--space-1);height:36px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--muted-foreground);cursor:pointer;font-size:var(--text-sm);font-weight:var(--weight-medium)}.filter-row-actions .filter-clear{margin-top:auto}.filter-clear:hover,.filter-clear:focus-visible{background:var(--secondary);color:var(--foreground);outline:none}.column-menu{position:relative}.menu-trigger{display:inline-flex;align-items:center;justify-content:center;max-width:100%;width:100%;height:36px;padding:0 var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--muted-foreground);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-snug);white-space:nowrap}.filter-field{position:relative;display:grid;gap:4px;width:164px}.filter-field--action{width:184px}.filter-field--view{width:116px}.view-switch{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;height:36px;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card)}.view-switch__button{display:inline-grid;place-items:center;border:0;background:transparent;color:color-mix(in srgb,var(--muted-foreground) 78%,var(--card));cursor:pointer;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-medium)}.view-switch__button svg{opacity:.82}.view-switch__button+.view-switch__button{border-left:1px solid var(--border)}.view-switch__button:hover,.view-switch__button:focus-visible{background:var(--secondary);color:var(--muted-foreground);outline:none}.view-switch__button--active{background:color-mix(in srgb,var(--navy-50) 72%,var(--card));color:var(--navy-700)}.view-switch__button--active svg{opacity:.9}.filter-menu{position:static}.filter-menu .menu-trigger{overflow:hidden;text-overflow:ellipsis}.filter-menu__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0;color:var(--muted-foreground);font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1}.filter-field--active .menu-trigger{border-color:var(--navy-200);background:var(--navy-50);color:var(--muted-foreground)}.column-menu__content,.filter-menu__content{position:absolute;top:calc(100% + var(--space-2));right:0;z-index:10;display:grid;gap:var(--space-2);width:min(320px,calc(100vw - 48px));max-height:420px;overflow:auto;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--popover);box-shadow:var(--shadow-lg)}.filter-menu__content{left:0;right:auto;width:min(280px,calc(100vw - 48px))}.filter-menu__content--range{width:min(340px,calc(100vw - 48px))}.column-menu__item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);color:var(--muted-foreground);font-size:var(--text-xs);line-height:var(--leading-snug)}.column-menu__label{display:flex;align-items:center;min-width:0;gap:var(--space-2)}.column-menu__label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-menu__actions{display:inline-flex;align-items:center;flex:none;gap:2px}.column-menu__move{display:inline-grid;place-items:center;width:24px;height:24px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--muted-foreground);cursor:pointer}.column-menu__move:hover:not(:disabled),.column-menu__move:focus-visible{border-color:var(--border);background:var(--secondary);color:var(--foreground);outline:none}.column-menu__move:disabled{cursor:not-allowed;opacity:.35}.range-filter__inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.range-filter__inputs label{display:grid;gap:var(--space-1);color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium)}.range-filter__inputs .ds-input{height:34px;color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium)}.range-filter__slider{position:relative;height:28px}.range-filter__slider:before{content:"";position:absolute;top:13px;right:0;left:0;height:4px;border-radius:var(--radius-full);background:var(--navy-200)}.range-filter__slider input[type=range]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:28px;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;pointer-events:none}.range-filter__slider input[type=range]::-webkit-slider-runnable-track{height:4px;background:transparent}.range-filter__slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;margin-top:-5px;border:2px solid var(--card);border-radius:var(--radius-full);background:var(--navy-500);box-shadow:var(--shadow-sm);cursor:grab;pointer-events:auto}.range-filter__slider input[type=range]::-moz-range-track{height:4px;background:transparent}.range-filter__slider input[type=range]::-moz-range-thumb{width:14px;height:14px;border:2px solid var(--card);border-radius:var(--radius-full);background:var(--navy-500);box-shadow:var(--shadow-sm);cursor:grab;pointer-events:auto}.range-filter__caption{margin:0;color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium)}.filter-suggestions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.filter-suggestions button{height:28px;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--card);color:var(--muted-foreground);cursor:pointer;font-size:var(--text-xs);font-weight:var(--weight-regular)}.filter-suggestions button:hover,.filter-suggestions button:focus-visible{border-color:var(--navy-200);background:var(--navy-50);outline:none}.filter-search{height:34px;color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium)}.filter-options{display:grid;gap:var(--space-2);max-height:280px;overflow:auto}.filter-option{display:flex;align-items:center;gap:var(--space-2);color:var(--muted-foreground);font-size:var(--text-xs);line-height:var(--leading-snug)}.filter-option .ds-checkbox:checked{border-color:var(--navy-300);background-color:var(--navy-100);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23123850' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")}.data-table-frame{min-height:0;overflow:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.app-table{width:100%;min-width:980px;border-collapse:separate;border-spacing:0;font-family:var(--font-sans);font-size:var(--text-sm)}.app-table thead th{position:sticky;top:0;z-index:2;padding:0;border-bottom:1px solid var(--navy-700);background:var(--navy-900);color:#fff;text-align:left}.app-table thead th:first-child{z-index:3}.app-table tbody tr:nth-child(odd){background:var(--card)}.app-table tbody tr:nth-child(2n){background:var(--navy-25)}.app-table tbody tr:hover{background:var(--accent)}.app-table tbody tr[data-selected=true]{background:var(--green-50)}.dark .app-table tbody tr:nth-child(2n){background:var(--muted)}.dark .app-table tbody tr:hover,.dark .app-table tbody tr[data-selected=true]{background:var(--accent)}.app-table td{max-width:320px;padding:var(--space-3);border-bottom:1px solid var(--border);color:var(--foreground);font-family:var(--font-sans);line-height:var(--leading-snug);text-align:left;vertical-align:top}.hotel-id-preview{position:relative;display:inline-flex;align-items:center}.hotel-id-link{color:var(--success);font-weight:var(--weight-semibold);white-space:nowrap}.hotel-image-preview{position:fixed;top:64px;left:calc(292px + var(--space-5) + 1px);z-index:30;display:none;grid-auto-flow:column;grid-auto-columns:246px;gap:var(--space-4);max-width:calc(100vw - 292px - var(--space-5) - var(--space-5));padding:var(--space-2);overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--card) 90%,transparent);box-shadow:var(--shadow-overlay)}.hotel-image-preview img{width:246px;height:154px;border-radius:var(--radius-md);object-fit:cover}.hotel-id-preview:hover .hotel-image-preview,.hotel-id-link:hover+.hotel-image-preview,.hotel-id-preview:focus-within .hotel-image-preview{display:grid}.app-table__select{width:56px;min-width:56px;max-width:56px;text-align:left}.app-table td.app-table__select,.app-table th.app-table__select{padding:0 0 0 var(--space-4);vertical-align:middle}.app-table__select .ds-checkbox{margin:0}.table-sort-button{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;min-height:42px;padding:0 var(--space-3);border:0;background:transparent;color:inherit;cursor:pointer;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);text-align:left;text-transform:uppercase}.table-sort-button span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.table-sort-button:hover,.table-sort-button:focus-visible{background:var(--navy-800);outline:none}.data-table-empty{height:120px;color:var(--muted-foreground);text-align:center}.hotel-card-grid{min-height:0;overflow:auto;padding:var(--space-1)}.hotel-card-grid--rows{display:flex;flex-direction:column;gap:var(--space-3)}.hotel-card-grid--columns{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));grid-auto-flow:row;grid-auto-rows:minmax(420px,auto);align-content:start;align-items:start;gap:var(--space-5) var(--space-4)}.hotel-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.hotel-card:hover{border-color:var(--navy-200);box-shadow:var(--shadow-md);transform:translateY(-1px)}.hotel-card--row{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);min-height:236px;overflow:hidden}.hotel-card--column{display:grid;grid-template-rows:200px auto;overflow:hidden}.hotel-card__media{position:relative;overflow:hidden;background:var(--secondary)}.hotel-card--row .hotel-card__media{min-height:236px}.hotel-card__media img,.hotel-card__cover img,.hotel-card__placeholder{width:100%;height:100%}.hotel-card__media img,.hotel-card__cover img{display:block;object-fit:cover}.hotel-card__cover{position:relative;width:100%;height:200px;min-height:200px;max-height:200px;overflow:hidden;background:var(--secondary)}.hotel-card__placeholder{display:grid;place-items:center;color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium)}.hotel-card__carousel{position:absolute;right:var(--space-2);bottom:var(--space-2);display:inline-flex;align-items:center;gap:var(--space-1);height:28px;padding:0 var(--space-1);border:1px solid color-mix(in srgb,var(--card) 72%,transparent);border-radius:var(--radius-full);background:color-mix(in srgb,var(--card) 88%,transparent);color:var(--muted-foreground);box-shadow:var(--shadow-sm)}.hotel-card__carousel button{display:inline-grid;place-items:center;width:22px;height:22px;border:0;border-radius:var(--radius-full);background:transparent;color:inherit;cursor:pointer}.hotel-card__carousel button:hover,.hotel-card__carousel button:focus-visible{background:var(--secondary);outline:none}.hotel-card__carousel span{min-width:34px;font-size:var(--text-xs);font-weight:var(--weight-medium);text-align:center}.hotel-card__body{position:relative;z-index:1;display:grid;align-content:start;gap:var(--space-3);padding:var(--space-4);background:var(--card)}.hotel-card__body strong,.hotel-card__body span,.hotel-card__body dt,.hotel-card__body dd{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hotel-card__header{display:grid;gap:var(--space-1);min-width:0}.hotel-card__id{color:var(--success);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.hotel-card__body strong{display:block;color:var(--foreground);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.hotel-card__body span{display:block;color:var(--muted-foreground);font-size:var(--text-sm)}.hotel-card__price{margin:0;color:var(--foreground);font-size:var(--text-xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.hotel-card__body dl{display:grid;gap:var(--space-3);margin:0}.hotel-card--row .hotel-card__body dl{grid-template-columns:repeat(4,minmax(0,1fr))}.hotel-card--column .hotel-card__body{padding:var(--space-3)}.hotel-card--column .hotel-card__body strong{font-size:var(--text-base)}.hotel-card--column .hotel-card__body dl{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-card--column .hotel-card__body dl div:nth-child(n+5){display:none}.hotel-card__body dt{color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium)}.hotel-card__body dd{margin:2px 0 0;color:var(--foreground);font-size:var(--text-sm)}.hotel-card-empty{display:grid;place-items:center;min-height:220px;border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--muted-foreground);font-size:var(--text-sm)}@media(max-width:860px){.hotel-card--row{grid-template-columns:1fr}.hotel-card--row .hotel-card__media{aspect-ratio:16 / 10;min-height:0}.hotel-card--row .hotel-card__body dl{grid-template-columns:repeat(2,minmax(0,1fr))}}.data-table-pagination>div{display:flex;align-items:center;gap:var(--space-3)}.page-count{color:var(--foreground);font-size:var(--text-sm);white-space:nowrap}.page-state{padding:var(--space-5);color:var(--muted-foreground);font-size:var(--text-sm)}.page-loader{display:grid;min-height:12rem;place-items:center;padding:var(--space-6);color:var(--primary)}.data-table-link{color:var(--success);font-weight:650;text-decoration:none}.data-table-link:hover{text-decoration:underline}.confi-file-cell{display:inline-flex;align-items:center;gap:.35rem;color:var(--success);font-weight:600}.confi-detail__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.confi-detail__header h1{margin:0;color:var(--foreground);font-size:var(--text-2xl)}.confi-detail__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0;overflow:hidden}.confi-detail__grid>div{display:grid;gap:var(--space-2);min-width:0;padding:var(--space-4);border-bottom:1px solid var(--border)}.confi-detail__grid>div:nth-child(4n+1),.confi-detail__grid>div:nth-child(4n+2){background:var(--muted)}.confi-detail__grid span{color:var(--muted-foreground);font-size:var(--text-sm)}.confi-detail__grid strong{color:var(--foreground);overflow-wrap:anywhere}.confi-preview{margin-top:var(--space-5);padding:0;overflow:hidden}.confi-preview__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.confi-preview__header h2{margin:0;font-size:var(--text-lg)}.confi-preview iframe{display:block;width:100%;height:min(72vh,900px);border:0}.confi-modal{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:var(--space-5)}.confi-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--navy-900) 58%,transparent)}.confi-modal__content{position:relative;display:flex;flex-direction:column;width:min(920px,100%);max-height:min(92vh,1100px);overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-overlay)}.confi-modal__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.confi-modal__header h2{margin:0;font-size:var(--text-lg)}.confi-pdf-scroll{overflow:auto;padding:var(--space-5);background:var(--muted)}.confi-modal .confi-pdf-scroll{min-height:min(74vh,900px);padding:0}.confi-modal .confi-pdf-scroll iframe{display:block;width:100%;height:min(74vh,900px);border:0;background:var(--card)}.confi-pdf-page{display:block;max-width:100%;height:auto;margin:0 auto var(--space-5);background:var(--card);box-shadow:var(--shadow-md)}.confi-pdf-scroll .react-pdf__Page{width:fit-content;margin:0 auto var(--space-5);box-shadow:var(--shadow-md)}@media(max-width:720px){.confi-detail__header{align-items:flex-start;flex-wrap:wrap}.confi-detail__header>div{order:3;width:100%}.confi-detail__grid{grid-template-columns:1fr}}.loader{--loader-size: 1px;display:inline-block;color:var(--navy-900);font-family:Arial,Helvetica,sans-serif;font-size:calc(32 * var(--loader-size));letter-spacing:calc(2 * var(--loader-size));line-height:1;white-space:nowrap;animation:animloader 1s ease-in infinite alternate}@keyframes animloader{0%{filter:blur(0);transform:skew(0)}to{filter:blur(calc(3 * var(--loader-size)));transform:skew(-4deg)}}@media(max-width:520px){.loader{font-size:1.15rem;letter-spacing:.04em}}.page-state--error{border-color:color-mix(in srgb,var(--destructive) 35%,var(--border));color:var(--destructive)}.app-table__row--clickable{cursor:pointer}.app-table__row--clickable:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.buyer-detail{display:grid;align-content:start;align-items:start;min-height:0;gap:var(--space-4);overflow:auto;padding:0 var(--space-3) var(--space-4)}.buyer-hero{display:grid;align-content:start;box-sizing:border-box;width:100%;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg)}.buyer-hero__top,.buyer-hero__content,.buyer-hero__contact,.buyer-hero__metrics{display:flex;align-items:center}.buyer-hero__top{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:var(--space-4)}.buyer-hero__content{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--space-3);min-width:0}.buyer-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);min-width:0;max-width:100%}.buyer-name-row{display:inline-flex;align-items:center;flex:1 1 auto;flex-wrap:wrap;gap:var(--space-2);min-width:0}.buyer-title-row .buyer-id-text{margin:0;color:var(--success);font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.buyer-hero__identity{display:grid;min-width:0;gap:3px}.buyer-hero__identity span{margin:0;color:var(--muted-foreground);font-size:var(--text-sm)}.buyer-hero__identity>span{color:var(--foreground);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide)}.hotel-hero-subtitle{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-3);min-width:0}.hotel-hero-subtitle__franchise{color:var(--foreground);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide)}.hotel-hero-subtitle__location{color:var(--muted-foreground);font-size:var(--text-sm);font-weight:var(--weight-normal)}.buyer-hero__identity h1{flex:0 1 auto;min-width:0;max-width:100%;margin:0;color:var(--foreground);font-size:var(--text-2xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);overflow-wrap:anywhere;white-space:normal}.buyer-type-badge{display:inline-flex;align-items:center;flex:0 0 auto;height:20px;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--secondary);color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium)}.buyer-hero__identity .buyer-type-badge{margin-left:0}.buyer-type-badge--1031{border-color:color-mix(in srgb,var(--success) 30%,var(--border));background:var(--accent);color:var(--success)}.buyer-status-badge{display:inline-flex;align-items:center;height:28px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-semibold);cursor:pointer;font-family:var(--font-sans)}.buyer-status-badge--approved{border-color:color-mix(in srgb,var(--success) 30%,var(--border));background:var(--accent);color:var(--success)}.buyer-status-badge--unapproved{border-color:#f1c565;background:color-mix(in srgb,#F1C565 30%,var(--card));color:#8a5a00}.buyer-status-badge--other{border-color:var(--border);background:var(--secondary);color:var(--muted-foreground)}.buyer-status-approve{border-color:color-mix(in srgb,var(--success) 34%,var(--border));background:var(--success);color:var(--primary-foreground)}.buyer-status-menu{position:relative}.buyer-status-menu__content{position:absolute;z-index:20;top:calc(100% + var(--space-2));right:0;display:grid;min-width:150px;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--popover);box-shadow:var(--shadow-lg)}.buyer-status-menu__item{display:flex;align-items:center;height:32px;padding:0 var(--space-2);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--foreground);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);text-align:left}.buyer-status-menu__item:hover,.buyer-status-menu__item:focus-visible,.buyer-status-menu__item--active{background:var(--secondary);outline:none}.buyer-hero__contact{align-items:flex-start;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2);margin-left:0}.buyer-hero__contact a{display:inline-flex;align-items:center;gap:var(--space-1);height:32px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--muted-foreground);font-size:var(--text-sm);text-decoration:none}.buyer-hero__contact a:hover,.buyer-hero__contact a:focus-visible{border-color:var(--navy-200);background:var(--secondary);color:var(--foreground);outline:none}.buyer-hero__metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));align-items:stretch;gap:var(--space-3)}.buyer-hero-card{position:relative;display:grid;align-content:start;gap:var(--space-2);height:180px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--card),var(--secondary));box-shadow:var(--shadow-sm)}.buyer-hero-card__top{display:flex;align-items:center;gap:var(--space-2);padding-right:72px;min-width:0;color:var(--muted-foreground)}.buyer-hero-card__top>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.buyer-hero-card__badge{position:absolute;top:var(--space-3);right:var(--space-3);display:inline-flex;align-items:center;height:22px;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--secondary);color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium)}.buyer-hero-card .buyer-hero-card__badge--critical{border-color:color-mix(in srgb,var(--destructive) 32%,var(--border));background:color-mix(in srgb,var(--destructive) 9%,var(--card));color:var(--destructive)}.buyer-hero-card .buyer-hero-card__badge--urgent{border-color:color-mix(in srgb,var(--chart-4) 40%,var(--border));background:color-mix(in srgb,var(--chart-4) 14%,var(--card));color:#8a5a00}.buyer-hero-card .buyer-hero-card__badge--normal{border-color:color-mix(in srgb,var(--success) 28%,var(--border));background:var(--accent);color:var(--success)}.buyer-hero-card span,.buyer-hero-card__row strong{color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium)}.buyer-hero-card__primary{display:flex;align-items:baseline;gap:var(--space-2);margin:0 0 var(--space-1);min-width:0}.buyer-hero-card__primary>strong{color:var(--foreground);font-size:var(--text-3xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight);white-space:nowrap}.buyer-hero-card__primary--critical>strong{color:var(--destructive)}.buyer-hero-card__primary--urgent>strong{color:#8a5a00}.buyer-hero-card__primary--normal>strong{color:var(--success)}.buyer-hero-card__primary>span{overflow:hidden;color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.buyer-hero-card__meta{display:grid;gap:4px}.buyer-hero-card__meta .hotel-detail-row{display:grid;grid-template-columns:minmax(72px,.64fr) minmax(0,1.36fr);align-items:baseline;gap:var(--space-2);min-width:0}.buyer-hero-card__meta .hotel-detail-row dt,.buyer-hero-card__meta .hotel-detail-row dd{min-width:0;overflow:hidden;font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.buyer-hero-card__row{display:grid;grid-template-columns:minmax(72px,.64fr) minmax(0,1.36fr);align-items:baseline;gap:var(--space-2);min-width:0}.buyer-hero-card__row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.buyer-hero-card__row strong{min-width:0;overflow:hidden;color:var(--foreground);font-size:var(--text-xs);font-weight:var(--weight-medium);text-align:right;text-overflow:ellipsis;white-space:nowrap}.buyer-hero-card__row--total{margin-top:3px;padding-top:5px;border-top:1px solid var(--border)}.buyer-hero-card__row--total span,.buyer-hero-card__row--total strong{color:var(--foreground);font-weight:var(--weight-semibold)}.buyer-tabs{display:inline-flex;align-items:center;justify-self:start;width:auto;height:34px;padding:2px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:var(--radius-md);background:var(--muted);box-shadow:var(--shadow-sm)}.buyer-tabs__button{display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 var(--space-3);border:0;border-radius:calc(var(--radius-md) - 2px);background:transparent;color:var(--muted-foreground);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium)}.buyer-tabs__button:hover,.buyer-tabs__button:focus-visible{color:var(--foreground);outline:none}.buyer-tabs__button--active{background:var(--card);color:var(--foreground);box-shadow:var(--shadow-sm)}.dealbox-section{display:grid;gap:var(--space-4);min-width:0}.dealbox-tabs{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-3)}.dealbox-tabs__button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 var(--space-3);border:0;border-radius:var(--radius-md);background:transparent;color:var(--foreground);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium)}.dealbox-tabs__button:hover,.dealbox-tabs__button:focus-visible{background:var(--secondary);outline:none}.dealbox-tabs__button--active{background:var(--accent);color:var(--success);box-shadow:var(--shadow-sm)}.buyer-overview{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);align-items:start;gap:var(--space-4)}.buyer-overview__column{display:grid;align-content:start;gap:var(--space-4);min-width:0}.buyer-detail-panel{display:grid;align-content:start;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg)}.buyer-edit-section__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.buyer-detail-panel h2,.buyer-edit-section__header h2{margin:0;color:var(--foreground);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.buyer-edit-section__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2)}.overview-field-grid,.detail-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:0}.overview-field-grid--notes{grid-template-columns:1fr}.overview-field{display:grid;align-content:start;gap:var(--space-1);min-width:0}.overview-field--wide{grid-column:1 / -1}.overview-field>span{color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium)}.buyer-edit-section--interests .overview-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.buyer-edit-section .detail-key-value-row,.hotel-detail-card .detail-key-value-row{display:grid;align-items:center;width:100%;min-width:0;box-sizing:border-box;min-height:44px;padding:var(--space-2) var(--space-3);border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent)}.detail-key-value-list{display:grid;gap:0;width:100%;margin:0}.detail-key-value-list>.detail-key-value-row:nth-child(odd){background:color-mix(in srgb,var(--secondary) 72%,transparent)}.buyer-edit-section--interests .detail-key-value-row{grid-template-columns:minmax(150px,.7fr) minmax(0,1.3fr);gap:var(--space-4)}.buyer-edit-section--interests .overview-field--interests-checker-shaded{background:color-mix(in srgb,var(--secondary) 72%,transparent)}.buyer-edit-section--financial .overview-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.buyer-edit-section--financial .detail-key-value-row{grid-template-columns:minmax(108px,.8fr) minmax(0,1.2fr);gap:var(--space-3)}.buyer-edit-section--financial .overview-field--financial-checker-shaded{background:color-mix(in srgb,var(--secondary) 72%,transparent)}.buyer-edit-section--financial .overview-field>strong,.buyer-edit-section--financial .overview-field .overview-readonly-value{min-width:0;overflow-wrap:anywhere;text-align:right;white-space:normal}@media(max-width:640px){.buyer-edit-section--financial .overview-field-grid{grid-template-columns:1fr}.buyer-edit-section--financial .overview-field{grid-template-columns:minmax(130px,.8fr) minmax(0,1.2fr)}}.buyer-edit-section--interests .overview-field:last-child{border-bottom:0}.buyer-edit-section--interests .overview-field>span{min-width:0}.buyer-edit-section--interests .overview-field>strong,.buyer-edit-section--interests .overview-field .overview-readonly-value{min-width:0;overflow-wrap:anywhere;text-align:right;white-space:normal}.buyer-edit-section--interests .overview-field--wide{grid-column:1 / -1;align-items:start}.buyer-edit-section--interests .overview-field--wide textarea{width:100%}@media(max-width:640px){.buyer-edit-section--interests .overview-field-grid{grid-template-columns:1fr}.buyer-edit-section--interests .overview-field{grid-template-columns:1fr;gap:var(--space-1)}.buyer-edit-section--interests .overview-field>strong,.buyer-edit-section--interests .overview-field .overview-readonly-value{text-align:left}}.overview-field>strong,.overview-readonly-value{overflow:hidden;min-height:22px;color:var(--foreground);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-normal);overflow-wrap:anywhere}.overview-field--buyer-id>strong,.overview-field .overview-readonly-value--buyer-id{color:var(--success);font-family:var(--font-mono);font-weight:var(--weight-semibold)}.overview-field--prominent>strong,.overview-field .overview-readonly-value--prominent{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.overview-field--normal>strong,.overview-field--normal .overview-readonly-value{color:var(--success)}.overview-field--urgent>strong,.overview-field--urgent .overview-readonly-value{color:#8a5a00}.overview-field--critical>strong,.overview-field--critical .overview-readonly-value{color:var(--destructive)}.overview-field:not(.overview-field--wide)>strong,.overview-field:not(.overview-field--wide) .overview-readonly-value{text-overflow:ellipsis;white-space:nowrap}.overview-field--wide>strong,.overview-field--wide .overview-readonly-value{overflow:visible;white-space:pre-wrap}.deadlines-section{gap:var(--space-4)}.deadline-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(116px,.72fr);align-items:center;gap:var(--space-4);min-width:0;padding-bottom:var(--space-3);border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.deadline-row:last-of-type{padding-bottom:0;border-bottom:0}.deadline-row--single{grid-template-columns:1fr}.deadline-date-value,.deadline-metric{display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:start;align-items:baseline;gap:3px var(--space-2);min-width:0}.deadline-date-value>span,.deadline-metric>span{color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-normal)}.deadline-metric>span{grid-column:1 / -1}.deadline-date-value>strong{color:var(--foreground);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-normal)}.deadline-metric{justify-items:end;text-align:right}.deadline-metric>strong{color:var(--foreground);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.deadline-metric>small{color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);line-height:var(--leading-none);text-transform:uppercase;white-space:nowrap}.deadline-metric--critical>strong{color:var(--destructive)}.deadline-metric--urgent>strong{color:#8a5a00}.deadline-metric--normal>strong{color:var(--success)}.contact-info-section{gap:var(--space-4)}.contact-info-list{display:grid;gap:var(--space-6)}.contact-person{display:grid;grid-template-columns:minmax(92px,.7fr) minmax(0,1.3fr);gap:var(--space-4);min-width:0}.contact-person__label{color:var(--muted-foreground);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-normal)}.contact-person__details{display:grid;gap:var(--space-2);min-width:0}.contact-person__value{overflow:hidden;color:var(--foreground);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-normal);overflow-wrap:anywhere;text-decoration:none}.contact-person__value--link{color:var(--table-header)}.contact-person__details strong.contact-person__value{font-weight:var(--weight-semibold)}.overview-save-error{margin:0;color:var(--destructive);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-normal)}.overview-save-error--page{padding:var(--space-3) var(--space-4);border-color:color-mix(in srgb,var(--destructive) 28%,var(--border));background:color-mix(in srgb,var(--destructive) 7%,var(--card))}.overview-editor__control{min-width:0}textarea.overview-editor__control{min-height:96px}.overview-checkbox{display:inline-flex;align-items:center;gap:var(--space-2);min-height:36px;color:var(--foreground);font-size:var(--text-sm);font-weight:var(--weight-medium)}.overview-multi-select{position:relative;min-width:0}.overview-multi-select__trigger{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:36px;padding:0 var(--space-3);border:1px solid var(--input);border-radius:var(--radius-md);background:var(--card);color:var(--foreground);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);text-align:left}.overview-multi-select__trigger:after{content:"";width:7px;height:7px;margin-left:var(--space-2);border-right:1.5px solid var(--muted-foreground);border-bottom:1.5px solid var(--muted-foreground);transform:rotate(45deg) translateY(-2px)}.overview-multi-select__trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-multi-select__trigger:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring) 25%,transparent);outline:none}.overview-multi-select__menu{position:absolute;z-index:25;top:calc(100% + var(--space-1));left:0;display:grid;width:min(280px,100vw);max-height:260px;overflow:auto;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--popover);box-shadow:var(--shadow-lg)}.overview-multi-select__option{display:flex;align-items:center;gap:var(--space-2);min-height:32px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--foreground);cursor:pointer;font-size:var(--text-sm)}.overview-multi-select__option:hover{background:var(--secondary)}.detail-field{display:grid;gap:2px;min-width:0}.detail-field dt{color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium)}.detail-field dd{overflow:hidden;margin:0;color:var(--foreground);font-size:var(--text-sm);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap}.buyer-notes,.buyer-detail-panel--empty p{margin:0;color:var(--muted-foreground);font-size:var(--text-sm);line-height:var(--leading-relaxed)}.buyer-detail-panel--empty{min-height:220px}.hotel-detail{display:grid;align-content:start;gap:var(--space-4);min-height:0;overflow:auto;padding:0 var(--space-3) var(--space-4)}.hotel-detail-hero{display:grid;gap:var(--space-4);padding:var(--space-4)}.hotel-detail-hero__bar,.hotel-detail-hero__main,.hotel-detail-title,.hotel-detail-contact,.hotel-detail-tags,.hotel-detail-gallery__controls{display:flex;align-items:center}.hotel-detail-hero__bar{justify-content:space-between;gap:var(--space-3)}.hotel-detail-hero__main{align-items:stretch;gap:var(--space-5);min-width:0}.hotel-detail-gallery{position:relative;flex:0 0 min(38%,480px);min-width:300px;aspect-ratio:16 / 8;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--secondary)}.hotel-detail-gallery img,.hotel-detail-gallery__empty{width:100%;height:100%}.hotel-detail-gallery img{display:block;object-fit:cover}.hotel-detail-gallery__empty{display:grid;place-content:center;justify-items:center;gap:var(--space-2);color:var(--muted-foreground);font-size:var(--text-sm)}.hotel-detail-gallery__controls{position:absolute;right:var(--space-3);bottom:var(--space-3);height:30px;overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:var(--radius-full);background:color-mix(in srgb,var(--card) 92%,transparent);box-shadow:var(--shadow-sm)}.hotel-detail-gallery__controls button{display:inline-grid;width:30px;height:30px;padding:0;border:0;background:transparent;color:var(--foreground);cursor:pointer;place-items:center}.hotel-detail-gallery__controls span{min-width:54px;color:var(--muted-foreground);font-size:var(--text-xs);text-align:center}.hotel-detail-identity{display:grid;flex:1 1 auto;align-content:center;gap:var(--space-3);min-width:0}.hotel-detail-title{align-items:flex-start;gap:var(--space-3);min-width:0}.hotel-detail-title>span{flex:0 0 auto;color:var(--success);font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:var(--weight-semibold)}.hotel-detail-title h1,.hotel-detail-title p,.hotel-detail-location{margin:0}.hotel-detail-title h1{color:var(--foreground);font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight);white-space:nowrap}.hotel-detail-title p,.hotel-detail-location{color:var(--muted-foreground);font-size:var(--text-sm)}.hotel-detail-location{display:flex;align-items:center;gap:var(--space-2)}.hotel-detail-tags,.hotel-detail-contact{flex-wrap:wrap;gap:var(--space-2)}.hotel-detail-tags span{min-height:22px;padding:3px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--secondary);color:var(--muted-foreground);font-size:var(--text-xs)}.hotel-detail-tags span:empty{display:none}.hotel-detail-contact a{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--muted-foreground);font-size:var(--text-sm);text-decoration:none}.hotel-detail-contact a:hover{color:var(--foreground)}.hotel-detail-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-3)}.hotel-detail-metric{display:grid;align-content:center;min-height:92px;gap:3px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--secondary)}.hotel-detail-metric span,.hotel-detail-metric small{overflow:hidden;color:var(--muted-foreground);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.hotel-detail-metric strong{overflow:hidden;color:var(--foreground);font-size:var(--text-xl);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap}.hotel-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start;gap:var(--space-4)}.hotel-detail-grid__main,.hotel-detail-grid__side{display:grid;align-content:start;gap:var(--space-4);min-width:0}.hotel-detail-grid--financials{grid-template-columns:repeat(3,minmax(0,1fr))}.hotel-detail-grid--activity{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-detail-card{display:grid;align-content:start;gap:var(--space-4);padding:var(--space-4)}.hotel-overview>.buyer-overview__column>.hotel-detail-card:nth-child(odd){background:#fff!important}.hotel-overview>.buyer-overview__column>.hotel-detail-card:nth-child(2n){background:#fff!important}.hotel-detail-card .detail-key-value-row{grid-template-columns:minmax(120px,1fr) minmax(0,1.6fr);min-height:40px;padding:var(--space-2) var(--space-3)}.hotel-detail-card h2{margin:0;color:var(--foreground);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.hotel-detail-card dl{display:grid;gap:0;margin:0}.hotel-detail-row{align-items:baseline;gap:var(--space-3)}.hotel-detail-row dt{color:var(--muted-foreground);font-size:var(--text-sm)}.hotel-detail-row dd{margin:0;color:var(--foreground);font-size:var(--text-sm);font-weight:var(--weight-medium);overflow-wrap:anywhere;text-align:right}.hotel-detail-row dd>span{display:block}.hotel-contact-row{grid-template-columns:minmax(92px,.7fr) minmax(0,1.3fr)!important;align-items:start!important}.hotel-contact-row>.detail-key-value-row__label{color:var(--muted-foreground);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-normal)}.hotel-contact-row>.detail-key-value-row__value{min-width:0}.hotel-contact-row .contact-person__details{display:grid;gap:var(--space-2)}.hotel-detail-card .contact-info-list{gap:0}.hotel-detail-row--prominent dd{color:var(--success);font-family:var(--font-mono);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.hotel-detail-empty{min-height:180px}.hotel-detail-empty p{margin:0;color:var(--muted-foreground);font-size:var(--text-sm)}.hotel-buyer-hero .buyer-hero__metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.hotel-buyer-hero .buyer-hero-card{height:150px}.hotel-overview{grid-template-columns:minmax(0,2fr) minmax(320px,1fr)}.hotel-property-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:var(--space-4)}.hotel-property-facts__details>dl,.hotel-financial-grid,.hotel-detail-card>dl,.hotel-detail>.buyer-detail-panel>dl{display:grid;gap:var(--space-3);margin:0}.hotel-overview-gallery{display:grid;gap:var(--space-2);min-width:0}.hotel-overview-gallery .hotel-detail-gallery{width:100%;min-width:0;height:100%;min-height:360px;aspect-ratio:auto}.hotel-property-facts__details{display:grid;align-content:start;gap:var(--space-4);min-width:0;padding-top:42px}.hotel-property-facts__details h2{margin:0;color:var(--foreground);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.hotel-overview-gallery__preview-trigger{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.hotel-overview-gallery__preview-trigger:focus-visible{outline:2px solid var(--primary);outline-offset:-3px}.hotel-overview-gallery__empty{display:grid;width:100%;height:100%;padding:var(--space-4);border:0;background:transparent;color:var(--muted-foreground);cursor:pointer;font-family:var(--font-sans);place-content:center;justify-items:center;gap:var(--space-2)}.hotel-overview-gallery__actions{display:flex;align-items:center;gap:var(--space-2)}.buyer-edit-section__header--untitled{position:absolute;z-index:3;top:var(--space-4);right:var(--space-4);width:auto}.hotel-overview>.buyer-overview__column:first-child>.hotel-detail-card:first-child{position:relative;padding-top:var(--space-4)}.hotel-detail-row--editor{align-items:center}.hotel-detail-row--editor dd{width:100%}.hotel-fact-control{width:100%;min-width:0;height:34px;font-size:var(--text-sm)}.hotel-image-dialog{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:grid;padding:var(--space-6);background:#041724d1;place-items:center}.hotel-image-dialog__content{position:relative;display:grid;width:min(1180px,94vw);height:min(820px,88vh);overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:var(--radius-lg);background:#071e2e;box-shadow:var(--shadow-xl);place-items:center}.hotel-image-dialog__content>img{width:100%;height:100%;object-fit:contain}.hotel-image-dialog__close{position:absolute;z-index:2;top:var(--space-3);right:var(--space-3);height:32px;padding:0 var(--space-3);border:1px solid rgba(255,255,255,.35);border-radius:var(--radius-md);background:#071e2ecc;color:#fff;cursor:pointer;font-family:var(--font-sans)}.hotel-image-dialog__controls{position:absolute;z-index:2;bottom:var(--space-4);display:flex;align-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.35);border-radius:var(--radius-full);background:#071e2ed1;color:#fff}.hotel-image-dialog__controls button{display:grid;width:40px;height:38px;padding:0;border:0;background:transparent;color:#fff;cursor:pointer;place-items:center}.hotel-image-dialog__controls span{min-width:68px;font-size:var(--text-sm);text-align:center}.hotel-financial-grid{display:grid;grid-template-columns:1fr;gap:0}.hotel-financial-row-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-6);min-width:0;background:transparent}.hotel-financial-row-pair .detail-key-value-row{background:transparent}.hotel-financial-row-pair:nth-child(odd)>.detail-key-value-row:first-child,.hotel-financial-row-pair:nth-child(2n)>.detail-key-value-row:nth-child(2){background:color-mix(in srgb,var(--secondary) 72%,transparent)}.hotel-detail-card .contact-info-list>.detail-key-value-row{background:transparent}.hotel-financial-row--editor dd{width:100%}.hotel-financial-row--editor .hotel-fact-control{height:32px}.hotel-financial-row-pair__empty{min-height:40px}.hotel-calculated-values{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--secondary);color:var(--muted-foreground);font-size:var(--text-xs)}.hotel-calculated-values strong{color:var(--foreground);font-weight:var(--weight-semibold)}.hotel-detail-card .overview-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-overview>.buyer-overview__column:first-child .hotel-detail-card .overview-editor{grid-template-columns:repeat(3,minmax(0,1fr))}.hotel-status-menu .buyer-status-badge:disabled{cursor:wait;opacity:.72}.hotel-card[role=link]{cursor:pointer}.hotel-card[role=link]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media(max-width:1100px){.hotel-detail-hero__main{align-items:start}.hotel-detail-gallery{flex-basis:40%;min-width:260px}.hotel-detail-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.hotel-detail-grid,.hotel-detail-grid--financials{grid-template-columns:1fr}.hotel-buyer-hero .buyer-hero__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-overview,.hotel-property-facts{grid-template-columns:1fr}.hotel-overview-gallery .hotel-detail-gallery{height:auto;min-height:0;aspect-ratio:16 / 9}.hotel-property-facts__details{padding-top:0}.hotel-overview>.buyer-overview__column:first-child .hotel-detail-card .overview-editor{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.hotel-detail{padding-inline:0}.hotel-detail-hero__main{display:grid}.hotel-detail-gallery{width:100%;min-width:0}.hotel-detail-title{flex-wrap:wrap}.hotel-detail-title h1{white-space:normal}.hotel-detail-metrics,.hotel-detail-grid--activity{grid-template-columns:1fr 1fr}.hotel-financial-grid,.hotel-detail-card .overview-editor,.hotel-overview>.buyer-overview__column:first-child .hotel-detail-card .overview-editor{grid-template-columns:1fr}.hotel-image-dialog{padding:var(--space-3)}}@media(max-width:480px){.hotel-detail-metrics,.hotel-detail-grid--activity,.hotel-buyer-hero .buyer-hero__metrics{grid-template-columns:1fr}}.documents-panel{gap:var(--space-5)}.documents-panel__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.documents-panel__toolbar p,.document-upload-note,.document-upload-error{margin:0;color:var(--muted-foreground);font-size:var(--text-sm)}.document-upload-error{color:var(--destructive)}.document-upload-note{margin-top:calc(var(--space-3) * -1)}.document-upload-input{display:none}.documents-empty-panel{display:grid;min-height:min(420px,52vh);place-items:center}.document-upload-dropzone{display:grid;justify-items:center;gap:var(--space-2);width:min(520px,100%);min-height:230px;padding:var(--space-6);border:1px dashed var(--border);border-radius:var(--radius-lg);background:var(--background);color:var(--muted-foreground);cursor:pointer;font-family:var(--font-sans);text-align:center;transition:border-color .15s ease,background .15s ease,color .15s ease}.document-upload-dropzone:hover,.document-upload-dropzone:focus-visible{border-color:var(--success-border);background:var(--accent);color:var(--success);outline:none}.document-upload-dropzone:disabled{cursor:wait;opacity:.72}.document-upload-dropzone strong{color:var(--foreground);font-size:var(--text-base);font-weight:var(--weight-semibold)}.document-upload-dropzone span:last-child{max-width:320px;font-size:var(--text-sm);line-height:var(--leading-relaxed)}.document-upload-dropzone__icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid var(--success-border);border-radius:var(--radius-full);background:var(--accent);color:var(--success)}.document-folder-list{display:grid;gap:var(--space-4)}.document-folder{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--background)}.document-folder__title{display:flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border-bottom:1px solid var(--border);background:var(--secondary);color:var(--foreground);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.document-folder__title svg{color:var(--success)}.document-folder__title strong{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;margin-left:auto;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--background);color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.document-list{display:grid}.document-row{display:grid;grid-template-columns:38px minmax(220px,1.4fr) minmax(150px,.8fr) minmax(145px,.7fr) minmax(90px,.45fr) auto;align-items:center;gap:var(--space-3);min-height:68px;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.document-row:last-child{border-bottom:0}.document-row:hover{background:var(--accent)}.document-row__icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--secondary);color:var(--muted-foreground)}.document-row__main,.document-row__meta{display:grid;gap:2px;min-width:0}.document-row__main strong{overflow:hidden;color:var(--foreground);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap}.document-row__main span,.document-row__meta span{overflow:hidden;color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap}.document-row__meta strong{overflow:hidden;color:var(--foreground);font-size:var(--text-sm);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap}.document-row__actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.document-action{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--background);color:var(--muted-foreground);text-decoration:none}.document-action:hover,.document-action:focus-visible{border-color:var(--success-border);color:var(--success);outline:none}.document-action--danger:hover,.document-action--danger:focus-visible{border-color:var(--destructive);color:var(--destructive)}.document-action:disabled{cursor:wait;opacity:.55}@media(max-width:1200px){.buyer-hero__content{grid-template-columns:1fr}.buyer-hero__contact{justify-content:flex-start;width:100%}.buyer-hero__metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr))}.buyer-hero-card{min-height:180px;height:auto}.document-row{grid-template-columns:38px minmax(220px,1fr) minmax(130px,.6fr) auto}.document-row__meta--date,.document-row__meta--size{display:none}}@media(max-width:980px){.buyer-hero__top{grid-template-columns:1fr}.buyer-hero__content{align-items:flex-start;grid-template-columns:1fr}.buyer-hero__contact{width:100%;margin-left:0}.buyer-overview{grid-template-columns:1fr}.document-row{grid-template-columns:38px minmax(0,1fr) auto}.document-row__meta{display:none}}@media(max-width:640px){.buyer-hero{padding:var(--space-3)}.buyer-title-row{align-items:flex-start;flex-direction:column;gap:var(--space-1);white-space:normal}.buyer-name-row{flex-wrap:wrap;gap:var(--space-2)}.buyer-hero__identity h1{white-space:normal}.buyer-hero__metrics,.detail-field-grid{grid-template-columns:1fr}.buyer-tabs{overflow-x:auto}.deadline-row{grid-template-columns:1fr;align-items:start}.deadline-metric{justify-items:start;text-align:left}.contact-person{grid-template-columns:1fr;gap:var(--space-2)}.document-row{grid-template-columns:34px minmax(0,1fr)}.document-row__actions{grid-column:2;justify-content:flex-start}}.broker-hero .buyer-hero__metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.staff-identity-layout{display:grid;grid-template-columns:minmax(8rem,11rem) minmax(0,1fr);gap:1rem;align-items:start}.staff-photo{display:grid;gap:.625rem;justify-items:center}.staff-photo__image{display:grid;width:9rem;height:9rem;overflow:hidden;place-items:center;border:1px solid var(--border);border-radius:6px;background:var(--muted);color:var(--primary);font-size:2rem;font-weight:650}.staff-photo__image img{width:100%;height:100%;object-fit:cover}.staff-photo__actions{display:flex;justify-content:center;gap:.375rem}.staff-photo__actions .button{cursor:pointer}@media(max-width:760px){.staff-identity-layout{grid-template-columns:1fr}.staff-photo{justify-items:start}}.broker-metric-card .buyer-hero-card__primary>strong{font-size:1.4rem;overflow-wrap:anywhere}.broker-status{align-items:center;background:#e7f7ef;border:1px solid #a4dcc0;border-radius:999px;color:#17844d;display:inline-flex;font-size:.75rem;font-weight:600;line-height:1;padding:.35rem .6rem}.broker-status--inactive{background:#f3f5f6;border-color:#d7dfe4;color:#65737e}.broker-detail-section .overview-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.broker-detail-section__field--tinted{background:#f2f7f5}.broker-assignment-list{gap:0}.broker-assignment-list .detail-key-value-row{border-bottom:1px solid var(--border);min-height:2.75rem;padding:.55rem .65rem}.broker-security-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.broker-delete-button{color:#b33a3a}@media(max-width:900px){.broker-hero .buyer-hero__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.broker-hero .buyer-hero__metrics,.broker-detail-section .overview-field-grid{grid-template-columns:1fr}}a{color:var(--success);text-decoration:none}a:hover{color:var(--primary);text-decoration:underline}.dark a{color:var(--primary)}.dark a:hover{color:var(--accent-foreground)}.ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-semibold);height:36px;padding:0 16px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);outline:none}.ds-btn:focus-visible{box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--ring)}.ds-btn:disabled{opacity:.5;cursor:not-allowed}.ds-btn:active:not(:disabled){transform:translateY(.5px)}.ds-btn--primary{background:var(--primary);color:var(--primary-foreground)}.ds-btn--primary:hover:not(:disabled){background:var(--green-600)}.ds-btn--secondary{background:var(--secondary);color:var(--secondary-foreground)}.ds-btn--secondary:hover:not(:disabled){background:var(--muted);filter:brightness(.97)}.ds-btn--outline{background:transparent;color:var(--foreground);border-color:var(--border)}.ds-btn--outline:hover:not(:disabled){background:var(--secondary)}.ds-btn--ghost{background:transparent;color:var(--foreground)}.ds-btn--ghost:hover:not(:disabled){background:var(--secondary)}.ds-btn--destructive{background:var(--destructive);color:var(--destructive-foreground)}.ds-btn--destructive:hover:not(:disabled){filter:brightness(1.08)}.ds-btn--link{background:transparent;color:var(--success);padding:0;height:auto}.dark .ds-btn--link{color:var(--primary)}.ds-btn--link:hover:not(:disabled){text-decoration:underline}.ds-btn--sm{height:30px;padding:0 12px;font-size:var(--text-xs)}.ds-btn--lg{height:44px;padding:0 24px;font-size:var(--text-base)}.ds-btn--icon{width:36px;padding:0}.ds-input{display:block;width:100%;box-sizing:border-box;font-family:var(--font-sans);font-size:var(--text-sm);height:36px;padding:0 12px;border-radius:var(--radius-md);background:var(--card);color:var(--foreground);border:1px solid var(--input);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);outline:none}.ds-input::placeholder{color:var(--muted-foreground)}.ds-input:focus{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring) 25%,transparent)}.ds-input:disabled{opacity:.5;cursor:not-allowed;background:var(--muted)}.ds-input[aria-invalid=true]{border-color:var(--destructive)}textarea.ds-input{height:auto;min-height:80px;padding:10px 12px;resize:vertical;line-height:var(--leading-normal)}.ds-label{display:block;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--foreground);margin-bottom:6px}.ds-help{font-size:var(--text-xs);color:var(--muted-foreground);margin-top:6px}.ds-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235A6B78' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:34px;cursor:pointer}.dark .ds-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239FB1BE' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.ds-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;flex:none;border:1px solid var(--input);border-radius:var(--radius-sm);background:var(--card);cursor:pointer;display:inline-block;vertical-align:middle;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.ds-checkbox:checked{background-color:var(--primary);border-color:var(--primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23072032' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}.ds-checkbox:focus-visible{outline:none;box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--ring)}.ds-switch{position:relative;width:36px;height:20px;flex:none;border-radius:var(--radius-full);border:1px solid transparent;background:var(--input);cursor:pointer;padding:0;transition:background var(--duration-normal) var(--ease-out)}.ds-switch[aria-checked=true]{background:var(--primary)}.ds-switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--card);box-shadow:var(--shadow-sm);transition:transform var(--duration-normal) var(--ease-out)}.dark .ds-switch:after{background:var(--foreground)}.ds-switch[aria-checked=true]:after{transform:translate(16px)}.ds-switch:focus-visible{outline:none;box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--ring)}.ds-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);font-weight:var(--weight-semibold);padding:2px 8px;border-radius:var(--radius-full);border:1px solid transparent;white-space:nowrap;line-height:1.5}.ds-badge--default{background:var(--secondary);color:var(--secondary-foreground)}.ds-badge--match{background:var(--primary);color:var(--primary-foreground)}.ds-badge--verified{background:var(--accent);color:var(--success);border-color:color-mix(in srgb,var(--success) 30%,transparent)}.dark .ds-badge--verified{color:var(--accent-foreground)}.ds-badge--outline{background:transparent;color:var(--foreground);border-color:var(--border)}.ds-badge--destructive{background:var(--destructive);color:var(--destructive-foreground)}.ds-card{background:var(--card);color:var(--card-foreground);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.ds-card__header{padding:20px 20px 0;display:flex;flex-direction:column;gap:4px}.ds-card__title{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);margin:0}.ds-card__description{font-size:var(--text-sm);color:var(--muted-foreground);margin:0}.ds-card__content{padding:20px}.ds-card__footer{padding:0 20px 20px;display:flex;align-items:center;gap:8px}.ds-tabs__list{display:inline-flex;gap:2px;padding:3px;background:var(--muted);border-radius:var(--radius-md)}.ds-tabs__trigger{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);padding:5px 14px;border-radius:calc(var(--radius-md) - 2px);border:none;background:transparent;color:var(--muted-foreground);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.ds-tabs__trigger:hover{color:var(--foreground)}.ds-tabs__trigger[aria-selected=true]{background:var(--card);color:var(--foreground);box-shadow:var(--shadow-sm)}.ds-tabs__trigger:focus-visible{outline:none;box-shadow:0 0 0 2px var(--ring)}.ds-tabs__content{padding-top:16px}.ds-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.ds-table th{text-align:left;font-weight:var(--weight-medium);color:var(--muted-foreground);padding:10px 12px;border-bottom:1px solid var(--border);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.ds-table td{padding:12px;border-bottom:1px solid var(--border);color:var(--foreground)}.ds-table tr:last-child td{border-bottom:none}.ds-table tbody tr{transition:background var(--duration-fast) var(--ease-out)}.ds-table tbody tr:hover{background:var(--muted)}.ds-table th[data-numeric],.ds-table td[data-numeric]{text-align:right;font-family:var(--font-mono)}.ds-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--navy-900) 55%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50}.ds-dialog{position:fixed;z-index:51;top:50%;left:50%;transform:translate(-50%,-50%);width:min(480px,calc(100vw - 32px));background:var(--popover);color:var(--popover-foreground);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-overlay);padding:24px}.ds-dialog__title{font-size:var(--text-lg);font-weight:var(--weight-semibold);margin:0 0 4px;letter-spacing:var(--tracking-tight)}.ds-dialog__description{font-size:var(--text-sm);color:var(--muted-foreground);margin:0 0 16px}.ds-dialog__footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.ds-sheet{position:fixed;z-index:51;top:0;bottom:0;right:0;width:min(400px,90vw);background:var(--popover);color:var(--popover-foreground);border-left:1px solid var(--border);box-shadow:var(--shadow-overlay);padding:24px;overflow-y:auto}.ds-sheet--left{right:auto;left:0;border-left:none;border-right:1px solid var(--border)}.ds-close{position:absolute;top:14px;right:14px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--muted-foreground);border-radius:var(--radius-sm);cursor:pointer;font-size:16px;line-height:1}.ds-close:hover{background:var(--secondary);color:var(--foreground)}.ds-dropdown{position:relative;display:inline-block}.ds-dropdown__menu{position:absolute;top:calc(100% + 6px);left:0;z-index:40;min-width:200px;padding:4px;background:var(--popover);color:var(--popover-foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.ds-dropdown__item{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;font-family:var(--font-sans);font-size:var(--text-sm);text-align:left;padding:7px 10px;border:none;background:transparent;color:var(--popover-foreground);border-radius:var(--radius-sm);cursor:pointer}.ds-dropdown__item:hover{background:var(--secondary)}.ds-dropdown__item--destructive,.dark .ds-dropdown__item--destructive{color:var(--destructive)}.ds-dropdown__separator{height:1px;background:var(--border);margin:4px 0}.ds-dropdown__label{font-size:var(--text-xs);color:var(--muted-foreground);padding:6px 10px 2px;letter-spacing:var(--tracking-wide);text-transform:uppercase}*{box-sizing:border-box}html{min-width:320px;height:100%;background:var(--navy-900)}body{margin:0;min-width:320px;min-height:100%}#root{min-height:100vh}button,input{font:inherit}.login-page{min-height:100vh;background:var(--background)}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,42vw)}.login-intro{display:grid;align-items:center;padding:clamp(48px,8vw,112px);background:var(--navy-900);color:var(--foreground)}.login-intro>div{max-width:580px}.login-panel{display:grid;align-content:center;gap:var(--space-7);padding:clamp(32px,5vw,72px);background:var(--card);border-left:1px solid var(--border)}.login-logo{width:min(100%,360px);height:auto;display:block;justify-self:center}.login-overline{margin:0 0 var(--space-3);color:var(--primary);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase}h1{margin:0;max-width:13ch;color:#fff;font-size:clamp(38px,6vw,var(--text-4xl));line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}.login-copy{margin:var(--space-4) 0 0;max-width:52ch;color:var(--navy-100);font-size:var(--text-base);line-height:var(--leading-normal)}.login-card{width:100%}.login-form{display:grid;gap:var(--space-5)}.field{display:grid}.field-row{display:flex;justify-content:space-between;gap:var(--space-4);align-items:baseline}.field-row a{flex:none;font-size:var(--text-sm);font-weight:var(--weight-medium)}.remember-row{display:flex;gap:var(--space-3);align-items:center;color:var(--muted-foreground);font-size:var(--text-sm);line-height:var(--leading-snug)}.login-submit{width:100%}.login-footer{color:var(--muted-foreground);font-size:var(--text-xs);line-height:var(--leading-snug)}.login-error{margin:0;padding:var(--space-3);border:1px solid color-mix(in srgb,var(--destructive) 28%,var(--border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--destructive) 8%,var(--card));color:var(--destructive);font-size:var(--text-sm);line-height:var(--leading-snug)}.dashboard-page{height:100vh;display:grid;grid-template-columns:292px minmax(0,1fr);overflow:hidden;background:var(--background);transition:grid-template-columns var(--duration-normal) var(--ease-out)}.dashboard-page--sidebar-collapsed{grid-template-columns:84px minmax(0,1fr)}.dashboard-sidebar{display:grid;grid-template-rows:auto 1fr auto;height:100vh;min-height:0;gap:var(--space-8);padding:var(--space-6) var(--space-5);overflow:hidden;background:var(--navy-900);border-right:1px solid var(--navy-700);color:#fff}.sidebar-brand{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);min-width:0;padding:0 var(--space-1) var(--space-4)}.sidebar-brand__mark{display:grid;min-width:0;gap:2px;color:#fff;text-decoration:none}.sidebar-brand__mark:hover{color:#fff;text-decoration:none}.sidebar-brand__name{display:flex;align-items:baseline;gap:2px;font-size:29px;font-weight:var(--weight-bold);line-height:1;letter-spacing:0;white-space:nowrap}.sidebar-brand__name span:first-child{color:var(--primary)}.sidebar-brand__name span:last-child{color:#fff}.sidebar-brand__portal{margin-left:var(--space-2);color:var(--navy-200);font-size:10px;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);line-height:var(--leading-snug);text-transform:uppercase}.sidebar-collapse{display:inline-grid;flex:0 0 auto;place-items:center;width:34px;height:34px;border:1px solid var(--navy-700);border-radius:var(--radius-md);background:transparent;color:var(--navy-200);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.sidebar-collapse:hover,.sidebar-collapse:focus-visible{background:var(--navy-800);color:#fff;outline:none}.dashboard-nav{display:grid;align-content:start;gap:var(--space-1);min-height:0;overflow-y:auto;padding-right:var(--space-1)}.nav-section-label{margin:0 0 var(--space-3);padding:0 var(--space-2);color:var(--navy-300);font-size:11px;font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase}.dashboard-nav__link,.deleted-group__header{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:42px;padding:0 var(--space-3);border-radius:var(--radius-md);border:0;background:transparent;color:var(--navy-100);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);text-align:left;text-decoration:none;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.dashboard-nav__link:hover,.dashboard-nav__link[aria-current=page],.deleted-group__header:hover,.deleted-group__header[aria-expanded=true]{background:var(--navy-800);color:#fff;text-decoration:none}.nav-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;color:var(--navy-200)}.dashboard-nav__link:hover .nav-icon,.dashboard-nav__link[aria-current=page] .nav-icon,.deleted-group__header:hover .nav-icon,.deleted-group__header[aria-expanded=true] .nav-icon{color:var(--primary)}.nav-count{margin-left:auto;box-shadow:var(--shadow-sm)}.deleted-group{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--navy-700)}.deleted-group__header{color:#fff}.deleted-group__header svg:last-child{margin-left:auto;color:var(--primary)}.deleted-group__items{display:grid;gap:var(--space-1);margin-top:var(--space-1);padding-left:var(--space-5)}.dashboard-nav__link--nested{min-height:40px;padding-left:var(--space-3);color:var(--navy-200)}.dashboard-nav__link--nested svg{width:15px;color:var(--navy-300)}.sidebar-user{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--navy-700);border-radius:var(--radius-lg);background:var(--navy-800)}.sidebar-user__avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--radius-full);background:var(--primary);color:var(--primary-foreground);font-size:var(--text-sm);font-weight:var(--weight-bold)}.sidebar-user__meta{display:grid;min-width:0;gap:2px}.sidebar-user__meta strong,.sidebar-user__meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user__meta strong{color:#fff;font-size:var(--text-sm);font-weight:var(--weight-semibold)}.sidebar-user__meta span{color:var(--navy-300);font-size:var(--text-xs)}.sidebar-logout{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--navy-700);border-radius:var(--radius-md);background:transparent;color:var(--navy-200);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.sidebar-logout:hover,.sidebar-logout:focus-visible{background:var(--secondary);color:var(--secondary-foreground);outline:none}.sidebar-logout:focus-visible{box-shadow:0 0 0 2px var(--navy-900),0 0 0 4px var(--ring)}.sidebar-user .ds-btn{width:100%;text-decoration:none}.dashboard-sidebar[data-collapsed=true]{gap:var(--space-6);padding-right:var(--space-3);padding-left:var(--space-3)}.dashboard-sidebar[data-collapsed=true] .sidebar-brand{display:grid;justify-items:center;gap:var(--space-3);padding-right:0;padding-left:0}.dashboard-sidebar[data-collapsed=true] .sidebar-brand__mark{justify-items:center}.dashboard-sidebar[data-collapsed=true] .sidebar-brand__name{display:grid;justify-items:center;gap:0;font-size:18px;line-height:.95}.dashboard-sidebar[data-collapsed=true] .sidebar-brand__portal{display:none}.dashboard-sidebar[data-collapsed=true] .dashboard-nav{padding-right:0}.dashboard-sidebar[data-collapsed=true] .nav-section-label,.dashboard-sidebar[data-collapsed=true] .dashboard-nav__link span:not(.nav-icon):not(.nav-count),.dashboard-sidebar[data-collapsed=true] .deleted-group__header span:not(.nav-icon),.dashboard-sidebar[data-collapsed=true] .deleted-group__header svg:last-child,.dashboard-sidebar[data-collapsed=true] .deleted-group__items,.dashboard-sidebar[data-collapsed=true] .sidebar-user__meta{display:none}.dashboard-sidebar[data-collapsed=true] .dashboard-nav__link,.dashboard-sidebar[data-collapsed=true] .deleted-group__header{justify-content:center;min-height:42px;padding:0}.dashboard-sidebar[data-collapsed=true] .nav-icon{width:22px}.dashboard-sidebar[data-collapsed=true] .nav-count{display:none}.dashboard-sidebar[data-collapsed=true] .deleted-group{padding-top:var(--space-3)}.dashboard-sidebar[data-collapsed=true] .sidebar-user{grid-template-columns:1fr;justify-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-2)}.dashboard-main{display:grid;grid-template-rows:auto minmax(0,1fr);align-content:start;gap:var(--space-6);min-width:0;min-height:0;overflow:hidden;padding:var(--space-7)}.dashboard-header{display:flex;justify-content:space-between;gap:var(--space-5);align-items:center}.dashboard-header h1{max-width:none;color:var(--foreground);font-size:var(--text-3xl)}.dashboard-overline{margin:0 0 var(--space-2);color:var(--success);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.metric-card{padding:var(--space-5)}.metric-card p{margin:0;color:var(--muted-foreground);font-size:var(--text-sm)}.metric-card strong{display:block;margin-top:var(--space-4);color:var(--foreground);font-size:var(--text-3xl);line-height:var(--leading-tight)}.dashboard-card{min-height:180px}.attention-dashboard{display:grid;grid-auto-rows:max-content;align-content:start;min-height:0;gap:var(--space-5)}.attention-dashboard__header{align-items:flex-end}.attention-kpis{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:var(--space-3);overflow-x:auto;padding-bottom:2px}.attention-kpi{min-height:106px;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--foreground);text-align:left;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.attention-kpi:hover{border-color:var(--primary)}.attention-kpi--selected{border-color:var(--success);background:var(--accent);box-shadow:inset 0 0 0 1px var(--success)}.attention-kpi__label{display:flex;gap:var(--space-2);align-items:center;color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-snug)}.attention-kpi strong{display:block;margin-top:var(--space-4);color:var(--foreground);font-size:var(--text-3xl);line-height:var(--leading-none)}.attention-empty-state{display:grid;gap:var(--space-2);min-height:132px;align-content:center;justify-items:center;padding:var(--space-6);text-align:center}.attention-empty-state h2,.attention-empty-state p{margin:0}.attention-empty-state h2{color:var(--foreground);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.attention-empty-state p{color:var(--success);font-size:var(--text-base);font-weight:var(--weight-medium)}.settings-layout{display:grid;gap:var(--space-5);max-width:760px}.settings-card{width:100%}.settings-row{display:flex;justify-content:space-between;gap:var(--space-6);align-items:center}.settings-row h3{margin:0;color:var(--foreground);font-size:var(--text-base);font-weight:var(--weight-semibold)}.settings-row p{margin:var(--space-1) 0 0;max-width:54ch;color:var(--muted-foreground);font-size:var(--text-sm);line-height:var(--leading-normal)}@media(max-width:820px){.login-shell{grid-template-columns:1fr;min-height:auto}.login-intro{min-height:42vh;padding:var(--space-8) var(--space-5)}.login-panel{padding:var(--space-7) var(--space-5);border-left:none}.login-logo{width:min(100%,320px)}h1{max-width:13ch}.dashboard-page{height:auto;min-height:100vh;grid-template-columns:1fr;overflow:visible}.dashboard-sidebar{gap:var(--space-5);height:auto;padding:var(--space-5);border-right:none;border-bottom:1px solid var(--border);min-height:auto;overflow:visible}.dashboard-nav{max-height:none;overflow:visible}.sidebar-user{max-width:420px}.dashboard-main{grid-template-rows:auto;overflow:visible;padding:var(--space-5)}.dashboard-header,.dashboard-grid{grid-template-columns:1fr}.attention-kpis{grid-template-columns:repeat(7,minmax(168px,1fr))}.dashboard-header{display:grid;align-items:start}.settings-row{display:grid}}@media(max-width:480px){.login-intro{padding:var(--space-7) var(--space-4)}.login-panel{padding:var(--space-6) var(--space-4)}.field-row{display:grid;gap:var(--space-1)}}
