@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');:root{--ink:#26243c;--muted:#8c879f;--purple:#7961dc;--line:#e6e1ef}*{box-sizing:border-box}body{margin:0;background:#f5f4fa;color:var(--ink);font:14px 'DM Sans',sans-serif}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:wait}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-.04em}p{line-height:1.7}button:focus-visible,a:focus-visible{outline:3px solid #9b81e9;outline-offset:3px}.sidebar{width:250px;background:#19172d;color:#b1a9c7;position:fixed;inset:0 auto 0 0;padding:35px 24px;display:flex;flex-direction:column}.brand{display:flex;gap:13px;align-items:center;font:600 26px Manrope;letter-spacing:-1px;color:white}.brand>span{display:grid;place-items:center;background:#8270df;border-radius:12px;width:44px;height:44px;letter-spacing:0}.brand div span{color:#b7a4f1}.brand small{display:block;font-size:8px;letter-spacing:2px;color:#837794;margin-top:5px}.lab-label{border:1px solid #454052;background:#262238;border-radius:5px;font-size:8px;letter-spacing:1.5px;padding:11px;margin:35px 0 25px;color:#c0b1e4;display:flex;gap:8px;align-items:center}.lab-label i{width:5px;height:5px;background:#b69bdd;border-radius:50%}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar nav button{display:flex;align-items:center;gap:15px;background:transparent;border:0;padding:15px;border-radius:8px;color:#a299b7;text-align:left;font-size:19px}.sidebar nav button span{font-size:12px}.sidebar nav button.active{background:#3a3158;color:#d6c4fb}.sidebar-bottom{margin-top:auto;font-size:11px}.sidebar-bottom p{line-height:1.9;color:#746784;margin-bottom:25px}.sidebar-bottom b{font-weight:400;color:#a292b9}.sidebar-bottom a{display:block;border-top:1px solid #3c344b;padding:20px 0;color:#bca9dd}.sidebar-bottom button{color:#8f809f;background:transparent;border:0;padding:0;font-size:11px}main{margin-left:250px;padding:40px 45px 25px;max-width:1800px}header{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:30px}.eyebrow{display:block;font-size:9px;letter-spacing:1.5px;font-weight:600;color:#9c8bb5}header h1{font-size:33px;margin:12px 0}header p{color:var(--muted);font-size:12px}.header-actions{display:flex;gap:10px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line);border-radius:7px;background:white;color:#847995;padding:12px 17px;font-size:11px;white-space:nowrap}.button:hover{border-color:#ac96d5}.primary{background:var(--purple);border-color:var(--purple);color:white;box-shadow:0 8px 20px #7961dc1a}.small{padding:9px 13px;font-size:10px}.danger{color:#b7838e;background:#fff8fa;border-color:#f0dde1}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:35px}.kpis article{background:white;border:1px solid var(--line);border-radius:11px;padding:23px}.kpis span{display:block;color:#9b91af;font-size:10px}.kpis strong{display:block;font:600 31px Manrope;margin:14px 0 12px;letter-spacing:-1px}.kpis strong.words{font-size:25px;color:#8473a0}.kpis small{display:block;color:#aea6bb;font-size:8px}.section-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0}.section-toolbar h2{font-size:21px;margin-bottom:8px}.section-toolbar p{font-size:11px;color:var(--muted)}.reservation-card{background:white;border:1px solid var(--line);border-radius:12px;margin-bottom:18px;padding:25px}.reservation-card-top{display:flex;align-items:center;gap:13px}.guest-initial{background:#ede7fa;color:#8f76c8;width:43px;height:43px;border-radius:12px;display:grid;place-items:center;font:600 15px Manrope}.reservation-card h3{font-size:20px;margin-top:7px}.badge{display:inline-block;font-size:9px;padding:7px 10px;border-radius:5px;line-height:1.4;white-space:nowrap}.reservation-card-top>.badge{margin-left:auto}.confirmed{background:#e4f5ed;color:#69a58c}.pending{background:#f5eede;color:#b69c62}.review{background:#fff0e5;color:#c1956c}.cancelled{background:#f4e6eb;color:#b58093}.reservation-fields{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:20px;margin-top:25px;border-top:1px solid #f1edf6;padding-top:22px}.reservation-fields small{font-size:8px;letter-spacing:1px;color:#aaa0b9;display:block;margin-bottom:10px}.reservation-fields b{font-size:12px;font-weight:500;color:#746884}.pms-result{background:#f8f6fc;color:#9b8aa9;padding:13px 15px;font-size:10px;border-radius:5px;margin-top:20px}.pms-result span{display:block;line-height:1.8}.pms-result b{color:#7a688d;font-weight:500}.reservation-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.empty{background:white;border:1px dashed #ddd3ec;border-radius:12px;text-align:center;padding:60px 25px;color:var(--muted)}.empty>span{font-size:35px;color:#b4a0cf}.empty h3{font-size:23px;color:#887698;margin:20px 0 12px}.empty p{font-size:12px;max-width:450px;margin:auto}.info{padding:20px 25px;border:1px solid #e3d8f1;background:#eee8f7;color:#9c87b0;font-size:11px;border-radius:9px;margin:25px 0}.inventory-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.inventory-grid article{padding:30px;background:white;border:1px solid var(--line);border-radius:12px}.inventory-grid h3{font-size:23px;margin-top:12px}.inventory-grid strong{font:600 58px Manrope;color:#9780c1;display:block;margin:25px 0 5px}.inventory-grid p{color:#93829f;font-size:12px}.inventory-grid small{display:block;font-size:10px;color:#b7adc4;margin:20px 0}.inventory-grid details{border-top:1px solid var(--line);padding-top:18px;color:#9c8bad;font-size:11px}.inventory-grid summary{cursor:pointer}.date-filter{display:flex;align-items:center;gap:12px;font-size:10px;color:#9a8da9}.date-filter input{padding:11px;border:1px solid var(--line);border-radius:6px;background:white;color:#8d7d9e}.table-wrap{background:white;border:1px solid var(--line);border-radius:10px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{text-align:left;padding:18px;color:#9b89ad;background:#fbf9fd;font-weight:500;font-size:10px}td{padding:18px;border-top:1px solid #f0ebf5;color:#9b8caa}td b{font-weight:500;color:#897693}td small{display:block;font-size:8px;line-height:1.8;color:#b8aec4;margin-top:7px}.logs-title{font-size:20px;margin:35px 0 20px}.log-row{background:white;border:1px solid var(--line);padding:18px;border-radius:8px;margin-bottom:10px;display:grid;grid-template-columns:1fr auto;gap:8px 15px;align-items:center}.log-row>div{display:flex;gap:15px;align-items:center}.log-row b{font-size:11px;font-weight:500}.log-row small{font-size:9px;color:#b4a8c0}.log-row p{grid-column:1;font-size:10px;color:#9c89ad}.log-row .button{grid-column:2;grid-row:1/3}.fault-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.fault-grid article{background:white;border:1px solid var(--line);border-radius:12px;padding:28px}.scenario{font-size:8px;letter-spacing:1.7px;color:#b39bc8}.fault-grid h3{font-size:23px;margin:25px 0 18px}.fault-grid p{font-size:12px;color:#a18eaf;min-height:115px}.fault-grid .button{margin-top:25px;white-space:normal}.error{color:#b1858d;background:#fbf0f2;border:1px solid #f0dfe3;padding:14px 18px;border-radius:6px;font-size:11px;margin:15px 0}.notice{padding:14px 18px;margin:15px 0;border:1px solid #d7eade;background:#eaf5ee;color:#78a38b;border-radius:6px;font-size:11px}.access-icon{font-size:42px;color:#a994d0;margin-bottom:20px}#access{max-width:560px;background:white;border:1px solid var(--line);border-radius:15px;padding:45px;margin:50px auto}#access h2{font-size:33px;margin:15px 0}#access p{font-size:13px;color:#a090ad;margin-bottom:30px}footer{font-size:9px;color:#b0a5bc;margin-top:40px;text-align:center}dialog{border:1px solid #ddd2ec;border-radius:15px;width:min(600px,94vw);padding:30px;background:#fff;max-height:92vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#1a142956;backdrop-filter:blur(5px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.dialog-heading h2{font-size:26px;margin-top:8px}.close{border:1px solid #e8e1f0;border-radius:7px;background:#faf8fe;color:#aa95c1;width:32px;height:32px;font-size:23px}.form-note{font-size:11px;color:#9c8cab;margin-bottom:25px}form label{display:flex;flex-direction:column;gap:10px;color:#96839f;font-size:11px;margin:18px 0}form input,form select{padding:13px;border:1px solid #e4dcee;border-radius:7px;background:white;color:#7b6589;width:100%;outline:none}form input:focus,form select:focus{border-color:#a485ce;box-shadow:0 0 0 3px #f1eaf9}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.booking-total{background:#f5f0fb;border:1px solid #e6d8f1;border-radius:9px;padding:23px;margin-top:25px}.booking-total span{font-size:10px;color:#a38ab7}.booking-total strong{display:block;color:#9273af;font:600 29px Manrope;margin:10px 0}.booking-total small{font-size:10px;color:#b39ac7}.dialog-footer{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid #f0e9f7;padding-top:23px;margin-top:25px}#xml-dialog{width:min(1000px,95vw)}pre{font:11px/1.8 Consolas,monospace;background:#1f1a31;color:#baacd7;border-radius:8px;padding:25px;white-space:pre-wrap;overflow-wrap:anywhere}.dialog-heading+p{font-size:13px;color:#a18aaf;line-height:1.8}@media(max-width:1150px){.sidebar{width:220px;padding:30px 20px}main{margin-left:220px;padding:30px 25px}.kpis{grid-template-columns:1fr 1fr}.header-actions{justify-content:flex-end}.reservation-fields{grid-template-columns:1fr 1fr}.fault-grid{grid-template-columns:1fr}.fault-grid p{min-height:0}.fault-grid article{padding:25px}.fault-grid h3{margin:17px 0;font-size:24px}.fault-grid .button{margin-top:18px}}@media(max-width:750px){.sidebar{position:static;width:100%;padding:22px;display:block}.brand{font-size:24px}.brand small{font-size:7px}.lab-label{margin:22px 0 15px;width:max-content;font-size:7px}.sidebar nav{flex-direction:row;overflow:auto;gap:7px}.sidebar nav button{padding:11px;font-size:15px;gap:8px;white-space:nowrap}.sidebar nav button span{font-size:10px}.sidebar-bottom{display:none}main{margin:0;padding:25px 18px}header{display:block;margin-bottom:23px}header h1{font-size:29px}.header-actions{justify-content:flex-start;margin-top:20px;gap:8px}.kpis{gap:10px;margin-bottom:25px}.kpis article{padding:17px}.kpis strong{font-size:27px}.kpis strong.words{font-size:21px}.kpis span{font-size:8px}.kpis small{font-size:7px;line-height:1.8}.section-toolbar{align-items:flex-start}.section-toolbar h2{font-size:19px}.section-toolbar p{font-size:10px}.section-toolbar .button{font-size:9px;padding:11px}.reservation-card{padding:19px}.guest-initial{width:34px;height:34px;font-size:12px}.reservation-card h3{font-size:18px}.reservation-card-top{gap:10px;flex-wrap:wrap}.reservation-card-top>.badge{margin-left:44px}.reservation-fields{gap:20px 12px}.reservation-fields b{font-size:10px}.reservation-fields small{font-size:7px}.reservation-actions{justify-content:flex-start}.inventory-grid{grid-template-columns:1fr}.date-filter{flex-direction:column;align-items:flex-start}.date-filter input{padding:8px;font-size:10px}.log-row>div{flex-wrap:wrap;gap:7px}.log-row b{font-size:10px}.log-row small{font-size:8px}.log-row .button{font-size:9px;padding:9px}.log-row p{font-size:9px}.button{font-size:10px;padding:11px 14px}#access{padding:28px;margin:25px 0}#access h2{font-size:27px}.eyebrow{font-size:7px}dialog{padding:23px}.dialog-heading h2{font-size:23px}.form-grid{gap:0 13px}.dialog-footer{flex-wrap:wrap}.booking-total strong{font-size:25px}}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.fake-data{margin:5px 0 15px;background:#f3edf9;color:#9772b2;border-color:#e3d3ef}#fake-card{padding:22px;background:linear-gradient(130deg,#332445,#786388);border-radius:10px;color:#ddcaed;margin:20px 0}#fake-card>span{font-size:8px;letter-spacing:1.5px}#fake-card strong{font:500 20px Consolas,monospace;display:block;letter-spacing:2px;margin:20px 0}#fake-card p{font-size:9px;color:#bca5ce}

