.td{--salt:#faf7f2;--paper:#fffdf9;--wash:#f3ede3;--sand:#ede3d3;--sand-2:#e4d7c2;--ocean:#1e3c4a;--ocean-2:#16303c;--coral:#d98a6c;--coral-soft:#f6dccf;--coral-deep:#8a4428;--text:#1e3c4a;--muted:#55646a;--line:#1e3c4a1f;--line-strong:#1e3c4a42;--grid:#ebe4d8;--good:#2c6b4c;--bad:#9a3b22;--c1:#18709f;--c2:#d46f4a;--c3:#3e9a7a;--c4:#b88a2a;--h0:#94b7c7;--h1:#6f9cb0;--h2:#487e95;--h3:#2d5c70;--h4:#173240;--display:var(--font-playfair);--sans:var(--font-work-sans);--ease:cubic-bezier(.22, 1, .36, 1);--side:248px;background:var(--wash);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.5}.td ::selection{background:var(--coral);color:var(--ocean)}.td :focus-visible{outline:2px solid var(--coral-deep);outline-offset:2px;border-radius:3px}.td h1,.td h2,.td h3{font-family:var(--display);letter-spacing:-.01em;font-weight:400}.td em{color:var(--coral-deep);font-style:italic}.td-banner{background:var(--sand);color:var(--ocean);text-align:center;border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:center;gap:.2rem 1rem;padding:.5rem 1rem;font-size:.8rem;display:flex}.td-banner a{color:var(--coral-deep);text-underline-offset:3px;font-weight:500}.td-app{grid-template-columns:var(--side) minmax(0, 1fr);align-items:start;display:grid}.td-side{background:var(--ocean);height:100svh;color:var(--salt);flex-direction:column;gap:2rem;padding:1.6rem 1.1rem 1.3rem;display:flex;position:sticky;top:0}.td-side__top{justify-content:space-between;align-items:center;padding-inline:.5rem;display:flex}.td-brand{color:inherit;align-items:center;gap:.6rem;text-decoration:none;display:inline-flex}.td-brand__mark{width:32px;height:32px;color:var(--coral)}.td-brand__name{font-family:var(--display);font-size:1.35rem;line-height:1}.td .td-brand__name em{color:inherit}.td-side__toggle{display:none}.td-nav{flex-direction:column;flex:1;min-height:0;display:flex}.td-nav ul{gap:.2rem;display:grid}.td-nav__link{color:#faf7f2c2;transition:background-color .4s var(--ease), color .4s var(--ease);border-radius:6px;align-items:center;gap:.8rem;padding:.62rem .75rem;font-size:.92rem;text-decoration:none;display:flex;position:relative}.td-nav__link:hover{color:var(--salt);background:#faf7f20f}.td-nav__link.is-current{color:var(--salt);background:#faf7f21a}.td-nav__link.is-current:before{content:"";background:var(--coral);border-radius:0 3px 3px 0;width:3px;position:absolute;top:.55rem;bottom:.55rem;left:-1.1rem}.td-nav__icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:19px;height:19px}.td-side :focus-visible{outline-color:var(--coral)}.td-user{border-top:1px solid #faf7f224;align-items:center;gap:.75rem;margin-top:auto;padding:1rem .5rem 0;display:flex}.td-user p{font-size:.86rem;line-height:1.3;display:grid}.td-user span:last-child{color:#faf7f2b3;font-size:.78rem}.td-avatar{background:var(--coral);width:36px;height:36px;color:var(--ocean);letter-spacing:.04em;border-radius:50%;flex:none;place-content:center;font-size:.76rem;font-weight:600;display:inline-grid}.td-main{--pad:clamp(1rem, 2.6vw, 2.4rem);min-width:0;padding:0 var(--pad) 2rem}.td-main>.td-banner{margin:0 calc(var(--pad) * -1) 1.8rem}.td-main main{gap:1.1rem;max-width:1400px;display:grid}.td-main [id]{scroll-margin-top:1.2rem}.td-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem 2rem;padding-bottom:.4rem;display:flex;position:relative}.td-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:.74rem;font-weight:500}.td-head h1{margin-top:.4rem;font-size:clamp(2rem,3.4vw,2.85rem);line-height:1.05}.td-head__lede{max-width:40rem;color:var(--muted);margin-top:.55rem;font-size:.98rem}.td-head__actions{gap:.6rem;display:flex}.td-toast{z-index:5;background:var(--ocean);max-width:22rem;color:var(--salt);border-radius:6px;padding:.6rem .85rem;font-size:.84rem;position:absolute;top:calc(100% + .2rem);right:0;box-shadow:0 18px 40px -20px #16303c99}.td-toast:empty{display:none}.td-btn{border:1px solid var(--ocean);background:var(--ocean);min-height:42px;color:var(--salt);transition:background-color .4s var(--ease), color .4s var(--ease);border-radius:4px;align-items:center;padding:0 1.1rem;font-size:.86rem;font-weight:500;display:inline-flex}.td-btn:hover{background:var(--ocean-2)}.td-btn--ghost{color:var(--ocean);border-color:var(--line-strong);background:0 0}.td-btn--ghost:hover{background:var(--paper)}.td-block{gap:1.1rem;display:grid}.td-filter{flex-wrap:wrap;align-items:center;gap:.7rem 1.2rem;display:flex}.td-filter__range{font-size:.9rem;font-weight:500}.td-filter__note{color:var(--muted);margin-left:.6rem;font-size:.82rem;font-weight:400}.td-seg{border:1px solid var(--line-strong);background:var(--paper);border-radius:999px;padding:3px;display:inline-flex}.td-seg__btn{min-height:36px;color:var(--ocean);white-space:nowrap;transition:background-color .45s var(--ease), color .45s var(--ease);background:0 0;border:0;border-radius:999px;padding:0 1rem;font-size:.86rem;font-weight:500}.td-seg__btn:hover{background:var(--wash)}.td-seg__btn[aria-pressed=true]{background:var(--ocean);color:var(--salt)}.td-seg--small .td-seg__btn{min-height:32px;padding:0 .8rem;font-size:.8rem}.td-panel{border:1px solid var(--line);background:var(--paper);border-radius:8px;min-width:0;padding:1.15rem 1.25rem 1.2rem}.td-panel__head{justify-content:space-between;align-items:flex-start;gap:.8rem 1.2rem;margin-bottom:.9rem;display:flex}.td-panel__head--split{flex-wrap:wrap}.td-panel__head h2,.td-panel__head h3{font-size:1.32rem;line-height:1.2}.td-panel__sub{color:var(--muted);margin-top:.2rem;font-size:.84rem}.td-panel__sub strong{color:var(--text);font-weight:600}.td-row{gap:1.1rem;display:grid}.td-row--perf{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.td-row--ops{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.td-row--guests{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}.td-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:1.1rem;display:grid}.td-kpi{grid-template-columns:1fr auto;grid-template-areas:"label label""value spark""delta delta""hint hint";align-content:start;align-items:end;gap:.15rem .6rem;padding-bottom:1rem;display:grid}.td-kpi__label{color:var(--muted);grid-area:label;font-size:.84rem;font-weight:500}.td-kpi__value{letter-spacing:-.02em;grid-area:value;font-size:clamp(1.7rem,2.2vw,2.15rem);font-weight:600;line-height:1.15}.td-spark,.td-stars{grid-area:spark;width:86px;height:30px;margin-bottom:.35rem;overflow:visible}.td-spark__line{fill:none;stroke:#9aa9ae;stroke-width:1.6px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.td-spark__end{fill:var(--c1);stroke:var(--paper);stroke-width:2px}.td-stars{align-items:center;gap:1px;width:auto;display:flex}.td-star{width:14px;height:14px;fill:var(--coral)}.td-kpi__delta{flex-wrap:wrap;grid-area:delta;align-items:baseline;gap:0 .35rem;font-size:.8rem;font-weight:600;display:flex}.td-kpi__delta.is-up{color:var(--good)}.td-kpi__delta.is-down{color:var(--bad)}.td-kpi__delta.is-flat{color:var(--muted)}.td-kpi__vs{color:var(--muted);font-weight:400}.td-kpi__hint{border-top:1px solid var(--line);color:var(--muted);grid-area:hint;margin-top:.45rem;padding-top:.55rem;font-size:.74rem}.td-chart{position:relative}.td-svg{width:100%;height:auto;overflow:visible}.td-axis__grid{stroke:var(--grid);stroke-width:1px;shape-rendering:crispedges}.td-axis__base{stroke:#cdc3b3;stroke-width:1px;shape-rendering:crispedges}.td-axis__label{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.td-chart__hint{color:var(--muted);margin-top:.3rem;font-size:.74rem}.td-area__band{fill:#ede3d36b}.td-area__band-label{fill:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:500}.td-area__line{fill:none;stroke:var(--c1);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.td-area__fill{fill:var(--c1);opacity:.1}.td-area__end{fill:var(--c1);stroke:var(--paper);stroke-width:2px}.td-cross{opacity:0;pointer-events:none;transition:opacity .2s}.td-chart.is-active .td-cross{opacity:1}.td-cross__line{stroke:var(--ocean);stroke-opacity:.35;stroke-width:1px}.td-cross__dot{fill:var(--c1);stroke:var(--paper);stroke-width:2px}.td-chart--area{cursor:crosshair}.td-legend{color:var(--muted);flex-wrap:wrap;gap:.35rem 1.1rem;font-size:.8rem;display:flex}.td-legend li{align-items:center;gap:.45rem;display:inline-flex}.td-key{border-radius:2px;flex:none;width:10px;height:10px;display:inline-block}.td-key--1{background:var(--c1)}.td-key--2{background:var(--c2)}.td-key--3{background:var(--c3)}.td-key--4{background:var(--c4)}.td-key--booked{opacity:.45;background:#9aa9ae}.td-key--square{border-radius:3px;width:12px;height:12px}.td-data{border-top:1px solid var(--line);margin-top:.8rem;padding-top:.6rem;font-size:.84rem}.td-data summary{cursor:pointer;color:var(--muted);width:max-content;font-weight:500}.td-data summary:hover{color:var(--text)}.td-data__scroll{max-height:16rem;margin-top:.6rem;overflow:auto}.td-data table,.td-mix__table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.td-data th,.td-data td,.td-mix__table th,.td-mix__table td{text-align:right;border-bottom:1px solid var(--line);padding:.38rem .5rem .38rem 0}.td-data th:first-child,.td-mix__table th:first-child{text-align:left;font-weight:500}.td-data thead th,.td-mix__table thead th{background:var(--paper);color:var(--muted);font-size:.76rem;font-weight:500;position:sticky;top:0}.td-mix{flex-direction:column;display:flex}.td-mix__hero{flex-wrap:wrap;align-items:baseline;gap:.2rem .8rem;margin-bottom:1rem;display:flex}.td-mix__figure{letter-spacing:-.03em;font-size:clamp(2.6rem,3.6vw,3.2rem);font-weight:600;line-height:1}.td-mix__caption{color:var(--muted);flex:13rem;font-size:.86rem}.td-mix__caption strong{color:var(--text)}.td-chart--mix{margin-bottom:.7rem}.td-seg-bar--1{fill:var(--c1)}.td-seg-bar--2{fill:var(--c2)}.td-seg-bar--3{fill:var(--c3)}.td-seg-bar--4{fill:var(--c4)}.td-seg-bar{cursor:default;transition:opacity .25s}.td-chart--mix:hover .td-seg-bar:not(:hover){opacity:.7}.td-seg-bar__label{pointer-events:none;fill:#16303c;font-size:12px;font-weight:600}.td-seg-bar__label--1{fill:#fff}.td-mix__table{margin-top:auto;padding-top:1rem;font-size:.84rem}.td-mix__table tfoot th,.td-mix__table tfoot td{border-bottom:0;font-weight:600}.td-mix .td-legend{margin-bottom:.6rem}.td-avail .td-legend{margin-bottom:.8rem}.td-state{border-radius:3px;width:18px;height:12px;display:inline-block}.td-state--booked{background:var(--ocean)}.td-state--held{background:var(--coral-soft);box-shadow:inset 0 0 0 1px var(--coral-deep)}.td-state--free{background:var(--paper);box-shadow:inset 0 0 0 1px var(--line-strong)}.td-state--maint{background:repeating-linear-gradient(135deg,#d9ccb6 0 3px,#f0e8da 3px 6px)}.td-grid__scroll,.td-table__scroll,.td-data__scroll{position:relative}.td-grid__scroll{border:1px solid var(--line);border-radius:6px;overflow-x:auto}.td-grid{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:900px;font-size:.8rem}.td-grid th,.td-grid td{border-bottom:1px solid var(--line);padding:0}.td-grid__corner{width:172px}.td-grid__corner,.td-grid__room{z-index:2;background:var(--paper);text-align:left;border-right:1px solid var(--line);position:sticky;left:0;padding:.45rem .8rem!important}.td-grid__corner{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);vertical-align:bottom;font-size:.72rem;font-weight:500}.td-grid__room{font-weight:400}.td-grid__name{font-size:.84rem;font-weight:600;line-height:1.2;display:block}.td-grid__type{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;display:block;overflow:hidden}.td-grid__night{text-align:center;font-variant-numeric:tabular-nums;font-size:.86rem;font-weight:600;padding:.45rem 0!important}.td-grid__night span{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:500;display:block}.td-grid__night.is-today{color:var(--coral-deep);box-shadow:inset 0 -2px 0 var(--coral-deep)}.td-grid__night.is-today span{color:var(--coral-deep)}.td-grid .is-weekend{background:#f8f3ea}.td-grid__cell{border-left:1px solid #1e3c4a0f;height:42px}.td-grid tbody tr.is-hidden{display:none}.td-grid tbody tr:hover .td-grid__room{background:var(--salt)}.td-stay{letter-spacing:.06em;white-space:nowrap;transform-origin:0;height:30px;transition:box-shadow .3s var(--ease), filter .3s var(--ease);border-radius:6px;align-items:center;margin:0 3px;padding:0 .6rem;font-size:.76rem;font-weight:600;display:flex;overflow:hidden}.td-stay--booked{background:var(--ocean);color:var(--salt)}.td-stay--held{background:var(--coral-soft);color:var(--ocean);box-shadow:inset 0 0 0 1px #8a44288c}.td-stay--maint{color:var(--muted);letter-spacing:.02em;background:repeating-linear-gradient(135deg,#e2d6c2 0 4px,#f2ebdf 4px 8px);font-weight:500}.td-stay.is-before{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:0}.td-stay.is-after{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.td-stay:hover,.td-stay:focus-visible{filter:brightness(1.12);box-shadow:0 8px 18px -10px #16303cb3}.td-stay--held:hover,.td-stay--held:focus-visible{box-shadow:inset 0 0 0 1px var(--coral-deep), 0 8px 18px -10px #16303c80}.td-grid tfoot th,.td-grid tfoot td{border-bottom:0}.td-grid__count{text-align:center;font-variant-numeric:tabular-nums;height:38px;font-weight:600}.td-heat__cell{stroke:var(--paper);stroke-width:0;transition:stroke-width .2s}.td-heat__cell.is-active{stroke:var(--coral-deep);stroke-width:2px}.td-heat--0{fill:var(--h0);background:var(--h0)}.td-heat--1{fill:var(--h1);background:var(--h1)}.td-heat--2{fill:var(--h2);background:var(--h2)}.td-heat--3{fill:var(--h3);background:var(--h3)}.td-heat--4{fill:var(--h4);background:var(--h4)}.td-heat__cell.is-future{fill:var(--salt);stroke:var(--line-strong);stroke-width:1px}.td-key.is-future{background:var(--salt);box-shadow:inset 0 0 0 1px var(--line-strong)}.td-chart--heat{max-width:560px}.td-chart--heat .td-svg{width:auto;max-width:100%}.td-legend--heat{gap:.35rem .9rem;margin-top:.9rem}.td-covers .td-legend{margin-bottom:.4rem}.td-bar--1{fill:var(--c1)}.td-bar--2{fill:var(--c2)}.td-bar--3{fill:var(--c3)}.td-bar.is-booked{opacity:.45}.td-bars__group{outline:none}.td-hit{fill:#0000}.td-bars__group:hover .td-hit,.td-bars__group:focus-visible .td-hit{fill:#1e3c4a0d}.td-bars__group:focus-visible .td-hit{stroke:var(--coral-deep);stroke-width:2px}.td-bar__closed{fill:var(--muted);font-size:14px}.td-tabs{background:var(--wash);border-radius:999px;padding:3px;display:inline-flex}.td-tabs__btn{min-height:34px;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:0 .95rem;font-size:.84rem;font-weight:500}.td-tabs__btn span{min-width:1.4rem;height:1.4rem;color:var(--ocean);background:#1e3c4a1a;border-radius:999px;place-content:center;margin-left:.3rem;font-size:.72rem;display:inline-grid}.td-tabs__btn[aria-selected=true]{background:var(--paper);color:var(--ocean);box-shadow:0 1px 3px #16303c2e}.td-table__scroll{overflow-x:auto}.td-table{border-collapse:collapse;width:100%;min-width:560px;font-size:.86rem}.td-table th{text-align:left;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;padding:0 .7rem .5rem 0;font-size:.72rem;font-weight:500}.td-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:.7rem .7rem .7rem 0}.td-table tbody tr:last-child td{border-bottom:0}.td-guest{white-space:nowrap;align-items:center;gap:.6rem;display:inline-flex}.td-table td:nth-child(2) strong{white-space:nowrap}.td-table td:nth-child(3),.td-table td:nth-child(4){white-space:nowrap;font-variant-numeric:tabular-nums}.td-table td:last-child{color:var(--muted)}.td-table__sub{color:var(--muted);font-size:.74rem;display:block}.td-table__chan{color:var(--muted);font-size:.74rem}.td-avatar--guest{background:var(--sand);width:34px;height:34px}.td-avatar--out{background:var(--wash);color:var(--muted)}.td-sort{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;background:0 0;border:0;align-items:center;gap:.3rem;padding:0;display:inline-flex}.td-sort:after{content:"↕";opacity:.5;font-size:.85em}[aria-sort=ascending]>.td-sort{color:var(--ocean)}[aria-sort=ascending]>.td-sort:after{content:"↑";opacity:1}[aria-sort=descending]>.td-sort{color:var(--ocean)}[aria-sort=descending]>.td-sort:after{content:"↓";opacity:1}.td-reviews__list{display:grid}.td-review{border-top:1px solid var(--line);padding:.8rem 0}.td-review:first-child{border-top:0;padding-top:0}.td-review__meta{flex-wrap:wrap;align-items:center;gap:.2rem .6rem;font-size:.84rem;font-weight:600;display:flex}.td-review__stars{gap:1px;display:inline-flex}.td-review__stars .td-star{width:13px;height:13px}.td-star.is-off{fill:var(--sand-2)}.td-review__src{color:var(--muted);font-size:.78rem;font-weight:400}.td-review blockquote{font-family:var(--display);margin:.35rem 0 0;font-size:1.02rem;font-style:italic;line-height:1.4}.td-tip{z-index:300;background:var(--ocean);max-width:260px;color:var(--salt);pointer-events:none;border-radius:6px;padding:.55rem .75rem;font-size:.78rem;line-height:1.4;position:fixed;top:0;left:0;box-shadow:0 16px 36px -16px #16303cb3}.td-tip[hidden]{display:none}.td-tip strong{font-size:.92rem;font-weight:600;display:block}.td-tip span{color:#faf7f2c7;display:block}.td-tip__row{align-items:center;gap:.45rem;display:flex!important}.td-tip__row b{color:var(--salt);font-variant-numeric:tabular-nums;margin-left:auto;padding-left:.8rem;font-weight:600}.td-tip__key{border-radius:1px;flex:none;width:12px;height:2px;display:inline-block}.td-tip__key--1{background:#6fb3dc}.td-tip__key--2{background:#f0a184}.td-tip__key--3{background:#7cc9aa}.td-footer{border-top:1px solid var(--line);max-width:1400px;color:var(--muted);gap:.4rem;margin-top:2rem;padding-top:1.2rem;font-size:.78rem;display:grid}.td-footer a{color:var(--coral-deep)}@media (width<=1280px){.td-kpis{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.td-row--guests{grid-template-columns:minmax(0,1fr)}}@media (width<=1120px){.td-row--perf,.td-row--ops{grid-template-columns:minmax(0,1fr)}.td-chart--heat{max-width:620px}}@media (width<=899px){.td-app{display:block}.td-side{z-index:50;gap:0;height:auto;padding:.7rem 16px;position:sticky;top:0}.td-side__top{padding:0}.td-side__toggle{width:42px;height:42px;color:inherit;background:0 0;border:1px solid #faf7f266;border-radius:50%;place-content:center;gap:5px;padding:0;display:grid}.td-side__toggle i{width:16px;height:1.5px;transition:transform .5s var(--ease);background:currentColor;display:block}.td-side.is-open .td-side__toggle i:first-of-type{transform:translateY(3.25px)rotate(45deg)}.td-side.is-open .td-side__toggle i:last-of-type{transform:translateY(-3.25px)rotate(-45deg)}.td-nav{padding:.8rem 0 .4rem;display:none}.td-side.is-open .td-nav{display:flex}.td-nav__link.is-current:before{left:-16px}.td-user{margin-top:.8rem}.td-main{--pad:16px;padding:0 16px 1.6rem}.td-main>.td-banner{margin-bottom:1.3rem}.td-main [id]{scroll-margin-top:5rem}.td-head{align-items:flex-start}.td-head__actions{width:100%}.td-head__actions .td-btn{flex:1;justify-content:center}.td-toast{left:0;right:auto}.td-filter{flex-direction:column;align-items:stretch;gap:.5rem}.td-filter .td-seg{display:flex}.td-filter .td-seg__btn{flex:1;padding:0 .4rem}.td-filter__note{margin:.1rem 0 0;display:block}.td-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.td-kpi:last-child{grid-column:1/-1}.td-kpi{grid-template-areas:"label label""value value""spark spark""delta delta""hint hint";padding:.9rem .95rem .85rem}.td-spark{width:100%;height:26px;margin:.3rem 0 .4rem}.td-stars{margin:.3rem 0 .4rem}.td-panel{padding:1rem .95rem}.td-panel__head--split .td-seg,.td-panel__head--split .td-tabs{width:100%}.td-panel__head--split .td-seg__btn,.td-panel__head--split .td-tabs__btn{flex:1;padding-inline:.3rem}.td-grid__corner{width:120px}.td-grid__corner,.td-grid__room{padding:.4rem .55rem!important}.td-grid{min-width:760px}}
