:root{--ink:#12211d;--muted:#66746e;--line:#dde5e0;--canvas:#f3f6f3;--surface:#fff;--nav:#132722;--nav-soft:#1c3530;--mint:#62d3ab;--mint-dark:#167354;--mint-soft:#e5f8f0;--amber:#e79c39;--amber-soft:#fff4df;--danger:#b43b3b;--danger-soft:#fff0ed;--shadow:0 18px 50px #19342b14;--radius:18px}*{box-sizing:border-box}html,body{background:var(--canvas);min-height:100%;color:var(--ink);margin:0;font-family:Avenir Next,Segoe UI,Arial,sans-serif}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}.operator-layout{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--nav);color:#eaf5f0;flex-direction:column;height:100vh;padding:26px 18px 18px;display:flex;position:sticky;top:0}.operator-brand{letter-spacing:-.02em;align-items:center;gap:12px;padding:0 8px 25px;font-weight:800;display:flex}.operator-brand>span:last-child{gap:1px;display:grid}.operator-brand small{color:#91a69e;letter-spacing:.07em;text-transform:uppercase;font-size:.67rem;font-weight:600}.brand-glyph{background:var(--mint);color:#10231e;border-radius:12px;place-items:center;width:36px;height:36px;font-family:Georgia,serif;font-size:1.25rem;font-weight:900;display:inline-grid;box-shadow:inset 0 0 0 1px #ffffff59}.portfolio-label{color:#9eb3ab;text-transform:uppercase;letter-spacing:.05em;background:#ffffff0a;border:1px solid #ffffff17;border-radius:11px;justify-content:space-between;align-items:center;margin:0 6px 18px;padding:11px 12px;font-size:.72rem;font-weight:700;display:flex}.sidebar nav{gap:6px;display:grid}.side-link{color:#aebfb9;border-radius:11px;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:12px 13px;font-size:.88rem;font-weight:650;transition:all .18s;display:grid}.side-link:hover{color:#fff;background:#ffffff0d}.side-link.active{background:var(--mint);color:#10231e;box-shadow:0 8px 22px #62d3ab2b}.operator-profile{border-top:1px solid #ffffff17;grid-template-columns:34px minmax(0,1fr) 30px;align-items:center;gap:9px;margin-top:auto;padding:14px 8px 2px;display:grid}.operator-profile>div{min-width:0;display:grid}.operator-profile strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.operator-profile small{color:#8ea49c;text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;overflow:hidden}.operator-profile button{color:#8ea49c;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.operator-profile button:hover{color:#fff;background:#ffffff14}.avatar{background:var(--mint-soft);width:34px;height:34px;color:var(--mint-dark);border-radius:50%;place-items:center;font-weight:900;display:inline-grid}.avatar.large{width:58px;height:58px;margin-top:14px;font-size:1.25rem}.workspace{min-width:0;padding:38px 42px 70px}.page-stack{gap:22px;max-width:1440px;margin:0 auto;display:grid}.page-stack.narrow{max-width:920px}.page-header,.detail-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.page-header h1,.detail-header h1{letter-spacing:-.055em;margin:3px 0 7px;font-size:clamp(2rem,3vw,3rem);line-height:1.03}.page-header p,.detail-header p{color:var(--muted);margin:0;line-height:1.55}.eyebrow{text-transform:uppercase;color:var(--mint-dark)!important;letter-spacing:.12em!important;margin:0!important;font-size:.68rem!important;font-weight:850!important}.eyebrow.light{color:var(--mint)!important}.button{cursor:pointer;border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-size:.79rem;font-weight:800;transition:all .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.58;cursor:wait;transform:none}.button.primary{background:var(--nav);color:#fff;box-shadow:0 8px 18px #13272224}.button.primary:hover{background:#1d4037}.button.secondary{border-color:var(--line);color:var(--ink);background:#fff}.button.wide{width:100%}.metric-strip{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.metric-strip>div{border-right:1px solid var(--line);grid-template-columns:1fr auto;gap:5px 14px;padding:20px 24px;display:grid}.metric-strip>div:last-child{border:0}.metric-strip span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:750}.metric-strip strong{letter-spacing:-.04em;grid-area:1/2/3;font-size:1.8rem}.metric-strip small{color:var(--muted);font-size:.75rem}.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.portfolio-panel{overflow:hidden}.panel-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;display:flex}.panel-toolbar h2,.section-title h2{letter-spacing:-.025em;margin:0 0 5px;font-size:1.1rem}.panel-toolbar p,.section-title p{color:var(--muted);margin:0;font-size:.8rem}.search-field{border:1px solid var(--line);background:var(--canvas);min-width:min(320px,40vw);color:var(--muted);border-radius:11px;align-items:center;gap:8px;padding:0 12px;display:flex}.search-field input{width:100%;height:40px;color:var(--ink);background:0 0;border:0;outline:0;font-size:.79rem}.hotel-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.hotel-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);gap:18px;min-height:240px;padding:22px;transition:all .18s;display:grid}.hotel-card:nth-child(3n){border-right:0}.hotel-card:hover{z-index:1;box-shadow:inset 0 0 0 1px var(--mint);background:#fbfdfb;position:relative}.hotel-card-top,.hotel-card footer,.title-line,.header-status,.card-heading,.section-title{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.hotel-monogram{color:#345348;background:#edf2ee;border-radius:13px;place-items:center;width:42px;height:42px;font-family:Georgia,serif;font-size:.82rem;font-weight:900;display:grid}.hotel-monogram.large{background:var(--nav);width:64px;height:64px;color:var(--mint);border-radius:19px;font-size:1.1rem}.hotel-card h3{letter-spacing:-.025em;margin:0 0 5px;font-size:1.08rem}.hotel-card>div>p{color:var(--muted);margin:0;font-size:.75rem}.hotel-meta{gap:7px;display:grid}.hotel-meta span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;font-size:.74rem;display:flex;overflow:hidden}.hotel-card footer{align-items:center;margin-top:auto}.hotel-card footer>span:last-child{color:var(--mint-dark);align-items:center;gap:5px;font-size:.73rem;font-weight:800;display:flex}.package-badge{color:#53655e;text-transform:uppercase;letter-spacing:.06em;background:#edf1ef;border-radius:7px;padding:5px 9px;font-size:.65rem;font-weight:850}.package-badge.pro{color:#24658d;background:#e6f5ff}.package-badge.enterprise{color:#684398;background:#f1eaff}.status{text-transform:capitalize;border-radius:999px;align-items:center;gap:6px;width:max-content;padding:5px 9px;font-size:.64rem;font-weight:800;display:inline-flex}.status i{background:currentColor;border-radius:50%;width:6px;height:6px}.status.healthy{background:var(--mint-soft);color:var(--mint-dark)}.status.quiet{color:#718078;background:#edf1ef}.status.attention{background:var(--amber-soft);color:#9c6319}.empty-state{min-height:260px;color:var(--muted);text-align:center;place-items:center;gap:8px;padding:35px;display:grid}.empty-state h3,.empty-state p{margin:0}.empty-state.danger{color:var(--danger);background:var(--danger-soft)}.form-panel{padding:28px}.form-heading{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding-bottom:23px;display:flex}.form-heading>span{background:var(--mint-soft);width:44px;height:44px;color:var(--mint-dark);border-radius:13px;place-items:center;display:grid}.form-heading h2{margin:0 0 4px}.form-heading p{color:var(--muted);margin:0;font-size:.8rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-top:24px;display:grid}.form-grid label,.settings-card label,.login-card label{color:#42524c;gap:7px;font-size:.73rem;font-weight:800;display:grid}.span-2{grid-column:span 2}input,select{width:100%;height:44px;color:var(--ink);background:#fff;border:1px solid #cfd9d3;border-radius:10px;outline:0;padding:0 12px;font-size:.82rem}input:focus,select:focus{border-color:var(--mint-dark);box-shadow:0 0 0 3px #62d3ab2e}.form-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:26px;padding-top:20px;display:flex}.form-error{background:var(--danger-soft);color:var(--danger);border-radius:9px;margin:14px 0 0;padding:11px 13px;font-size:.78rem;font-weight:700}.success-panel{text-align:center;justify-items:center;padding:38px;display:grid}.success-panel h2{margin:15px 0 6px}.success-panel>p{color:var(--muted);margin:0}.success-icon{background:var(--mint-soft);width:58px;height:58px;color:var(--mint-dark);border-radius:50%;place-items:center;display:grid}.password-once{background:#f4fbf8;border:1px dashed #9cc6b6;border-radius:13px;align-items:center;gap:12px;width:min(100%,600px);margin:25px 0;padding:12px;display:flex}.password-once code{text-align:left;flex:1;font-size:.9rem;font-weight:800;overflow:auto}.creation-summary{grid-template-columns:repeat(3,1fr);width:100%;margin:0 0 20px;display:grid}.creation-summary div{border-right:1px solid var(--line);padding:13px}.creation-summary div:last-child{border:0}.creation-summary dt{color:var(--muted);text-transform:uppercase;font-size:.66rem}.creation-summary dd{margin:5px 0 0;font-size:.83rem;font-weight:800}.warning-callout,.surface-note{background:var(--amber-soft);color:#774d17;text-align:left;border:1px solid #efd5a9;border-radius:12px;align-items:flex-start;gap:12px;width:100%;margin:0 0 22px;padding:14px;display:flex}.warning-callout p,.surface-note p{margin:0;font-size:.78rem;line-height:1.5}.back-link{color:var(--muted);align-items:center;gap:6px;margin-bottom:17px;font-size:.75rem;font-weight:750;display:inline-flex}.detail-header{align-items:flex-end}.title-line{justify-content:flex-start;align-items:center}.header-status{align-items:center}.detail-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;display:grid}.detail-main{padding:25px}.section-title{align-items:center;margin-bottom:20px}.surface-note{background:var(--mint-soft);color:#215c48;border-color:#bce2d2;margin-bottom:24px}.surface-note strong{font-size:.82rem}.surface-note p{color:#467263;margin-top:4px}.feature-groups{gap:26px;display:grid}.feature-groups section>h3{color:#65766f;text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:center;margin:0 0 9px;font-size:.69rem;display:flex}.feature-groups section>h3 span{background:var(--canvas);border-radius:6px;padding:3px 7px;font-size:.62rem}.feature-list{border:1px solid var(--line);border-radius:13px;overflow:hidden}.feature-row{border-bottom:1px solid var(--line);cursor:pointer;background:#fff;justify-content:space-between;align-items:center;gap:20px;padding:14px 15px;display:flex}.feature-row:last-child{border:0}.feature-row.enabled{background:#fbfefc}.feature-row strong{font-size:.81rem}.feature-row p{color:var(--muted);margin:3px 0 0;font-size:.71rem}.switch{flex:none;width:38px;height:22px;position:relative}.switch input{opacity:0;position:absolute}.switch i{background:#cbd4cf;border-radius:999px;transition:all .18s;position:absolute;inset:0}.switch i:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:all .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.switch input:checked+i{background:var(--mint-dark)}.switch input:checked+i:after{transform:translate(16px)}.switch input:focus-visible+i{outline:2px solid var(--mint-dark);outline-offset:2px}.detail-side{gap:16px;display:grid}.admin-card,.health-card,.settings-card{padding:20px}.admin-card{justify-items:start;display:grid}.admin-card h3{margin:10px 0 4px}.admin-card>p:not(.eyebrow){color:var(--muted);align-items:center;gap:6px;margin:0 0 12px;font-size:.73rem;display:flex}.admin-card>small{color:var(--muted);margin-top:12px;font-size:.68rem}.empty-compact{color:var(--muted);align-items:center;gap:10px;margin-top:18px;display:flex}.health-card h3{margin:3px 0 0}.pulse{background:var(--amber);width:12px;height:12px;box-shadow:0 0 0 5px var(--amber-soft);border-radius:50%}.pulse.healthy{background:var(--mint-dark);box-shadow:0 0 0 5px var(--mint-soft)}.health-card dl{grid-template-columns:1fr 1fr;margin:18px 0;display:grid}.health-card dl div{border:1px solid var(--line);margin:-1px 0 0 -1px;padding:11px}.health-card dt{color:var(--muted);font-size:.63rem}.health-card dd{margin:5px 0 0;font-size:.8rem;font-weight:850}.text-link{color:var(--mint-dark);align-items:center;gap:6px;font-size:.74rem;font-weight:800;display:flex}.settings-card{gap:14px;display:grid}.settings-card .eyebrow{margin-bottom:2px!important}.danger-text{color:var(--danger)!important}.toast{z-index:10;background:var(--nav);color:#fff;box-shadow:var(--shadow);border-radius:11px;align-items:center;gap:8px;padding:12px 16px;font-size:.78rem;font-weight:800;display:flex;position:fixed;top:24px;right:28px}.health-metrics strong{font-size:1.3rem}.health-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.health-table{overflow:auto}.health-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(190px,1.4fr) repeat(3,minmax(100px,.7fr)) minmax(110px,.6fr);align-items:center;gap:14px;min-width:850px;padding:15px 20px;font-size:.75rem;display:grid}.health-row:last-child{border:0}.health-row:not(.health-head):hover{background:#fbfdfb}.health-row>span{align-items:center;gap:6px;display:flex}.health-row>span:first-child{gap:3px;display:grid}.health-row small{color:var(--muted);font-size:.65rem}.health-head{background:var(--canvas);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.64rem;font-weight:850}.login-page{grid-template-columns:minmax(420px,1.05fr) minmax(440px,.95fr);min-height:100vh;display:grid}.login-story{background:var(--nav);color:#fff;flex-direction:column;justify-content:center;padding:8vw;display:flex;position:relative;overflow:hidden}.login-story:after{content:"";border:1px solid #62d3ab33;border-radius:42% 58% 57% 43%;width:520px;height:520px;position:absolute;bottom:-25%;right:-18%;transform:rotate(25deg);box-shadow:0 0 0 70px #62d3ab06,0 0 0 140px #62d3ab05}.story-mark{color:var(--mint);font-family:Georgia,serif;font-size:1.1rem;font-weight:900;position:absolute;top:40px;left:42px}.login-story h1{z-index:1;letter-spacing:-.065em;margin:15px 0 22px;font-size:clamp(2.8rem,5vw,5.5rem);line-height:.95;position:relative}.login-story h1 em{color:var(--mint);font-family:Georgia,serif;font-weight:400}.login-story>p:not(.eyebrow){z-index:1;color:#a9bcb5;max-width:530px;margin:0;font-size:1rem;line-height:1.7;position:relative}.login-story ul{z-index:1;color:#c9d8d3;gap:13px;margin:35px 0 0;padding:0;font-size:.8rem;list-style:none;display:grid;position:relative}.login-story li{align-items:center;gap:10px;display:flex}.login-story li svg{color:var(--mint)}.login-panel{background:#f6f8f6;place-items:center;padding:40px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:24px;gap:20px;width:min(100%,420px);padding:35px;display:grid;box-shadow:0 25px 70px #1327221c}.login-card>div:first-child .brand-glyph{margin-bottom:24px}.login-card h2{letter-spacing:-.045em;margin:5px 0 7px;font-size:1.8rem}.login-card>div>p:not(.eyebrow){color:var(--muted);margin:0;font-size:.8rem;line-height:1.55}.otp{text-align:center;letter-spacing:.45em;font-size:1.3rem;font-weight:900}.qr-wrap{background:var(--canvas);border-radius:14px;justify-items:center;gap:10px;padding:15px;display:grid}.qr-wrap img{width:170px;height:170px}.qr-wrap code{max-width:100%;font-size:.68rem;overflow:auto}.loading{min-height:100vh;color:var(--muted);align-content:center;place-items:center;gap:12px;display:grid}.loading.inline{min-height:55vh}.spin{animation:1s linear infinite spin}.spinner{border:3px solid var(--line);border-top-color:var(--mint-dark);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite spin}.fatal{justify-items:start;gap:13px;max-width:600px;margin:12vh auto;padding:50px;display:grid}.fatal h1,.fatal p{margin:0}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1120px){.hotel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-card:nth-child(3n){border-right:1px solid var(--line)}.hotel-card:nth-child(2n){border-right:0}.detail-grid{grid-template-columns:1fr}.detail-side{grid-template-columns:repeat(3,1fr)}.login-story{padding:7vw}.health-row{grid-template-columns:minmax(180px,1.3fr) repeat(4,minmax(105px,.7fr))}}@media (max-width:820px){.operator-layout{grid-template-columns:1fr}.sidebar{height:auto;padding:14px;position:relative}.operator-brand{padding:2px 4px 14px}.portfolio-label{display:none}.sidebar nav{grid-template-columns:repeat(3,1fr)}.side-link{grid-template-columns:20px 1fr;padding:10px}.side-link svg:last-child,.operator-profile{display:none}.workspace{padding:26px 18px 50px}.page-header,.detail-header{flex-direction:column;align-items:flex-start}.metric-strip{grid-template-columns:1fr}.metric-strip>div{border-right:0;border-bottom:1px solid var(--line)}.hotel-grid{grid-template-columns:1fr}.hotel-card,.hotel-card:nth-child(3n){border-right:0}.detail-side,.login-page{grid-template-columns:1fr}.login-story{min-height:45vh;padding:75px 30px 45px}.login-story h1{font-size:3rem}.login-story ul{display:none}.login-panel{padding:25px 18px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.panel-toolbar{flex-direction:column;align-items:stretch}.search-field{min-width:0}.creation-summary{grid-template-columns:1fr}.creation-summary div{border-right:0;border-bottom:1px solid var(--line)}.password-once{flex-direction:column;align-items:stretch}.feature-row{align-items:flex-start}.sidebar nav .side-link{font-size:.72rem}}@media (max-width:480px){.workspace{padding:22px 12px 40px}.sidebar nav{gap:3px}.side-link{justify-content:center;display:flex}.side-link span{display:none}.page-header h1,.detail-header h1{font-size:2rem}.form-panel,.detail-main{padding:18px}.hotel-monogram.large{width:52px;height:52px}.header-status{flex-wrap:wrap}.login-card{padding:25px 20px}.login-story{min-height:38vh}.login-story h1{font-size:2.55rem}}
