/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}}.weekly-shell .ops-workspace{max-width:1700px;padding:32px}.weekly-shell .subtitle{font-size:13px;line-height:1.6}.weekly-shell .eyebrow,.weekly-shell .data-badge{font-size:10px}.weekly-shell .module-nav{padding:14px 13px;font-size:13px}.weekly-shell .primary-action,.weekly-shell .ghost-action{padding:11px 14px;font-size:12px}:is(.weekly-shell button:focus-visible,.weekly-shell input:focus-visible,.weekly-shell a:focus-visible){outline-offset:3px;outline:3px solid #397f69}.weekly-mobile-nav{display:none}.week-toolbar{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:14px 0 20px;display:flex}.week-picker{color:#5b6c66;flex-wrap:wrap;align-items:center;gap:10px;font-size:12px;display:flex}.week-picker button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;padding:7px 10px}.week-picker .recent-week{color:var(--mint-d);background:0 0;border:0}.week-picker label{font-weight:700}.week-picker input{color:var(--ink);background:0 0;border:0;margin-left:6px}.weekly-banner{color:#7b612d;background:#fff7e3;border:1px solid #e9d7aa;border-radius:12px;flex-wrap:wrap;gap:8px 18px;margin:0 0 18px;padding:14px 18px;font-size:12px;line-height:1.6;display:flex}.error-banner{color:#9d4b37;background:#fff0eb;border-color:#ebc1b3}.weekly-intro{padding:8px 0 22px}.weekly-intro>span{color:var(--mint-d);letter-spacing:.15em;font-size:10px;font-weight:800}.weekly-intro h2{letter-spacing:-.03em;margin:10px 0;font-size:26px}.weekly-intro p,.weekly-explainer{color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.8}.weekly-business-grid,.weekly-source-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px;display:grid}.weekly-business{padding:20px}.weekly-business-title{align-items:center;gap:12px;margin-bottom:18px;display:flex}.business-index{color:#397f69;background:#e1f2e9;border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:12px;font-weight:800;display:grid}.business-1{color:#b57552;background:#fff0e7}.business-2{color:#8d712d;background:#f9edcf}.business-3{color:#6369a7;background:#e9eafb}.weekly-business-title h2{margin:0 0 5px;font-size:17px}.weekly-business-title p{color:var(--muted);margin:0;font-size:11px}.weekly-business-title button{border:1px solid var(--line);width:33px;height:33px;color:var(--mint-d);background:0 0;border-radius:50%;margin-left:auto;font-size:17px}.weekly-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.weekly-metrics.compact{gap:0;margin:0}.weekly-metrics.compact .kpi-card{box-shadow:none;border:0;border-left:1px solid var(--line);border-radius:0;min-height:125px;padding:0 14px}.weekly-metrics.compact .kpi-card:first-child{border:0;padding-left:0}.weekly-metrics .kpi-label{font-size:12px;line-height:1.5}.weekly-metrics .kpi-card>strong{font-size:27px}.weekly-metrics .kpi-card p{min-height:35px;font-size:11px;line-height:1.7}.weekly-metrics .kpi-top em{font-size:9px}.week-delta{color:var(--mint-d);margin-top:10px;font-size:10px;line-height:1.6;display:block}.weekly-lower-grid{grid-template-columns:1.1fr 1fr;gap:16px;display:grid}.weekly-trend{grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;height:235px;margin-top:24px;display:grid}.weekly-trend>div{flex-direction:column;align-items:center;gap:9px;min-width:0;display:flex}.weekly-trend strong{white-space:nowrap;color:#52675e;font-size:10px}.weekly-trend small{color:var(--muted);font-size:10px}.weekly-bar-track{border-bottom:1px solid var(--line);justify-content:center;align-items:flex-end;width:100%;height:175px;display:flex}.weekly-bar-track i{background:var(--mint);border-radius:6px 6px 0 0;width:65%;max-width:43px;display:block}.weekly-bar-track i.missing{background:#dfe3dd}.weekly-issues{margin-top:18px}.weekly-issues button{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;align-items:flex-start;gap:12px;width:100%;padding:12px 0;display:flex}.weekly-issues button>b{color:#ab9671;padding-top:2px;font-size:11px}.weekly-issues button>span{color:var(--muted);margin-left:auto}.weekly-issues strong{color:var(--ink);font-size:13px}.weekly-issues p{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.7}.weekly-module-heading{justify-content:space-between;align-items:center;gap:12px;margin:10px 0 18px;display:flex}.weekly-module-heading h2{margin:0;font-size:18px}.weekly-module-heading>span{color:var(--muted);font-size:12px}.weekly-table-wrap{max-height:560px;margin-top:22px;overflow:auto}.weekly-table-wrap table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%;font-size:12px}.weekly-table-wrap th{color:#5b6c61;background:#eef2e9;padding:12px;position:sticky;top:0}.weekly-table-wrap td{border-bottom:1px solid var(--line);padding:13px 12px}.weekly-table-wrap tbody tr:hover{background:#f6f8f0}.weekly-empty{text-align:center;padding:55px 20px}.weekly-empty>span{color:#b6cabc;font-size:34px}.weekly-empty h3{margin:18px 0 12px;font-size:17px}.weekly-empty p{max-width:470px;color:var(--muted);margin:auto;font-size:13px;line-height:1.8}.update-hero{margin-bottom:18px}.update-hero>p,.weekly-source-grid p{color:#62766a;margin:18px 0;font-size:13px;line-height:1.9}.update-actions{flex-wrap:wrap;align-items:center;gap:14px;margin:24px 0;display:flex}.update-actions>span{color:var(--muted);font-size:12px}.weekly-source-grid a{color:var(--mint-d);font-size:12px}.weekly-rules li{color:#607367;padding:7px 0;font-size:13px;line-height:1.9}.weekly-rules ol{margin-bottom:0;padding-left:20px}@media (min-width:1500px){.weekly-metrics.compact .kpi-card>strong{font-size:30px}}@media (max-width:1200px){.weekly-business-grid,.weekly-lower-grid{grid-template-columns:1fr}.weekly-shell .ops-topbar{flex-wrap:wrap}.weekly-metrics .kpi-card>strong{font-size:24px}}@media (max-width:800px){.weekly-shell{display:block}.weekly-shell .ops-sidebar{display:none}.weekly-shell .ops-workspace{padding:22px 16px}.weekly-mobile-nav{gap:8px;padding:0 0 18px;display:flex;overflow:auto}.weekly-mobile-nav button{white-space:nowrap;background:var(--card);border:1px solid var(--line);color:var(--ink);border-radius:20px;padding:9px 12px;font-size:12px}.weekly-mobile-nav .selected{background:var(--navy);color:#fff}.week-toolbar{flex-wrap:wrap;align-items:flex-start}.weekly-source-grid{grid-template-columns:1fr}.weekly-module-heading{flex-wrap:wrap}.weekly-metrics:not(.compact){grid-template-columns:repeat(2,minmax(0,1fr))}.weekly-shell .ops-topbar{gap:18px}.weekly-shell footer{flex-wrap:wrap;gap:10px}}@media (max-width:430px){.weekly-business{padding:16px}.weekly-metrics.compact .kpi-card{padding:0 9px}.weekly-metrics.compact .kpi-card>strong{font-size:22px}.weekly-metrics .kpi-label{font-size:11px}.weekly-metrics .kpi-card p{font-size:10px}.weekly-metrics.compact .kpi-top em{display:none}.weekly-shell h1{font-size:30px}.week-picker{gap:7px;font-size:11px}.weekly-trend strong{font-size:8px}.weekly-trend{gap:4px}}:root{--ink:#17201f;--muted:#74807d;--line:#e6e9e3;--paper:#f3f4ef;--card:#fffefa;--navy:#142725;--navy-2:#213a37;--mint:#91ddc4;--mint-d:#397f69;--coral:#ff8c70;--amber:#f2c264;--violet:#a5aae8;--danger:#c95c46}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}h1,h2,h3,p{margin-top:0}.ops-shell{grid-template-columns:242px minmax(0,1fr);min-height:100vh;display:grid}.ops-sidebar{z-index:10;background:var(--navy);color:#fff;flex-direction:column;height:100vh;padding:28px 18px 20px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;padding:0 8px 30px;display:flex}.brand-mark{width:39px;height:39px;color:var(--navy);background:var(--mint);border-radius:12px;place-items:center;font-size:20px;font-weight:900;display:grid;box-shadow:0 10px 28px #91ddc42e}.brand div{gap:2px;display:grid}.brand strong{font-size:17px}.brand div span{color:#8ba49f;letter-spacing:.13em;text-transform:uppercase;font-size:9px}.nav-caption{color:#637d77;letter-spacing:.17em;margin:0 12px 8px;font-size:8px;font-weight:800}.ops-sidebar nav{gap:7px;display:grid}.module-nav{color:#91a5a1;text-align:left;background:0 0;border:0;border-radius:11px;align-items:center;gap:10px;width:100%;padding:12px 13px;font-size:12px;display:flex}.module-nav b{text-align:center;width:18px;font-size:14px}.module-nav:hover,.module-nav.active{color:#fff;background:#223b38}.module-nav.active{box-shadow:inset 3px 0 var(--mint)}.portfolio-card{background:#1b312e;border:1px solid #304b47;border-radius:14px;margin:24px 3px 0;padding:15px}.portfolio-card span{color:#89a19c;font-size:9px}.portfolio-card strong{letter-spacing:-.03em;margin:6px 0 10px;font-size:23px;display:block}.portfolio-card>div{background:#2e4844;border-radius:10px;height:5px;overflow:hidden}.portfolio-card i{background:var(--mint);border-radius:inherit;height:100%;display:block}.portfolio-card p{color:#718c86;margin:8px 0 0;font-size:8px}.sidebar-foot{margin-top:auto}.source-button{color:#fff;text-align:left;background:#1b312e;border:1px solid #304b47;border-radius:13px;grid-template-columns:8px 1fr 12px;align-items:center;gap:10px;width:100%;padding:13px;display:grid}.source-button div{gap:3px;display:grid}.source-button strong{font-size:10px}.source-button small{color:#7f9892;font-size:8px}.source-button>b{color:#7f9892}.status-dot{background:var(--amber);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #f2c2641a}.sidebar-foot>p{text-align:center;color:#617c76;margin:9px 0 0;font-size:8px}.ops-workspace{width:100%;max-width:1640px;margin:auto;padding:31px 37px 26px;overflow:hidden}.ops-topbar{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:23px;display:flex}.eyebrow-row{align-items:center;gap:9px;margin-bottom:7px;display:flex}.eyebrow{color:#58716b;letter-spacing:.16em;margin:0;font-size:8px;font-weight:900}.data-badge{border-radius:20px;padding:4px 7px;font-size:8px;font-weight:800}.data-badge.demo{color:#936724;background:#f8eac6}.data-badge.live{color:#2f735e;background:#dff4e9}h1{letter-spacing:-.04em;margin-bottom:7px;font-size:clamp(28px,3vw,40px);line-height:1.08}.subtitle{color:var(--muted);margin:0;font-size:11px}.top-actions{align-items:center;gap:8px;display:flex}.range-control{border:1px solid var(--line);background:#e9ebe6;border-radius:11px;gap:2px;padding:4px;display:flex}.range-control button{color:#77827f;background:0 0;border:0;border-radius:7px;padding:7px 10px;font-size:9px}.range-control button.selected{color:var(--ink);background:#fff;font-weight:800;box-shadow:0 2px 8px #1f2b2814}.primary-action,.ghost-action{border-radius:11px;padding:10px 13px;font-size:9px;font-weight:800;transition:all .18s}.primary-action{border:1px solid var(--navy);color:#fff;background:var(--navy);box-shadow:0 7px 20px #14272521}.ghost-action{border:1px solid var(--line);color:#425450;background:var(--card)}.primary-action:hover,.ghost-action:hover{transform:translateY(-1px)}.mobile-modules{display:none}.notice{color:#76581d;background:#fff5d9;border:1px solid #ead49d;border-radius:11px;justify-content:space-between;align-items:center;margin:-7px 0 13px;padding:10px 13px;font-size:9px;display:flex}.notice button{color:inherit;background:0 0;border:0;font-size:16px}.kpi-grid{gap:12px;margin-bottom:12px;display:grid}.long-kpis,.event-kpis,.marketing-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.hostel-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-card,.panel{border:1px solid var(--line);background:var(--card);border-radius:17px;box-shadow:0 5px 22px #202c2909}.kpi-card{min-height:132px;padding:15px}.kpi-top{justify-content:space-between;align-items:flex-start;min-height:20px;display:flex}.kpi-glyph{border-radius:3px;width:10px;height:10px;box-shadow:0 0 0 5px #91ddc429}.kpi-glyph.mint{background:var(--mint-d)}.kpi-glyph.coral{background:var(--coral);box-shadow:0 0 0 5px #ff8c7021}.kpi-glyph.amber{background:var(--amber);box-shadow:0 0 0 5px #f2c26426}.kpi-glyph.violet{background:var(--violet);box-shadow:0 0 0 5px #a5aae824}.kpi-top em{color:#9e593e;background:#ffe6dd;border-radius:10px;padding:3px 6px;font-size:7px;font-style:normal;font-weight:800}.kpi-label{color:var(--muted);margin-top:14px;font-size:9px;font-weight:700;display:block}.kpi-card>strong{letter-spacing:-.035em;margin-top:6px;font-size:22px;display:block}.kpi-card p{color:#9aa29f;margin:6px 0 0;font-size:8px;line-height:1.35}.two-one-grid,.one-two-grid{gap:12px;margin-bottom:12px;display:grid}.two-one-grid{grid-template-columns:minmax(0,1.8fr) minmax(270px,.7fr)}.one-two-grid{grid-template-columns:minmax(310px,.8fr) minmax(0,1.7fr)}.panel{padding:18px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.panel-kicker{color:var(--muted);letter-spacing:.1em;margin-bottom:4px;font-size:8px;font-weight:900;display:block}.panel h2{letter-spacing:-.02em;margin:0;font-size:15px}.panel-note,.danger-pill,.warning-pill,.good-pill,.neutral-pill{white-space:nowrap;border-radius:14px;padding:5px 8px;font-size:8px;font-weight:800}.panel-note,.neutral-pill{color:#66726f;background:#eff1ec}.danger-pill{color:#a34b39;background:#ffe6df}.warning-pill{color:#8a651f;background:#f8eccd}.good-pill{color:#34745f;background:#e1f3eb}.cash-chart,.occupancy-chart{grid-auto-columns:minmax(28px,1fr);grid-auto-flow:column;align-items:end;gap:8px;height:210px;padding-top:25px;display:grid;overflow-x:auto}.cash-day,.occ-day{text-align:center;grid-template-rows:17px 1fr 15px;gap:4px;min-width:28px;height:100%;display:grid}.cash-day>span,.occ-day>span{color:#8a9491;font-size:7px}.cash-bars,.occ-day>div{border-bottom:1px solid var(--line);justify-content:center;align-items:end;gap:3px;height:100%;display:flex}.cash-bars i,.occ-day i{background:var(--mint);border-radius:4px 4px 1px 1px;width:9px;min-height:5px}.cash-bars i+i{background:var(--coral)}.occ-day i{background:var(--navy);width:10px}.occ-day i+i{background:var(--mint);opacity:.95;width:7px;margin-left:-7px}.cash-day small,.occ-day small{color:#8e9895;font-size:7px}.chart-legend{color:#7f8986;align-items:center;gap:15px;margin-top:11px;font-size:8px;display:flex}.chart-legend strong{color:var(--ink);margin-left:auto}.legend{border-radius:2px;width:7px;height:7px;margin-right:4px;display:inline-block}.legend.income{background:var(--mint)}.legend.cost{background:var(--coral)}.legend.paid{background:var(--navy)}.risk-list{margin-top:14px;display:grid}.risk-row{border-bottom:1px solid #edf0ea;grid-template-columns:8px 1fr auto;align-items:center;gap:9px;padding:10px 0;display:grid}.room-status{border-radius:50%;width:7px;height:7px}.room-status.vacant{background:var(--coral)}.room-status.occupied{background:var(--amber)}.risk-row div{gap:2px;display:grid}.risk-row strong{font-size:9px}.risk-row small{color:#8e9895;font-size:7px}.risk-row em{color:#a14c39;font-size:7px;font-style:normal;font-weight:800}.panel-action{border:1px solid var(--line);color:#3f675d;background:#f7f7f2;border-radius:9px;width:100%;margin-top:12px;padding:9px;font-size:8px;font-weight:800}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:14px;display:grid}.room-tile{border:1px solid var(--line);background:#f8f8f4;border-radius:10px;padding:10px}.room-tile.occupied{border-left:3px solid var(--mint)}.room-tile.vacant{border-left:3px solid var(--coral);background:#fff8f5}.room-tile>div{justify-content:space-between;align-items:center;display:flex}.room-tile strong{font-size:9px}.room-tile span{color:#76827f;font-size:7px}.room-tile>b{margin:7px 0 4px;font-size:11px;display:block}.room-tile small{color:#949d9a;font-size:7px}.profile-columns{grid-template-columns:1fr 1fr;gap:24px;margin-top:14px;display:grid}.profile-columns h3{margin:0 0 10px;font-size:9px}.compare-row{grid-template-columns:58px 1fr 24px;align-items:center;gap:8px;margin:8px 0;display:grid}.compare-row>span,.compare-row>b{font-size:7px}.compare-row>b{text-align:right}.compare-row>div{gap:2px;display:grid}.compare-row i{background:var(--mint-d);border-radius:10px;height:4px;display:block}.compare-row i+i{background:#d8ddd7}.progress-row{margin:9px 0}.progress-row>div:first-child{justify-content:space-between;margin-bottom:5px;font-size:7px;display:flex}.progress-row strong{font-size:7px}.progress-track{background:#ebeee8;border-radius:9px;height:5px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--mint);height:100%;display:block}.progress-track span.coral{background:var(--coral)}.progress-track span.amber{background:var(--amber)}.privacy-note{color:#949d9a;border-top:1px solid #edf0ea;margin:11px 0 0;padding-top:9px;font-size:7px}.funnel-flow{grid-template-columns:repeat(9,minmax(50px,1fr));gap:8px;margin-top:18px;display:grid;overflow-x:auto}.funnel-step{min-width:50px}.funnel-step>span{color:#77827f;font-size:7px}.funnel-step>strong{margin:4px 0 6px;font-size:11px;display:block}.funnel-step>div{background:#edf0ea;border-radius:8px;height:6px;overflow:hidden}.funnel-step i{background:var(--mint-d);border-radius:inherit;min-width:5px;height:100%;display:block}.funnel-step small{color:#8d9794;margin-top:5px;font-size:6px;display:block}.funnel-insights{color:#77817f;background:#f5f6f1;border-radius:10px;gap:20px;margin-top:16px;padding:10px;font-size:7px;display:flex}.funnel-insights b{color:var(--ink)}.benchmark-list{margin-top:13px;display:grid}.benchmark-list>div{border-bottom:1px solid #edf0ea;grid-template-columns:1fr 45px 38px;align-items:center;gap:8px;padding:9px 0;display:grid}.benchmark-list span{color:#697572;font-size:8px}.benchmark-list strong{text-align:right;font-size:9px}.benchmark-list small{text-align:center;border-radius:8px;padding:3px;font-size:7px}.benchmark-list small.good{color:#34745f;background:#e1f3eb}.benchmark-list small.risk{color:#a14c39;background:#ffe6df}.benchmark-note{color:#8d9794;margin:11px 0 0;font-size:7px;line-height:1.5}.forecast-list{margin-top:16px}.data-table{min-width:100%;margin-top:14px}.table-head,.table-row{border-bottom:1px solid #edf0ea;align-items:center;gap:10px;padding:9px 6px;display:grid}.table-head{color:#939c99;background:#f5f6f1;border-radius:8px;font-size:7px;font-weight:800}.table-row{color:#68736f;font-size:8px}.table-row strong,.table-row b{color:var(--ink)}.table-row em{color:#2f7b64;font-style:normal;font-weight:800}.hostel-table .table-head,.hostel-table .table-row{grid-template-columns:1.4fr repeat(3,.7fr)}.unit-economics{grid-template-columns:1fr 1fr;gap:8px;margin-top:15px;display:grid}.unit-economics>div{background:#f5f6f1;border-radius:10px;padding:12px}.unit-economics span{color:#74807c;font-size:7px;display:block}.unit-economics strong{margin-top:6px;font-size:15px;display:block}.formula-note{background:#e9f5ef;border-radius:10px;gap:4px;margin-top:11px;padding:10px;display:grid}.formula-note b{color:#326f5d;font-size:8px}.formula-note span{color:#6c7c77;font-size:7px}.scorecard-grid{grid-template-columns:1fr 1fr;gap:4px 24px;margin-top:13px;display:grid}.integration-body{grid-template-columns:38px 1fr;gap:10px;margin-top:16px;display:grid}.integration-logo{color:#fff;background:#2c7b65;border-radius:11px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.integration-body strong{font-size:9px}.integration-body p{color:#7e8986;margin:4px 0 0;font-size:7px;line-height:1.5}.integration-path{grid-template-columns:1fr auto 1fr auto;align-items:center;gap:6px;margin-top:13px;font-size:7px;display:grid}.integration-path span{background:#f3f5f0;border-radius:8px;padding:7px}.integration-path b{color:#50776c}.calendar-week,.calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.calendar-week{color:#8d9794;text-align:center;margin-top:14px;font-size:7px}.calendar-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:6px}.calendar-day,.calendar-grid>.empty{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:72px;padding:7px}.calendar-day b{font-size:7px}.calendar-day.has-event{background:#f0f8f4}.calendar-day i{background:var(--coral);border-radius:50%;width:5px;height:5px;margin:8px 0 5px;display:block}.calendar-day small{font-size:6px;line-height:1.35;display:block}.event-list{margin-top:13px;display:grid}.event-row{border-bottom:1px solid #edf0ea;grid-template-columns:35px 1fr 34px;align-items:center;gap:10px;padding:10px 0;display:grid}.event-date{background:#ecf5f0;border-radius:8px;place-items:center;padding:6px;display:grid}.event-date strong{font-size:13px}.event-date span{color:#6f817c;font-size:6px}.event-row>div:nth-child(2){gap:2px;display:grid}.event-row>div>strong{font-size:8px}.event-row>div>span,.event-row>div>small{color:#87918e;font-size:7px}.event-row>em{text-align:center;color:#3b7b67;font-size:8px;font-style:normal;font-weight:800}.event-performance{margin-bottom:12px;overflow-x:auto}.event-table{min-width:820px}.event-table .table-head,.event-table .table-row{grid-template-columns:2fr 1.2fr .7fr .5fr .45fr .55fr .55fr}.account-panel{margin-bottom:12px;overflow-x:auto}.marketing-table{min-width:880px}.marketing-table .table-head,.marketing-table .table-row{grid-template-columns:1.7fr .7fr .5fr .4fr .8fr .6fr .45fr .5fr}.marketing-table strong{grid-template-columns:6px 1fr;align-items:center;gap:4px 7px;display:grid}.marketing-table strong small{color:#87918e;grid-column:2;font-size:6px;font-weight:400}.platform-dot{background:var(--mint);border-radius:50%;grid-row:1/3;width:6px;height:6px}.platform-dot.抖音{background:var(--coral)}.platform-dot.公众号{background:var(--amber)}.efficiency-grid{grid-template-columns:1fr 1fr;gap:9px;margin-top:14px;display:grid}.efficiency-grid>div{border:1px solid var(--line);border-radius:10px;padding:12px}.efficiency-grid span{color:#6d7975;font-size:7px}.efficiency-grid strong{margin:5px 0;font-size:15px;display:block}.efficiency-grid>div>div{background:#edf0ea;border-radius:8px;height:5px;overflow:hidden}.efficiency-grid i{background:var(--mint-d);height:100%;display:block}.efficiency-grid small{color:#939c99;margin-top:6px;font-size:6px;display:block}.content-list{margin-top:12px;display:grid}.content-list>div{border-bottom:1px solid #edf0ea;grid-template-columns:33px 1fr auto;align-items:center;gap:8px;padding:9px 0;display:grid}.content-list>div>span{color:#63736f;font-size:8px;font-weight:800}.content-list>div>div{gap:2px;min-width:0;display:grid}.content-list strong{white-space:nowrap;text-overflow:ellipsis;font-size:8px;overflow:hidden}.content-list small{color:#8a9592;font-size:6px}.content-list em{color:#775e27;background:#f7eccf;border-radius:8px;padding:4px 6px;font-size:6px;font-style:normal}.platform-share .progress-row{margin-top:13px}.mini-funnel{align-items:center;gap:7px;margin-top:17px;display:flex;overflow-x:auto}.mini-funnel>div{align-items:center;gap:7px;min-width:max-content;display:flex}.mini-funnel span{color:#76827e;font-size:7px}.mini-funnel strong{font-size:10px}.mini-funnel b{color:#a1aaa7}footer{color:#929b98;justify-content:space-between;gap:20px;margin-top:18px;font-size:7px;display:flex}.modal-backdrop,.drawer-backdrop{z-index:40;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0a171594;position:fixed;inset:0}.modal-backdrop{place-items:center;padding:18px;display:grid}.entry-modal{background:var(--card);border-radius:19px;width:min(680px,100%);max-height:90vh;padding:23px;overflow:auto;box-shadow:0 28px 90px #0814124d}.modal-heading{justify-content:space-between;gap:16px;margin-bottom:17px;display:flex}.modal-heading h2{margin:0 0 5px;font-size:20px}.modal-heading p{color:var(--muted);margin:0;font-size:8px}.modal-heading>button{color:#52615e;background:#eef0eb;border:0;border-radius:8px;flex:none;width:29px;height:29px;font-size:16px}.form-grid{grid-template-columns:1fr 1fr;gap:11px;display:grid}.form-grid label{gap:5px;display:grid}.form-grid label>span{color:#687572;font-size:8px;font-weight:800}.form-grid input,.form-grid textarea,.form-grid select{width:100%;min-width:0;color:var(--ink);background:#f9faf6;border:1px solid #dce1da;border-radius:9px;outline:0;padding:9px 10px;font-size:9px}.form-grid input:focus,.form-grid select:focus{background:#fff;border-color:#67a992;box-shadow:0 0 0 3px #67a9921c}.modal-actions{justify-content:flex-end;gap:8px;margin-top:17px;display:flex}.drawer-backdrop{justify-content:flex-end;display:flex}.source-drawer{background:var(--card);width:min(460px,92vw);height:100%;padding:25px;overflow:auto;box-shadow:-20px 0 60px #08141240}.source-list{gap:9px;display:grid}.source-card{border:1px solid var(--line);background:#fafaf6;border-radius:12px;grid-template-columns:35px 1fr auto;align-items:start;gap:10px;padding:13px;display:grid}.source-icon{color:#fff;background:#3a7e69;border-radius:10px;place-items:center;width:35px;height:35px;font-size:11px;font-weight:900;display:grid}.source-icon.hostex{background:#3e5f94}.source-icon.social{background:#b35f48}.source-icon.manual{background:#6a706e}.source-card strong{font-size:9px}.source-card p{color:#78837f;margin:4px 0;font-size:7px;line-height:1.45}.source-card small{color:#98a09d;font-size:6px}.source-card em{color:#8b6420;background:#f8eccd;border-radius:8px;padding:4px 6px;font-size:6px;font-style:normal;font-weight:800}.source-card.ready em{color:#34745f;background:#e1f3eb}.source-security{background:#eaf5ef;border-radius:11px;margin-top:13px;padding:13px}.source-security strong{color:#326e5c;font-size:8px}.source-security p{color:#6c7c77;margin:5px 0 0;font-size:7px;line-height:1.5}@media (max-width:1250px){.ops-workspace{padding-inline:25px}.long-kpis,.event-kpis,.marketing-kpis{grid-template-columns:repeat(3,1fr)}.hostel-kpis{grid-template-columns:repeat(4,1fr)}}@media (max-width:1020px){.ops-shell{grid-template-columns:76px minmax(0,1fr)}.ops-sidebar{align-items:center;padding-inline:12px}.brand{padding-inline:0}.brand div,.nav-caption,.module-nav span,.portfolio-card,.source-button div,.source-button>b,.sidebar-foot>p{display:none}.module-nav{justify-content:center;width:46px;padding:12px}.module-nav b{font-size:16px}.source-button{place-items:center;width:42px;height:42px;padding:0;display:grid}.two-one-grid,.one-two-grid{grid-template-columns:1fr}.room-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:760px){.ops-shell{display:block}.ops-sidebar{flex-direction:row;justify-content:space-between;align-items:center;height:auto;padding:13px 16px;position:static}.brand{padding:0}.brand div{display:grid}.ops-sidebar nav,.sidebar-foot{display:none}.ops-workspace{padding:22px 14px 32px}.ops-topbar{display:grid}.top-actions{flex-wrap:wrap}.mobile-modules{background:#e7eae4;border-radius:11px;gap:4px;margin-bottom:13px;padding:4px;display:flex;overflow-x:auto}.mobile-modules button{color:#77827f;background:0 0;border:0;border-radius:8px;flex:1;min-width:60px;padding:8px;font-size:8px}.mobile-modules button.active{color:#fff;background:var(--navy)}.long-kpis,.hostel-kpis,.event-kpis,.marketing-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.room-grid{grid-template-columns:repeat(2,1fr)}.profile-columns,.scorecard-grid,.efficiency-grid{grid-template-columns:1fr}.calendar-day,.calendar-grid>.empty{min-height:55px;padding:5px}.calendar-day small{display:none}.form-grid{grid-template-columns:1fr}footer{display:grid}}@media (max-width:430px){.long-kpis,.hostel-kpis,.event-kpis,.marketing-kpis{grid-template-columns:1fr}.top-actions .range-control{width:100%}.range-control button,.primary-action,.ghost-action{flex:1}.chart-legend{flex-wrap:wrap}.chart-legend strong{width:100%;margin-left:0}.funnel-insights{gap:6px;display:grid}}.module-nav{text-decoration:none}.weekly-mobile-nav a{white-space:nowrap;background:var(--card);border:1px solid var(--line);color:var(--ink);border-radius:20px;padding:9px 12px;font-size:12px;text-decoration:none}.finance-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-profit{background:#e9f6ed;border-color:#bddbc7}.finance-main{grid-template-columns:1fr 1.1fr;align-items:start;margin-bottom:18px}.finance-pnl{margin-top:20px}.finance-pnl>div{border-bottom:1px solid var(--line);color:#617267;justify-content:space-between;gap:20px;padding:9px 0;font-size:12px;display:flex}.finance-pnl strong{color:var(--ink);font-variant-numeric:tabular-nums}.finance-pnl .finance-total{border:0;padding:18px 0 4px;font-size:15px;font-weight:700}.finance-right{gap:18px;min-width:0;display:grid}.finance-trend-wrap{overflow:auto}.finance-trend{grid-template-columns:repeat(12,minmax(0,1fr));gap:7px;min-width:390px;margin:24px 0 8px;display:grid}.finance-trend>div{flex-direction:column;align-items:center;gap:10px;display:flex}.finance-trend strong,.finance-trend small{white-space:nowrap;color:#64796b;font-size:9px}.finance-trend>div>div{border-bottom:1px solid var(--line);justify-content:center;align-items:flex-end;width:100%;height:130px;display:flex}.finance-trend i{background:var(--mint);border-radius:5px 5px 0 0;width:70%;max-width:32px;display:block}.finance-trend i.negative{background:var(--coral)}.finance-trend i.missing{background:#dce3da}.finance-review ul{margin-bottom:0;padding-left:19px}.finance-review li,.finance-review>p{color:#6b785d;margin:10px 0;font-size:12px;line-height:1.8}.finance-section{margin-bottom:18px}.finance-empty{color:var(--muted);text-align:center;padding:32px 10px;font-size:12px}.finance-filter{color:var(--muted);font-size:12px}.finance-filter select{background:var(--paper);border:1px solid var(--line);border-radius:7px;margin-left:6px;padding:7px}.finance-source-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0;display:grid}.finance-source-grid h2{margin:12px 0;font-size:17px}.finance-source-grid p{color:var(--muted);min-height:68px;font-size:12px;line-height:1.9}.finance-link{color:var(--mint-d);margin-top:14px;font-size:12px;text-decoration:none;display:block}.finance-link.secondary{color:var(--muted);font-size:11px}.finance-section a{color:var(--mint-d)}@media (max-width:1200px){.finance-main{grid-template-columns:1fr}}@media (max-width:800px){.finance-source-grid{grid-template-columns:1fr}.finance-source-grid p{min-height:0}.finance-filter{margin-top:12px}.finance-section .panel-heading{flex-wrap:wrap}.finance-shell .finance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.finance-weekly-entry{background:#eaf3e9;border:1px solid #d4e3d7;border-radius:12px;margin-bottom:18px;padding:14px 18px}.finance-weekly-entry a{color:var(--mint-d);font-size:13px;font-weight:700;text-decoration:none}.finance-weekly-entry span{margin-left:16px;font-size:11px;font-weight:400}.update-actions>a{text-decoration:none}@media (max-width:600px){.finance-weekly-entry span{margin:8px 0 0;display:block}}.finance-right{grid-template-columns:minmax(0,1fr)}.finance-right>.panel{min-width:0}.finance-trend-wrap{max-width:100%}.workspace-primary-nav{gap:8px;display:grid}.workspace-primary{color:#b1c2bd;background:#1b312e;border:1px solid #304b47;border-radius:11px;align-items:center;gap:11px;padding:15px 13px;font-size:14px;font-weight:700;text-decoration:none;display:flex}.workspace-primary b{text-align:center;width:18px;font-size:16px}.workspace-primary.active{color:#183e32;background:#d5f0e4;border-color:#d5f0e4}.workspace-primary:hover{border-color:#8fb9a8}.workspace-subnavigation{border-left:1px solid #344c46;margin:20px 0 0 12px;padding-left:8px}.workspace-subnavigation .nav-caption{margin:0 12px 8px}.workspace-subnavigation .module-nav{padding:11px 12px;font-size:12px}.workspace-mobile-navigation{display:none}.source-button{text-decoration:none}@media (max-width:800px){.workspace-mobile-navigation{margin-bottom:24px;display:block}.workspace-mobile-navigation .workspace-primary-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.workspace-mobile-navigation .workspace-primary{color:var(--mint-d);background:var(--card);border-color:var(--line);justify-content:center;padding:12px 7px;font-size:13px}.workspace-mobile-navigation .workspace-primary.active{background:var(--navy);color:#fff;border-color:var(--navy)}.workspace-data-tabs{border-bottom:1px solid var(--line);gap:22px;margin-top:10px;display:flex}.workspace-data-tabs a{color:var(--muted);border-bottom:2px solid #0000;padding:12px 2px;font-size:12px;text-decoration:none}.workspace-data-tabs a.selected{color:var(--mint-d);border-color:var(--mint-d);font-weight:700}}.template-provenance{background:#edf4e9;border:1px solid #d9e5da;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;padding:17px 20px;display:flex}.template-provenance strong{margin:8px 0;font-size:15px;display:block}.template-provenance p{color:var(--muted);margin:0;font-size:11px;line-height:1.8}.template-provenance>div:last-child{flex-wrap:wrap;gap:18px;display:flex}.template-provenance a{color:var(--mint-d);white-space:nowrap;font-size:12px;text-decoration:none}.template-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.template-kpis .kpi-card>strong{margin:16px 0 12px;font-size:27px}.template-kpis .kpi-card p{margin:11px 0 0;font-size:11px;line-height:1.7}.template-delta{color:var(--mint-d);font-size:11px}.template-report-grid{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);align-items:start;gap:18px;margin-bottom:18px;display:grid}.template-report-grid>.panel,.template-cash-grid>.panel{min-width:0}.template-table-wrap{margin-top:20px;overflow:auto}.template-table-wrap table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%;font-size:12px}.template-table-wrap thead th{color:#617166;background:#edf1e8;padding:12px 10px;font-weight:600}.template-table-wrap td,.template-table-wrap tbody th{border-bottom:1px solid var(--line);padding:11px 10px;font-weight:400;line-height:1.6}.template-table-wrap tbody th{text-align:left}.template-table-wrap td{font-variant-numeric:tabular-nums}.template-table-wrap .template-group th{letter-spacing:.08em;color:#6a7c6b;background:#f5f6ef;padding:9px 10px;font-size:11px;font-weight:700}.template-table-wrap .template-subtotal th,.template-table-wrap .template-subtotal td{background:#f6f8f0;font-weight:700}.template-table-wrap .template-subtotal.highlight th,.template-table-wrap .template-subtotal.highlight td{color:#285a44;background:#e7f3e8}.source-cell{color:#82917c;background:#f0f3ea;border-radius:4px;padding:3px 5px;font-size:10px}.amount-cell input{text-align:right;background:#fff;border:1px solid #a6c7af;border-radius:6px;width:110px;max-width:100%;padding:7px}.template-ratios{margin-top:20px}.template-ratios>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding:14px 0;display:flex}.template-ratios span{color:#687a6c;font-size:11px;line-height:1.7}.template-ratios strong{white-space:nowrap;font-size:19px}.template-checks ul{margin:12px 0 0;padding-left:18px}.template-checks li{color:#6e785e;margin:11px 0;font-size:12px;line-height:1.9}.template-check-result{color:var(--mint-d);background:#eff6e9;border-radius:9px;margin-top:18px;padding:13px;font-size:12px;line-height:1.9}.template-cash-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-bottom:20px;display:grid}.template-cash-total{background:#f7f4e6;border-radius:11px;flex-direction:column;gap:10px;margin-top:22px;padding:20px;display:flex}.template-cash-total>span,.template-cash-total small{color:#7c795e;font-size:11px}.template-cash-total strong{font-size:27px}.template-footer-link a{color:var(--mint-d);font-size:11px;text-decoration:none}@media (max-width:1200px){.template-report-grid{grid-template-columns:1fr}.template-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.template-report-grid>.finance-right{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (max-width:800px){.template-provenance{flex-direction:column;align-items:flex-start;gap:14px}.template-cash-grid,.template-report-grid>.finance-right{grid-template-columns:1fr}.template-kpis{gap:10px}.template-kpis .kpi-card{padding:17px 13px}.template-kpis .kpi-card>strong{font-size:23px}.template-kpis .kpi-label{font-size:12px}.template-shell .panel-heading{flex-wrap:wrap;gap:12px}.template-shell .panel-heading h2{font-size:18px}}.monthly-visual-shell .ops-workspace{max-width:1720px;padding:30px 32px}.monthly-visual-shell .ops-topbar{align-items:center;margin-bottom:22px}.monthly-visual-shell .eyebrow{letter-spacing:.16em;margin-bottom:10px;font-size:9px}.monthly-visual-shell h1{letter-spacing:-.045em;margin-bottom:9px;font-size:32px}.title-dot{color:#5a9a7e;margin-left:3px}.monthly-visual-shell .subtitle{font-size:12px;line-height:1.7}.monthly-visual-shell .primary-action,.monthly-visual-shell .ghost-action{white-space:nowrap;padding:11px 14px;font-size:11px}.monthly-visual-shell .panel{min-width:0;box-shadow:none;border-radius:18px;padding:23px 24px}.monthly-visual-shell .visual-toolbar{background:0 0;border-bottom:1px solid #dde3d9;border-radius:0;margin-bottom:22px;padding:0 0 18px}.visual-toolbar-right{align-items:center;gap:20px;display:flex}.visual-status{color:#91733d;align-items:center;gap:7px;font-size:10px;display:flex}.visual-status i{background:#d5a651;border-radius:50%;width:6px;height:6px}.text-action{color:#5c7265;background:0 0;border:0;padding:8px 0;font-size:11px}.business-verdict{isolation:isolate;color:#f7f9f2;background:#203a32;border-radius:20px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:center;gap:35px;margin-bottom:20px;padding:28px 30px;display:grid;position:relative;overflow:hidden}.business-verdict:before{content:"";z-index:-1;background:linear-gradient(110deg,#0000 55%,#45695335),repeating-linear-gradient(90deg,#0000,#0000 79px,#b5ccb008 80px);position:absolute;inset:0}.hero-eyebrow{letter-spacing:.16em;color:#aac7b0;font-size:9px}.verdict-copy h2{letter-spacing:-.03em;margin:13px 0 10px;font-size:23px;font-weight:600;line-height:1.45}.verdict-copy p{color:#b9ccc0;max-width:500px;margin:0;font-size:11px;line-height:1.9}.verdict-copy p strong{color:#f4d19b;font-weight:500}.retention-visual{border-left:1px solid #b3c8b32e;padding-left:30px}.retention-visual>span{color:#b5c9bc;font-size:10px}.retention-numbers{gap:38px;margin-top:13px;display:flex}.retention-numbers strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:31px;font-weight:500}.retention-numbers strong small{color:#adc7b4;margin-left:5px;font-size:10px}.retention-numbers p{color:#adc7b4;margin:5px 0 13px;font-size:10px}.retention-strip{background:#60776a;border-radius:4px;height:7px;display:flex;overflow:hidden}.retention-strip i{background:#a9d4ab}.retention-strip b{background:#d7c49d}.retention-labels{color:#aac4b2;gap:12px;margin-top:9px;font-size:8px;display:flex}.retention-labels span:nth-child(2){color:#d7c49d}.retention-labels span:nth-child(3){color:#8fa397}.visual-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.visual-kpi{background:#fffefa;border:1px solid #e0e6da;border-radius:16px;min-width:0;padding:19px 19px 16px}.visual-kpi.net{background:#e8efe2;border-color:#dbe6d4}.visual-kpi-top{color:#647466;justify-content:space-between;align-items:center;font-size:11px;display:flex}.visual-kpi-top>b{letter-spacing:.1em;color:#b6bfb1;font-size:10px;font-weight:400}.visual-kpi>strong{letter-spacing:-.045em;font-variant-numeric:tabular-nums;margin:15px 0 12px;font-size:clamp(21px,1.95vw,30px);font-weight:600;display:block}.visual-kpi-delta{align-items:center;gap:8px;font-size:10px;display:flex}.visual-kpi-delta>b{font-weight:500}.visual-kpi-delta>span{color:#8a9489;font-size:9px}.positive-text{color:#397f69}.negative-text{color:#b96c4e}.muted{color:#9ba393}.kpi-comparison{border-top:1px solid #e6eade;gap:5px;margin-top:18px;padding-top:12px;display:grid}.kpi-comparison>div{color:#8a9687;grid-template-columns:23px 1fr 65px;align-items:center;gap:7px;font-size:8px;display:grid}.kpi-comparison i{background:#e9ede4;border-radius:3px;height:4px;display:block;overflow:hidden}.kpi-comparison b{background:#c9d1bf;border-radius:3px;height:100%;display:block}.kpi-comparison>div:last-child b{background:#64977a}.kpi-comparison em{text-align:right;font-variant-numeric:tabular-nums;font-style:normal}.visual-grid{align-items:stretch;gap:20px;margin-bottom:20px;display:grid}.visual-main-grid{grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr)}.visual-equal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.visual-chart-heading{justify-content:space-between;align-items:start;gap:14px;display:flex}.visual-chart-heading .panel-kicker{letter-spacing:.14em;color:#95a08f;margin-bottom:9px;font-size:8px}.visual-chart-heading h2{letter-spacing:-.02em;font-size:18px;font-weight:600;line-height:1.4}.visual-chart-heading p{color:#8a9484;margin:7px 0 0;font-size:10px;line-height:1.8}.visual-tag{white-space:nowrap;color:#6d7a64;background:#edf2e8;border:1px solid #e2e9da;border-radius:6px;padding:6px 8px;font-size:9px}.visual-tag.warn{color:#96713a;background:#fbf0db;border-color:#f0e4c8}.chart-scroll-hint{display:none}.waterfall-chart-scroll{max-width:100%}.profit-waterfall{width:100%;height:auto;margin:22px 0 0;display:block;overflow:visible}.chart-axis{fill:#a0aa99;font-size:9px}.chart-value{fill:#53634f;font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.chart-category{fill:#6c7865;font-size:10px}.waterfall-summary{border-top:1px solid #e6eade;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:4px;padding-top:17px;display:grid}.waterfall-summary>div{flex-direction:column;gap:9px;display:flex}.waterfall-summary>div+div{border-left:1px solid #e6eade;padding-left:16px}.waterfall-summary span{color:#8a9680;font-size:9px}.waterfall-summary strong{letter-spacing:-.03em;color:#426d4e;font-size:22px;font-weight:500}.chart-footnote{color:#8e9987;margin:17px 0 0;font-size:9px;line-height:1.9}.chart-empty{color:#8e9987;place-items:center;min-height:230px;font-size:12px;display:grid}.chart-tabs{background:#f0f2e9;border:1px solid #e6eadd;border-radius:8px;gap:3px;margin-top:17px;padding:3px;display:inline-flex}.chart-tabs button{color:#8a957f;white-space:nowrap;background:0 0;border:0;border-radius:5px;padding:6px 11px;font-size:10px}.chart-tabs button.selected{color:#3c684c;background:#fffefa;font-weight:600;box-shadow:0 1px 4px #526d4212}:is(.chart-tabs button:focus-visible,.donut-legend button:focus-visible){outline-offset:3px;outline:2px solid #609d83}.donut-visual{width:100%;max-width:235px;margin:-2px auto -1px}.donut-visual svg{width:100%;display:block}.donut-visual circle{transition:opacity .2s,stroke-width .2s}.donut-center-label{fill:#8a957e;font-size:10px}.donut-center-value{letter-spacing:-.03em;fill:#344f3b;font-size:27px;font-weight:500}.donut-center-unit{fill:#95a087;font-size:9px}.donut-legend{gap:2px;display:grid}.donut-legend button{text-align:left;color:#617158;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:minmax(0,1fr) auto 49px;align-items:center;gap:9px;width:100%;padding:8px 4px;font-size:10px;display:grid}.donut-legend button.selected{background:#f1f6ec;border-color:#d6e3d0}.donut-legend button:hover{background:#f1f5ec}.donut-legend button>span{align-items:center;gap:7px;display:flex}.donut-legend i{border-radius:2px;flex-shrink:0;width:7px;height:7px;display:inline-block}.donut-legend strong{font-size:10px;font-weight:500}.donut-legend small{text-align:right;color:#9aa58e;font-size:9px}.structure-panel .chart-footnote{margin-top:9px}.driver-chart{margin-top:22px}.driver-direction{color:#a5ad9a;justify-content:space-between;margin:0 100px 7px 97px;font-size:8px;display:flex}.driver-row{grid-template-columns:93px minmax(0,1fr) 100px;align-items:center;gap:8px;min-height:40px;display:grid}.driver-row>span{color:#708065;font-size:10px}.driver-row>strong{text-align:right;font-variant-numeric:tabular-nums;font-size:10px;font-weight:500}.driver-track{height:17px;position:relative}.driver-track .driver-zero{background:#e1e8d9;width:1px;position:absolute;top:-11px;bottom:-11px;left:50%}.driver-track .positive,.driver-track .negative{border-radius:3px;min-width:0;height:100%;position:absolute;top:0}.driver-track .positive{background:#78a68a}.driver-track .negative{background:#dfa384}.driver-row:nth-child(2){border-top:1px dashed #edf0e7}.scenario-columns{width:100%;margin-top:0;display:block}.scenario-gap{border-top:1px solid #e6eade;flex-wrap:wrap;align-items:center;gap:9px;padding-top:15px;display:flex}.scenario-gap span{color:#8a9680;font-size:10px}.scenario-gap strong{color:#62775a;font-size:15px;font-weight:500}.scenario-gap small{color:#9aa58e;width:100%;font-size:9px}.attainment-chart{margin-top:25px}.attainment-row{margin-bottom:22px}.attainment-row>div:first-child{justify-content:space-between;align-items:center;margin-bottom:11px;display:flex}.attainment-row strong{color:#64765a;font-size:11px;font-weight:500}.attainment-row b{font-variant-numeric:tabular-nums;font-size:16px;font-weight:500}.bullet-track{background:#edf0e6;border-radius:3px;height:10px;position:relative}.bullet-track>i{border-radius:3px;max-width:100%;height:100%;display:block}.bullet-track>b{background:#53694a;width:2px;height:20px;display:block;position:absolute;top:-5px}.attainment-row>p{color:#97a089;justify-content:space-between;gap:6px;margin:9px 0 0;font-size:8px;line-height:1.6;display:flex}.attainment-row>p>span{white-space:nowrap}.missing-metrics{border-top:1px solid #e6eade;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:14px;display:flex}.missing-metrics>span{color:#9a9d87;background:#f3f4ec;border-radius:5px;gap:9px;padding:7px 9px;font-size:9px;display:flex}.missing-metrics b{color:#777e64;font-weight:400}.cash-visual-panel{background:#fbf9f1!important;border-color:#e9e3d3!important}.cash-snapshot-value{flex-direction:column;gap:8px;margin:25px 0 22px;display:flex}.cash-snapshot-value strong{color:#897348;letter-spacing:-.04em;font-size:29px;font-weight:500}.cash-snapshot-value span{color:#ac9d7c;font-size:9px}.monthly-cash-bars{gap:15px;display:grid}.monthly-cash-bars>div{grid-template-columns:76px minmax(0,1fr) 91px;align-items:center;gap:12px;display:grid}.monthly-cash-bars>div>span{color:#8f8d74;font-size:10px}.monthly-cash-bars strong{text-align:right;color:#8e805f;font-size:10px;font-weight:500}.cash-bar-track{background:#eee9db;border-radius:3px;height:8px;overflow:hidden}.cash-bar-track i{border-radius:3px;height:100%;display:block}.cash-visual-panel .chart-footnote{color:#a99c7d;margin-top:22px}.cash-visual-panel .finance-link{color:#9f8958;margin-top:10px;font-size:10px}.visual-detail-intro{justify-content:space-between;align-items:center;gap:18px;margin:33px 0 18px;display:flex}.visual-detail-intro .panel-kicker{color:#99a38e;margin-bottom:8px;font-size:8px}.visual-detail-intro h2{margin:0;font-size:18px;font-weight:500}.visual-detail-intro>span{color:#9da58f;font-size:9px}.monthly-visual-shell .visual-disclosure{margin-bottom:12px;padding:0;scroll-margin-top:25px}.visual-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:21px 23px;list-style:none;display:flex}.visual-disclosure>summary::-webkit-details-marker{display:none}.visual-disclosure summary>div{align-items:center;gap:15px;display:flex}.visual-disclosure summary strong{font-size:12px;font-weight:500}.visual-disclosure summary small,.visual-disclosure summary>span{color:#9aa58b;font-size:10px}.disclosure-icon{color:#7e9671;font-size:18px}.visual-disclosure[open]>summary{border-bottom:1px solid #e6eade}.disclosure-body{padding:22px 24px}.visual-edit-banner{background:#ecf3e5;border:1px solid #dbe8cf;border-radius:9px;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.visual-edit-banner strong{font-size:12px}.visual-edit-banner p{color:#839375;margin:7px 0 0;font-size:10px;line-height:1.8}.source-review-grid{grid-template-columns:1fr 1fr;gap:40px;display:grid}.source-review-grid h3{margin:0 0 12px;font-size:13px}.source-review-grid p,.source-review-grid li{color:#86917a;font-size:11px;line-height:1.9}.source-review-grid ul{padding-left:17px}.source-review-grid li{margin-bottom:11px}.source-review-links{flex-wrap:wrap;gap:20px;display:flex}.source-review-links a{color:#5c865f;font-size:11px;text-decoration:none}.source-reconciliation{background:#f1f5e9;border-radius:8px;margin:20px 0;padding:15px}.source-reconciliation strong{color:#658359;font-size:11px}.source-reconciliation p{margin:8px 0 0}.review-ratios p{justify-content:space-between;margin-bottom:8px;display:flex}.review-ratios strong{font-weight:500}.review-ratios small{color:#9aa58b;font-size:10px;line-height:1.8}.visual-loading{text-align:center;min-height:300px;padding-top:85px!important}.visual-loading h2{margin:18px 0 10px}.visual-loading p{color:#8e9987;font-size:12px}.visual-loading-dot{border:2px solid #dce6d3;border-top-color:#609d83;border-radius:50%;width:16px;height:16px;margin:auto;animation:1s linear infinite monthly-spin;display:block}@keyframes monthly-spin{to{transform:rotate(360deg)}}@media (min-width:1700px){.monthly-visual-shell .ops-workspace{padding:38px 45px}.visual-kpi>strong{font-size:32px}.verdict-copy h2{font-size:27px}.profit-waterfall{max-height:320px}.donut-visual{max-width:255px}}@media (max-width:1200px){.monthly-visual-shell .ops-workspace{padding:26px 24px}.visual-main-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,1fr)}.monthly-visual-shell .panel{padding:20px}.business-verdict{gap:20px;padding:25px}.verdict-copy h2{font-size:20px}.visual-kpis{gap:10px}.visual-kpi{padding:16px 13px}.visual-kpi>strong{font-size:23px}.visual-chart-heading h2{font-size:17px}.visual-chart-heading{flex-wrap:wrap;gap:10px}.driver-row{grid-template-columns:78px minmax(0,1fr) 87px;gap:5px}.driver-direction{margin-left:83px;margin-right:87px}.monthly-cash-bars>div{grid-template-columns:68px minmax(0,1fr) 80px;gap:8px}.retention-numbers{gap:25px}}@media (max-width:1000px) and (min-width:801px){.visual-main-grid{grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr)}.visual-equal-grid{grid-template-columns:1fr 1fr}.visual-kpi>strong{font-size:21px}.kpi-comparison>div{grid-template-columns:20px 1fr 57px;gap:4px}.visual-tag{font-size:8px}.driver-row{grid-template-columns:68px minmax(0,1fr) 78px}.driver-row>strong,.driver-row>span{font-size:9px}.driver-direction{margin-left:73px;margin-right:78px}.donut-legend button{grid-template-columns:minmax(0,1fr) auto 42px;gap:4px;font-size:9px}.donut-legend strong{font-size:9px}}@media (max-width:800px){.monthly-visual-shell{display:block}.monthly-visual-shell .ops-workspace{padding:22px 16px}.monthly-visual-shell .ops-topbar{gap:20px}.monthly-visual-shell h1{font-size:29px}.monthly-visual-shell .ops-topbar .top-actions{width:100%}.monthly-visual-shell .subtitle{font-size:11px}.monthly-visual-shell .visual-toolbar{gap:13px}.visual-toolbar-right{justify-content:space-between;width:100%}.business-verdict{grid-template-columns:1fr;gap:23px;padding:23px}.verdict-copy h2{font-size:22px}.retention-visual{border-top:1px solid #b3c8b32e;border-left:0;padding:18px 0 0}.retention-numbers{gap:45px}.retention-numbers strong{font-size:30px}.visual-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.visual-kpi{padding:16px 13px}.visual-kpi>strong{font-size:23px}.visual-main-grid,.visual-equal-grid{grid-template-columns:1fr}.visual-grid{gap:16px;margin-bottom:16px}.monthly-visual-shell .panel{padding:21px 19px}.visual-chart-heading h2{font-size:18px}.profit-waterfall{min-width:540px;margin-top:21px}.waterfall-chart-scroll{overscroll-behavior-x:contain;overflow-x:auto}.chart-scroll-hint{color:#93a084;text-align:right;margin:2px 0 14px;font-size:9px;display:block}.waterfall-summary{min-width:0}.waterfall-summary span{font-size:8px}.waterfall-summary strong{font-size:20px}.waterfall-summary>div+div{padding-left:10px}.waterfall-panel .chart-footnote{max-width:calc(100vw - 76px)}.donut-visual{max-width:230px}.donut-legend{max-width:420px;margin:auto}.donut-legend button{padding:10px 6px}.driver-row{grid-template-columns:82px minmax(0,1fr) 91px}.driver-direction{margin-left:87px;margin-right:91px}.monthly-cash-bars>div{grid-template-columns:72px minmax(0,1fr) 85px}.visual-detail-intro{flex-direction:column;align-items:start;gap:11px}.visual-detail-intro h2{font-size:17px}.monthly-visual-shell .visual-disclosure{padding:0}.visual-disclosure>summary{gap:8px;padding:19px 17px}.visual-disclosure summary>div{flex-wrap:wrap;gap:10px}.visual-disclosure summary small{display:none}.visual-disclosure summary>span{white-space:nowrap;font-size:8px}.disclosure-body{padding:20px 16px}.source-review-grid{grid-template-columns:1fr;gap:24px}.visual-edit-banner{flex-direction:column;align-items:start}.visual-edit-banner .top-actions{width:100%}.monthly-visual-shell footer{font-size:9px;line-height:1.8}}@media (prefers-reduced-motion:reduce){.donut-visual circle{transition:none}.visual-loading-dot{animation:none}}.site-access-strip{color:#4d6247;background:#edf1e5;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 18px;min-height:35px;padding:8px 30px;font-size:12px;display:flex}.site-access-strip a{color:#23694d;font-weight:600;text-decoration:underline}@media (max-width:800px){.site-access-strip{justify-content:space-between;padding:9px 16px;font-size:11px}}.site-access-strip button{color:#4d6247;font:inherit;cursor:pointer;background:0 0;border:0;text-decoration:underline}.auth-shell{color:#263a2e;background:#f8f5ef;grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-story{color:#fff8e9;background:#173f32;flex-direction:column;justify-content:space-between;padding:54px 60px;display:flex;position:relative;overflow:hidden}.auth-story:after{content:"";pointer-events:none;border:1px solid #d9edc51a;border-radius:50%;width:450px;height:450px;position:absolute;bottom:-150px;right:-230px;box-shadow:0 0 0 70px #d9edc506,0 0 0 140px #d9edc504}.auth-brand{color:#fff8e9;align-items:center;gap:13px;font-size:25px;font-weight:700;text-decoration:none;display:flex}.auth-brand>span{color:#173f32;background:#c8e5ca;border-radius:12px;place-items:center;width:46px;height:46px;display:grid}.auth-story>div>p{color:#b9d3b0;letter-spacing:.14em;font-size:11px}.auth-story h1{letter-spacing:-.035em;margin:24px 0;font-size:34px;font-weight:500;line-height:1.7}.auth-story>div>span{color:#b9d3b0;font-size:12px;line-height:1.9}.auth-story footer{color:#b9d3b0;font-size:11px}.auth-entry{flex-direction:column;justify-content:center;align-items:center;padding:54px 40px;display:flex;position:relative}.auth-form-wrap{width:100%;max-width:355px}.auth-kicker{color:#be7753;letter-spacing:.17em;font-size:10px}.auth-entry h2{letter-spacing:-.04em;margin:13px 0;font-size:28px;font-weight:500}.auth-subtitle{color:#7d8878;margin-bottom:31px;font-size:12px}.auth-entry form,.account-create form{gap:20px;display:grid}.auth-entry label,.account-create label{color:#5d7258;gap:9px;font-size:12px;display:grid}.auth-entry input,.account-create input{color:#263a2e;outline-offset:3px;background:#fffefa;border:1px solid #dce2d4;border-radius:7px;width:100%;padding:13px 14px;font-size:14px}.auth-entry input:focus,.account-create input:focus{outline:2px solid #528468}.auth-submit{color:#fffaf0;cursor:pointer;background:#245e43;border:1px solid #245e43;border-radius:7px;padding:13px 18px;font-size:13px}.auth-submit:disabled{opacity:.6;cursor:wait}.auth-error{color:#be4434;margin:0;font-size:12px;line-height:1.7}.auth-role-hint{color:#718168;border-bottom:1px solid #e4e8dd;flex-wrap:wrap;gap:12px 20px;margin:25px 0;padding-bottom:21px;font-size:10px;display:flex}.auth-role-hint span{align-items:center;gap:7px;display:flex}.auth-role-hint i{background:#6b9675;border-radius:50%;width:5px;height:5px}.auth-role-hint span+span i{background:#d7aa69}.auth-help{color:#8b9583;font-size:10px}.auth-entry-foot{color:#9ca58e;letter-spacing:.1em;font-size:9px;position:absolute;bottom:33px}.account-shell{color:#354b36;background:#f7f4ed;min-height:calc(100vh - 35px);padding:40px max(25px,50% - 500px)}.account-back{color:#55784a;font-size:12px;text-decoration:none}.account-shell header{margin:30px 0}.account-shell header>p{color:#8d9a7e;letter-spacing:.1em;font-size:10px}.account-shell h1{font-size:30px;font-weight:500}.account-shell header>span,.account-create p{color:#7f8e72;font-size:12px}.account-shell h2{font-size:17px;font-weight:500}.account-create{background:#fffefa;border:1px solid #e0e5d5;border-radius:10px;margin:25px 0;padding:23px}.account-create form{grid-template-columns:1fr 1fr auto;align-items:end;margin-top:20px}.account-create .auth-submit{white-space:nowrap}.account-list{padding-top:12px}.account-row{border-bottom:1px solid #e0e5d5;flex-wrap:wrap;align-items:center;gap:25px;padding:20px 0;font-size:12px;display:flex}.account-row>strong{min-width:110px;font-size:15px}.account-row>span{min-width:100px}.account-row>button{color:#687d56;cursor:pointer;background:0 0;border:1px solid #d6dfcc;border-radius:5px;padding:6px 10px;font-size:11px}.account-active{color:#438558}.account-disabled{color:#b48a5c}@media (max-width:800px){.auth-story{padding:36px}.auth-story h1{font-size:27px}.auth-entry{padding:36px 25px}}@media (max-width:600px){.auth-shell{grid-template-columns:1fr}.auth-story{gap:28px;min-height:230px;padding:28px}.auth-story h1{margin:12px 0;font-size:22px;line-height:1.6}.auth-story>div>p,.auth-story footer,.auth-story>div>span{display:none}.auth-brand{font-size:22px}.auth-brand>span{width:38px;height:38px}.auth-entry{padding:33px 28px 70px}.auth-entry h2{font-size:25px}.auth-entry-foot{font-size:8px;bottom:25px}.auth-entry input,.account-create input{font-size:16px}.account-shell{padding:28px 20px}.account-create{padding:20px}.account-create form{grid-template-columns:1fr}.account-row{gap:13px}.account-row>strong{min-width:75px}.account-row>span{min-width:80px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
