@layer reset,base,components,responsive;@layer reset{*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}svg{flex-shrink:0;vertical-align:middle}}@layer base{:root{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;color:#263d34;background:#f8f9f6;font-synthesis:none;--green: #284d3d;--muted: #737e76;--line: #e3e7df}body{font-size:14px;line-height:1.55}h1,h2,h3,p{margin:0}h1{font-size:38px;line-height:1.17;letter-spacing:-1.3px;font-weight:550}h2{font-size:19px;line-height:1.35;letter-spacing:-.4px;font-weight:600}h3{font-size:15px;font-weight:600}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #9dbb68;outline-offset:3px}input,select{width:100%;min-width:0;min-height:44px;border:1px solid #d9dfd6;border-radius:7px;padding:10px 12px;background:#fff;color:#263d34;outline:none}input:focus,select:focus{border-color:#7c9978;box-shadow:0 0 0 3px #a5ba8b24}input::placeholder{color:#879187}label{display:block;font-size:13px;font-weight:550}label>input,label>select,label>.input-suffix{margin-top:7px}label>span:not(.sr-only){color:var(--muted)}fieldset{border:0;padding:0;margin:0;min-width:0}fieldset>label,fieldset>.form-grid{margin-bottom:18px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}@layer components{.brand{display:flex;align-items:center;gap:11px;font-size:30px;letter-spacing:-1.4px;font-weight:700;line-height:1}.brand-dot{color:#9bae7a}.brand-mark{display:grid;place-items:center;width:39px;height:39px;border-radius:11px;color:#f2f6e6;background:var(--green)}.eyebrow{display:block;color:#7b886f;font-size:10px;font-weight:650;letter-spacing:1.8px;margin-bottom:12px}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:43px;padding:10px 16px;border-radius:7px;border:1px solid transparent;font-size:13px;font-weight:600;line-height:1.5;transition:background .15s}.primary{background:var(--green);color:#fff;box-shadow:0 2px 3px #284d3d12}.primary:hover:not(:disabled){background:#1b3b2e}.secondary{background:#fff;border-color:#dce2d8;color:#4b5c4f}.secondary:hover:not(:disabled){background:#f0f3eb}.danger{color:#fff;background:#a44637}.text-button{border:0;background:transparent;padding:10px 7px;min-height:40px;color:#486451;font-size:12px;font-weight:600}.text-button:hover{text-decoration:underline}.danger-text{color:#a25346}.icon-button{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:50%;background:#f3f5ef}.alert{padding:13px 16px;margin:14px 0;border:1px solid #efd0c4;background:#fff3ed;color:#994b37;border-radius:8px;font-size:13px;overflow-wrap:anywhere}.notice{display:flex;gap:9px;align-items:center;background:#ebf3e5;border:1px solid #d6e6cd;color:#3f674a;padding:12px 16px;border-radius:8px;margin-bottom:20px}.app-shell{display:flex;min-height:100vh}.sidebar{width:232px;flex:0 0 232px;background:#f0f2eb;border-right:1px solid #e1e5da;padding:34px 22px 20px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:5}.workspace-label{display:flex;align-items:center;gap:10px;margin:38px 0 30px}.workspace-avatar{width:34px;height:36px;border:1px solid #dbe0d3;background:#f8f9f3;border-radius:7px;display:grid;place-items:center;font-family:Georgia,serif;font-size:19px}.workspace-label strong,.sidebar-user strong{display:block;font-size:12px;font-weight:600}.workspace-label div>span,.sidebar-user div>span{display:block;color:#7b8478;font-size:11px;margin-top:2px}.nav-caption{color:#949b8e;font-size:10px;letter-spacing:1.5px;margin:0 10px 12px}.nav-link{display:flex;align-items:center;min-height:46px;padding:12px 13px;gap:12px;border-radius:7px;margin-bottom:7px;color:#6a766a;font-size:13px;font-weight:550}.nav-link:hover{background:#e9ede1}.nav-link.active{background:#dfe7d5;color:#36533d}.nav-indicator{width:5px;height:5px;border-radius:50%;background:#698358;margin-left:auto}.sidebar-note{margin-top:auto;padding:28px 10px}.small-orbit{display:grid;place-items:center;border:1px solid #d1d9c5;border-radius:50%;width:31px;height:31px;color:#7a9063;font-size:19px;margin-bottom:12px}.sidebar-note h3{font-family:Georgia,serif;font-size:19px;font-weight:400}.sidebar-note p{color:#87917f;font-size:11px;margin-top:8px;max-width:150px}.sidebar-user{display:flex;align-items:center;gap:9px;padding-top:20px;border-top:1px solid #dfe4d7;min-width:0}.sidebar-user>div{min-width:0;overflow-wrap:anywhere}.avatar{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:#e0e6d6;color:#536545;font-weight:600;flex-shrink:0}.online-dot{height:6px;width:6px;border-radius:50%;background:#82a16b;margin-left:auto;flex-shrink:0}.main-column{margin-left:232px;min-width:0;flex:1}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 40px;min-height:70px;border-bottom:1px solid var(--line);background:#fcfcf9;font-size:11px;color:#8c9588}.topbar strong{font-weight:500;color:#657361}.breadcrumb-slash{margin:0 12px;color:#b4bbae}.private-label{display:flex;align-items:center;gap:7px}.topbar-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.quick-logout{width:44px;height:44px;color:var(--green)}.content{max-width:1400px;padding:36px 40px 20px;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.page-heading .eyebrow{margin-bottom:10px}.page-heading p{margin-top:10px;font-size:13px;color:#7d887c}.heading-actions{display:flex;gap:9px;flex-shrink:0}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.summary-card{display:flex;justify-content:space-between;padding:24px;border:1px solid #dde5d5;border-radius:10px;min-width:0}.summary-card.green{background:#eaf0e2}.summary-card.neutral{background:#f2f4ef;border-color:#e2e6dc}.summary-card.sand{background:#f4f0e6;border-color:#e8e3d8}.summary-card div>span{color:#74816b;font-size:12px}.summary-card strong{display:flex;gap:8px;align-items:baseline;font-size:34px;line-height:1.1;font-weight:500;margin-top:13px;letter-spacing:-.8px}.summary-card small{font-size:12px;color:#818d74;font-weight:400;letter-spacing:0}.summary-icon{display:grid;place-items:center;width:37px;height:37px;background:#ffffff6b;border:1px solid #fff7;border-radius:50%;color:#7f916b}.summary-caption{margin:10px 1px 25px;font-size:10px;color:#8a9384;min-height:16px}.panel{background:#fff;border:1px solid #e2e6dc;border-radius:10px}.list-heading{display:flex;align-items:center;justify-content:space-between;padding:23px 25px 20px;gap:10px}.list-heading h2{font-size:17px}.list-heading div>span{display:block;font-size:11px;color:#87917f;margin-top:5px}.count-tag{font-size:10px;color:#7b8970;border:1px solid #e2e8db;padding:4px 8px;border-radius:5px;white-space:nowrap}.filter-bar{display:flex;flex-wrap:wrap;align-items:end;gap:12px;padding:0 25px 20px}.search-field{position:relative;flex:1 1 190px}.search-field svg{position:absolute;top:13px;left:12px;color:#91a089}.search-field input{margin:0;padding-left:37px;min-height:42px;font-size:12px}.filter-label{flex:1 1 145px;max-width:215px;font-size:10px;color:#87927d}.filter-label>input,.filter-label>select{margin-top:4px;height:42px;min-height:42px;font-size:12px}.clear-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:42px;padding:8px 2px;border:0;background:transparent;color:#788772;font-size:11px}.clear-button:hover{color:var(--green);text-decoration:underline}.date-strip{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 24px;background:#f8faf5;border-block:1px solid #edf0e7;font-size:11px;color:#77856c}.date-dot{display:inline-block;width:5px;height:5px;background:#9aaa79;border-radius:50%;margin-right:8px}.timezone-note{color:#a1aa97;font-size:10px}.empty-state{padding:40px 24px 43px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px}.empty-icon{display:grid;place-items:center;height:59px;width:59px;border-radius:17px;background:#f0f4e9;border:1px solid #e5ecd9;color:#9aad80;margin-bottom:7px;transform:rotate(-5deg)}.empty-state h3{font-family:Georgia,serif;font-size:22px;font-weight:400;letter-spacing:-.3px}.empty-state p{color:#89947f;font-size:12px;max-width:360px}.empty-state.compact{padding-block:32px;color:#87937c;font-size:12px}.spinner{width:22px;height:22px;border:2px solid #dfe8d4;border-top-color:#5b7950;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.booking-row{display:flex;align-items:center;gap:22px;padding:23px 25px;border-bottom:1px solid #eef0e8}.booking-row:last-child{border-bottom:0}.booking-time{min-width:53px;border-right:2px solid #a7b991;padding-right:15px}.booking-time strong,.booking-time span,.booking-time small{display:block}.booking-time strong{font-size:15px;font-weight:600}.booking-time span{font-size:11px;color:#8a9580;margin-top:2px}.booking-time small{font-size:10px;color:#89947f;margin-top:3px;white-space:nowrap}.booking-body{flex:1;min-width:0}.booking-body h3,.room-card h3{overflow-wrap:anywhere}.booking-meta{display:flex;flex-wrap:wrap;gap:5px 15px;font-size:11px;color:#8b967f;margin-top:6px}.booking-meta span{display:flex;align-items:center;gap:4px;overflow-wrap:anywhere}.badge{display:inline-block;padding:4px 9px;font-size:10px;border-radius:4px;font-weight:550;white-space:nowrap}.badge.confirmed{background:#edf4e7;color:#688052}.badge.cancelled{background:#f1eee9;color:#918575}.is-cancelled .booking-time{border-color:#d0ccc2}.row-actions{display:flex;flex-wrap:wrap;justify-content:end;max-width:180px;gap:0 3px}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:4px 25px 25px}.room-card{border:1px solid #e4e9dd;border-radius:8px;overflow:hidden;min-width:0}.room-visual{position:relative;height:130px;background:#edf0e3;display:grid;place-items:center}.tone-1{background:#eee9df}.tone-2{background:#e9eeea}.room-number{position:absolute;left:13px;top:9px;font-size:10px;color:#98a384}.mini-plan{width:100px;height:90px;border:1px solid #becaae;border-right:0;border-radius:3px;position:relative}.mini-plan span{position:absolute;width:35px;height:57px;left:33px;top:16px;border:1px solid #b2c39c;background:#dce5cb;border-radius:8px}.mini-plan i{position:absolute;width:13px;height:18px;border:1px solid #c0ceaf;border-radius:4px;background:#f6f8f0;left:13px;top:21px}.mini-plan i:nth-of-type(2){top:52px}.mini-plan i:nth-of-type(3){left:76px}.mini-plan i:nth-of-type(4){top:52px;left:76px}.room-card-body{padding:18px}.room-card-body p{display:flex;align-items:center;gap:5px;color:#8a957e;font-size:12px;margin-top:7px}.room-link{display:flex;justify-content:space-between;align-items:center;min-height:44px;gap:8px;font-size:11px;font-weight:600;color:#678052;margin-top:12px}.room-link:hover{text-decoration:underline}.room-actions{display:flex;justify-content:space-between;border-top:1px solid #edf0e7;padding-top:5px;margin-top:5px}.room-actions .text-button{padding-inline:0}.page-footnote{display:flex;align-items:center;gap:7px;color:#919b87;font-size:10px;margin:16px 1px 30px}.app-footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #e6eade;padding:18px 0 0;margin-top:40px;color:#9aa38f;font-size:10px}.app-footer span:first-child{font-weight:600}.account-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(300px,1.2fr);gap:24px;align-items:start}.profile-panel{padding:28px}.profile-identity{display:flex;align-items:center;gap:15px;min-width:0}.profile-identity h2{margin-top:9px;overflow-wrap:anywhere}.avatar.large{width:53px;height:53px;font-size:21px}.profile-panel dl{margin:28px 0}.profile-panel dl>div{border-top:1px solid #e8eddf;padding:15px 0}.profile-panel dt{font-size:11px;color:#91a083}.profile-panel dd{margin:5px 0 0;font-size:13px;overflow-wrap:anywhere}.logout{width:100%}.account-info{padding:28px}.section-icon{display:grid;place-items:center;background:#f0f4e8;width:47px;height:47px;border-radius:12px;color:#7e9465;margin-bottom:17px}.account-info>p{font-size:12px;color:#7e8e71;margin-top:12px}.permission-row{border-block-start:1px solid #e7eddc;padding-top:16px;margin-top:20px}.permission-row strong{font-size:12px}.permission-row p{font-size:12px;color:#819073;margin-top:6px}.account-info h3{margin-top:27px;font-size:14px}.account-info .subtle{font-size:10px;color:#9aa58c}.modal{border:1px solid #dfe6d6;border-radius:13px;width:min(590px,calc(100% - 32px));max-height:calc(100dvh - 36px);padding:0;color:#2e4836;box-shadow:0 25px 100px #243b3826}.modal::backdrop{background:#22393060;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-head{padding:24px 26px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #edf0e7}.modal-head .eyebrow{margin-bottom:6px}.modal form,.confirm-body{padding:24px 26px}.modal h2{font-size:22px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:20px;margin-top:10px;border-top:1px solid #edf1e6}.form-hint{font-size:11px;color:#849776;line-height:1.7}.input-suffix{position:relative}.input-suffix input{padding-right:40px}.input-suffix span{position:absolute;right:15px;top:12px;color:#9aa88c;font-size:12px}.confirm-body>p{font-size:13px;margin-bottom:12px;overflow-wrap:anywhere}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#fbfcf8}.login-story{padding:42px 58px 30px;display:flex;flex-direction:column;background:#e9efdf;position:relative;overflow:hidden;min-height:100vh}.story-content{margin:auto 0;padding:54px 0 42px;position:relative;z-index:1}.story-content>.eyebrow{font-size:10px;margin-bottom:23px}.story-content h1{font-family:Georgia,Times New Roman,serif;font-size:clamp(44px,4.6vw,69px);font-weight:400;line-height:1.13;letter-spacing:-2px;color:#34543b}.story-content>p{font-size:14px;color:#7d906e;margin-top:22px;line-height:1.9}.story-footer{color:#99a88a;font-size:10px;letter-spacing:1.5px}.room-art{position:relative;height:200px;width:300px;max-width:100%;margin:24px auto 0}.art-room{position:absolute;width:235px;height:175px;top:9px;left:27px;border:2px solid #bdcda9;border-right:0;border-radius:5px;transform:rotate(-8deg);background:#f1f5e7a1}.art-room:after{content:"";position:absolute;right:-25px;top:0;width:70px;height:70px;border:1px dashed #c8d4b7;border-radius:0 100% 0 0}.art-table{position:absolute;width:106px;height:112px;top:30px;left:61px;background:#d5e1c4;border:2px solid #b5cba0;border-radius:20px}.art-room i{position:absolute;width:24px;height:32px;background:#fbfcf5;border:1px solid #c8d6b8;border-radius:7px;left:27px;top:28px}.art-room i:nth-of-type(2){top:73px}.art-room i:nth-of-type(3){top:118px}.art-room i:nth-of-type(4){left:177px;top:28px}.art-room i:nth-of-type(5){left:177px;top:73px}.art-room i:nth-of-type(6){left:177px;top:118px}.art-plant{position:absolute;font-size:40px;color:#94ad78;left:0;bottom:-25px}.art-note{position:absolute;bottom:-7px;right:-10px;display:flex;align-items:center;gap:8px;font-size:11px;padding:12px 16px;background:#fbfcf4;color:#6d8758;border:1px solid #d8e2ca;border-radius:7px;transform:rotate(4deg);box-shadow:0 8px 16px #7a965719}.login-main{padding:60px 36px 25px;display:flex;flex-direction:column;justify-content:center;align-items:center}.login-card{width:100%;max-width:345px;margin:auto 0;padding:35px 0}.login-lock{display:grid;place-items:center;width:51px;height:51px;border-radius:14px;background:#edf3e5;color:#78965f;margin-bottom:24px}.login-card>.eyebrow{font-size:10px;margin-bottom:12px}.login-card h2{font-size:34px;font-weight:500;letter-spacing:-.9px}.login-card>p{color:#8c9980;margin-top:12px;font-size:13px}.login-card form{margin-top:30px}.login-card label{font-size:12px}.login-card input{min-height:47px;background:#fff}.login-submit{width:100%;justify-content:space-between;padding-inline:17px;min-height:47px;margin-top:3px}.login-help{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.7;color:#98a28f;margin-top:25px;border-top:1px solid #e8eddf;padding-top:21px}.login-help svg{margin-top:2px}.login-footer{font-size:10px;color:#a4ad9b;margin-top:30px}.loading{padding:20px 0}}@layer responsive{@media(min-width:1440px){.content{padding:43px 54px 24px}.topbar{padding-inline:54px}.page-heading{margin-bottom:35px}}@media(max-width:1150px){.sidebar{width:208px;flex-basis:208px;padding-inline:17px}.main-column{margin-left:208px}.content{padding:30px 26px 20px}.topbar{padding-inline:26px}.summary-card{padding:20px 17px}.summary-icon{width:30px;height:30px}.summary-card div>span{font-size:11px}.booking-row{gap:13px;flex-wrap:wrap}.row-actions{max-width:none;margin-left:auto}.room-grid{grid-template-columns:repeat(2,1fr)}.page-heading{align-items:flex-start}.heading-actions{flex-wrap:wrap;justify-content:end;max-width:150px}.account-grid{grid-template-columns:1fr}.login-story{padding-inline:35px}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:static;width:100%;padding:20px 20px 0;border-right:0;border-bottom:1px solid #dee5d3;display:block}.sidebar .brand{font-size:26px}.sidebar .brand-mark{width:34px;height:34px;border-radius:9px}.workspace-label,.nav-caption,.sidebar-note,.sidebar-user{display:none}.sidebar nav{display:flex;gap:6px;margin-top:21px}.nav-link{flex:1;margin:0;padding:12px 8px;justify-content:center;border-radius:7px 7px 0 0;font-size:12px;gap:7px;min-width:0}.nav-link svg{width:17px}.nav-indicator{display:none}.main-column{margin:0}.topbar{min-height:49px;padding:13px 21px;font-size:10px}.topbar .private-label{display:none}.breadcrumb-slash{margin:0 8px}.content{padding:28px 20px 18px}.page-heading{flex-direction:column;gap:20px;margin-bottom:24px}.page-heading h1{font-size:34px}.heading-actions{max-width:none;justify-content:start;width:100%}.heading-actions .primary{margin-left:auto}.summary-grid{gap:8px}.summary-card{padding:15px 11px;position:relative}.summary-card div>span{display:block;min-height:34px;font-size:10px;max-width:100px;line-height:1.5}.summary-card strong{font-size:25px;gap:4px;margin-top:11px;flex-wrap:wrap}.summary-card small{font-size:10px}.summary-icon{display:none}.summary-caption{line-height:1.6;font-size:10px;margin-bottom:21px}.list-heading{padding:19px 16px 17px}.list-heading h2{font-size:16px}.list-heading div>span{font-size:10px}.filter-bar{padding:0 16px 17px;gap:10px}.search-field{flex-basis:100%}.filter-label{flex:1 1 calc(50% - 5px);max-width:none;min-width:0}.filter-label input,.filter-label select{padding-inline:8px;font-size:11px}.clear-button{margin-left:auto;min-height:36px;font-size:11px}.date-strip{padding:6px 16px;font-size:10px}.timezone-note{display:none}.date-strip .text-button{font-size:10px;white-space:nowrap}.empty-state{padding:30px 20px 32px}.empty-state h3{font-size:21px}.empty-state p{font-size:11px}.booking-row{padding:20px 16px 12px;gap:12px}.booking-time{min-width:57px;padding-right:10px}.booking-body{flex-basis:calc(100% - 72px)}.booking-body h3{font-size:14px}.booking-row>.badge{margin-left:69px}.row-actions{flex:1 1 100%;margin:0 0 0 62px;justify-content:flex-start}.row-actions .text-button{font-size:11px}.room-grid{grid-template-columns:1fr;padding:0 16px 18px;gap:16px}.room-visual{height:130px}.room-card-body{padding:17px}.room-link{font-size:12px}.account-grid{gap:18px}.profile-panel,.account-info{padding:23px}.profile-identity h2{font-size:18px}.page-footnote{align-items:flex-start;line-height:1.7}.page-footnote svg{margin-top:2px}.app-footer{margin-top:28px;font-size:10px}.form-grid{grid-template-columns:1fr;gap:18px}.modal-head{padding:20px}.modal form,.confirm-body{padding:21px 20px}.modal h2{font-size:20px}.form-actions{flex-wrap:wrap}.form-actions .button{flex:1;min-width:95px;font-size:12px}.modal input,.modal select{font-size:14px}.modal .form-hint{font-size:11px}.login-page{display:flex;flex-direction:column}.login-story{min-height:auto;padding:25px}.login-story .brand{font-size:27px}.story-content{padding:27px 0 5px;margin:0}.story-content>.eyebrow{font-size:10px;letter-spacing:1.2px;margin-bottom:14px}.story-content h1{font-size:38px;letter-spacing:-1.3px}.story-content>p{font-size:12px;margin-top:16px;line-height:1.7}.room-art,.story-footer{display:none}.login-main{padding:27px 27px 20px}.login-card{padding:0;max-width:400px}.login-lock{display:none}.login-card>.eyebrow{font-size:10px;margin:0 0 8px}.login-card h2{font-size:28px}.login-card>p{font-size:12px;margin-top:8px}.login-card form{margin-top:22px}.login-help{margin-top:20px;padding-top:16px;font-size:10px}.login-footer{margin-top:24px;font-size:10px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}}