.eyebrow,.kpis span,.reservation-fields small{color:#80718f}.kpis small,.section-toolbar p,header p,footer{color:#82798e}.button{color:#756482}.button.primary{color:white}.confirmed{color:#477f65}.pending{color:#90713e}.review{color:#a2764b}.cancelled{color:#956176}.form-note,form label{color:#80708d}.pms-result{color:#8a769c}

.hotel-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #e3dcf2;border-left:4px solid #7659ce;border-radius:16px;background:linear-gradient(120deg,#faf7ff,#fff);padding:22px 26px;margin-bottom:24px}.hotel-bar h2{margin:6px 0;font-size:22px}.hotel-bar p{margin:0;font-size:13px;color:#776d8a}.hotel-bar>div:last-child{display:flex;gap:12px;align-items:end}.hotel-bar select{min-width:250px;max-width:360px}.channel-grid-card{border:1px solid #e6e1ef;background:white;border-radius:18px;overflow:hidden}.grid-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px}.grid-heading h2{font-size:21px;margin:6px 0}.grid-heading label{width:180px}.grid-modes{display:flex;flex-wrap:wrap;gap:8px;padding:0 24px 20px}.grid-modes button{border:1px solid #e3dcec;background:#fff;color:#746883;padding:10px 14px;border-radius:9px;cursor:pointer;font:inherit;font-size:13px}.grid-modes button.active{background:#ede5ff;border-color:#bdabeb;color:#6542be;font-weight:600}.grid-tip{font-size:13px;color:#81748e;background:#faf8ff;padding:14px 24px;border-top:1px solid #eee8f6}.daily-grid{overflow:auto;max-height:550px;scrollbar-width:thin}.daily-grid table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%}.daily-grid th,.daily-grid td{border-right:1px solid #eee9f5;border-bottom:1px solid #eee9f5;text-align:center;padding:0;width:70px;min-width:70px;height:64px}.daily-grid thead th{background:#f8f6fc;position:sticky;top:0;z-index:2;color:#645979}.daily-grid th small{display:block;font-size:11px;font-weight:400;color:#9a90aa;margin-top:5px}.daily-grid .category-col{position:sticky;left:0;z-index:1;background:white;text-align:left;width:230px;min-width:230px;padding:16px 20px;font-size:13px}.daily-grid thead .category-col{z-index:3;background:#f8f6fc}.daily-grid .weekend{background:#efe9fa}.daily-grid td button{border:0;background:transparent;font:inherit;font-weight:600;font-size:12px;width:100%;height:64px;cursor:pointer;color:inherit;padding:5px}.daily-grid td button:disabled{cursor:default;opacity:1}.daily-grid td.available{background:#f0faf6;color:#329778}.daily-grid td.soldout{background:#fff0f0;color:#bc6169}.daily-grid td.configured{color:#7860b4;background:#fcfaff}.daily-grid td.unknown{color:#b2aaba}.daily-grid td.selected{background:#e9dfff;box-shadow:inset 0 0 0 2px #8666ce;color:#6143a8}.daily-grid button:focus-visible{outline:3px solid #7655c4;outline-offset:-3px}.grid-legend{display:flex;flex-wrap:wrap;gap:18px;align-items:center;padding:16px 24px;font-size:12px;color:#95899e}.grid-legend span{display:flex;gap:6px;align-items:center}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.dot.available{background:#77c4aa}.dot.soldout{background:#df969c}#grid-form{background:#fcfaff;border-top:1px solid #eee6f8;padding:24px}#grid-form h3{margin:0 0 18px}.bulk-fields{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr)) 1.5fr 1fr auto;gap:14px;align-items:end}.bulk-fields .button{height:44px}.weekday-filter{border:0;padding:0;display:flex;gap:18px;flex-wrap:wrap;margin-top:18px}.weekday-filter legend{font-size:12px;color:#988ba6;margin-bottom:8px}.weekday-filter label{display:flex;align-items:center;gap:6px;font-size:13px;margin:0}.weekday-filter input{width:16px;height:16px;margin:0;accent-color:#7c5cc2}#bulk-help{font-size:12px;color:#94849e;margin-bottom:0}.received-details{margin-top:22px}.received-details>summary{color:#82728f;font-size:13px;cursor:pointer;padding:12px}.channel-grid-card [hidden]{display:none!important}@media(max-width:1000px){.bulk-fields{grid-template-columns:repeat(2,minmax(130px,1fr))}.hotel-bar{flex-direction:column;align-items:stretch}.hotel-bar>div:last-child{align-items:stretch}.hotel-bar select{min-width:0;max-width:100%}}@media(max-width:600px){.hotel-bar>div:last-child{flex-direction:column}.grid-heading{padding:18px;align-items:start;flex-direction:column}.grid-heading label{width:100%}.grid-modes{padding:0 18px 18px}.grid-tip{padding:14px 18px}.daily-grid .category-col{width:165px;min-width:165px;padding:12px}.bulk-fields{grid-template-columns:1fr}.weekday-filter{gap:12px}#grid-form{padding:18px}.grid-legend{padding:18px}}

.hotel-bar label,.grid-heading label{display:flex;flex-direction:column;gap:8px;font-size:11px;color:#92829f}.hotel-bar select,.grid-heading input{width:100%;height:44px;border:1px solid #e5dced;border-radius:8px;background:white;color:#685876;padding:10px 12px;outline-color:#9475ce}.hotel-bar>div:last-child>label{flex:1}.kpis #kpi-inventory{font-size:22px;letter-spacing:-.5px}.daily-grid{max-width:100%;width:100%}.channel-grid-card{min-width:0}.hotel-bar input:focus,.hotel-bar select:focus,.grid-heading input:focus{border-color:#a88acf;box-shadow:0 0 0 3px #f0eafb}.hotel-bar>div:first-child{min-width:0}.hotel-bar h2{overflow-wrap:anywhere}

#grid-form label{margin:0}.weekday-filter label{flex-direction:row}
