:root{--navy:#10264f;--navy2:#071831;--orange:#f47b20;--bg:#f4f7fb;--card:#fff;--text:#172033;--muted:#667085;--border:#e6eaf0}
[data-bs-theme=dark]{--bg:#09111f;--card:#111d30;--text:#eaf0f8;--muted:#9aa9bd;--border:#26354b}
*{box-sizing:border-box}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}a{text-decoration:none}
.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:265px;background:linear-gradient(180deg,var(--navy2),var(--navy));padding:22px 16px;color:#fff;overflow:auto;z-index:1040;transition:transform .25s ease}.sidebar-head{display:flex;align-items:center;justify-content:space-between}.sidebar-close{border:0;background:#ffffff14;color:#fff;width:38px;height:38px;border-radius:10px;font-size:1.7rem;line-height:1;cursor:pointer}.sidebar-overlay{display:none;position:fixed;inset:0;border:0;background:#020817a8;opacity:0;z-index:1035;cursor:pointer;transition:opacity .25s}.brand{display:flex;align-items:center;gap:10px;font-size:1.3rem;font-weight:800;color:inherit}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--orange);color:#fff}.hotel-name{font-size:.78rem;color:#b6c3d9;margin:25px 10px 10px;text-transform:uppercase;letter-spacing:.08em}.sidebar nav a{color:#cbd5e4;padding:11px 12px;margin:2px 0;border-radius:10px;display:flex;gap:12px;align-items:center}.sidebar nav a:hover{background:#ffffff12;color:#fff}.main{margin-left:265px;width:calc(100% - 265px)}.topbar{height:76px;padding:12px 28px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);background:var(--card);position:sticky;top:0;z-index:1020}.menu-toggle{flex:0 0 auto;font-size:1.25rem}.topbar-title{min-width:0}.topbar-title strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{padding:28px}.panel{background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:0 8px 30px #10264f0a}.panel h2{font-size:1.05rem;font-weight:750}.metric{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:20px;display:flex;flex-direction:column}.metric span{font-size:1.65rem;font-weight:800}.metric small,.text-secondary{color:var(--muted)!important}.table{--bs-table-bg:transparent;--bs-table-color:var(--text);--bs-table-border-color:var(--border)}.empty{text-align:center;color:var(--muted);padding:45px!important}.status{padding:6px 9px;border-radius:99px;background:#edf2f7;font-size:.78rem}.status-checkin{background:#dcfce7;color:#166534}.status-checkout{background:#e0e7ff;color:#3730a3}.status-annulee,.status-noshow{background:#fee2e2;color:#991b1b}
.auth-body{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top right,#f47b2040,transparent 35%),linear-gradient(135deg,#071831,#173b78)}.auth-card{width:min(100%,460px);background:#fff;padding:38px;border-radius:22px;box-shadow:0 30px 80px #0005;color:#172033}.auth-card h1{font-size:2rem;font-weight:800}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:8px;overflow:auto}.calendar-day{min-height:170px;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:8px}.calendar-day header{display:flex;justify-content:space-between;color:var(--muted);margin-bottom:8px}.calendar-event{background:#e5edff;border-left:4px solid #315ca8;border-radius:7px;padding:8px;margin-bottom:6px;font-size:.78rem;cursor:grab}.calendar-event small{display:block;color:#52647b}.calendar-day.dragover{outline:2px solid var(--orange)}.calendar-day:first-child:nth-last-child(1){grid-column:1/-1}.calendar-month{grid-template-columns:repeat(7,minmax(120px,1fr))}
.public-body{background:#fff;color:#152033}.public-nav{padding:18px 0;background:#fff;border-bottom:1px solid #edf0f4;position:sticky;top:0;z-index:10}.public-nav a{color:#152033}.hero{min-height:72vh;padding:80px 0;display:flex;align-items:center;background:linear-gradient(100deg,#06162ee8,#10264f90),radial-gradient(circle at 80% 20%,#f47b2088,transparent 35%),#173b78}.hero-card{max-width:800px;color:#fff}.hero h1{font-size:clamp(2.7rem,6vw,5.5rem);font-weight:850;line-height:.98;letter-spacing:-.04em}.hero p{font-size:1.2rem;max-width:650px;color:#dbe5f4}.eyebrow{color:var(--orange);font-size:.78rem;font-weight:800;letter-spacing:.13em}.booking-bar{background:#fff;color:#152033;border-radius:16px;padding:16px;display:grid;grid-template-columns:1fr 1fr auto;gap:12px;margin-top:35px}.booking-bar label{display:block;font-size:.72rem;color:#667085}.booking-bar input{border:0;width:100%;font-weight:700}.btn-accent{background:var(--orange);color:#fff;border:0}.section{padding:85px 0}.section h2{font-size:clamp(2rem,4vw,3.5rem);font-weight:800}.soft{background:#f5f7fb}.room-card{border:1px solid #e6eaf0;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 12px 35px #10264f10;height:100%}.room-visual{height:190px;background:linear-gradient(135deg,#10264f,#244f91);color:#ffffff33;display:grid;place-items:center;font-size:2rem;font-weight:800}.service-chip{padding:22px;background:#fff;border-radius:12px;border:1px solid #e6eaf0}footer{background:#071831;color:#dbe5f4;padding:55px 0}
.room-photo{width:100%;height:190px;object-fit:cover}
.saas-nav{padding:17px 0;background:#fff;border-bottom:1px solid #e8edf4;position:sticky;top:0;z-index:20}.saas-nav a{color:#172033}.saas-hero{padding:95px 0 85px;background:radial-gradient(circle at 85% 12%,#f47b2038,transparent 28%),linear-gradient(135deg,#071831,#102f62);color:#fff;overflow:hidden}.saas-hero h1{font-size:clamp(2.7rem,5.5vw,5.2rem);line-height:1.01;letter-spacing:-.045em;font-weight:850;max-width:950px;margin:.35em 0}.saas-hero p{font-size:1.18rem;line-height:1.7;color:#d2dded;max-width:780px}.btn-saas-light{background:#ffffff12;border:1px solid #ffffff40;color:#fff}.saas-trust{display:flex;flex-wrap:wrap;gap:18px;margin-top:35px;color:#cbd8ea;font-size:.88rem}.saas-preview{background:#fff;border-radius:20px;padding:12px;box-shadow:0 35px 80px #0006;transform:rotate(2deg);color:#172033}.preview-top{display:flex;gap:5px;padding:3px 0 12px}.preview-top i{width:8px;height:8px;border-radius:50%;background:#dce2eb}.preview-grid{display:grid;grid-template-columns:52px 1fr;min-height:330px;background:#f3f6fb;border-radius:13px;overflow:hidden}.preview-side{background:#10264f;color:#fff;text-align:center;line-height:3.25;font-weight:800}.preview-main{padding:25px}.preview-main>small{display:block;color:#7b8799;margin-bottom:15px}.preview-main>strong{font-size:1.4rem}.preview-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.preview-cards span{padding:15px;border-radius:10px;background:#fff;box-shadow:0 5px 18px #10264f12;font-weight:800}.preview-cards small{color:#7b8799;font-weight:500}.preview-chart{height:95px;border-radius:10px;background:linear-gradient(180deg,#f47b2033,transparent),linear-gradient(155deg,transparent 45%,#f47b20 46%,#f47b20 49%,transparent 50%)}.saas-features{background:#f7f9fc}.saas-features h2,.saas-solutions h2,.saas-security h2{max-width:850px;font-weight:850;letter-spacing:-.03em}.feature-card{height:100%;background:#fff;border:1px solid #e4eaf2;border-radius:16px;padding:28px;box-shadow:0 12px 35px #10264f0a}.feature-card>span{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#fff0e5;color:var(--orange)}.feature-card h3{margin:18px 0 8px}.feature-card p,.saas-solutions p,.saas-security p{color:#667085;line-height:1.7}.saas-solutions{background:#fff}.solution-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.solution-list div{padding:20px;background:#f5f7fb;border-radius:13px;font-weight:700}.solution-list span{color:var(--orange);margin-right:8px}.saas-security{background:#0b2147;color:#fff}.saas-security h2{margin-left:auto;margin-right:auto}.saas-security p{color:#cbd8ea;max-width:780px;margin:15px auto}.saas-footer{background:#06152c;color:#cbd8ea;padding:28px 0}
@media(max-width:991px){body.menu-open{overflow:hidden}.sidebar{width:min(86vw,320px);transform:translateX(-105%);box-shadow:18px 0 45px #0005}.sidebar.open{transform:translateX(0)}.sidebar-overlay{display:block;pointer-events:none}.sidebar-overlay.show{opacity:1;pointer-events:auto}.main{margin-left:0;width:100%}.content{padding:18px}.topbar{padding:10px 18px}.saas-preview{margin-top:35px;transform:none;max-width:520px}}@media(max-width:700px){.booking-bar{grid-template-columns:1fr}.auth-card{padding:25px}.hero{padding:55px 0}.hero h1{font-size:3rem}.topbar{height:68px;padding:8px 12px}.topbar .logout-btn{font-size:0;padding:.55rem}.topbar .logout-btn::after{content:"↪";font-size:1.1rem}.content{padding:14px}.saas-nav .btn-accent{display:none}.saas-hero{padding:65px 0}.saas-hero h1{font-size:2.75rem}.saas-trust{display:grid;grid-template-columns:1fr 1fr}.solution-list{grid-template-columns:1fr}}@media print{.sidebar,.sidebar-overlay,.topbar,.no-print{display:none!important}.main{margin:0;width:100%}.content{padding:0}.panel{box-shadow:none;border:0}.invoice{font-size:12px}}
