:root{--ink:#17323a;--deep:#092f3a;--green:#267661;--green-soft:#e8f1ed;--aqua:#0a9faf;--navy:#486f7e;--sand:#b88a52;--coral:#c86c5e;--paper:#f5f6f2;--white:#fff;--line:#d8dfdc;--muted:#748286;--shadow:0 18px 48px #15323a1f;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:22px;--text-2xl:28px;--text-3xl:36px;--ui-zoom:1.16}*{box-sizing:border-box}html{background:var(--paper);zoom:var(--ui-zoom)}body{color:var(--ink);background:var(--paper);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit}button{color:inherit}.app-shell{min-height:calc(100vh / var(--ui-zoom));grid-template-columns:280px 1fr;display:grid}.sidebar{width:280px;height:calc(100vh / var(--ui-zoom));z-index:60;background:var(--deep);flex-direction:column;padding:24px 20px;display:flex;position:fixed;top:0;left:0;overflow:hidden auto}.brand,.sidebar nav button,.sidebar nav a,.phase-card,.sidebar-foot,.sidebar-signout{width:100%}.brand{align-items:center;gap:16px;padding-bottom:8px;display:flex}.brand-mark{color:#fff;background:var(--green);letter-spacing:.05em;border-radius:12px;flex-shrink:0;place-items:center;width:46px;height:46px;font-size:16px;font-weight:800;display:grid}.brand div,.sidebar-foot div{flex-direction:column;gap:4px;display:flex}.brand strong{color:#fff;font-size:18px}.brand small,.sidebar-foot small{color:#9eb6b1;font-size:12px}.nav-label{color:#769791;letter-spacing:.15em;margin:30px 10px 12px;font-size:12px;font-weight:800}.sidebar nav{flex-direction:column;gap:6px;display:flex}.sidebar nav button,.sidebar nav a{color:#adc4bf;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:16px;width:100%;padding:12px 14px;text-decoration:none;transition:all .2s;display:flex}.sidebar nav button:hover,.sidebar nav button.active,.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:#ffffff0f}.nav-mark{text-align:center;flex-shrink:0;width:24px;font-weight:700}.nav-copy{flex-direction:column;gap:4px;display:flex}.nav-copy b{font-size:15px}.nav-copy small{color:#789b94;text-transform:uppercase;letter-spacing:.1em;font-size:11px}.phase-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;margin-top:auto;padding:16px}.phase-card small{color:#6faaa0;letter-spacing:.12em;font-size:10px;font-weight:800}.phase-card strong{color:#fff;margin-top:8px;font-family:Georgia,serif;font-size:20px;font-weight:500;display:block}.phase-card div{background:#ffffff1f;border-radius:20px;height:4px;margin:12px 0 10px;overflow:hidden}.phase-card i{background:#72b8a7;height:100%;display:block}.phase-card p{color:#9cb9b3;margin:0;font-size:11px;line-height:1.4}.sidebar-foot{border-top:1px solid #ffffff1a;align-items:center;gap:14px;margin-top:24px;padding:16px 8px 0;display:flex}.sidebar-foot>span{width:36px;height:36px;color:var(--deep);background:#dcece6;border-radius:50%;flex-shrink:0;place-items:center;font-size:13px;font-weight:800;display:grid}.sidebar-foot strong{color:#fff;font-size:14px}.sidebar-signout{color:#cfe0db;cursor:pointer;background:0 0;border:1px solid #ffffff29;border-radius:9px;width:100%;margin-top:16px;padding:12px;font-size:13px;font-weight:700;transition:all .2s}.sidebar-signout:hover{color:#fff;background:#ffffff0d;border-color:#ffffff59}@media (max-height:1000px){.phase-card{display:none}.sidebar-foot{margin-top:auto}}@media (max-height:870px){.sidebar .nav-copy small{display:none}.sidebar nav button,.sidebar nav a{padding:8px 12px}.sidebar nav{gap:4px}.sidebar .nav-label,.sidebar .brand small{display:none}.sidebar .brand{padding-bottom:8px}}main{grid-column:2;min-width:0}.topbar{z-index:40;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd6;justify-content:space-between;align-items:center;height:86px;padding:0 32px;display:flex;top:0}.topbar h1{color:var(--deep);margin:3px 0 0;font-family:Georgia,serif;font-size:27px;font-weight:500}.content{padding:32px}.intro{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:28px;display:flex}.intro h2{max-width:850px;color:var(--deep);margin:12px 0 7px;font-family:Georgia,serif;font-size:37px;font-weight:500;line-height:1.08}.intro p{max-width:850px;color:var(--muted);margin:0;font-size:13px;line-height:1.55}.compact-intro{align-items:center}.eyebrow,.section-kicker{color:var(--green);letter-spacing:.15em;margin:0;font-size:9px;font-weight:800}.primary,.secondary{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;min-height:42px;padding:0 17px;font-size:12px;font-weight:800}.primary{color:#fff;background:var(--green)}.primary:hover{background:#1d6553}.secondary{color:var(--ink);border-color:var(--line);background:#fff}.secondary:hover{border-color:#9db4ad}.compact{min-height:34px;padding:0 12px;font-size:10px}button:disabled{opacity:.55;cursor:wait}.text-button,.link-button,.sort-button{cursor:pointer;background:0 0;border:0;padding:0}.text-button{color:#267c67;font-weight:800}.link-button{color:var(--green);font-size:12px;font-weight:700}.top-button{z-index:80;color:#fff;background:var(--deep);box-shadow:var(--shadow);cursor:pointer;border:0;border-radius:999px;padding:11px 15px;font-size:11px;font-weight:800;position:fixed;bottom:22px;right:22px}.danger{color:#9a3f37;cursor:pointer;background:#fff4f2;border:1px solid #e2b8b3;border-radius:7px;padding:9px 12px;font-size:9px;font-weight:800}.source-pill{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;gap:10px;padding:9px 13px;display:flex}.source-pill>span{background:#35a67d;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #e4f4ed}.source-pill div{flex-direction:column;gap:2px;display:flex}.source-pill small{color:var(--muted);letter-spacing:.12em;font-size:8px;font-weight:800}.source-pill strong{font-size:11px}.detail-tags{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.detail-tags span,.service-chip{color:#fff;white-space:nowrap;background:#1475ad;border-radius:12px;padding:4px 7px;font-size:8px;display:inline-block}.detail-tags span.aqua{background:var(--aqua)}.detail-tags span.warning{color:#8a5d1d;background:#fff0d7}.detail-tags span.bed-tag{color:#4e4a78;background:#eceafa}.gender-pill,.available-badge,.unit-status,.reservation-status{white-space:nowrap;border-radius:12px;padding:5px 8px;font-size:8px;font-weight:800;display:inline-block}.gender-pill.female{color:#9d3f72;background:#fde7f2}.gender-pill.male{color:#235e9b;background:#e5f0fd}.gender-pill.mixed,.gender-pill.unspecified{color:#7c641d;background:#f8efd2}.available-badge.now{color:#1c6b55;background:#dff2e9}.available-badge.upcoming{color:#6652a2;background:#eee9fb}.unit-status.active{color:#1c6b55;background:#dff2e9}.unit-status.return-planned{color:#9d5225;background:#ffe9db}.unit-status.surrendered{color:#7f4b4b;background:#f3e3e3}.reservation-status{color:#276856;background:#e2f2eb}.status-select{border:1px solid #0000;border-radius:7px;height:31px;padding:0 7px;font-size:9px;font-weight:800}.status-select.occupied{color:#1b6752;background:#e2f2eb}.status-select.vacant{color:#21628d;background:#e3f0f8}.status-select.special-use{color:#8e5b1e;background:#f9ecd7}.payment-status{border-radius:12px;padding:5px 8px;font-size:8px;font-weight:800;display:inline-block}.payment-status.unpaid{color:#7a6560;background:#eeeae8}.payment-status.admin-fee{color:#8a5d1d;background:#fff0d7}.payment-status.partial{color:#3d5d94;background:#e7eefb}.payment-status.full{color:#1c6b55;background:#dff2e9}.directory-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.directory-header h1{color:var(--deep);margin:0;font-family:Georgia,serif;font-size:27px;font-weight:500}.directory-header p{color:var(--muted);margin:4px 0 0;font-size:14px}.directory-header-actions{flex-shrink:0;gap:12px;display:flex}.directory-filters{margin-bottom:16px}.directory-filters .inline-filters{max-width:none}.metrics-container{border-radius:12px;flex-direction:row;width:100%;margin-bottom:28px;display:flex;overflow:hidden;box-shadow:0 4px 20px #0000000f}.metric-card{border-top:8px solid;flex:1;align-items:center;gap:20px;min-height:120px;padding:24px 26px;display:flex}.metric-icon{flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.metric-icon svg{width:100%;height:100%}.metric-content{flex-direction:column;justify-content:center;display:flex}.metric-label{color:#829094;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600}.metric-value{color:var(--deep,#0f172a);margin-bottom:4px;font-family:Georgia,serif;font-size:34px;font-weight:500;line-height:1.1}.metric-note{color:#899598;margin:0;font-size:11px}.tone-green{border-top-color:var(--green,#52a26c);background-color:#eaf3ed}.tone-green .metric-icon{color:var(--green,#52a26c)}.tone-navy{border-top-color:var(--navy,#263959);background-color:#e7eaef}.tone-navy .metric-icon{color:var(--navy,#263959)}.tone-sand{border-top-color:var(--sand,#d2ae75);background-color:#f9f4ec}.tone-sand .metric-icon{color:var(--sand,#d2ae75)}.tone-coral{border-top-color:var(--coral,#e37e67);background-color:#fdeee9}.tone-coral .metric-icon{color:var(--coral,#e37e67)}.directory-table-container{width:100%;margin-bottom:32px}.modern-property-table{background:#fff;border:1px solid #e5e7eb;border-radius:12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden;box-shadow:0 4px 6px -1px #0000000d}.mpt-header{color:#6b7280;text-transform:uppercase;letter-spacing:.05em;background:#f9fafb;border-bottom:1px solid #e5e7eb;grid-template-columns:2.5fr 1fr 1fr 1fr 1.5fr 1fr;column-gap:16px;padding:14px 24px;font-size:12px;font-weight:600;display:grid}.mpt-row{cursor:pointer;border-bottom:1px solid #f3f4f6;grid-template-columns:2.5fr 1fr 1fr 1fr 1.5fr 1fr;align-items:center;column-gap:16px;padding:16px 24px;transition:background-color .2s;display:grid}.mpt-row:last-child{border-bottom:none}.mpt-row:hover{background:#f8fafc}.mpt-row.unit-row{background:#fafafa;border-left:4px solid #e5e7eb;padding-left:64px}.mpt-row.unit-row:hover{background:#f3f4f6}.room-filter-row{cursor:default;background:#f8fafc;border-left:4px solid #cbd5e1;align-items:center;padding:12px 24px 12px 96px!important;display:flex!important}.room-filter-row:hover{background:#f8fafc!important}.inline-filters{gap:12px;width:100%;max-width:500px;display:flex}.search-input-wrapper{flex:1;position:relative}.search-icon{color:#9ca3af;width:16px;height:16px;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-input-wrapper input{border:1px solid #d1d5db;border-radius:6px;outline:none;width:100%;padding:6px 12px 6px 32px;font-size:13px;transition:border-color .2s}.search-input-wrapper input:focus,.inline-filters select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.inline-filters select{color:#374151;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;padding:6px 28px 6px 12px;font-size:13px}.mpt-row.room-row{cursor:default;background:#fff;border-left:4px solid #cbd5e1;padding-left:96px}.mpt-row.room-row:hover{background:#fff}.mpt-row.empty-result .mpt-cell{text-align:center;color:#9ca3af;padding:20px 0}.mpt-cell{color:#374151;font-size:14px}.mpt-property{align-items:center;gap:16px;display:flex}.mpt-property img{object-fit:cover;border:1px solid #e5e7eb;border-radius:8px;width:44px;height:44px}.hostel-avatar{color:#166534;letter-spacing:.02em;background:#dcfce7;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:12px;font-weight:700;display:flex}.mpt-header,.mpt-row.hostel-row{grid-template-columns:2.2fr .7fr 1fr .9fr 1.1fr 1fr .8fr 1.5fr}.mpt-cell-stacked{flex-direction:column;gap:2px;display:flex}.mpt-cell-stacked small{color:#9ca3af;font-size:11px}.hostel-action-cell{align-items:center;gap:8px;display:flex}.icon-btn{line-height:1;padding:6px 10px!important}.mpt-property .info{flex-direction:column;gap:2px;display:flex}.mpt-property .info strong{color:#111827;font-size:14px;font-weight:600}.mpt-property .info span{color:#6b7280;font-size:12px}.status-badge{border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.status-badge:before{content:"";border-radius:50%;width:6px;height:6px;display:block}.status-badge.available{color:#0e7490;background:#cffafe}.status-badge.available:before{background:#0e7490}.status-badge.occupied{color:#374151;background:#f3f4f6}.status-badge.occupied:before{background:#4b5563}.status-badge.unavailable{color:#991b1b;background:#fee2e2}.status-badge.unavailable:before{background:#991b1b}.status-badge.partial{color:#92400e;background:#fef3c7}.status-badge.partial:before{background:#d97706}.mpt-row.unit-summary-row{cursor:pointer;background:#fafafa;border-left:4px solid #e5e7eb;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:8px 24px 12px 64px;display:flex!important}.mpt-row.unit-summary-row:hover{background:#f3f4f6}.unit-summary-content{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.unit-summary-count{color:#374151;font-size:13px;font-weight:600}.unit-summary-chip{align-items:center;gap:5px;font-size:12px;font-weight:600;display:inline-flex}.unit-summary-chip:before{content:"";border-radius:50%;width:6px;height:6px;display:block}.unit-summary-chip.available{color:#166534}.unit-summary-chip.available:before{background:#166534}.unit-summary-chip.occupied{color:#4b5563}.unit-summary-chip.occupied:before{background:#4b5563}.unit-summary-chip.unavailable{color:#991b1b}.unit-summary-chip.unavailable:before{background:#991b1b}.unit-summary-available-rooms{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.unit-summary-label{color:#6b7280;font-size:12px}.room-chip-row{flex-wrap:wrap;gap:6px;display:flex}.room-chip{cursor:pointer;border:none;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;transition:transform .1s,filter .1s;display:inline-flex}.room-chip:hover{filter:brightness(.96);transform:translateY(-1px)}.room-chip.available{color:#0e7490;background:#cffafe}.room-chip.unavailable{color:#991b1b;background:#fee2e2}.room-chip.ending-soon{color:#92400e;background:#fef3c7}.occupant-cell{color:#111827;align-items:center;gap:10px;font-size:13px;font-weight:500;display:flex}.occupant-avatar{color:#475569;background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:700;display:flex}.action-cell{justify-content:flex-start;display:flex}.mpt-reserve-btn{border-radius:6px;padding:6px 14px;font-size:12px}.mpt-reserve-btn.disabled{opacity:.6;cursor:not-allowed;color:#9ca3af;background:#f3f4f6;border:1px solid #e5e7eb}.room-overview-backdrop{z-index:90;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#06272f6b;place-items:stretch stretch;padding:22px;display:grid;position:fixed;inset:0;overflow:auto}.room-overview-panel{background:#f7faf9;border:1px solid #dce8e4;border-radius:24px;width:min(1480px,100%);min-height:calc(100vh - 44px);margin:0 auto;overflow:hidden;box-shadow:0 28px 80px #07303738}.room-overview-header{z-index:5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;border-bottom:1px solid #e2ebe8;justify-content:space-between;align-items:flex-start;gap:24px;padding:24px 28px 20px;display:flex;position:sticky;top:0}.room-overview-header small,.room-card-heading small{color:#2f806b;letter-spacing:.12em;margin-top:6px;font-size:.72rem;font-weight:800;display:block}.room-overview-header h2{color:#0b3440;margin:4px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,2.4vw,2.5rem)}.room-overview-header p{color:#708188;margin:0}.room-close{color:#123c45;cursor:pointer;background:#fff;border:1px solid #d6e2de;border-radius:12px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:1.6rem;display:grid}.room-hero-card{background:#fff;border:1px solid #dce7e3;border-radius:20px;grid-template-columns:220px minmax(0,1fr);gap:22px;margin:24px 28px 18px;padding:16px;display:grid;box-shadow:0 10px 28px #12454a0f}.room-photo-cover{background:linear-gradient(145deg,#e5f2ed,#f7f0df);border-radius:15px;min-height:148px;position:relative;overflow:hidden}.room-photo-cover img,.room-photo-grid img{object-fit:cover;width:100%;height:100%}.room-photo-placeholder{color:#7b918d;align-content:center;place-items:center;gap:8px;height:100%;min-height:148px;display:grid}.room-photo-placeholder span{color:#2a7c67;letter-spacing:.18em;font-weight:900}.photo-count{color:#fff;background:#082b33d1;border-radius:999px;padding:5px 9px;font-size:.75rem;font-weight:800;position:absolute;bottom:10px;right:10px}.room-hero-main{align-content:center;gap:24px;display:grid}.room-title-line{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.room-title-line h3{color:#0b3440;margin:0 0 8px;font-size:1.6rem}.room-type-pill,.room-availability{border-radius:999px;align-items:center;min-height:30px;padding:5px 11px;font-size:.78rem;font-weight:800;display:inline-flex}.room-type-pill{color:#17699c;background:#e8f3ff}.room-availability.vacant{color:#1d775e;background:#def4e9}.room-availability.occupied{color:#9b4c26;background:#fbe9de}.room-hero-facts{grid-template-columns:repeat(5,minmax(110px,1fr));gap:0;display:grid}.room-hero-facts>span{border-left:1px solid #e5ece9;padding:0 18px}.room-hero-facts>span:first-child{border-left:0;padding-left:0}.room-hero-facts small,.room-stat-grid small{color:#7b8d92;margin-bottom:6px;font-size:.72rem;font-weight:700;display:block}.room-hero-facts strong{color:#123943}.room-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 28px 18px;display:grid}.room-stat-grid article{background:#fff;border:1px solid #dfe9e6;border-radius:18px;align-items:center;gap:14px;min-height:118px;padding:18px;display:flex}.room-stat-grid strong{color:#123943;font-size:1.15rem;display:block}.room-stat-grid p{color:#7c8d92;margin:4px 0 0;font-size:.78rem}.room-stat-icon{color:#1b7a61;background:#e6f4ef;border-radius:50%;flex:0 0 54px;place-items:center;width:54px;height:54px;font-weight:900;display:grid}.room-overview-layout{grid-template-columns:minmax(0,1.45fr) minmax(330px,.85fr);gap:18px;padding:0 28px 32px;display:grid}.room-main-column,.room-side-column{align-content:start;gap:18px;display:grid}.room-content-card{background:#fff;border:1px solid #dfe9e6;border-radius:18px;padding:20px}.room-card-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.room-card-heading h3{color:#123943;margin:4px 0 0;font-size:1.05rem}.room-card-heading>span{color:#73858b;font-size:.8rem}.room-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.amenity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.amenity-tile{text-align:left;cursor:pointer;background:#fbfcfc;border:1px solid #e2e9e6;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:34px 1fr;align-items:center;gap:2px 10px;min-height:76px;padding:12px;display:grid}.amenity-tile>span{color:#80908d;background:#eef3f1;border-radius:10px;grid-row:1/span 2;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.amenity-tile b{color:#173c45;font-size:.84rem}.amenity-tile small{color:#8a999d;font-size:.72rem}.amenity-tile.included{background:#f2fbf7;border-color:#b8decf}.amenity-tile.included>span{color:#1d7b61;background:#dff3ea}.amenity-tile.included small{color:#2d896f}.room-bed-table{border:1px solid #e3ebe8;border-radius:13px;overflow:hidden}.room-bed-table>div{border-top:1px solid #edf1ef;grid-template-columns:1fr 1fr .8fr;gap:12px;padding:12px 14px;display:grid}.room-bed-table>div:first-child{border-top:0}.room-bed-table code{color:#245e62;font-weight:800}.room-bed-table span{color:#677b80;font-size:.84rem}.room-notes-field,.room-photo-upload{color:#526b70;gap:8px;font-size:.82rem;font-weight:800;display:grid}.room-notes-field textarea{resize:vertical;min-height:112px}.room-photo-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;display:grid}.room-photo-grid a,.room-photo-empty{aspect-ratio:4/3;background:#edf3f1;border-radius:11px;overflow:hidden}.room-photo-empty{color:#8a9a9d;grid-column:1/-1;place-items:center;font-size:.8rem;display:grid}.room-save-bar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;border:1px solid #dce8e4;border-radius:16px;justify-content:flex-end;gap:10px;padding:14px;display:flex;position:sticky;bottom:16px;box-shadow:0 12px 28px #0b373c1a}.modal-backdrop,.drawer-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#04181d99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.drawer-backdrop{place-items:stretch end;padding:0}.modal{width:min(660px,100%);max-height:calc(90vh / var(--ui-zoom));box-shadow:var(--shadow);background:#fff;border-radius:14px;padding:22px;overflow:auto}.reservation-modal{width:min(760px,100%)}.wide-modal{width:min(900px,100%)}.modal-head,.drawer-head,.section-title{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.modal-head{margin-bottom:20px}.modal-head small,.drawer-head small{color:var(--green);letter-spacing:.14em;font-size:8px;font-weight:800}.modal-head h2,.drawer-head h2{color:var(--deep);margin:5px 0;font-family:Georgia,serif;font-size:26px;font-weight:500}.modal-head p,.drawer-head p{color:var(--muted);margin:0;font-size:10px}.modal-head>button,.drawer-head>button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;width:32px;height:32px;font-size:18px}.unit-drawer{width:min(680px,100%);height:calc(100vh / var(--ui-zoom));background:#f7f8f5;padding:24px;overflow:auto;box-shadow:-18px 0 50px #06232a33}.student-drawer{width:min(820px,100%)}.drawer-head{z-index:3;border-bottom:1px solid var(--line);background:#fff;margin:-24px -24px 18px;padding:24px;position:sticky;top:-24px}.drawer-section{border:1px solid var(--line);background:#fff;border-radius:11px;margin-bottom:15px;padding:18px}.drawer-section .section-title{align-items:center;margin-bottom:14px}.drawer-section .section-title h3{font-size:19px}.drawer-subsection{border-top:1px dashed var(--line);margin-top:14px;padding-top:14px}.drawer-subsection:first-of-type{border-top:none;margin-top:0;padding-top:0}.drawer-subsection h4{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:12px}.subsection-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.subsection-head h4{margin:0}.drawer-tabs{z-index:4;border:1px solid var(--line);background:#fff;border-radius:9px;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 14px;padding:8px;display:grid;position:sticky;top:81px}.drawer-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:10px;font-size:9px;font-weight:800}.drawer-tabs button.active{color:#fff;background:var(--green)}.filters,.pricing-controls{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fafbf9;align-items:end;padding:16px 24px;display:grid}.filters{gap:12px}.pricing-controls{grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;padding:18px 24px}.availability-filters{grid-template-columns:minmax(190px,1.6fr) repeat(4,minmax(105px,1fr)) auto}.mobile-availability{display:none}.unit-filters{grid-template-columns:minmax(250px,1fr) 200px}.filters label,.form-grid label,.service-form label,.pricing-controls label,.utility-fields label,.inspection-fields label{color:#6b7b7d;text-transform:uppercase;letter-spacing:.08em;flex-direction:column;gap:6px;font-size:9px;font-weight:800;display:flex}.filters input,.filters select,.form-grid input,.form-grid select,.service-form input,.service-form select,.room-list select,.pricing-controls input,.pricing-controls select{width:100%;height:39px;color:var(--ink);text-transform:none;letter-spacing:0;background:#fff;border:1px solid #ccd6d2;border-radius:7px;outline:0;padding:0 11px;font-size:11px}.filters input:focus,.filters select:focus,.form-grid input:focus,.form-grid select:focus,.service-form input:focus,.service-form select:focus,.pricing-controls input:focus,.pricing-controls select:focus{border-color:#68a894;box-shadow:0 0 0 3px #2676611a}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-grid .wide{grid-column:1/-1}.reservation-steps{gap:8px;margin-bottom:6px;display:flex}.reservation-steps span{color:#8b9698;text-align:center;letter-spacing:.02em;background:#f3f5f2;border-radius:8px;flex:1;padding:10px 12px;font-size:11px;font-weight:700}.reservation-steps span.active{background:var(--green);color:#fff}.reservation-steps span.done{color:var(--green);background:#e5f2ee}.form-actions{justify-content:flex-end;gap:8px;padding-top:8px;display:flex}.field-note{color:#8b9698;text-transform:none;letter-spacing:0;font-size:8px;font-weight:400}.room-details-group{margin:14px 0 -2px}.auto-address-note{color:#8b9698;text-transform:none;letter-spacing:0;margin:4px 0 0;font-size:11px;font-weight:400}.unit-code-input{align-items:stretch;display:flex}.unit-code-prefix{color:#6b7a76;white-space:nowrap;background:#f3f5f2;border:1px solid #ccd6d2;border-right:0;border-radius:7px 0 0 7px;align-items:center;padding:0 0 0 11px;font-size:13px;font-weight:700;display:flex}.unit-code-input .unit-code-prefix+input{border-radius:0 7px 7px 0}textarea{resize:vertical;min-height:92px}.form-grid textarea{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #ccd6d2;border-radius:7px;padding:10px 12px}.checkbox-field{align-items:center;padding-top:24px;flex-direction:row!important;gap:9px!important;display:flex!important}.checkbox-field input{width:17px!important;height:17px!important}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:940px}th{color:#758386;border-bottom:1px solid var(--line);letter-spacing:.1em;text-align:left;text-transform:uppercase;white-space:nowrap;background:#fbfcfa;padding:13px 16px;font-size:8px}td{color:#344b51;vertical-align:middle;border-bottom:1px solid #e4e8e5;padding:14px 16px;font-size:10px}tbody tr:hover{background:#fbfdfb}td strong{color:var(--ink);font-size:10px;display:block}td small{color:#8b989a;margin-top:4px;font-size:8px;display:block}td em{color:#99a2a4}code{color:#35545b;white-space:nowrap;background:#edf1ef;border-radius:6px;padding:5px 8px;font-family:Consolas,monospace;font-size:9px;display:inline-block}.reset-button{white-space:nowrap;align-self:end;height:39px}.module-metrics,.dash-stats{border-radius:12px;flex-flow:wrap;gap:0;width:100%;margin-bottom:28px;display:flex;overflow:hidden;box-shadow:0 4px 20px #0000000f}.module-metrics>article,.module-metrics>.stat-filter,.dash-stats>.dash-stat{text-align:left;border:0;border-top:8px solid;border-radius:0;flex-direction:column;flex:200px;justify-content:center;min-width:0;min-height:120px;padding:24px 26px;display:flex}.module-metrics>article>strong,.module-metrics>.stat-filter>strong,.dash-stats>.dash-stat>strong{color:var(--deep,#0f172a);order:2;margin-bottom:4px;font-family:Georgia,serif;font-size:34px;font-weight:500;line-height:1.1}.module-metrics>article>span,.module-metrics>.stat-filter>small,.dash-stats>.dash-stat .dash-stat-head small{color:#829094;letter-spacing:.14em;text-transform:uppercase;order:1;margin-bottom:6px;font-size:11px;font-weight:600}.dash-stats>.dash-stat>span{color:#899598;order:3;font-size:11px}.dash-stats>.dash-stat .dash-stat-head{order:1}.dash-stats>.dash-stat .dash-stat-head small{order:0;margin-bottom:0}.module-metrics>:nth-child(4n+1),.dash-stats>:nth-child(4n+1){border-top-color:var(--green,#52a26c);background-color:#eaf3ed}.module-metrics>:nth-child(4n+2),.dash-stats>:nth-child(4n+2){border-top-color:var(--navy,#263959);background-color:#e7eaef}.module-metrics>:nth-child(4n+3),.dash-stats>:nth-child(4n+3){border-top-color:var(--sand,#d2ae75);background-color:#f9f4ec}.module-metrics>:nth-child(4n+4),.dash-stats>:nth-child(4n+4){border-top-color:var(--coral,#e37e67);background-color:#fdeee9}.module-metrics>.stat-filter{cursor:pointer;transition:box-shadow .15s}.module-metrics>.stat-filter:hover{box-shadow:inset 0 0 0 2px #26766159}.module-metrics>.stat-filter.active{box-shadow:inset 0 0 0 2px var(--green)}.dash-stats>.dash-stat.feature{color:var(--ink);border-top-color:var(--green,#52a26c);background-image:none}.dash-stats>.dash-stat.feature>span{color:#899598}.dash-stats>.dash-stat.feature .dash-stat-head small{color:#829094}.dash-stats>.dash-stat .dash-stat-head button{color:var(--ink);border-color:#0f172a2e}@media (max-width:1000px){.module-metrics>article,.module-metrics>.stat-filter,.dash-stats>.dash-stat{flex-basis:45%;min-height:104px;padding:18px 20px}}.dash-welcome{margin-bottom:16px}.dash-welcome h2{margin:6px 0 4px;font-family:Georgia,serif;font-size:32px}.dash-welcome p{color:var(--muted);margin:0;font-size:13px}.dash-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.dash-stat{border:1px solid var(--line);background:var(--white);border-radius:14px;min-width:0;padding:18px}.dash-stat.feature{color:#eaf3ef;background:linear-gradient(150deg,#2e7f68 0%,#1d5f4d 100%);border-color:#0000}.dash-stat-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.dash-stat-head small{color:var(--muted);letter-spacing:.1em;font-size:10px;font-weight:800}.dash-stat.feature .dash-stat-head small{color:#b7d6c9}.dash-stat-head button{border:1px solid var(--line);width:26px;height:26px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;font-size:12px;line-height:1}.dash-stat.feature .dash-stat-head button{color:#fff;border-color:#ffffff59}.dash-stat strong{margin:10px 0 4px;font-family:Georgia,serif;font-size:38px;font-weight:500;line-height:1;display:block}.dash-stat strong.money{font-size:26px}.dash-stat span{color:var(--muted);font-size:11px}.dash-stat.feature span{color:#b7d6c9}.dash-row-a,.dash-row-b{gap:14px;margin-bottom:16px;display:grid}.dash-row-a{grid-template-columns:1.5fr 1fr 1fr}.dash-row-b{grid-template-columns:1.3fr 1fr 1.3fr}.dash-card{border:1px solid var(--line);background:var(--white);border-radius:14px;flex-direction:column;min-width:0;padding:18px;display:flex}.dash-card-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.dash-card-head h3{margin:0;font-family:Georgia,serif;font-size:18px}.dash-count{min-width:24px;color:var(--green);background:var(--green-soft);text-align:center;border-radius:20px;padding:2px 8px;font-size:12px;font-weight:800}.dash-count.warn{color:#a8442f;background:#fbe9e4}.dash-list{gap:8px;display:grid}.dash-list.tight{gap:4px}.dash-list-row{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fbfcfa;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:10px 12px;display:flex}.dash-list-row:hover{border-color:var(--green);background:var(--green-soft)}.dash-list-row>span{min-width:0}.dash-list-row b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.dash-list-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;display:block;overflow:hidden}.dash-list-row code{font-size:10px}.dash-list-row i{color:var(--muted);font-style:normal}.dash-bars{align-items:flex-end;gap:10px;height:150px;margin-bottom:14px;display:flex}.dash-bar{flex-direction:column;flex:1;align-items:center;gap:6px;height:100%;display:flex}.dash-bar-track{flex-direction:column;justify-content:flex-end;width:100%;height:100%;display:flex;position:relative}.dash-bar-total{background:#e4eae7;border-radius:10px;flex-direction:column;justify-content:flex-end;width:100%;min-height:6px;display:flex;overflow:hidden}.dash-bar-fill{background:linear-gradient(#3f8f76 0%,#1d5f4d 100%);border-radius:10px;width:100%}.dash-bar-track b{color:var(--ink);font-size:10px;font-weight:800;position:absolute;top:-2px;left:50%;transform:translate(-50%)}.dash-bar small{color:var(--muted);font-size:11px;font-weight:700}.dash-table{table-layout:fixed;border-collapse:collapse;width:100%;min-width:0}.dash-table th{border-bottom:1px solid var(--line);color:var(--muted);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:6px 4px;font-size:10px}.dash-table td{border-bottom:1px solid #eef2f0;padding:7px 4px;font-size:12px}.dash-money-total{background:var(--green-soft);border-radius:11px;margin-bottom:12px;padding:14px}.dash-money-total small{color:var(--muted);letter-spacing:.08em;font-size:10px;font-weight:800}.dash-money-total strong{margin-top:4px;font-family:Georgia,serif;font-size:25px;display:block}.dash-money-row{border-bottom:1px solid #eef2f0;justify-content:space-between;align-items:center;padding:7px 2px;font-size:12px;display:flex}.dash-money-row b{font-variant-numeric:tabular-nums}.dash-legend{color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.dash-legend i{vertical-align:middle;border-radius:3px;width:9px;height:9px;margin-right:3px;display:inline-block}.dash-legend i.in{background:#1d5f4d}.dash-legend i.out{background:#bcd3c9}.dash-grouped{align-items:flex-end;gap:10px;height:170px;display:flex}.dash-group{flex-direction:column;flex:1;align-items:center;gap:5px;height:100%;display:flex}.dash-group-bars{flex:1;justify-content:center;align-items:flex-end;gap:3px;width:100%;display:flex}.gbar{border-radius:5px 5px 0 0;width:42%;min-height:3px}.gbar.in{background:#1d5f4d}.gbar.out{background:#bcd3c9}.login-shell{min-height:calc(100vh / var(--ui-zoom));background:var(--deep);place-items:center;padding:24px;display:grid}.login-card{background:var(--white);width:min(420px,100%);box-shadow:var(--shadow);border-radius:16px;padding:32px}.login-brand{align-items:center;gap:12px;margin-bottom:22px;display:flex}.login-brand strong{font-size:15px;display:block}.login-brand small{color:var(--muted);font-size:11px}.login-card h1{margin:0 0 6px;font-family:Georgia,serif;font-size:27px}.login-intro{color:var(--muted);margin:0 0 20px;font-size:13px}.login-card form{gap:14px;display:grid}.login-card label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;gap:6px;font-size:11px;font-weight:700;display:grid}.login-card input{border:1px solid var(--line);border-radius:9px;padding:11px 12px;font-size:14px}.login-card button{color:#fff;background:var(--green);cursor:pointer;border:none;border-radius:9px;margin-top:4px;padding:12px;font-size:14px;font-weight:700}.login-card button:disabled{opacity:.6;cursor:progress}.login-error{color:#8d3629;background:#fdf1ef;border:1px solid #f0c8c2;border-radius:9px;margin-bottom:14px;padding:10px 12px;font-size:13px}.login-foot,.login-checking{color:var(--muted);text-align:center;margin:18px 0 0;font-size:11px}.login-checking{font-size:13px}.portal-shell{min-height:calc(100vh / var(--ui-zoom));background:var(--paper)}.portal-bar{border-bottom:1px solid var(--line);background:var(--white);justify-content:space-between;align-items:center;padding:14px 28px;display:flex}.portal-bar .login-brand{margin-bottom:0}.portal-body{padding:32px 28px}.portal-card{border:1px solid var(--line);background:var(--white);border-radius:14px;max-width:720px;padding:28px}.portal-card h1{margin:8px 0 10px;font-family:Georgia,serif;font-size:30px}.portal-card>p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.portal-note{background:var(--green-soft);border-radius:11px;margin-top:22px;padding:16px 18px}.portal-note strong{letter-spacing:.08em;text-transform:uppercase;font-size:12px}.portal-note ul{color:var(--ink);margin:10px 0 0;padding-left:18px;font-size:13px;line-height:1.9}.panel{border:1px solid var(--line);background:#fff;border-radius:13px}.workspace{overflow:clip}.workspace-tabs{border-bottom:1px solid var(--line);background:#f1f3ef;gap:6px;padding:12px;display:flex}.workspace-tabs button{color:#637477;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;min-height:38px;padding:0 15px;font-size:11px;font-weight:800}.workspace-tabs button:hover,.workspace-tabs button.active{color:var(--deep);border-color:var(--line);background:#fff}.workspace-tabs-secondary{border-bottom:1px solid var(--line);background:#fafbf9;padding:8px 12px}.workspace-tabs-secondary button{min-height:30px;padding:0 12px;font-size:10px}.workspace-tabs span{color:#fff;background:var(--green);border-radius:10px;margin-left:5px;padding:2px 6px;font-size:8px}.drawer-records-tabs{border-radius:10px;flex-wrap:wrap;margin-bottom:12px}.drawer-records-tabs button{padding:0 12px}.section-heading{justify-content:space-between;align-items:center;gap:24px;padding:24px 24px 18px;display:flex}.section-heading small,.section-title small{color:var(--green);letter-spacing:.14em;font-size:8px;font-weight:800}.section-heading h3,.section-title h3{color:var(--deep);margin:5px 0;font-family:Georgia,serif;font-size:23px;font-weight:500}.section-heading p{color:var(--muted);margin:0;font-size:11px}.result-bubble{flex-direction:column;align-items:flex-end;display:flex}.result-bubble strong{color:var(--green);font-family:Georgia,serif;font-size:30px;font-weight:500}.result-bubble span{color:var(--muted);font-size:9px}.loading,.placeholder{min-height:calc((100vh / var(--ui-zoom)) - 86px);text-align:center;align-content:center;place-items:center;padding:40px;display:grid}.loading>span{border:3px solid #d9e3df;border-top-color:var(--green);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:50px 20px}.empty-state>span{width:46px;height:46px;color:var(--green);background:var(--green-soft);border-radius:12px;place-items:center;margin:0 auto 13px;font-weight:900;display:grid}.empty-state h3{margin:0 0 7px;font-family:Georgia,serif;font-size:22px}.empty-state p{max-width:430px;color:var(--muted);margin:0 auto 16px;font-size:11px}.error-banner,.notice-banner{border-radius:9px;font-size:11px}.error-banner{color:#87423b;background:#fff1ef;border:1px solid #e8bcb7;justify-content:space-between;align-items:center;gap:20px;margin:16px 32px 0;padding:12px 15px;display:flex}.notice-banner{z-index:500;color:#fff;background:#237a64;padding:11px 17px;font-weight:800;position:fixed;top:18px;left:50%;box-shadow:0 10px 30px #05262c3d}.notice-banner.blocked{background:#b91c1c}.standard-charge-breakdown{border:1px solid var(--line);background:#fafbf9;border-radius:12px;flex-direction:column;gap:10px;padding:18px 20px;display:flex}.standard-charge-breakdown>small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-weight:800}.standard-charge-breakdown ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.standard-charge-breakdown li{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:8px;display:flex}.standard-charge-breakdown li span{color:var(--ink);flex-direction:column;display:flex}.standard-charge-breakdown li span small{color:var(--muted);font-weight:500}.standard-charge-total{justify-content:space-between;align-items:baseline;padding-top:4px;font-weight:800;display:flex}.standard-charge-total strong{font-size:var(--text-base)}.reservation-grid{grid-template-columns:repeat(3,1fr);gap:14px;padding:0 24px 24px;display:grid}.reservation-grid article{border:1px solid var(--line);background:#fcfdfb;border-radius:11px;padding:18px}.reservation-grid h4{color:var(--deep);margin:15px 0 5px;font-family:Georgia,serif;font-size:19px}.reservation-grid p{color:var(--muted);margin:0;font-size:10px}.reservation-grid ul{flex-wrap:wrap;gap:6px;margin:14px 0;padding:0;list-style:none;display:flex}.reservation-grid li{color:#506569;background:#edf2ef;border-radius:10px;padding:5px 7px;font-size:8px}.reservation-match{flex-direction:column;gap:5px;min-width:145px;display:flex}.reservation-match>span{background:#fff5dd;border-radius:7px;padding:6px 8px}.reservation-match b{color:#664c16;font-size:9px;display:block}.reservation-match small{color:#8b7441;font-size:7px;display:block}.rate-display{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.rate-display .original-rate,.original-rate{color:#9ca3a0;text-decoration:line-through}.promo-price{color:#cf3f31!important;font-size:13px!important}.pricing-preview{padding:20px 24px 24px}.preview-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.pricing-preview table{border:1px solid var(--line);min-width:800px}.pricing-preview input[type=checkbox]{width:16px;height:16px;accent-color:var(--green)}.data-notes{grid-template-columns:repeat(3,1fr);gap:13px;margin-top:24px;display:grid}.data-notes article{border:1px solid var(--line);background:#fff;border-radius:10px;gap:13px;padding:17px;display:flex}.data-notes p{color:var(--muted);margin:5px 0 0;font-size:9px;line-height:1.5}.ticket-status{border-radius:11px;padding:5px 8px;font-size:8px;font-weight:800;display:inline-block}.ticket-status.submitted{color:#276092;background:#e4f0fb}.ticket-status.attended,.ticket-status.in-progress{color:#835f15;background:#fff1ce}.conversation{flex-direction:column;gap:9px;display:flex}.conversation article{background:#eef3f0;border-radius:10px;max-width:88%;padding:11px 13px}.conversation article.student-message{border-bottom-left-radius:2px;align-self:flex-start}.conversation article.staff-message{background:#e5f2ee;border-bottom-right-radius:2px;align-self:flex-end}.attachment-list strong{margin-bottom:10px;display:block}.attachment-list-compact{margin-top:9px}.attachment-thumb-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-top:8px;display:grid}.attachment-thumb-grid:first-of-type{margin-top:0}.attachment-group-label{letter-spacing:.08em;color:var(--muted);grid-column:1/-1}.attachment-thumb{border:1px solid var(--line);background:#10201f;border-radius:11px;margin:0;position:relative;overflow:hidden}.attachment-thumb a,.attachment-thumb img,.attachment-thumb video{width:100%;height:120px;display:block}.attachment-thumb img,.attachment-thumb video{object-fit:cover;background:#10201f}.attachment-thumb .attachment-delete{background:#ffffffeb;padding:3px 8px;font-size:10px;position:absolute;top:6px;right:6px}.announcement-list{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.announcement-list article{border:1px solid var(--line);background:#fff;border-left:4px solid #9ba8a5;border-radius:10px;padding:20px}.announcement-list .pin-toggle{margin-left:12px}.operational-rates{padding:0 24px 24px}.rate-card-grid{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.rate-card-grid form{border:1px solid var(--line);background:#fafbf9;border-radius:9px;flex-direction:column;gap:9px;padding:14px;display:flex}.rate-card-grid h4{margin:0 0 3px;font-family:Georgia,serif;font-size:16px}.sticky-tabs{box-shadow:0 1px 0 var(--line);background:#f3f5f2}.sticky-filters{border-bottom:1px solid var(--line)}.hostel-grid{grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:28px;display:grid}.hostel-card{border:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;border-radius:12px;min-width:0;padding:20px}.hostel-card:hover,.hostel-card.selected{border-color:#7cb8a8;box-shadow:0 0 0 3px #2676611a}.hostel-card-top{justify-content:space-between;align-items:center;display:flex}.hostel-card h3{color:var(--deep);margin:17px 0 8px;font-family:Georgia,serif;font-size:21px;font-weight:500}.hostel-card p{color:#7d8b8d;height:47px;margin:0;font-size:9px;line-height:1.7;overflow:hidden}@media print{.sidebar,.topbar,.intro,.workspace-tabs,.button-row,.modal-head button,.top-button{display:none!important}.modal-backdrop{background:#fff;padding:0;display:block;position:static}.modal{width:100%;max-height:none;box-shadow:none}}@media (max-width:1250px){.dash-stats,.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-row-a,.dash-row-b{grid-template-columns:1fr}.hostel-grid{grid-template-columns:repeat(3,1fr)}.availability-filters{grid-template-columns:repeat(4,1fr)!important}.availability-filters .search{grid-column:span 2}.reservation-grid{grid-template-columns:repeat(2,1fr)}.service-form{grid-template-columns:1fr 1fr}.rate-card-grid,.lot-grid{grid-template-columns:repeat(3,1fr)}.quick-payment{grid-template-columns:1fr 1fr}.quick-payment button{grid-column:1/-1}.payment-form{grid-template-columns:1fr 1fr}.payment-form button{grid-column:1/-1}.pricing-controls{grid-template-columns:repeat(3,minmax(130px,1fr))}.service-form.expanded{grid-template-columns:1fr 1fr}.room-row{grid-template-columns:70px 1fr}.room-row select{grid-column:1/-1}.split-registers{grid-template-columns:1fr 1fr}.settings-grid{grid-template-columns:1fr}}@media (max-width:1180px){.room-hero-facts{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:18px}.room-hero-facts>span:nth-child(4){border-left:0;padding-left:0}.room-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-overview-layout{grid-template-columns:1fr}}@media (max-width:1024px){.metrics-container{flex-direction:column}.metric-card{border-top-width:0;border-left-style:solid;border-left-width:8px;min-height:auto}}@media (max-width:900px){:root{--ui-zoom:1}.app-shell{grid-template-columns:1fr}main{grid-column:1}.sidebar{z-index:auto;width:auto;height:auto;padding:16px;position:relative;overflow:visible}.nav-copy small,.phase-card,.sidebar-foot,.nav-label,.nav-mark,.source-pill{display:none}.brand{padding-bottom:13px}.sidebar nav{grid-template-columns:repeat(5,1fr);display:grid}.sidebar nav button,.sidebar nav a{justify-content:center;padding:8px 4px}.nav-copy b{text-align:center;font-size:11px}.topbar{height:72px;padding:0 18px}.content{padding:20px 16px}.intro{flex-direction:column;align-items:flex-start}.intro h2{font-size:31px}.hostel-grid{grid-template-columns:1fr 1fr}.workspace-tabs{overflow:auto}.workspace-tabs button{flex:none}.section-heading{flex-direction:column;align-items:flex-start}.availability-filters{grid-template-columns:1fr 1fr!important}.unit-filters{grid-template-columns:1fr}.search{grid-column:1/-1!important}.data-notes{grid-template-columns:1fr}.room-list article{grid-template-columns:60px 1fr}.room-list select{grid-column:1/-1}.availability-summary{grid-template-columns:repeat(3,1fr);width:100%}.inventory-rule{flex-direction:column;align-items:flex-start}.payment-mix{justify-content:flex-start}.pricing-controls{grid-template-columns:1fr 1fr!important}.module-metrics{grid-template-columns:1fr 1fr}.split-registers,.announcement-list,.report-list,.expanded-grid{grid-template-columns:1fr}.rate-card-grid,.lot-grid{grid-template-columns:1fr 1fr}.editable-room{grid-template-columns:1fr 1fr!important}.asset-actions{flex-wrap:wrap}}@media (max-width:760px){.room-overview-backdrop{padding:0}.room-overview-panel{border:0;border-radius:0;min-height:100vh}.room-overview-header,.room-hero-card,.room-stat-grid,.room-overview-layout{margin-left:14px;margin-right:14px}.room-overview-header{margin:0;padding:18px 16px}.room-hero-card,.room-hero-facts,.room-stat-grid,.amenity-grid,.room-edit-grid{grid-template-columns:1fr}.room-hero-facts>span{border-top:1px solid #e5ece9;border-left:0;padding:10px 0}.room-hero-facts>span:first-child{border-top:0}.room-overview-layout{padding:0 0 24px}.room-bed-table>div{grid-template-columns:1fr}}@media (max-width:620px){.sidebar nav{grid-template-columns:1fr 1fr}.topbar h1{font-size:22px}.hostel-grid,.reservation-grid{grid-template-columns:1fr}.availability-filters,.form-grid,.unit-form .form-grid{grid-template-columns:1fr!important}.form-grid .wide{grid-column:auto}.asset-list,.service-form{grid-template-columns:1fr}.modal-backdrop{padding:8px}.modal{padding:17px}.module-content{padding-top:10px}.sales-overview,.desktop-availability{display:none}.hostel-workspace{border-radius:10px;margin-top:0}.sticky-filters{box-shadow:none;position:relative;top:auto}.mobile-availability{background:#f3f1f1;flex-direction:column;gap:10px;padding:12px;display:flex}.availability-card{background:#eff9ef;border:1px solid #c9d7d0;border-left:4px solid #3caf62;border-radius:10px;flex-direction:column;gap:12px;padding:15px;display:flex}.availability-card .card-title{justify-content:space-between;gap:10px;display:flex}.availability-card code{color:#126ba4;background:0 0;font-size:17px;font-weight:800}.availability-card p{color:var(--muted);margin:3px 0 0;font-size:9px}.mobile-card-grid{border-top:1px solid #d2dfd6;border-bottom:1px solid #d2dfd6;grid-template-columns:1fr 1fr;gap:12px;padding:12px 0;display:grid}.mobile-card-grid>div{flex-direction:column;gap:4px;display:flex}.mobile-card-grid small,.mobile-reservation>small{color:#87918f;font-size:8px}.mobile-card-grid strong{font-size:10px}.mobile-reservation{background:#fff6df;border-radius:7px;padding:10px}.mobile-reservation p{color:#6f5520}.availability-summary{grid-template-columns:1fr;padding:0 16px 12px}.module-metrics,.report-grid{grid-template-columns:1fr 1fr}.module-metrics strong{font-size:20px}.rate-card-grid,.lot-grid,.charge-grid,.pricing-controls,.editable-room,.bed-config form,.bed-config label{grid-template-columns:1fr!important}.drawer-tabs{top:81px}.quick-payment,.reservation-money{grid-template-columns:1fr}.total-payable,.modal-total,.cycle-banner,.payment-review>div{flex-direction:column;align-items:flex-start}.ticket-summary{grid-template-columns:1fr}.report-list article{grid-template-columns:auto 1fr}.report-list article button{grid-column:1/-1}.top-button{bottom:12px;right:12px}.inventory-rule{padding:12px 16px}.payment-form,.service-form.expanded,.bed-config{grid-template-columns:1fr}.pricing-controls,.pricing-preview{padding:16px}.service-form .service-wide{grid-column:auto}.gender-vacancy{grid-template-columns:repeat(3,1fr)}.settings-grid{padding:12px}.stat-filter strong{font-size:19px}.asset-list article,.service-list article{flex-wrap:wrap;align-items:flex-start}.asset-actions{width:100%;margin-left:0}.report-filters{grid-template-columns:1fr!important}}.reservation-page{--reservation-green:#18785c;--reservation-green-dark:#0f5d46;--reservation-green-soft:#edf7f3;--reservation-navy:#102f3a;--reservation-text:#53676f;--reservation-muted:#7b8b91;--reservation-border:#dde6e2;--reservation-surface:#fff;--reservation-background:#f7faf8;--reservation-danger:#ba433e;--reservation-danger-soft:#fff3f2;width:100%;color:var(--reservation-navy);gap:24px;display:grid}.reservation-hero{border:1px solid var(--reservation-border);background:radial-gradient(circle at 75%,#def1e9cc,#0000 32%),linear-gradient(135deg,#fff 0%,#fbfdfc 100%);border-radius:20px;justify-content:space-between;align-items:center;gap:32px;min-height:190px;padding:34px 36px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #1e473b0d}.reservation-hero:after{content:"";filter:blur(6px);background:#ddf0e88c;border-radius:50%;width:300px;height:160px;position:absolute;bottom:-65px;right:16%}.reservation-hero-copy{z-index:2;max-width:780px;position:relative}.reservation-eyebrow-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.reservation-eyebrow{color:var(--reservation-green);letter-spacing:.14em;font-size:12px;font-weight:800}.reservation-result-count{min-height:26px;color:var(--reservation-green-dark);background:var(--reservation-green-soft);border:1px solid #d9ece4;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.reservation-hero h3{color:var(--reservation-navy);letter-spacing:-.035em;margin:0;font-size:clamp(28px,2.3vw,40px);font-weight:750;line-height:1.15}.reservation-hero p{max-width:750px;color:var(--reservation-text);margin:12px 0 0;font-size:15px;line-height:1.65}.reservation-hero-side{z-index:2;flex-shrink:0;align-items:center;gap:28px;display:flex;position:relative}.reservation-illustration{width:225px;height:120px;position:relative}.illustration-calendar{background:#fff;border:1px solid #dce9e3;border-radius:10px;width:115px;height:92px;padding:22px 14px 12px;position:absolute;bottom:5px;left:10px;transform:rotate(2deg);box-shadow:0 12px 24px #1f53421f}.illustration-calendar:before{content:"";background:#b8dccd;border-radius:10px 10px 0 0;width:100%;height:20px;position:absolute;top:0;left:0}.illustration-calendar-hooks{z-index:2;justify-content:space-between;width:72px;display:flex;position:absolute;top:-6px;left:20px}.illustration-calendar-hooks i{background:#49665f;border:2px solid #fff;border-radius:5px;width:6px;height:18px}.illustration-calendar-grid{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.illustration-calendar-grid i{background:#e1eee8;border-radius:2px;height:8px}.illustration-calendar-grid i:nth-child(6),.illustration-calendar-grid i:nth-child(10){background:#67af91}.illustration-checklist{background:#fff;border:4px solid #d89d37;border-radius:8px;width:86px;min-height:100px;padding:28px 12px 12px;position:absolute;bottom:7px;right:10px;transform:rotate(7deg);box-shadow:0 14px 24px #53432121}.illustration-clip{background:#50635e;border-radius:4px 4px 2px 2px;width:34px;height:18px;position:absolute;top:-9px;left:50%;transform:translate(-50%)}.illustration-checklist>div:not(.illustration-clip){align-items:center;gap:6px;margin-bottom:9px;display:flex}.illustration-checklist span{color:#fff;background:#8bc7aa;border-radius:50%;place-items:center;width:15px;height:15px;font-size:10px;font-weight:800;display:grid}.illustration-checklist i{background:#dcebe4;border-radius:99px;flex:1;height:4px}.reservation-btn{min-height:42px;color:var(--reservation-navy);font:inherit;white-space:nowrap;cursor:pointer;border:1px solid var(--reservation-border);background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:750;line-height:1;transition:border-color .16s,background .16s,color .16s,box-shadow .16s,transform .16s;display:inline-flex}.reservation-btn:hover:not(:disabled){transform:translateY(-1px)}.reservation-btn:focus-visible{outline-offset:2px;outline:3px solid #18785c33}.reservation-btn:disabled{cursor:not-allowed;opacity:.55}.reservation-btn-primary{color:#fff;background:var(--reservation-green);border-color:var(--reservation-green);border-radius:12px;min-height:46px;padding-inline:20px;box-shadow:0 10px 22px #18785c33}.reservation-btn-primary:hover:not(:disabled){background:var(--reservation-green-dark);border-color:var(--reservation-green-dark)}.reservation-btn-secondary:hover:not(:disabled){color:var(--reservation-green-dark);background:#f5faf8;border-color:#bcd9cd}.reservation-btn-convert{color:var(--reservation-green-dark);background:var(--reservation-green-soft);border-color:#cce5da}.reservation-btn-convert:hover:not(:disabled){color:#fff;background:var(--reservation-green);border-color:var(--reservation-green)}.reservation-btn-danger{color:var(--reservation-danger);background:var(--reservation-danger-soft);border-color:#f0cfcc}.reservation-btn-danger:hover:not(:disabled){color:#fff;background:var(--reservation-danger);border-color:var(--reservation-danger)}.reservation-btn-cancel{color:#92400e;background:#fef3c7;border-color:#f3dfa1}.reservation-btn-cancel:hover:not(:disabled){color:#fff;background:#b45309;border-color:#b45309}.reservation-button-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px;width:17px;height:17px}.reservation-filter-panel{background:var(--reservation-surface);border:1px solid var(--reservation-border);border-radius:16px;grid-template-columns:minmax(0,1.1fr) minmax(260px,1fr);gap:24px;padding:22px;display:grid;box-shadow:0 8px 24px #1e473b0b}.reservation-field{gap:8px;min-width:0;display:grid}.reservation-field>span{color:#5f747b;letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:800}.reservation-input-control{min-width:0;position:relative}.reservation-input-control input,.reservation-input-control select{width:100%;height:48px;color:var(--reservation-navy);font:inherit;background:#fff;border:1px solid #d7e1dd;border-radius:10px;outline:none;padding:0 14px;font-size:14px;font-weight:600;transition:border-color .16s,box-shadow .16s,background .16s}.reservation-input-control input::placeholder{color:#97a5aa;font-weight:500}.reservation-input-control input:hover,.reservation-input-control select:hover{border-color:#b7cbc3}.reservation-input-control input:focus,.reservation-input-control select:focus{border-color:var(--reservation-green);background:#fff;box-shadow:0 0 0 4px #18785c1c}.reservation-input-control.has-icon input{padding-left:44px}.reservation-input-control.has-icon>svg{z-index:1;fill:none;stroke:#71848a;stroke-linecap:round;stroke-width:1.8px;pointer-events:none;width:19px;height:19px;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.reservation-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:20px;display:grid}.reservation-card{background:var(--reservation-surface);border:1px solid var(--reservation-border);border-radius:18px;flex-direction:column;min-width:0;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;overflow:hidden;box-shadow:0 8px 24px #1d493b0b}.reservation-card:hover{border-color:#c5d8d0;transform:translateY(-2px);box-shadow:0 16px 34px #1d493b17}.reservation-card.is-converted{border-color:#cbe3d8}.reservation-card-header{padding:22px 22px 0}.reservation-badges{flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:16px;display:flex}.reservation-reference{color:#31705d;background:#edf5f2;border:1px solid #deebe6;border-radius:7px;align-items:center;min-height:27px;padding:5px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:750;display:inline-flex}.reservation-payment-status,.reservation-converted-label{border:1px solid #0000;border-radius:999px;align-items:center;min-height:27px;padding:5px 10px;font-size:11px;font-weight:800;display:inline-flex}.reservation-payment-status.unpaid{color:#a6403b;background:#fff0ef;border-color:#f4d6d3}.reservation-payment-status.partial{color:#9a651d;background:#fff7e5;border-color:#f2dfb5}.reservation-payment-status.admin-fee{color:#936217;background:#fff3d5;border-color:#f2dcac}.reservation-payment-status.full,.reservation-payment-status.paid,.reservation-converted-label{color:#17694f;background:#e9f6f0;border-color:#cce7db}.reservation-card-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.reservation-card-title h4{min-width:0;color:var(--reservation-navy);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:25px;font-weight:760;line-height:1.2;overflow:hidden}.reservation-main-meta{color:var(--reservation-text);flex-wrap:wrap;align-items:center;gap:7px;margin:8px 0 0;font-size:12px;line-height:1.5;display:flex}.reservation-main-meta strong{color:#445b63;font-weight:750}.reservation-main-meta i,.reservation-payment-item i{background:#9caaa6;border-radius:50%;flex:0 0 3px;width:3px;height:3px}.reservation-preferences{flex-wrap:wrap;gap:7px;padding:16px 22px;display:flex}.reservation-chip{color:#49645e;background:#f1f7f4;border:1px solid #e1ece7;border-radius:999px;align-items:center;min-height:27px;padding:5px 10px;font-size:11px;font-weight:650;display:inline-flex}.reservation-commitment{border:1px solid;border-radius:12px;align-items:flex-start;gap:11px;margin:0 22px;padding:14px;display:flex}.reservation-commitment-icon{border-radius:50%;flex:0 0 25px;place-items:center;width:25px;height:25px;display:grid}.reservation-commitment-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px;width:15px;height:15px}.reservation-commitment>div:last-child{gap:3px;display:grid}.reservation-commitment strong{font-size:14px;line-height:1.35}.reservation-commitment span{color:var(--reservation-text);font-size:12px;line-height:1.45}.reservation-commitment.assigned,.reservation-commitment.committed{color:#19694f;background:#f1faf6;border-color:#cce6da}.reservation-commitment.assigned .reservation-commitment-icon,.reservation-commitment.committed .reservation-commitment-icon{color:#fff;background:#62ae8c}.reservation-commitment.enquiry{color:#2a6fac;background:#f4f8ff;border-color:#d7e4f6}.reservation-commitment.enquiry .reservation-commitment-icon{color:#2d78b7;background:#e5f0ff}.reservation-commitment.cancelled{color:#9d5225;background:#fff5ef;border-color:#f3d9c4}.reservation-commitment.cancelled .reservation-commitment-icon{color:#fff;background:#c97a45}.reservation-money-summary{background:#f8faf9;border:1px solid #e4ebe8;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 22px 0;display:grid;overflow:hidden}.reservation-money-summary>div{gap:6px;min-width:0;padding:13px 14px;display:grid}.reservation-money-summary>div+div{border-left:1px solid #e1e9e5}.reservation-money-summary span{color:#6c7e84;letter-spacing:.02em;text-transform:uppercase;font-size:10px;font-weight:750}.reservation-money-summary strong{color:var(--reservation-navy);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:800;overflow:hidden}.reservation-money-summary strong.paid{color:var(--reservation-green)}.reservation-money-summary strong.outstanding{color:#c34b43}.reservation-money-summary strong.settled{color:var(--reservation-green)}.reservation-payment-history{padding:18px 22px 20px}.reservation-subheading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.reservation-subheading>span:first-child{color:var(--reservation-navy);font-size:12px;font-weight:800}.reservation-subheading>span:last-child{color:var(--reservation-muted);font-size:11px;font-weight:650}.reservation-payment-list{gap:8px;display:grid}.reservation-payment-item{min-width:0;color:var(--reservation-text);background:#fafcfb;border:1px solid #e7eeeb;border-radius:9px;flex-wrap:wrap;align-items:center;gap:7px;padding:9px 10px;font-size:11px;line-height:1.4;display:flex}.reservation-payment-item strong{color:var(--reservation-navy)}.reservation-payment-date-icon{color:#59746c;background:#edf4f1;border-radius:6px;flex:0 0 22px;place-items:center;width:22px;height:22px;display:grid}.reservation-payment-date-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:13px;height:13px}.reservation-no-payments{color:#7a8b90;background:#fafcfb;border:1px dashed #d9e3df;border-radius:9px;padding:11px 12px;font-size:11px;line-height:1.45}.reservation-card-footer{background:#fbfcfc;border-top:1px solid #e7eeeb;margin-top:auto;padding:18px 22px 22px}.reservation-quick-payment{background:#fff;border:1px solid #dfe8e4;border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(110px,.75fr) auto;align-items:end;gap:10px;padding:14px;display:grid}.reservation-quick-payment label{gap:6px;min-width:0;display:grid}.reservation-quick-payment label>span{color:#687b81;letter-spacing:.03em;text-transform:uppercase;font-size:10px;font-weight:800}.reservation-quick-payment select,.reservation-quick-payment input{width:100%;min-width:0;height:40px;color:var(--reservation-navy);font:inherit;background:#fff;border:1px solid #d6e0dc;border-radius:8px;outline:none;padding:0 11px;font-size:12px;font-weight:600}.reservation-quick-payment input::placeholder{color:#9aa7ab;font-weight:500}.reservation-quick-payment select:focus,.reservation-quick-payment input:focus{border-color:var(--reservation-green);box-shadow:0 0 0 3px #18785c1a}.reservation-reference-field{grid-column:1/3}.reservation-btn-add-payment{min-height:86px;color:var(--reservation-green-dark);background:var(--reservation-green-soft);border-color:#cde5da;grid-area:1/3/3;align-self:stretch}.reservation-btn-add-payment:hover:not(:disabled){color:#fff;background:var(--reservation-green);border-color:var(--reservation-green)}.reservation-card-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:14px;display:flex}.reservation-main-actions{flex-wrap:wrap;gap:8px;display:flex}.reservation-results-footer{color:var(--reservation-text);padding:4px 2px;font-size:13px}.reservation-results-footer strong{color:var(--reservation-navy)}.reservation-empty-state{text-align:center;background:#fff;border:1px dashed #ccd9d4;border-radius:18px;place-content:center;justify-items:center;min-height:320px;padding:52px 24px;display:grid}.reservation-empty-icon{width:58px;height:58px;color:var(--reservation-green);background:var(--reservation-green-soft);border-radius:18px;place-items:center;margin-bottom:16px;display:grid}.reservation-empty-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:28px;height:28px}.reservation-empty-state h4{color:var(--reservation-navy);margin:0;font-size:21px}.reservation-empty-state p{max-width:440px;color:var(--reservation-text);margin:9px 0 20px;font-size:13px;line-height:1.6}@media (max-width:1450px){.reservation-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1050px){.reservation-hero{align-items:flex-start}.reservation-illustration{display:none}.reservation-filter-panel{grid-template-columns:1fr}}@media (max-width:760px){.reservation-page{gap:16px}.reservation-hero{min-height:auto;padding:24px 20px;display:grid}.reservation-hero-side,.reservation-btn-primary{width:100%}.reservation-filter-panel{gap:16px;padding:16px}.reservation-card-grid{grid-template-columns:1fr}.reservation-card-header,.reservation-preferences,.reservation-payment-history{padding-left:18px;padding-right:18px}.reservation-commitment,.reservation-money-summary{margin-left:18px;margin-right:18px}.reservation-money-summary{grid-template-columns:1fr}.reservation-money-summary>div+div{border-top:1px solid #e1e9e5;border-left:0}.reservation-card-footer{padding:16px 18px 18px}.reservation-quick-payment{grid-template-columns:1fr}.reservation-reference-field,.reservation-btn-add-payment{grid-area:auto}.reservation-btn-add-payment{min-height:42px}.reservation-card-actions{flex-direction:column;align-items:stretch}.reservation-main-actions{grid-template-columns:1fr;display:grid}.reservation-card-actions .reservation-btn{width:100%}}.pricing-page{--pricing-primary:#008861;--pricing-primary-dark:#006f50;--pricing-primary-soft:#eaf8f3;--pricing-text:#102c3d;--pricing-muted:#71818d;--pricing-border:#e3e9ec;--pricing-border-dark:#d6dfe3;--pricing-background:#f8faf9;--pricing-danger:#ff4438;--pricing-danger-soft:#fff7f6;color:var(--pricing-text);gap:18px;display:grid}.pricing-page,.pricing-page *{box-sizing:border-box}.pricing-hero{justify-content:space-between;align-items:center;min-height:108px;padding:10px 20px 6px;display:flex;overflow:hidden}.pricing-hero-content{min-width:0}.pricing-hero-content small{color:var(--pricing-primary);letter-spacing:.08em;margin-bottom:9px;font-size:11px;font-weight:800;display:block}.pricing-hero-content h3{color:var(--pricing-text);letter-spacing:-.035em;margin:0;font-size:clamp(23px,2vw,30px);font-weight:760}.pricing-hero-content p{color:var(--pricing-muted);margin:8px 0 0;font-size:14px;line-height:1.5}.pricing-hero-art{flex:0 0 255px;height:92px;margin-left:32px;position:relative}.pricing-hero-art:before{content:"";background:radial-gradient(circle at 22% 70%,#0088611a 0 16px,#0000 17px),radial-gradient(circle at 82% 62%,#00886114 0 19px,#0000 20px),linear-gradient(135deg,#00886108,#00886117);border-radius:80px 80px 15px 15px;width:230px;height:70px;position:absolute;bottom:0;right:0}.hero-building,.hero-document,.hero-discount{z-index:1;place-items:center;font-weight:800;display:grid;position:absolute;box-shadow:0 8px 24px #102c3d14}.hero-building{width:68px;height:62px;color:var(--pricing-primary);background:#f8fffc;border:5px solid #a7d8c6;border-radius:10px 10px 4px 4px;font-size:30px;bottom:10px;right:130px}.hero-document{width:62px;height:72px;color:var(--pricing-primary);background:#fff;border:4px solid #ad866e;border-radius:8px;font-size:25px;bottom:7px;right:58px}.hero-discount{color:#fff;background:#f5a734;border-radius:12px;width:48px;height:42px;font-size:21px;bottom:1px;right:19px;transform:rotate(-6deg)}.pricing-card{border:1px solid var(--pricing-border);background:#fff;border-radius:17px;box-shadow:0 10px 30px #1e374506}.pricing-editor{padding:22px}.pricing-filter-grid{grid-template-columns:repeat(5,minmax(150px,1fr));gap:15px;display:grid}.pricing-field{gap:8px;min-width:0;display:grid}.pricing-field-label{color:#526675;font-size:12px;font-weight:700}.pricing-control{border:1px solid var(--pricing-border-dark);background:#fff;border-radius:10px;align-items:center;min-width:0;min-height:53px;transition:border-color .16s,box-shadow .16s,background .16s;display:flex;overflow:hidden}.pricing-control:hover{border-color:#bccac4}.pricing-control:focus-within{border-color:var(--pricing-primary);box-shadow:0 0 0 3px #0088611a}.pricing-control-icon{color:#71818d;flex:0 0 48px;place-items:center;font-size:19px;display:grid}.pricing-money-icon{font-size:15px;font-weight:800}.pricing-control select,.pricing-control input{width:100%;min-width:0;height:51px;color:var(--pricing-text);font:inherit;background:0 0;border:0;outline:0;padding:0 14px 0 0;font-size:14px;font-weight:650}.pricing-control select{cursor:pointer}.pricing-control input::placeholder{color:#97a4ac;font-weight:500}.pricing-rate-control{padding-left:9px}.pricing-rate-prefix{color:#5f7180;background:#f1f4f5;border-radius:7px;flex:0 0 50px;place-items:center;height:36px;font-size:13px;font-weight:800;display:grid}.pricing-rate-control input{padding-left:14px}.pricing-default-area{border:1px solid var(--pricing-border-dark);background:var(--pricing-primary-soft);border-radius:12px;margin-top:18px;padding:16px}.default-area-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.default-area-heading>div{gap:3px;display:grid}.default-area-heading strong{font-size:14px}.default-area-heading small{color:var(--pricing-muted);font-size:12px}.default-status{border:1px solid var(--pricing-border-dark);color:var(--pricing-primary-dark);white-space:nowrap;background:#fff;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:750}.pricing-default-checkbox{color:var(--pricing-text);cursor:pointer;align-items:center;gap:8px;margin-top:12px;font-size:13px;display:flex}.pricing-default-checkbox input{width:16px;height:16px;accent-color:var(--pricing-primary);cursor:pointer}.pricing-promotion-area{background:#fffaf9;border:1px solid #f1dedb;border-radius:12px;margin-top:18px;padding:16px}.promotion-area-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.promotion-area-heading>div{gap:3px;display:grid}.promotion-area-heading strong{font-size:14px}.promotion-area-heading small{color:var(--pricing-muted);font-size:12px}.promotion-status{color:#d43f34;background:#ffe9e6;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:750}.pricing-promotion-grid{grid-template-columns:repeat(2,minmax(180px,280px));gap:14px;display:grid}.pricing-action-row{grid-template-columns:minmax(240px,1fr) minmax(260px,330px) minmax(270px,320px);align-items:stretch;gap:16px;margin-top:20px;display:grid}.pricing-select-all{cursor:pointer;border:1px solid var(--pricing-border-dark);background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:11px;min-height:52px;padding:8px 15px;transition:border-color .16s,background .16s;display:flex}.pricing-select-all:hover{background:#fbfdfc;border-color:#a8beb5}.pricing-select-all.is-checked{background:var(--pricing-primary-soft);border-color:#a9dac8}.pricing-select-all input,.pricing-table input[type=checkbox]{cursor:pointer;width:17px;height:17px;accent-color:var(--pricing-primary);margin:0}.pricing-select-all>span{gap:2px;display:grid}.pricing-select-all strong{font-size:13px}.pricing-select-all small{color:var(--pricing-muted);font-size:11px}.pricing-confirm-button,.pricing-end-promotion-button{cursor:pointer;min-height:52px;font:inherit;border-radius:10px;justify-content:center;align-items:center;gap:9px;padding:0 18px;font-size:13px;font-weight:750;transition:transform .15s,background .15s,border-color .15s,opacity .15s;display:inline-flex}.pricing-confirm-button{border:1px solid var(--pricing-primary);background:linear-gradient(135deg, var(--pricing-primary), #007957);color:#fff;box-shadow:0 8px 20px #00886129}.pricing-confirm-button:hover:not(:disabled){background:linear-gradient(135deg, #00966b, var(--pricing-primary-dark));transform:translateY(-1px)}.pricing-end-promotion-button{color:var(--pricing-danger);background:#fff;border:1px solid #ffaaa4}.pricing-end-promotion-button:hover:not(:disabled){border-color:var(--pricing-danger);background:var(--pricing-danger-soft)}.pricing-confirm-button:disabled,.pricing-end-promotion-button:disabled{cursor:not-allowed;box-shadow:none;opacity:.48}.pricing-button-icon{font-size:18px;line-height:1}.pricing-preview-card{padding:0 20px 12px}.pricing-preview-header{justify-content:space-between;align-items:center;gap:20px;min-height:66px;display:flex}.pricing-preview-title{align-items:center;gap:12px;display:flex}.pricing-preview-icon{background:var(--pricing-primary-soft);width:40px;height:40px;color:var(--pricing-primary);border-radius:50%;flex:0 0 40px;place-items:center;font-size:20px;font-weight:800;display:grid}.pricing-preview-title>div{gap:3px;display:grid}.pricing-preview-title strong{font-size:16px}.pricing-preview-title small{color:var(--pricing-muted);font-size:11px}.pricing-preview-count{color:#60727f;align-items:center;gap:6px;font-size:12px;display:flex}.pricing-preview-count>strong{color:var(--pricing-text);font-size:14px}.selected-count{background:var(--pricing-primary-soft);color:var(--pricing-primary);border-radius:999px;margin-left:7px;padding:5px 9px;font-size:11px;font-weight:750}.pricing-table-wrap{border:1px solid var(--pricing-border);background:#fff;border-radius:11px;overflow-x:auto}.pricing-table{border-collapse:collapse;table-layout:auto;width:100%;min-width:960px}.pricing-table th,.pricing-table td{text-align:left;vertical-align:middle;white-space:nowrap;border-bottom:1px solid #e8edef;padding:14px 16px}.pricing-table th{color:#697a86;letter-spacing:.025em;text-transform:uppercase;background:#fafbfb;font-size:10px;font-weight:800}.pricing-table td{color:#213d4d;font-size:12px}.pricing-table tbody tr{transition:background .15s}.pricing-table tbody tr:hover{background:#fbfdfc}.pricing-table tbody tr.is-selected{background:#f1faf7}.pricing-table tbody tr:last-child td{border-bottom:0}.pricing-checkbox-column{width:52px;text-align:center!important}.pricing-unit-cell{align-items:center;gap:9px;display:flex}.pricing-unit-cell strong{font-weight:700}.pricing-unit-icon{color:var(--pricing-primary);font-size:19px}.pricing-room-type{color:#4c626f;background:#f1f4f5;border-radius:999px;align-items:center;padding:5px 9px;font-size:11px;font-weight:700;display:inline-flex}.pricing-promotion-price{gap:3px;display:grid}.pricing-promotion-price strong{color:#d84a40}.pricing-promotion-price small{color:var(--pricing-muted);font-size:10px}.pricing-no-promotion{color:var(--pricing-danger);font-weight:700}.pricing-new-price{color:var(--pricing-primary)}.pricing-empty-state{height:170px;text-align:center!important;white-space:normal!important}.pricing-empty-state>*{display:block}.pricing-empty-state strong{margin-top:8px;font-size:14px}.pricing-empty-state span{color:var(--pricing-muted);margin-top:5px}.pricing-empty-icon{color:#9ab9ad;font-size:28px}.pricing-rates-section{min-width:0}@media (max-width:1250px){.pricing-filter-grid{grid-template-columns:repeat(3,minmax(180px,1fr))}.pricing-action-row{grid-template-columns:1fr 1fr}.pricing-select-all{grid-column:1/-1;justify-content:flex-start}}@media (max-width:820px){.pricing-hero{min-height:auto;padding:8px 4px}.pricing-hero-art{display:none}.pricing-editor{padding:16px}.pricing-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-promotion-grid{grid-template-columns:1fr 1fr}.pricing-action-row{grid-template-columns:1fr}.pricing-select-all{grid-column:auto}.pricing-preview-header{align-items:flex-start;padding:14px 0}.pricing-preview-title small{display:none}.pricing-preview-count{flex-wrap:wrap;justify-content:flex-end}}@media (max-width:560px){.pricing-filter-grid,.pricing-promotion-grid{grid-template-columns:1fr}.pricing-editor{border-radius:14px;padding:14px}.pricing-preview-card{padding-left:12px;padding-right:12px}.pricing-preview-header{gap:10px;display:grid}.pricing-preview-count{justify-content:flex-start;padding-left:52px}.promotion-area-heading{align-items:flex-start}}.hostel-directory,.unit-directory,.selected-hostel-card{--directory-green:#1f7a61;--directory-green-dark:#155e4a;--directory-green-soft:#e9f6f0;--directory-ink:#14313a;--directory-text:#33434d;--directory-muted:#73808a;--directory-line:#e5e9e7;--directory-surface:#fff;--directory-subtle:#f8faf9}.hostel-directory *,.unit-directory *,.selected-hostel-card *{box-sizing:border-box}.hostel-directory{border:1px solid var(--directory-line);background:var(--directory-surface);border-radius:18px;overflow:hidden;box-shadow:0 12px 34px #19332d09}.hostel-directory-title{border-bottom:1px solid var(--directory-line);justify-content:space-between;align-items:center;gap:24px;padding:23px 28px;display:flex}.hostel-directory-title>div{min-width:0}.hostel-directory-title small,.unit-directory-heading small,.selected-hostel-main small{color:var(--directory-green);letter-spacing:.085em;margin-bottom:7px;font-size:10px;font-weight:850;display:block}.hostel-directory-title h3,.unit-directory-heading h3,.selected-hostel-main h3{color:var(--directory-ink);letter-spacing:-.025em;margin:0;font-size:20px;font-weight:780}.hostel-directory-title p,.unit-directory-heading p,.selected-hostel-main p{color:var(--directory-muted);margin:6px 0 0;font-size:12px;line-height:1.5}.hostel-directory-count{background:var(--directory-green-soft);color:var(--directory-green-dark);border-radius:999px;flex:none;padding:8px 12px;font-size:11px;font-weight:800}.hostel-directory-scroll{overflow-x:auto}.hostel-directory-table{min-width:1160px}.hostel-directory-header,.hostel-directory-row{grid-template-columns:minmax(330px,2.15fr) 105px 145px 175px 175px 130px 135px;align-items:center;column-gap:22px;display:grid}.hostel-directory-header{border-bottom:1px solid var(--directory-line);color:#6c7780;letter-spacing:.055em;text-transform:uppercase;background:#fbfcfb;min-height:48px;padding:0 28px;font-size:10px;font-weight:850}.hostel-directory-row{cursor:pointer;border-bottom:1px solid var(--directory-line);background:#fff;outline:0;min-height:108px;padding:18px 28px;transition:background .15s,box-shadow .15s}.hostel-directory-row:last-child{border-bottom:0}.hostel-directory-row:hover,.hostel-directory-row:focus-visible{z-index:1;box-shadow:inset 4px 0 0 var(--directory-green);background:#fcfefd;position:relative}.hostel-directory-property{align-items:center;gap:16px;min-width:0;display:flex}.hostel-directory-badge,.selected-hostel-badge,.unit-directory-badge{color:#33434d;letter-spacing:.02em;background:#f3f5f4;border:1px solid #e0e4e2;border-radius:12px;flex:0 0 60px;place-items:center;width:60px;height:60px;font-size:16px;font-weight:750;display:grid}.hostel-directory-property>div{gap:6px;min-width:0;display:grid}.hostel-directory-property strong{color:#172d36;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:780;overflow:hidden}.hostel-directory-property small{color:#707b86;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.hostel-directory-number,.hostel-directory-copy{gap:5px;min-width:0;display:grid}.hostel-directory-number strong{color:var(--directory-ink);font-size:20px;font-weight:760}.hostel-directory-number small,.hostel-directory-copy small{color:var(--directory-muted);font-size:10px}.hostel-directory-copy>strong{color:#273a43;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:720;overflow:hidden}.hostel-directory-status{white-space:nowrap;border-radius:999px;align-items:center;gap:7px;width:fit-content;min-height:29px;padding:6px 11px;font-size:10px;font-weight:800;display:inline-flex}.hostel-directory-status:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.hostel-directory-status.available{color:#17633f;background:#ddf7e8}.hostel-directory-status.inactive{color:#a64239;background:#f4e7e5}.hostel-directory-services,.unit-directory-services{align-items:center;gap:8px;display:flex}.hostel-directory-services>span,.unit-directory-services>span{background:#fafcfb;border:1px solid #e2e7e4;border-radius:9px;gap:2px;min-width:58px;padding:7px 9px;display:grid}.hostel-directory-services b,.unit-directory-services b{color:#20363f;font-size:12px}.hostel-directory-services small,.unit-directory-services small{color:#79857f;font-size:9px}.hostel-directory-action,.unit-directory-action{justify-content:flex-end;display:flex}.hostel-directory-open,.unit-directory-open{color:#18363d;min-height:39px;font:inherit;white-space:nowrap;background:#fff;border:1px solid #d9e1dd;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-size:10px;font-weight:800;transition:transform .15s,border-color .15s,background .15s,color .15s;display:inline-flex}.hostel-directory-row:hover .hostel-directory-open,.hostel-directory-row:focus-visible .hostel-directory-open,.unit-directory-open:hover{border-color:var(--directory-green);background:var(--directory-green);color:#fff;transform:translateY(-1px)}.unit-directory-open{cursor:pointer}.hostel-directory-empty,.unit-directory-empty{text-align:center;align-content:center;place-items:center;gap:7px;min-height:250px;padding:34px;display:grid}.hostel-directory-empty>span,.unit-directory-empty>span{background:var(--directory-green-soft);width:54px;height:54px;color:var(--directory-green);border-radius:14px;place-items:center;margin-bottom:3px;font-size:13px;font-weight:850;display:grid}.hostel-directory-empty strong,.unit-directory-empty strong{color:var(--directory-ink);font-size:15px}.hostel-directory-empty p,.unit-directory-empty p{color:var(--directory-muted);margin:0 0 8px;font-size:11px}.hostel-unit-stage{gap:16px;display:grid}.hostel-unit-navigation{justify-content:space-between;align-items:center;gap:16px;min-height:34px;display:flex}.hostel-unit-navigation>span{color:#7a8580;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.hostel-unit-navigation>span b{color:#b0b8b4;padding:0 5px}.hostel-back-button{cursor:pointer;color:#244139;min-height:36px;font:inherit;background:#fff;border:1px solid #dce3df;border-radius:9px;align-items:center;gap:8px;padding:0 12px;font-size:11px;font-weight:780;transition:border-color .15s,background .15s;display:inline-flex}.hostel-back-button:hover{background:#f8fbf9;border-color:#b7c9c1}.selected-hostel-card{border:1px solid var(--directory-line);background:#fff;border-radius:17px;grid-template-columns:minmax(300px,1fr) minmax(440px,.9fr);align-items:center;gap:26px;padding:20px 24px;display:grid;box-shadow:0 10px 28px #19332d08}.selected-hostel-main{align-items:center;gap:16px;min-width:0;display:flex}.selected-hostel-main>div{min-width:0}.selected-hostel-main h3{font-size:18px}.selected-hostel-main p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.selected-hostel-badge{background:var(--directory-green-soft);color:var(--directory-green-dark);border-color:#cfe6dc}.selected-hostel-stats{grid-template-columns:repeat(4,minmax(90px,1fr));gap:10px;display:grid}.selected-hostel-stats>span{background:#fafcfb;border:1px solid #e4e9e6;border-radius:11px;align-content:center;gap:5px;min-height:68px;padding:10px 12px;display:grid}.selected-hostel-stats small{color:var(--directory-muted);letter-spacing:.025em;text-transform:uppercase;font-size:9px;font-weight:700}.selected-hostel-stats strong{color:var(--directory-ink);font-size:17px}.unit-directory{border:1px solid var(--directory-line);background:var(--directory-surface);border-radius:18px;overflow:hidden;box-shadow:0 12px 34px #19332d09}.unit-directory-heading{border-bottom:1px solid var(--directory-line);justify-content:space-between;align-items:center;gap:24px;padding:21px 24px 17px;display:flex}.unit-directory-heading>div{min-width:0}.unit-directory-heading>span{color:#64736c;background:#f0f4f2;border-radius:999px;flex:none;padding:7px 10px;font-size:10px;font-weight:750}.unit-directory-toolbar{border-bottom:1px solid var(--directory-line);background:#fff;gap:14px;padding:17px 24px;display:grid}.unit-directory-toolbar--nested{grid-template-columns:minmax(0,1fr) 190px 190px}.unit-directory-toolbar label{color:#69767f;letter-spacing:.07em;text-transform:uppercase;gap:7px;min-width:0;font-size:10px;font-weight:800;display:grid}.unit-directory-control{background:#fff;border:1px solid #dce2df;border-radius:10px;align-items:center;min-height:46px;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.unit-directory-control:hover{border-color:#bdc9c4}.unit-directory-control:focus-within{border-color:var(--directory-green);box-shadow:0 0 0 3px #1f7a611a}.unit-directory-control input,.unit-directory-control select{width:100%;min-width:0;height:44px;color:var(--directory-ink);font:inherit;text-transform:none;background:0 0;border:0;outline:0;padding:0 14px;font-size:13px;font-weight:650}.unit-directory-search-icon{flex:0 0 42px;width:42px;height:44px;position:relative}.unit-directory-search-icon:before{content:"";border:1.8px solid #82908a;border-radius:50%;width:10px;height:10px;position:absolute;top:14px;left:15px}.unit-directory-search-icon:after{transform-origin:0;content:"";background:#82908a;border-radius:999px;width:6px;height:1.8px;position:absolute;top:25px;left:25px;transform:rotate(45deg)}.unit-directory-search .unit-directory-control input{padding-left:0}.unit-directory-clear{cursor:pointer;color:#68756f;width:34px;height:34px;font:inherit;background:#f0f3f2;border:0;border-radius:50%;flex:0 0 34px;margin-right:6px;font-size:12px;font-weight:800}.unit-directory-clear:hover{background:#e5ebe8}.unit-directory-summary{border-bottom:1px solid var(--directory-line);background:var(--directory-subtle);justify-content:space-between;align-items:center;gap:20px;padding:12px 24px;display:flex}.unit-directory-summary>div{align-items:baseline;gap:7px;display:flex}.unit-directory-summary strong{color:var(--directory-ink);font-size:15px}.unit-directory-summary span{color:var(--directory-muted);font-size:11px}.unit-filter-reset{cursor:pointer;color:#355047;min-height:30px;font:inherit;background:#fff;border:1px solid #d9e1dd;border-radius:8px;padding:0 10px;font-size:10px;font-weight:760}.unit-filter-reset:disabled{cursor:default;opacity:.45}.unit-directory-scroll{overflow-x:auto}.unit-directory-table{min-width:1180px}.unit-directory-header,.unit-directory-row{grid-template-columns:minmax(320px,2.15fr) minmax(190px,1.25fr) 120px 145px 170px 150px 120px;align-items:center;column-gap:22px;display:grid}.unit-directory-header{border-bottom:1px solid var(--directory-line);color:#6c7780;letter-spacing:.055em;text-transform:uppercase;background:#fbfcfb;min-height:48px;padding:0 28px;font-size:10px;font-weight:850}.unit-directory-row{border-bottom:1px solid var(--directory-line);background:#fff;min-height:108px;padding:18px 28px;transition:background .15s,box-shadow .15s}.unit-directory-row:last-child{border-bottom:0}.unit-directory-row:hover{z-index:1;box-shadow:inset 4px 0 0 var(--directory-green);background:#fcfefd;position:relative}.unit-directory-property{align-items:center;gap:16px;min-width:0;display:flex}.unit-directory-property-copy{gap:6px;min-width:0;display:grid}.unit-directory-name-line{align-items:center;gap:9px;min-width:0;display:flex}.unit-directory-name-line strong{color:#172d36;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:780;overflow:hidden}.unit-directory-name-line code{color:#42534d;background:#edf1ef;border-radius:7px;align-items:center;min-height:24px;padding:3px 8px;font-family:inherit;font-size:10px;font-weight:800;display:inline-flex}.unit-directory-property-copy>small{color:#707b86;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.unit-directory-owner,.unit-directory-surrender{gap:5px;min-width:0;display:grid}.unit-directory-owner strong,.unit-directory-surrender strong{color:#273a43;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:720;overflow:hidden}.unit-directory-owner small,.unit-directory-surrender small{color:var(--directory-muted);font-size:10px}.unit-directory .gender-pill{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:28px;padding:5px 10px;font-size:10px;font-weight:800;display:inline-flex}.unit-directory-status{color:#17633f;white-space:nowrap;background:#e4f6ec;border-radius:999px;align-items:center;gap:7px;width:fit-content;min-height:30px;padding:6px 11px;font-size:10px;font-weight:800;display:inline-flex}.unit-directory-status:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.unit-directory-status.return-planned{color:#916613;background:#fff3d9}.unit-directory-status.surrendered,.unit-directory-status.inactive{color:#a64239;background:#f4e7e5}@media (max-width:1100px){.selected-hostel-card{grid-template-columns:1fr}.selected-hostel-stats{grid-template-columns:repeat(4,minmax(100px,1fr))}}@media (max-width:900px){.hostel-directory-title,.unit-directory-heading{align-items:flex-start}.unit-directory-toolbar--nested{grid-template-columns:1fr 1fr}.unit-directory-search{grid-column:1/-1}}@media (max-width:700px){.hostel-directory,.unit-directory{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.hostel-directory-title,.unit-directory-heading,.unit-directory-toolbar,.unit-directory-summary,.selected-hostel-card{border:1px solid var(--directory-line);background:#fff;border-radius:14px}.hostel-directory-title,.unit-directory-heading{gap:12px;display:grid}.hostel-directory-count,.unit-directory-heading>span{width:fit-content}.hostel-unit-navigation{align-items:flex-start}.hostel-unit-navigation>span{display:none}.selected-hostel-card{padding:17px}.selected-hostel-main{align-items:flex-start}.selected-hostel-stats{grid-template-columns:1fr 1fr}.unit-directory-toolbar--nested{grid-template-columns:1fr}.unit-directory-search{grid-column:auto}.unit-directory-summary{margin-top:10px}.hostel-directory-scroll,.unit-directory-scroll{overflow:visible}.hostel-directory-table,.unit-directory-table{min-width:0}.hostel-directory-header,.unit-directory-header{display:none}.hostel-directory-body,.unit-directory-body{gap:10px;display:grid}.hostel-directory-row,.unit-directory-row{border:1px solid var(--directory-line);border-radius:14px;grid-template-columns:1fr 1fr;gap:16px 12px;min-height:0;padding:17px}.hostel-directory-row:hover,.hostel-directory-row:focus-visible,.unit-directory-row:hover{box-shadow:none}.hostel-directory-property,.unit-directory-property,.unit-directory-owner,.hostel-directory-action,.unit-directory-action{grid-column:1/-1}.hostel-directory-open,.unit-directory-open{width:100%}}@media (max-width:480px){.hostel-directory-title,.unit-directory-heading,.unit-directory-toolbar,.unit-directory-summary{padding-left:15px;padding-right:15px}.selected-hostel-main{display:grid}.selected-hostel-stats{grid-template-columns:1fr}.unit-directory-summary{align-items:flex-start}}.student-hostel-page{--student-green:#1f8068;--student-green-dark:#176752;--student-green-soft:#edf8f4;--student-text:#123641;--student-muted:#6d7d87;--student-border:#e1e8e6;--student-surface:#fff;--student-soft:#f7f9f8;gap:20px;display:grid}.student-hostel-page,.student-hostel-page *{box-sizing:border-box}.student-directory-intro{align-items:center}.student-directory-intro h2{max-width:890px}.student-directory-metrics{margin-bottom:2px}.student-hostel-directory-panel{padding:0;overflow:hidden}.student-hostel-list-header,.student-hostel-row{grid-template-columns:minmax(360px,2.2fr) minmax(100px,.7fr) minmax(100px,.7fr) minmax(100px,.7fr) minmax(110px,.8fr) minmax(130px,.8fr);align-items:center;column-gap:22px;display:grid}.student-hostel-list-header{border-bottom:1px solid var(--student-border);color:#75828d;letter-spacing:.08em;text-transform:uppercase;background:#fafbfb;min-height:58px;padding:0 28px;font-size:11px;font-weight:800}.student-hostel-row{background:var(--student-surface);border-bottom:1px solid #edf1ef;min-height:112px;padding:20px 28px;transition:background .16s,box-shadow .16s}.student-hostel-row:last-child{border-bottom:0}.student-hostel-row:hover{z-index:1;box-shadow:inset 4px 0 0 var(--student-green);background:#fcfefd;position:relative}.student-hostel-property{align-items:center;gap:18px;min-width:0;display:flex}.student-hostel-avatar{color:#41515f;letter-spacing:.03em;background:#f3f5f6;border:1px solid #e2e7e8;border-radius:12px;flex:0 0 60px;place-items:center;width:60px;height:60px;font-size:17px;font-weight:700;display:grid}.student-hostel-avatar.large{background:var(--student-green-soft);width:72px;height:72px;color:var(--student-green-dark);border-color:#cfe8df;flex-basis:72px;font-size:20px}.student-hostel-property>div{min-width:0}.student-hostel-property strong{color:#172b38;margin-bottom:4px;font-size:16px;display:block}.student-hostel-property p{color:#687886;text-overflow:ellipsis;white-space:nowrap;max-width:560px;margin:0;font-size:13px;line-height:1.45;overflow:hidden}.student-hostel-property small{color:#8a969d;margin-top:7px;font-size:11px;font-weight:650;display:block}.student-hostel-stat{gap:3px;display:grid}.student-hostel-stat strong{color:#233745;font-size:18px;font-weight:760}.student-hostel-stat small{color:#839099;font-size:11px}.student-hostel-action{justify-content:flex-start;display:flex}.student-hostel-action button{min-width:116px}.student-selected-hostel{gap:12px;display:grid}.student-back-button{cursor:pointer;width:fit-content;color:var(--student-green-dark);font:inherit;background:0 0;border:0;padding:0;font-size:13px;font-weight:750}.student-back-button:hover{text-decoration:underline}.student-selected-hostel-card{border:1px solid var(--student-border);background:linear-gradient(90deg,#1f80680e,#0000 38%),#fff;border-radius:16px;align-items:center;gap:18px;min-height:112px;padding:20px 24px;display:flex;box-shadow:0 10px 28px #173a4109}.student-selected-hostel-copy{min-width:0}.student-selected-hostel-copy>small{color:var(--student-green);letter-spacing:.1em;font-size:10px;font-weight:850}.student-selected-hostel-copy h3{color:var(--student-text);letter-spacing:-.02em;margin:5px 0 4px;font-size:22px}.student-selected-hostel-copy p{color:var(--student-muted);margin:0;font-size:13px;line-height:1.45}.student-selected-hostel-total{border-left:1px solid var(--student-border);text-align:right;min-width:120px;margin-left:auto;padding-left:24px;display:grid}.student-selected-hostel-total small{color:var(--student-muted);font-size:11px}.student-selected-hostel-total strong{color:var(--student-text);margin-top:2px;font-size:30px}.student-filter-panel{padding:0;overflow:hidden}.student-filter-panel .workspace-tabs{border-bottom:1px solid var(--student-border);padding:0 20px}.student-second-level-filters{grid-template-columns:minmax(320px,1.8fr) repeat(3,minmax(160px,.8fr));gap:14px;padding:18px 20px 20px;display:grid}.student-second-level-filters label{color:#64737d;gap:7px;min-width:0;font-size:11px;font-weight:750;display:grid}.student-second-level-filters input,.student-second-level-filters select{color:#243844;width:100%;min-width:0;min-height:48px;font:inherit;background:#fff;border:1px solid #dce4e1;border-radius:10px;outline:none;padding:0 14px;font-size:13px;font-weight:600;transition:border-color .15s,box-shadow .15s}.student-second-level-filters input:focus,.student-second-level-filters select:focus{border-color:var(--student-green);box-shadow:0 0 0 3px #1f80681a}.student-search-field{grid-column:auto}.student-reset-button{grid-column:1/-1;width:100%;min-height:44px}.student-results-panel{padding:0;overflow:hidden}.student-results-heading{border-bottom:1px solid var(--student-border);justify-content:space-between;align-items:center;gap:18px;min-height:70px;padding:14px 20px;display:flex}.student-results-heading>div{gap:3px;display:grid}.student-results-heading small{color:var(--student-green);letter-spacing:.09em;font-size:10px;font-weight:850}.student-results-heading h3{color:var(--student-text);margin:0;font-size:16px}.student-results-heading>span{background:var(--student-green-soft);color:var(--student-green-dark);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:750}.student-table-wrap{border:0;border-radius:0}.student-table-wrap table{min-width:1180px}.student-table-wrap th,.student-table-wrap td{padding-top:15px;padding-bottom:15px}.student-table-wrap td:last-child,.student-table-wrap th:last-child{text-align:right}.student-empty-state{text-align:center;place-content:center;gap:6px;min-height:190px;display:grid}.student-empty-state strong{color:var(--student-text);font-size:15px}.student-empty-state span{color:var(--student-muted);font-size:12px}.student-pagination{border-top:1px solid var(--student-border);color:#74828b;justify-content:space-between;align-items:center;gap:18px;min-height:66px;padding:12px 20px;font-size:12px;display:flex}.student-pagination-buttons{align-items:center;gap:7px;display:flex}.student-page-button{cursor:pointer;color:#65747e;width:36px;height:36px;font:inherit;background:#fff;border:1px solid #dfe6e3;border-radius:9px;place-items:center;font-size:12px;font-weight:700;display:grid}.student-page-button:hover{color:var(--student-green-dark);border-color:#a8c8bc}.student-page-button.active{border-color:var(--student-green);background:var(--student-green-soft);color:var(--student-green-dark);box-shadow:inset 0 0 0 1px #1f80681f}.student-pagination-ellipsis{color:#8a979f;text-align:center;min-width:24px}.student-hostel-scope-note{background:var(--student-green-soft);color:var(--student-green-dark);border:1px solid #cfe8df;border-radius:10px;padding:12px 14px;font-size:12px}@media (max-width:1250px){.student-hostel-list-header,.student-hostel-row{grid-template-columns:minmax(320px,2fr) repeat(4,minmax(88px,.7fr)) minmax(122px,.8fr);column-gap:14px}.student-second-level-filters{grid-template-columns:repeat(2,minmax(220px,1fr))}.student-search-field{grid-column:1/-1}}@media (max-width:920px){.student-hostel-list-header{display:none}.student-hostel-list{gap:12px;padding:14px;display:grid}.student-hostel-row{border:1px solid var(--student-border);border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;min-height:auto;padding:18px}.student-hostel-property,.student-hostel-action{grid-column:1/-1}.student-hostel-action button{width:100%}.student-selected-hostel-card{align-items:flex-start}.student-selected-hostel-total{min-width:96px}.student-results-heading{align-items:flex-start}}@media (max-width:650px){.student-hostel-page{gap:15px}.student-hostel-row{grid-template-columns:repeat(2,minmax(0,1fr))}.student-hostel-property{align-items:flex-start}.student-hostel-property p{white-space:normal}.student-selected-hostel-card{grid-template-columns:auto 1fr;display:grid}.student-selected-hostel-total{border-top:1px solid var(--student-border);text-align:left;border-left:0;grid-column:1/-1;margin:0;padding:13px 0 0}.student-second-level-filters{grid-template-columns:1fr;padding:15px}.student-search-field,.student-reset-button{grid-column:auto}.student-results-heading{display:grid}.student-results-heading>span{width:fit-content}.student-pagination{flex-direction:column;align-items:flex-start}.student-pagination-buttons{width:100%;padding-bottom:2px;overflow-x:auto}}.table-v2 .v2-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fafbf9;flex-wrap:wrap;align-items:center;gap:12px;padding:16px 22px;display:flex}.table-v2 .v2-search{border:1px solid var(--line);background:#fff;border-radius:999px;flex:260px;align-items:center;gap:10px;min-width:220px;height:46px;padding:0 18px;display:flex}.table-v2 .v2-search svg{color:var(--muted);flex:none}.table-v2 .v2-search input{color:var(--ink);font-size:var(--text-sm);background:0 0;border:0;outline:0;flex:1}.table-v2 .v2-pill-select{border:1px solid var(--line);height:46px;color:var(--ink);font-size:var(--text-sm);background:#fff;border-radius:999px;padding:0 18px;font-weight:700}.table-v2 .v2-pill-select:focus,.table-v2 .v2-search input:focus{outline:0}.table-v2 .v2-search:focus-within{border-color:#68a894;box-shadow:0 0 0 3px #2676611a}.table-v2 .v2-reset{border:1px solid var(--line);height:46px;color:var(--ink);font-size:var(--text-sm);cursor:pointer;background:#fff;border-radius:999px;padding:0 20px;font-weight:700}.table-v2 .v2-reset:hover{border-color:#9db4ad}.table-v2 .v2-date-field{border:1px solid var(--line);height:46px;font-size:var(--text-sm);color:var(--ink);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-weight:700;display:flex}.table-v2 .v2-date-field input{color:var(--ink);font-size:var(--text-sm);background:0 0;border:0;outline:0}.table-v2 .v2-btn-primary{color:#fff;background:var(--green);height:46px;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 22px;font-weight:700;display:inline-flex}.table-v2 .v2-btn-primary:hover{background:#1d6553}.table-v2 table{border-collapse:collapse;width:100%;min-width:880px}.table-v2 th{color:#66787b;border-bottom:1px solid var(--line);font-size:var(--text-xs);letter-spacing:.06em;text-align:left;text-transform:uppercase;white-space:nowrap;background:#fbfcfa;padding:15px 20px;font-weight:800}.table-v2 td{color:#344b51;font-size:var(--text-base);vertical-align:middle;border-bottom:1px solid #e4e8e5;padding:16px 20px}.table-v2 td strong{color:var(--ink);font-size:var(--text-base);display:block}.table-v2 td small{color:#8b989a;font-size:var(--text-xs);margin-top:4px;display:block}.table-v2 code{color:#35545b;font-family:Consolas,monospace;font-size:var(--text-sm);white-space:nowrap;background:#edf1ef;border-radius:7px;padding:6px 10px;display:inline-block}.table-v2 tbody tr.v2-row-clickable{cursor:pointer}.table-v2 tbody tr.v2-row-clickable:hover{background:#fbfdfb}.table-v2 tbody tr.v2-row-expanded{background:#f3f8f5}.table-v2 .v2-row-lead{align-items:center;gap:12px;display:flex}.table-v2 .v2-chevron{border:1px solid var(--line);width:30px;height:30px;color:var(--muted);cursor:pointer;background:#fff;border-radius:9px;flex:none;justify-content:center;align-items:center;transition:transform .15s,color .15s,border-color .15s;display:inline-flex}.table-v2 .v2-chevron.expanded{color:var(--green);border-color:#9dc7b9;transform:rotate(90deg)}.table-v2 .status-pill{font-size:var(--text-xs);white-space:nowrap;border-radius:999px;align-items:center;padding:6px 14px;font-weight:800;display:inline-flex}.table-v2 .status-pill.status-available,.table-v2 .status-pill.status-active,.table-v2 .status-pill.status-current{color:#1c6b55;background:#dff2e9}.table-v2 .status-pill.status-reserved,.table-v2 .status-pill.status-due{color:#9d5225;background:#ffe9db}.table-v2 .status-pill.status-rented,.table-v2 .status-pill.status-advance{color:#235e9b;background:#e5f0fd}.table-v2 .status-pill.status-inactive,.table-v2 .status-pill.status-ended,.table-v2 .status-pill.status-closed,.table-v2 .status-pill.status-moved-out,.table-v2 .status-pill.status-terminated{color:#5b6a6d;background:#eef1ef}.table-v2 .status-pill.status-submitted{color:#276092;background:#e4f0fb}.table-v2 .status-pill.status-attended,.table-v2 .status-pill.status-in-progress,.table-v2 .status-pill.status-waiting-parts{color:#835f15;background:#fff1ce}.table-v2 .status-pill.status-completed{color:#1c6b55;background:#dff2e9}.table-v2 .status-pill.status-return-planned{color:#9d5225;background:#ffe9db}.table-v2 .status-pill.status-surrendered{color:#5b6a6d;background:#eef1ef}.table-v2 .status-pill.status-full,.table-v2 .status-pill.status-paid,.table-v2 .status-pill.status-approved{color:#1c6b55;background:#dff2e9}.table-v2 .status-pill.status-unpaid{color:#7a6560;background:#eeeae8}.table-v2 .status-pill.status-admin-fee{color:#8a5d1d;background:#fff0d7}.table-v2 .status-pill.status-partial{color:#3d5d94;background:#e7eefb}.table-v2 .status-pill.status-pending{color:#9d5225;background:#ffe9db}.table-v2 .v2-pending-badge{color:#9d5225;font-size:var(--text-xs);white-space:nowrap;background:#ffe9db;border-radius:999px;flex:none;padding:8px 14px;font-weight:800}table.finance-invoices{table-layout:fixed;width:100%;min-width:0}.finance-invoices th:first-child,.finance-invoices td:first-child{width:15%}.finance-invoices th:nth-child(2),.finance-invoices td:nth-child(2){width:19%}.finance-invoices th:nth-child(3),.finance-invoices td:nth-child(3){width:24%}.finance-invoices th:nth-child(4),.finance-invoices td:nth-child(4){width:18%}.finance-invoices th:nth-child(5),.finance-invoices td:nth-child(5){width:9%}.finance-invoices th:nth-child(6),.finance-invoices td:nth-child(6){width:8%}.finance-invoices th:nth-child(7),.finance-invoices td:nth-child(7){width:7%}.finance-invoices td:not(:hover){overflow:hidden}.table-v2 .v2-expand-panel .conversation{max-height:340px;padding-right:4px;overflow-y:auto}.table-v2 .v2-expand-row td{background:#f6f9f7;border-bottom:2px solid #dbe6e1;padding:0}.table-v2 .v2-expand-panel{padding:26px 28px 28px}.table-v2 .v2-add-panel{background:#f6f9f7;border:1px solid #dbe6e1;border-radius:16px;margin:0 22px 22px;padding:26px 28px 28px}.table-v2 .v2-add-panel:first-child,.table-v2 .v2-toolbar+.v2-add-panel{margin-top:22px}.table-v2 .v2-expand-panel .form-grid,.table-v2 .v2-add-panel .form-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.table-v2 .v2-expand-panel .form-grid .wide,.table-v2 .v2-add-panel .form-grid .wide{grid-column:1/-1}.table-v2 .v2-expand-panel label,.table-v2 .v2-add-panel label{color:#6b7b7d;font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;flex-direction:column;gap:7px;font-weight:800;display:flex}.table-v2 .v2-expand-panel input,.table-v2 .v2-expand-panel select,.table-v2 .v2-expand-panel textarea,.table-v2 .v2-add-panel input,.table-v2 .v2-add-panel select,.table-v2 .v2-add-panel textarea{height:46px;color:var(--ink);font-size:var(--text-base);background:#fff;border:1px solid #ccd6d2;border-radius:9px;padding:0 14px}.table-v2 .v2-expand-panel textarea,.table-v2 .v2-add-panel textarea{height:auto;min-height:88px;padding:10px 14px}.table-v2 .v2-expand-panel input:focus,.table-v2 .v2-expand-panel select:focus,.table-v2 .v2-add-panel input:focus,.table-v2 .v2-add-panel select:focus{border-color:#68a894;box-shadow:0 0 0 3px #2676611a}.table-v2 .v2-panel-heading{color:var(--deep);font-family:Georgia,serif;font-size:var(--text-lg);margin:0 0 20px;font-weight:500}.table-v2 .v2-panel-actions{border-top:1px dashed #cdd9d4;justify-content:flex-end;align-items:center;gap:12px;margin-top:20px;padding-top:20px;display:flex}.table-v2 .v2-panel-actions .v2-danger-zone{flex:1;align-items:center;gap:12px;display:flex}.table-v2 .v2-panel-actions .v2-danger-zone span{color:#8b989a;font-size:var(--text-sm)}.table-v2 .v2-btn-ghost,.table-v2 .v2-btn-danger{height:44px;font-size:var(--text-sm);cursor:pointer;border-radius:999px;padding:0 18px;font-weight:700}.table-v2 .v2-btn-ghost{color:var(--ink);border:1px solid var(--line);background:#fff}.table-v2 .v2-btn-ghost:hover{border-color:#9db4ad}.table-v2 .v2-btn-danger{color:#a5372c;background:#fbe6e2;border:1px solid #f0c3ba}.table-v2 .v2-btn-danger:hover{background:#f7d5cd}.table-v2 td>strong,.table-v2 td>small,.table-v2 td>code{text-overflow:ellipsis;white-space:nowrap;max-width:220px;display:block;overflow:hidden}.table-v2 tbody td:hover{z-index:20;background:#fff;border-radius:10px;position:relative;box-shadow:0 10px 28px #0f282d2e}.table-v2 tbody td:hover>strong,.table-v2 tbody td:hover>small,.table-v2 tbody td:hover>code{white-space:normal;text-overflow:clip;max-width:none;overflow:visible}@media (max-width:1100px){.table-v2 .v2-expand-panel .form-grid,.table-v2 .v2-add-panel .form-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.table-v2 .v2-toolbar{flex-direction:column;align-items:stretch}.table-v2 .v2-expand-panel .form-grid,.table-v2 .v2-add-panel .form-grid{grid-template-columns:1fr}.table-v2 .v2-add-panel{margin:0 14px 14px}}
