@font-face{font-family:Inter;src:url('assets/inter.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}html{font-size:14px}body{margin:0;background:#f5f6f8;color:#242c2b;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible,a:focus-visible{outline:3px solid #78a240;outline-offset:4px}input:focus,select:focus,textarea:focus{outline:2px solid #759b57;outline-offset:1px}h1,h2,h3,p{margin:0}h1{font-size:30px;letter-spacing:-1.1px;font-weight:600}h2{font-size:17px;letter-spacing:-.4px;font-weight:600}h3{font-size:16px;font-weight:600}small{font-size:12px;color:#7b8581}strong{font-weight:600}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:#fff;border-right:1px solid #e4e8e5;display:flex;flex-direction:column;padding:31px 18px 0;z-index:30}.brand{display:flex;align-items:center;gap:10px;padding-left:14px;font-size:36px;font-weight:650;letter-spacing:-1.8px;line-height:1}.brand-mark{display:grid;place-items:center;background:#193f34;color:#d4ee9b;border-radius:10px;width:37px;height:39px;font-size:25px;font-style:italic;letter-spacing:-4px;padding-right:5px}.brand-dot{font-size:13px;align-self:flex-start;margin-top:3px;letter-spacing:0}.workspace{display:flex;gap:11px;border:1px solid #e5e9e7;border-radius:9px;padding:12px 9px;margin-top:34px;align-items:center}.workspace strong{font-size:13px}.workspace small{display:block;font-size:10px}.workspace-icon{width:30px;height:32px;background:#f0f3ef;border-radius:7px;display:grid;place-items:center;color:#56704e}.nav-label{font-size:10px;letter-spacing:1.1px;color:#9aa29f;padding:29px 13px 11px}nav{display:grid;gap:5px}nav a{display:flex;align-items:center;gap:12px;padding:11px 14px;color:#78807c;border-radius:7px;font-size:14px}nav a:hover{background:#f5f7f4;color:#254c3c}nav a.active{background:#eaf1e3;color:#325638;font-weight:600}nav a span:last-child.count{margin-left:auto;background:#e1e9d7;padding:1px 7px;font-size:11px;border-radius:4px}.sidebar-bottom{margin-top:auto}.demo-note{margin:24px 10px;font-size:12px;color:#426347}.demo-note p{color:#8a938e;font-size:11px;margin-top:8px;line-height:1.7}.live-dot{display:inline-block;width:6px;height:6px;background:#71954f;border-radius:50%;margin-right:6px}.profile{display:flex;align-items:center;gap:11px;padding:21px 6px;border-top:1px solid #e8ece9}.avatar{background:#f0e9dd;color:#87704f;width:37px;height:37px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:600;flex-shrink:0}.avatar.small{width:30px;height:30px;font-size:10px}.profile strong{font-size:12px}.profile small{display:block;font-size:10px}.profile-arrow{margin-left:auto;color:#9da5a0}.shell{margin-left:238px}.topbar{height:80px;display:flex;justify-content:space-between;align-items:center;padding:0 38px;border-bottom:1px solid #e4e8e5;background:#fff}.crumb{display:flex;align-items:center;gap:18px;font-size:12px;color:#8c9490}.crumb strong{font-weight:500;color:#3c4740}.slash{color:#c3c8c4}.top-actions{display:flex;align-items:center;gap:24px}.demo-tag{font-size:9px;letter-spacing:1px;border:1px solid #e4e9df;background:#fafbf8;color:#799064;padding:4px 8px;border-radius:4px}.icon-button{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:#6f7c73;padding:6px;border-radius:6px;position:relative}.icon-button:hover{background:#eaf0e5}.notification-button i{position:absolute;right:5px;top:5px;background:#af744f;width:6px;height:6px;border-radius:100%;border:1px solid white}.menu-toggle{display:none}main{padding:34px 38px 20px;max-width:1760px;margin:auto;min-height:calc(100vh - 139px)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}.eyebrow{font-size:11px;letter-spacing:1px;color:#8a948d;margin-bottom:5px}.subtitle{font-size:13px;color:#8a938e;margin-top:7px}.actions{display:flex;align-items:center;gap:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:39px;padding:9px 15px;background:white;border:1px solid #dde3de;border-radius:7px;color:#515f55;font-size:12px;white-space:nowrap}.button:hover{background:#f0f4ec}.button.primary{background:#274c38;color:#fff;border-color:#274c38}.button.primary:hover{background:#376444}.button.danger{color:#a3453b;border-color:#efccc8}.button svg{width:16px;height:16px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:24px}.stat{background:white;border:1px solid #e5e9e5;border-radius:10px;padding:20px 21px;position:relative}.stat .stat-label{color:#7c877f;font-size:12px;display:flex;align-items:center;justify-content:space-between}.stat .stat-label svg{width:17px;height:17px;color:#a4aea6}.stat-value{font-size:29px;font-weight:550;letter-spacing:-1px;line-height:1.25;margin:17px 0 11px;white-space:nowrap}.stat-caption{color:#98a099;font-size:10px}.trend{color:#5e8349;background:#f0f6e9;padding:3px 5px;border-radius:4px;margin-right:5px;font-size:10px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(260px,1fr);gap:23px}.panel{background:white;border:1px solid #e3e8e3;border-radius:10px;overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:22px 23px 17px;gap:12px}.panel-head p{font-size:11px;color:#929b94;margin-top:3px}.text-link{font-size:11px;color:#627a50;display:inline-flex;gap:6px;align-items:center;background:transparent;padding:3px}.text-link:hover{text-decoration:underline}.chart-key{display:flex;gap:15px;font-size:10px;color:#8d968e}.chart-key span:before{content:'';display:inline-block;width:7px;height:7px;border-radius:2px;background:#c8dda6;margin-right:6px}.chart-key span:last-child:before{background:#eaf0e4}.chart{height:202px;padding:8px 24px 15px;display:flex;gap:12px}.y-axis{width:33px;display:flex;flex-direction:column;justify-content:space-between;color:#9ba39c;font-size:9px;padding-bottom:25px}.bars{display:flex;align-items:stretch;justify-content:space-around;gap:12px;flex:1;background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),#eef1ed calc(25% - 1px),#eef1ed 25%);margin-bottom:25px}.bar-col{position:relative;flex:1;max-width:46px;display:flex;align-items:end;gap:4px}.bar{width:100%;background:#d7e6bb;border-radius:4px 4px 0 0;min-height:2px}.bar-col:last-child .bar{background:#80a466}.bar-label{position:absolute;bottom:-24px;left:50%;transform:translateX(-50%);font-size:10px;color:#8e988f}.chart-summary{padding:14px 23px;border-top:1px solid #edf0eb;display:flex;justify-content:space-between;font-size:11px;color:#89948b}.chart-summary strong{color:#4e6848;font-weight:500}.occupancy{padding:0 22px 15px}.occupancy-line{display:flex;justify-content:space-between;font-size:12px;margin:17px 0 7px}.occupancy-line span:last-child{color:#899680;font-size:11px}.progress{height:5px;background:#f0f3ec;border-radius:5px;overflow:hidden}.progress span{display:block;background:#b3ca94;height:100%;border-radius:5px}.occupancy-foot{display:flex;gap:9px;padding:15px 22px;background:#fafbf8;border-top:1px solid #edf1e9;color:#7c8c71;font-size:11px}.wide{grid-column:1/-1}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{font-size:10px;font-weight:500;color:#939d95;background:#fafbf9;padding:11px 21px;border-bottom:1px solid #edf0ea}td{font-size:12px;padding:17px 21px;border-bottom:1px solid #edf0ea}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafcf7}.guest{display:flex;align-items:center;gap:10px}.guest .avatar{width:31px;height:31px;font-size:10px;background:#f1ede6}.guest small{display:block;font-size:10px;margin-top:2px;color:#98a097}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:5px;font-size:10px;background:#eef4e7;color:#789251;white-space:nowrap}.badge.blue{background:#edf2f7;color:#6c8ba0}.badge.orange{background:#fcf3e8;color:#b18c57}.badge.red{background:#faedea;color:#b77970}.badge.gray{background:#f0f1ef;color:#969d95}.amount{font-variant-numeric:tabular-nums;font-weight:500}.activity{padding:0 23px 10px}.activity-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #f0f2ed}.activity-item:last-child{border:0}.activity-icon{width:32px;height:32px;border-radius:8px;background:#f2f6ed;color:#809668;display:grid;place-items:center;flex-shrink:0}.activity-icon svg{width:16px;height:16px}.activity-item strong{font-size:11px;font-weight:500}.activity-item p{font-size:10px;color:#9aa197;margin-top:3px}.task-mini{display:flex;gap:11px;align-items:center;padding:15px 23px;border-bottom:1px solid #edf0ea}.task-mini:last-child{border:0}.task-mini strong{display:block;font-size:12px;font-weight:500}.task-mini small{font-size:10px}.check-button{border:1px solid #dce4d5;width:20px;height:20px;border-radius:5px;background:#fff;color:#668447;padding:0;flex-shrink:0}.check-button.done{background:#edf3e5}.task-mini>.badge{margin-left:auto}footer{padding:18px 38px;display:flex;justify-content:space-between;color:#a0a89f;font-size:9px;letter-spacing:.8px}footer span{letter-spacing:0}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:9px;background:white;border:1px solid #e0e6dc;border-radius:7px;padding:0 12px;min-width:240px}.search-box svg{width:17px;color:#899681}.search-box input{border:0;background:transparent;padding:10px 0;width:100%;font-size:12px;outline:none}.toolbar select,.field input,.field select,.field textarea{border:1px solid #dfe5da;border-radius:7px;background:white;color:#42523d;padding:10px 12px;font-size:13px}.toolbar select{min-height:40px}.result-count{margin-left:auto;font-size:11px;color:#8e9a88}.properties{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.property-card{background:#fff;border:1px solid #e0e6dc;border-radius:10px;overflow:hidden}.property-image{height:180px;position:relative;overflow:hidden}.property-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.property-card:hover img{transform:scale(1.035)}.property-image .badge{position:absolute;left:14px;top:14px;background:#fff}.property-content{padding:19px}.property-content p{font-size:11px;color:#8c9686;margin-top:5px}.property-details{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #edf1e8;margin-top:16px;padding-top:14px}.property-details strong{font-size:17px}.property-details small{font-size:10px;font-weight:400}.empty{text-align:center;padding:65px 20px;color:#909c86}.empty strong{display:block;color:#465c38;font-size:18px;margin-bottom:8px}.calendar-scroll{overflow:auto}.calendar{min-width:1050px;display:grid;grid-template-columns:190px repeat(14,minmax(53px,1fr))}.cal-heading{padding:15px 5px;text-align:center;background:#fafcf7;font-size:12px;border-bottom:1px solid #e8eee1;color:#758766}.cal-heading small{display:block;font-size:9px}.cal-property{font-size:12px;padding:25px 16px;border-bottom:1px solid #e9eee3;background:#fff;position:sticky;left:0;z-index:2}.cal-property small{display:block;font-size:10px}.cal-row{grid-column:2/-1;display:grid;grid-template-columns:repeat(14,minmax(0,1fr));position:relative;min-height:83px;border-bottom:1px solid #e9eee3}.cal-cell{grid-row:1;min-height:82px;background:white;border-right:1px solid #edf1e8;color:#c1cdb7;font-size:18px}.cal-cell:hover{background:#eef5e4}.cal-cell.today{background:#f5f9ef}.cal-booking{grid-row:1;z-index:1;align-self:center;overflow:hidden;text-align:left;margin:0 3px;padding:9px 8px;border-radius:5px;background:#e6efda;color:#668444;border-left:3px solid #a3bc7c;white-space:nowrap;font-size:10px;min-width:0}.cal-booking.blue{background:#e9f0f6;color:#6c8da0;border-color:#abc7d7}.calendar-legend{display:flex;gap:14px;padding:18px 22px;font-size:11px;color:#839575}.kanban{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.kanban-col{background:#edf0e9;border-radius:10px;padding:15px;min-height:300px}.kanban-title{display:flex;justify-content:space-between;font-size:12px;margin-bottom:18px;color:#6b7d5c}.task-card{padding:18px;background:white;border:1px solid #e3e9dc;border-radius:8px;margin-bottom:12px}.task-card h3{font-size:14px;margin:12px 0 7px}.task-card p{font-size:11px;color:#8f9b84}.task-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.task-bottom select{max-width:145px;font-size:11px;border:1px solid #e2e9da;padding:6px;background:white;border-radius:5px}.notifications{max-width:950px}.notification-row{display:flex;gap:18px;padding:23px;border-bottom:1px solid #e7edde}.notification-row.unread{background:#fafff2}.notification-row h3{font-size:14px}.notification-row p{font-size:12px;color:#819071;margin-top:5px}.notification-row .text-link{margin-left:auto;align-self:center}.settings-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:24px}.form-body{padding:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#77866a}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{width:100%}.field textarea{resize:vertical;min-height:80px}.form-footer{display:flex;justify-content:flex-end;gap:10px;padding:18px 24px;border-top:1px solid #e8eddf}.detail-image{width:100%;height:190px;object-fit:cover;border-radius:8px;margin-bottom:20px}.detail-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:15px 0 23px}.detail-stats span{display:block;font-size:11px;color:#8c997f}.detail-stats strong{font-size:17px}dialog{border:1px solid #e0e8d8;border-radius:13px;padding:0;width:min(560px,calc(100% - 28px));max-height:90vh;color:#33452c;background:white;box-shadow:0 25px 100px #1c2d2330}dialog::backdrop{background:#17261e66;backdrop-filter:blur(3px)}.dialog-header{padding:23px 24px 17px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8edde}.dialog-content{padding:24px}.dialog-content>p{color:#8b987e;font-size:13px;margin-bottom:20px}.dialog-header h2{font-size:20px}#toast{position:fixed;bottom:25px;left:calc(50% + 100px);transform:translateX(-50%) translateY(100px);padding:13px 22px;background:#244831;color:white;border-radius:8px;z-index:100;box-shadow:0 8px 25px #14231a22;transition:transform .2s;font-size:13px;max-width:90vw}#toast.visible{transform:translateX(-50%) translateY(0)}.error{color:#b15040;font-size:12px;margin-top:14px}.hint{font-size:12px;color:#8c9a80}.skip{position:fixed;top:-50px;left:10px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}.month-select{padding:6px 9px;border:1px solid #e2e8dc;background:#fff;border-radius:5px;color:#7f8e71;font-size:10px}.check-label{display:flex;gap:10px;align-items:center;font-size:13px;color:#6b7f59;margin:10px 0}.check-label input{accent-color:#66884b}.notice{padding:18px 22px;background:#f7faef;font-size:12px;color:#7a8e67;border-radius:8px;line-height:1.7}.finance-table{margin-top:24px}@media(min-width:1600px){main{padding-top:42px}.stat{padding:25px}.chart{height:240px}}@media(max-width:1180px){.sidebar{width:210px;padding-inline:12px}.shell{margin-left:210px}main{padding:26px 24px}.topbar{padding:0 24px}.dashboard-grid{grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr)}.stat{padding:16px}.stat-value{font-size:24px}.properties{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading{align-items:flex-start}.stats{gap:12px}.actions{flex-wrap:wrap;justify-content:flex-end}.chart-key{display:none}}@media(max-width:950px){.sidebar{width:190px}.shell{margin-left:190px}.workspace{padding:8px 6px}.workspace small{font-size:8px}.nav-label{font-size:9px}.dashboard-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.wide{grid-column:auto}.kanban{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.page-heading{flex-wrap:wrap}.chart{height:230px}.demo-tag{display:none}.stat-value{font-size:28px}.profile strong{font-size:11px}.brand{font-size:32px}}@media(max-width:680px){.sidebar{transform:translateX(-100%);width:238px;box-shadow:8px 0 30px #18272020;transition:transform .2s}.sidebar.open{transform:translateX(0)}.shell{margin-left:0}.menu-toggle{display:inline-flex}.topbar{height:64px;padding:0 17px}.crumb{gap:10px}.crumb>span:first-of-type{display:none}.slash{display:none}.top-actions{gap:12px}main{padding:23px 16px}h1{font-size:26px}.page-heading{gap:16px;margin-bottom:22px}.actions{width:100%;justify-content:flex-start}.stats{gap:10px}.stat{padding:15px}.stat-value{font-size:24px}.stat-caption{font-size:9px}.trend{display:inline-block;margin-bottom:3px}.properties{grid-template-columns:1fr}.panel-head{padding:19px 17px}.toolbar>*{max-width:100%}.search-box{min-width:100%}.result-count{margin-left:0}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.topbar .avatar{display:none}footer{padding:20px 16px;font-size:8px;gap:20px}#toast{left:50%}.notification-row{padding:17px;gap:12px}.notification-row .text-link{font-size:10px}.form-body,.dialog-content{padding:20px}.detail-stats strong{font-size:15px}.chart{padding-inline:15px}.bars{gap:8px}.button{font-size:11px}}

/* Keep all navigation reachable on short displays. */
.sidebar{overflow-y:auto}.brand,.workspace,.nav-label,nav,.sidebar-bottom{flex-shrink:0}.y-axis{width:43px;white-space:nowrap}.badge{font-size:11px}.cal-heading small{font-size:11px}.cal-booking{font-size:11px}.calendar-legend{flex-wrap:wrap}.task-mini .badge{flex-shrink:0}
