:root{color:#0f172a;background:#f8fafc;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{background:radial-gradient(circle at top,rgba(190,24,93,.12),transparent 32%),linear-gradient(180deg,#fff8fb,#f8fafc 45%,#f1f5f9);margin:0;min-width:320px;min-height:100vh}h1{font-size:clamp(2.1rem,4vw,3rem);line-height:1.1;margin:0}button{cursor:pointer;transition:transform .12s ease,opacity .12s ease,box-shadow .12s ease}button:focus,button:focus-visible{outline:3px solid rgba(159,18,57,.28);outline-offset:2px}#root{display:block;min-height:100vh;width:100%;padding:0}.panel{background:#fffffff5;border:1px solid rgba(15,23,42,.08);border-radius:24px;box-shadow:0 24px 60px #0f172a1f;padding:1.5rem}.hero-panel,.auth-panel,.admin-panel,.status-panel,.module-panel{display:grid;gap:1.25rem}.hero-panel,.auth-panel,.status-panel{margin:0 auto;max-width:480px}.panel-header{display:grid;gap:.75rem}.eyebrow{color:#9f1239;font-size:.875rem;font-weight:700;letter-spacing:.08em;margin:0;text-transform:uppercase}.subtitle{color:#475569;margin:0}.module-toolbar{display:flex;flex-wrap:wrap;gap:.625rem;justify-content:space-between}.auth-form,.issuer-form,.card-list{display:grid;gap:.875rem}.field{color:#0f172a;display:grid;gap:.5rem;font-size:1rem;font-weight:600;text-align:left}.field-hint{color:#64748b;font-size:.82rem;line-height:1.35}.field input,.field select,.field textarea{background:#fff;border:1px solid #cbd5e1;border-radius:16px;color:#0f172a;font:inherit;min-height:54px;padding:.95rem 1rem;width:100%}.field textarea{min-height:120px;resize:vertical}.visibility-checkbox-group{color:#0f172a;display:grid;gap:.5rem;font-size:1rem;font-weight:600;text-align:left}.visibility-checkbox-options{display:flex;flex-wrap:wrap;gap:1rem}.visibility-checkbox-row{align-items:center;display:inline-flex;gap:.45rem;font-weight:600}.visibility-checkbox-row input[type=checkbox]{accent-color:#9f1239;height:17px;margin:0;width:17px}.field input:focus,.field select:focus,.field textarea:focus{border-color:#9f1239;box-shadow:0 0 0 4px #9f12391f;outline:none}.primary-button,.secondary-button,.ghost-button,.danger-button,.success-button,.filter-pill{border-radius:16px;border:0;font:inherit;font-weight:700;min-height:46px;padding:.72rem 1rem}.primary-button{background:linear-gradient(135deg,#9f1239,#be123c);color:#fff}.secondary-button{background:#e2e8f0;color:#0f172a}.ghost-button{background:#fff;border:1px solid #cbd5e1;color:#0f172a}.danger-button{background:#be123c;color:#fff}.success-button{background:#16a34a;color:#fff}.primary-button:hover,.secondary-button:hover,.ghost-button:hover,.danger-button:hover,.success-button:hover,.filter-pill:hover{transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled,.danger-button:disabled,.success-button:disabled,.filter-pill:disabled{cursor:wait;opacity:.7;transform:none}.feedback{border-radius:14px;margin:0;padding:.85rem 1rem;white-space:pre-line}.feedback-error{background:#fff1f2;color:#9f1239}.feedback-success{background:#ecfdf5;color:#166534}.filter-row,.badge-row,.card-actions,.form-actions{display:flex;flex-wrap:wrap;gap:.625rem}.filter-pill{background:#f1f5f9;color:#334155}.filter-pill.is-active{background:#9f1239;color:#fff}.issuer-card,.empty-state-card,.prominent-block,.form-section{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:.9rem}.issuer-card,.empty-state-card,.prominent-block,.form-section{display:grid;gap:.75rem}.issuer-card-header,.issuer-card-title-group,.profile-meta-grid{display:grid;gap:.625rem}.issuer-card-title,.empty-state-title,.prominent-value{color:#0f172a;font-size:1.05rem;font-weight:800;margin:0}.issuer-card-subtitle,.prominent-label,.profile-meta-label{color:#64748b;margin:0}.profile-meta-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.profile-meta-item{background:#f8fafc;border-radius:14px;display:grid;gap:.25rem;padding:.625rem .7rem}.profile-meta-value{color:#0f172a;font-weight:600;word-break:break-word}.status-badge{border-radius:999px;display:inline-flex;font-size:.8rem;font-weight:700;padding:.35rem .65rem}.status-badge-neutral{background:#e2e8f0;color:#334155}.status-badge-accent{background:#ffe4e6;color:#9f1239}.status-badge-success{background:#dcfce7;color:#166534}.status-badge-warning{background:#fef3c7;color:#92400e}.toggle-field{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;display:flex;gap:.75rem;min-height:50px;padding:.75rem .9rem}.toggle-field input{accent-color:#9f1239;height:22px;margin:0;width:22px}.form-section{margin:0}.form-actions{justify-content:flex-end}.form-section legend{color:#0f172a;font-size:1rem;font-weight:800;margin-bottom:.75rem;padding:0 .25rem}.form-section-grid{display:grid;gap:.875rem}.staff-badge-panel{--staff-badge-control-width: min(100%, 360px);border-radius:20px;max-width:420px;text-align:center;width:min(100%,420px)}.staff-badge-panel.is-centered,.staff-badge-panel.is-centered .card-actions,.staff-badge-panel.is-centered .profile-meta-grid{justify-items:center}.staff-badge-title{color:#0f172a;font-size:2.35rem;line-height:1.1;margin:0}.staff-badge-panel .eyebrow{font-size:.95rem}.staff-badge-form{align-items:center;display:grid;gap:1rem;justify-items:center;width:100%}.staff-badge-segmented{display:grid;gap:.625rem;grid-template-columns:1fr 1fr;width:var(--staff-badge-control-width)}.staff-badge-form .filter-pill{font-size:1.05rem;width:100%}.staff-badge-form .primary-button{border-radius:16px;font-size:1.08rem;min-height:56px;width:var(--staff-badge-control-width)}.staff-badge-code-control{display:grid;justify-items:center;position:relative;width:var(--staff-badge-control-width)}.staff-badge-code-input{border:0;height:1px;opacity:.01;padding:0;position:absolute;width:1px}.staff-badge-code-boxes{align-items:center;background:transparent;border:0;display:flex;flex-wrap:nowrap;gap:.5rem;justify-content:center;padding:0;width:100%}.staff-badge-code-cell{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:12px;box-sizing:border-box;color:#0f172a;display:inline-flex;flex:0 0 40px;height:40px;justify-content:center;line-height:1;padding:0;width:40px}.staff-badge-code-cell.is-active{border-color:#9f1239;box-shadow:0 0 0 4px #9f12391f}.staff-badge-code-dot{background:#0f172a;border-radius:999px;display:block;height:6px;width:6px}.staff-attendance-filter-grid{display:grid;gap:.875rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.staff-attendance-week-controls{align-content:end;display:grid;gap:.5rem;grid-column:1 / -1;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.staff-attendance-summary-grid,.staff-attendance-day-list{display:grid;gap:.875rem}.staff-attendance-summary-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.staff-attendance-day-card.has-anomaly{border-color:#fecdd3;box-shadow:0 0 0 3px #e11d4814}.staff-attendance-interval-list,.staff-attendance-anomaly-list{display:grid;gap:.5rem}.staff-attendance-interval{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;display:grid;gap:.4rem;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;padding:.65rem .75rem}.staff-attendance-anomaly{display:grid;gap:.65rem}.staff-attendance-anomaly-actions{display:flex;flex-wrap:wrap;gap:.5rem}.staff-attendance-table-shell{overflow-x:auto}.staff-attendance-table{border-collapse:collapse;min-width:980px;width:100%}.staff-attendance-table th,.staff-attendance-table td{border-bottom:1px solid #e2e8f0;padding:.7rem .75rem;text-align:left;vertical-align:top}.staff-attendance-table th{color:#475569;font-size:.8rem;font-weight:800;text-transform:uppercase}.staff-attendance-table tr.is-muted{opacity:.62}.staff-attendance-modal-backdrop{align-items:center;background:#0f172a73;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:50}.staff-attendance-modal{background:#fff;border-radius:22px;box-shadow:0 24px 70px #0f172a40;display:grid;gap:1rem;max-height:calc(100vh - 2rem);max-width:760px;overflow-y:auto;padding:1.25rem;width:min(100%,760px)}@media(max-width:420px){.staff-badge-title{font-size:2rem}.staff-badge-code-boxes{gap:.44rem}.staff-badge-code-cell{flex-basis:36px;height:36px;width:36px}}.booking-form-row{display:grid;gap:.875rem;grid-column:1 / -1}.booking-form-row--status,.booking-form-row--dates{grid-template-columns:minmax(0,1fr)}.booking-nights-control{align-items:center;display:flex;gap:.5rem}.booking-nights-control input[type=number]{min-width:110px;max-width:140px;text-align:center}.prominent-block{gap:.5rem}.admin-shortcut-card{gap:1rem}.payment-accounts-overview{display:grid;gap:1rem;margin-bottom:1.25rem}.payment-accounts-summary-card,.payment-accounts-mini-stat{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:22px;box-shadow:0 16px 40px #0f172a0d;display:grid;gap:.35rem;padding:1rem 1.1rem}.payment-accounts-summary-label,.payment-accounts-mini-stat-label,.payment-account-detail-label{color:#64748b;font-size:.8rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.payment-accounts-summary-value,.payment-accounts-mini-stat-value{color:#0f172a;font-size:1.45rem;font-weight:800}.payment-accounts-summary-copy{color:#475569;margin:0}.payment-accounts-list-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:.9rem}.payment-accounts-list-title{color:#0f172a;font-size:1.1rem;font-weight:800;margin:0 0 .2rem}.payment-accounts-list{display:grid;gap:1rem}.payment-account-management-card{background:#fff;border:1px solid #dbe4ef;border-radius:24px;box-shadow:0 18px 40px #0f172a0d;display:grid;grid-template-columns:6px minmax(0,1fr);overflow:hidden}.payment-account-management-card.is-inactive{background:#fcfcfd}.payment-account-card-rail{background:linear-gradient(180deg,#e2e8f0,#cbd5e1)}.payment-account-management-card.is-default .payment-account-card-rail{background:linear-gradient(180deg,#f59e0b,#f97316)}.payment-account-card-shell{display:grid;gap:.8rem;padding:.85rem .95rem}.payment-account-card-header{align-items:flex-start;display:flex;gap:.9rem;justify-content:space-between}.payment-account-icon{align-items:center;border-radius:16px;display:inline-flex;flex-shrink:0;font-size:.76rem;font-weight:800;height:46px;justify-content:center;width:46px}.payment-account-icon-info,.payment-account-chip-info{background:#dbeafe;color:#1d4ed8}.payment-account-icon-violet,.payment-account-chip-violet{background:#ede9fe;color:#6d28d9}.payment-account-icon-amber,.payment-account-chip-amber{background:#fef3c7;color:#b45309}.payment-account-icon-sky,.payment-account-chip-sky{background:#e0f2fe;color:#0369a1}.payment-account-icon-neutral,.payment-account-chip-neutral{background:#e2e8f0;color:#334155}.payment-account-card-heading{display:grid;flex:1 1 auto;gap:.2rem;min-width:0}.payment-account-card-title{color:#0f172a;font-size:1.05rem;font-weight:800;margin:0}.payment-account-chip-row{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:.45rem;justify-content:flex-start;min-width:0}.payment-account-chip{border-radius:999px;display:inline-flex;font-size:.74rem;font-weight:800;min-height:28px;padding:.32rem .62rem}.payment-account-chip-accent{background:#fff1f2;color:#be123c}.payment-account-chip-success{background:#dcfce7;color:#166534}.payment-account-chip-warning{background:#fef3c7;color:#92400e}.payment-account-details-grid{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fit,minmax(180px,max-content))}.payment-account-detail-card{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;display:inline-grid;gap:.18rem;padding:.55rem .75rem}.payment-account-detail-value{color:#0f172a;font-weight:700;word-break:break-word}.payment-account-menu{position:relative}.payment-account-menu-button{align-items:center;background:#fff;border:1px solid #dbe4ef;border-radius:14px;color:#334155;cursor:pointer;display:inline-flex;height:40px;justify-content:center;min-width:40px;padding:0 .8rem}.payment-account-menu-button:hover{background:#f8fafc}.payment-account-menu-dots{font-size:1rem;font-weight:800;line-height:1}.payment-account-menu-dropdown{background:#fff;border:1px solid #dbe4ef;border-radius:18px;box-shadow:0 18px 35px #0f172a1f;display:grid;gap:.3rem;padding:.45rem;position:absolute;right:0;top:calc(100% + .45rem);width:220px;z-index:20}.payment-account-menu-item{background:#fff;border:0;border-radius:12px;color:#0f172a;cursor:pointer;font:inherit;font-weight:700;min-height:40px;padding:.7rem .8rem;text-align:left}.payment-account-menu-item:hover:not(:disabled){background:#f8fafc}.payment-account-menu-item.is-danger{color:#be123c}.payment-account-menu-item:disabled{color:#94a3b8;cursor:not-allowed}.payment-account-menu-note{color:#64748b;font-size:.8rem;line-height:1.4;margin:0;padding:.35rem .4rem .15rem}@media(min-width:768px){.panel{padding:2rem}.form-section-grid,.booking-form-row--status{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-form-row--dates{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1.4fr)}.payment-accounts-overview{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr))}.payment-account-card-header{align-items:center}.admin-content{padding:1.5rem 2rem 2rem}}@media(max-width:900px){.admin-layout{flex-direction:column;height:auto;min-height:100dvh;overflow:visible}.admin-sidebar{height:auto;width:100%;overflow:visible}.admin-main{height:auto;min-width:100%;min-height:0;overflow:visible}.admin-content{padding:1rem}.settings-tabs{gap:1rem}.payment-account-card-header{align-items:stretch;flex-direction:column}.payment-account-chip-row{flex:0 0 auto}.payment-account-menu-dropdown{left:0;right:auto}}.version-info{background:#f8fafce0;border:1px solid rgba(148,163,184,.28);border-radius:999px;bottom:.75rem;color:#64748b;font-size:.8rem;left:50%;max-width:calc(100vw - 1.5rem);opacity:.92;overflow:hidden;padding:.35rem .7rem;pointer-events:none;position:fixed;text-align:center;text-overflow:ellipsis;transform:translate(-50%);white-space:nowrap;z-index:30}.admin-layout{display:flex;height:100dvh;min-height:100dvh;width:100%;background:#f8fafc;margin:0;overflow:hidden}.admin-sidebar{height:100dvh;width:220px;background:#0f172a;color:#fff;display:flex;flex-direction:column;flex-shrink:0;box-shadow:2px 0 10px #0000000d;overflow:hidden;z-index:10}.admin-sidebar-header{padding:1.25rem 1.25rem 1rem;font-weight:800;font-size:1.25rem;letter-spacing:-.02em;border-bottom:1px solid rgba(255,255,255,.08)}.admin-sidebar-nav{padding:1rem 0;display:flex;flex:1 1 auto;flex-direction:column;gap:.25rem;min-height:0;overflow-y:auto}.sidebar-link{display:block;padding:.72rem 1.25rem;color:#94a3b8;text-decoration:none;font-weight:500;transition:all .2s ease;background:transparent;border:none;width:100%;text-align:left;cursor:pointer;font-size:1rem}.sidebar-link:hover{background:#ffffff0d;color:#f8fafc}.sidebar-link.is-active{background:#ffffff1a;color:#fff;border-left:4px solid #9f1239;font-weight:600}.admin-sidebar-footer{margin-top:auto;padding:1rem 1.25rem;border-top:1px solid rgba(255,255,255,.08);flex-shrink:0}.admin-main{flex-grow:1;display:flex;flex-direction:column;height:100dvh;min-width:0;min-height:100dvh;overflow:hidden}.admin-topbar{background:#fff;min-height:56px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;padding:0 1.5rem;justify-content:space-between;box-shadow:0 1px 3px #00000005}.admin-topbar-meta{display:inline-flex;align-items:center;gap:.6rem}.admin-notification-wrapper{position:relative;display:inline-flex;align-items:center}.admin-notification-bell{position:relative;width:38px;height:38px;border-radius:999px;border:1px solid rgba(148,163,184,.35);background:#fff;color:#0f172a;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:box-shadow .2s ease,transform .2s ease}.admin-notification-bell:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0f172a14}.admin-notification-bell.is-unread{animation:admin-notification-pulse 2.8s ease-in-out infinite}@keyframes admin-notification-pulse{0%,to{box-shadow:0 0 #9f123900}50%{box-shadow:0 0 0 7px #9f123917}}.admin-notification-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 6px;border-radius:999px;background:#9f1239;color:#fff;font-size:.72rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;border:2px solid #fff}.admin-notification-dropdown{position:absolute;top:calc(100% + .6rem);right:0;width:min(380px,calc(100vw - 1.25rem));background:#fff;border:1px solid rgba(148,163,184,.35);border-radius:14px;box-shadow:0 14px 40px #0f172a24;padding:.75rem;z-index:40}.admin-notification-dropdown-head{display:flex;align-items:start;justify-content:space-between;gap:.75rem;padding-bottom:.55rem;border-bottom:1px solid rgba(148,163,184,.25);margin-bottom:.55rem}.admin-notification-head-actions{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.45rem}.admin-notification-dropdown-title{background:transparent;border:0;font-weight:800;color:#0f172a;margin:0;padding:0;cursor:pointer;text-align:left;font:inherit}.admin-notification-dropdown-title:hover{color:#9f1239}.admin-notification-dropdown-subtitle{font-size:.85rem;color:#64748b;margin-top:.1rem}.admin-notification-sound-toggle{border:1px solid rgba(148,163,184,.45);border-radius:999px;background:#fff;color:#475569;font-size:.78rem;font-weight:800;padding:.42rem .7rem;cursor:pointer}.admin-notification-sound-toggle:hover:not(:disabled){background:#f8fafc;color:#0f172a}.admin-notification-sound-toggle.is-enabled{background:#16653414;border-color:#1665343d;color:#166534;cursor:default}.admin-notification-empty{color:#64748b;font-size:.9rem;padding:.75rem .25rem}.admin-notification-list{display:grid;gap:.6rem;max-height:min(60dvh,520px);overflow:auto}.admin-notification-item{border:1px solid rgba(148,163,184,.25);border-radius:12px;padding:.75rem;background:#f8fafcb3}.admin-notification-item-head{display:flex;gap:.75rem;justify-content:space-between;align-items:start}.admin-notification-item-title{font-weight:800;color:#0f172a;font-size:.95rem}.admin-notification-item-date{color:#64748b;font-size:.8rem;white-space:nowrap}.admin-notification-item-meta{margin-top:.25rem}.admin-notification-item-kind{display:inline-flex;align-items:center;border-radius:999px;padding:.15rem .55rem;font-size:.78rem;font-weight:700;background:#0f172a0f;color:#334155}.admin-notification-item-message{margin-top:.45rem;color:#334155;font-size:.9rem;line-height:1.35;word-break:break-word}.admin-notification-item-actions{margin-top:.6rem;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.45rem}.admin-notification-footer{border-top:1px solid rgba(148,163,184,.25);display:flex;justify-content:flex-end;margin-top:.65rem;padding-top:.65rem}.admin-notification-toast{position:fixed;top:4.75rem;right:1.5rem;width:min(340px,calc(100vw - 2rem));border:1px solid rgba(148,163,184,.35);border-left:4px solid #9f1239;border-radius:12px;background:#fff;box-shadow:0 14px 36px #0f172a29;padding:.8rem .9rem;z-index:60}.admin-notification-toast-title{color:#0f172a;font-size:.95rem;font-weight:800}.admin-notification-toast-message{color:#475569;font-size:.88rem;line-height:1.35;margin-top:.25rem}.admin-content{padding:1.5rem 1.75rem 1.75rem;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}.admin-notifications-page{display:grid;gap:1rem;max-width:1120px;width:100%}.admin-page-heading{align-items:end;display:flex;gap:1rem;justify-content:space-between}.admin-page-heading h1{color:#0f172a;font-size:1.85rem;line-height:1.1;margin:.2rem 0 0}.admin-notifications-page .admin-page-heading{justify-content:flex-end}.admin-notifications-tabs{margin-bottom:0}.admin-notifications-list{display:grid;gap:.7rem}.admin-notifications-card{align-items:start;background:#fff;border:1px solid rgba(148,163,184,.32);border-left:4px solid transparent;border-radius:8px;display:grid;gap:.8rem;grid-template-columns:minmax(0,1fr) auto;padding:.9rem 1rem}.admin-notifications-card.is-unread{border-left-color:#9f1239}.admin-notifications-card.is-read{background:#f8fafcb8}.admin-notifications-card-main{min-width:0}.admin-notifications-card-head{align-items:start;display:flex;gap:1rem;justify-content:space-between}.admin-notifications-card-title{color:#0f172a;font-size:1rem;font-weight:800;line-height:1.25}.admin-notifications-card-meta{color:#64748b;display:flex;flex-wrap:wrap;gap:.35rem .7rem;font-size:.85rem;margin-top:.25rem}.admin-notifications-read-state{background:#0f172a0f;border-radius:999px;color:#334155;flex:0 0 auto;font-size:.78rem;font-weight:800;padding:.18rem .6rem;white-space:nowrap}.admin-notifications-card.is-unread .admin-notifications-read-state{background:#9f123917;color:#9f1239}.admin-notifications-card-message{color:#334155;line-height:1.45;margin:.55rem 0 0;overflow-wrap:anywhere}.admin-notifications-card-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.admin-notifications-status,.admin-notifications-end{color:#64748b;font-size:.95rem;padding:.85rem 0}.admin-notifications-sentinel{height:1px}@media(max-width:720px){.admin-page-heading,.admin-notifications-card,.admin-notifications-card-head{align-items:stretch;grid-template-columns:1fr;flex-direction:column}.admin-notifications-card-actions{justify-content:flex-start}}.settings-tabs{display:flex;gap:1.25rem;border-bottom:1px solid #e2e8f0;margin-bottom:1rem;padding-bottom:0;overflow-x:auto}.settings-tab{padding:.6rem .15rem;color:#64748b;font-weight:600;background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:all .2s ease;font-size:1rem;margin-bottom:-1px}.settings-tab:hover{color:#0f172a}.settings-tab.is-active{color:#9f1239;border-bottom-color:#9f1239}.app-wrapper{display:flex;min-height:100vh;flex-direction:column;width:100%;margin:0}.public-shell{width:min(100%,920px);margin:0 auto;padding:2rem 1rem}.admin-page-panel{display:flex;flex-direction:column;gap:.875rem;width:100%;max-width:1440px;margin:0;text-align:left}.admin-page-panel .panel-header{gap:.4rem}.admin-page-panel .subtitle{max-width:980px}.payment-request-form{max-width:920px}.payment-request-description{grid-column:1 / -1}.payment-request-card-data-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.payment-request-card-description{grid-column:span 2}.payment-request-result{background:#fff;border:1px solid #bbf7d0;border-radius:20px;display:grid;gap:1rem;max-width:920px;padding:1rem}@media(max-width:760px){.payment-request-card-data-grid{grid-template-columns:1fr!important}.payment-request-card-description{grid-column:1}}.payment-request-link-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.payment-request-link{color:#9f1239;font-weight:700;overflow-wrap:anywhere}.payment-card-test-form{max-width:920px}.payment-card-description{grid-column:1 / -1}.paypal-card-mode{border-radius:14px;font-weight:700;margin:0;max-width:920px;padding:.85rem 1rem}.paypal-card-mode-sandbox{background:#eff6ff;color:#1d4ed8}.paypal-card-mode-live{background:#fff1f2;color:#9f1239}.paypal-card-fields-section{display:grid;gap:.875rem}.paypal-card-fields-grid{display:grid;gap:.875rem;grid-template-columns:repeat(2,minmax(0,1fr))}.paypal-card-field{background:#fff;border:1px solid #cbd5e1;border-radius:16px;min-height:54px;padding:.95rem 1rem}.payment-card-result{background:#fff;border:1px solid #bbf7d0;border-radius:20px;display:grid;gap:1rem;max-width:920px;padding:1rem}.payment-card-result-grid{display:grid;gap:.625rem 1rem;grid-template-columns:max-content 1fr;margin:0}.payment-card-result-grid dt{color:#64748b;font-weight:700}.payment-card-result-grid dd{color:#0f172a;font-weight:600;margin:0;overflow-wrap:anywhere}.card-payment-request-modal{width:min(1180px,calc(100vw - 2.5rem));max-width:100%;max-height:90vh;overflow:auto;padding:1.25rem}.public-payment-page{width:min(860px,100%);margin:0 auto;padding:clamp(1rem,3vw,2rem) 1rem}.public-payment-card{background:#fff;border:1px solid #e2e8f0;border-radius:22px;box-shadow:0 18px 45px #0f172a1a;padding:clamp(1.25rem,3vw,2rem)}.public-payment-brand{color:#9f1239;font-size:1.45rem;font-weight:900;letter-spacing:.08em;line-height:1.15;margin:0;text-align:center;text-transform:uppercase}.public-payment-title{margin:0;color:#334155;font-size:1.05rem;font-weight:700;line-height:1.35;margin-top:.6rem;text-align:center}.public-payment-meta{align-items:center;color:#64748b;display:flex;flex-wrap:wrap;font-size:.82rem;font-weight:700;gap:.4rem .75rem;justify-content:center;margin:.85rem 0 1.15rem;text-transform:uppercase}.public-payment-booking,.public-payment-amounts{border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc;padding:.95rem}.public-payment-lines span{display:block;color:#64748b;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.public-payment-lines small{color:#475569;display:block;font-size:.86rem;font-weight:650;letter-spacing:0;line-height:1.35;margin-top:.25rem;text-transform:none}.public-payment-booking p{margin:0}.public-payment-section-label{color:#0f172a;font-size:.82rem;font-weight:900;letter-spacing:.04em;margin:0;text-transform:uppercase}.public-payment-payer{color:#475569;display:grid;gap:.35rem;justify-items:start;max-width:680px}.public-payment-payer strong{color:#0f172a;font-size:1.08rem;line-height:1.3}.public-payment-payer span{line-height:1.4}.public-payment-booking p+p{color:#475569}.public-payment-amounts{display:grid;gap:.75rem;margin:.95rem 0 1.25rem}.public-payment-lines{display:grid;gap:.6rem}.public-payment-lines>div{display:flex;align-items:center;justify-content:space-between;gap:1rem}.public-payment-total{align-items:baseline;border-top:1px solid #cbd5e1;display:flex;gap:1rem;justify-content:space-between;padding-top:.8rem}.public-payment-total span{color:#0f172a;font-size:.9rem;font-weight:900;text-transform:uppercase}.public-payment-total strong{color:#0f172a;font-size:1.45rem;font-weight:900}.public-payment-card-form{margin-top:0}.public-payment-methods{display:grid;gap:1rem;margin-top:1.1rem}.public-payment-bank-transfer{background:#fff7ed;border:1px solid #fed7aa;border-radius:16px;color:#7c2d12;padding:1rem}.public-payment-bank-transfer h2{color:#7c2d12;font-size:1rem;margin:0}.public-payment-bank-transfer p{margin:.4rem 0 .75rem}.public-payment-bank-transfer dl{display:grid;gap:.55rem;margin:0}.public-payment-bank-transfer dl>div{display:grid;gap:.15rem}.public-payment-bank-transfer dt{font-size:.74rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.public-payment-bank-transfer dd{color:#431407;font-weight:750;margin:0;overflow-wrap:anywhere}.public-payment-card-form .paypal-card-fields-section{border-radius:16px;padding:1rem}.public-payment-card-form .paypal-card-fields-grid{gap:.75rem}.public-payment-card-form .paypal-card-field{background:transparent;border:0;border-radius:0;box-shadow:none;min-height:48px;padding:0;width:100%}@media(max-width:640px){.public-payment-page{padding:0}.public-payment-card{border:0;border-radius:0;box-shadow:none;min-height:100vh;padding:1.15rem 1rem 1.5rem}.public-payment-brand{font-size:1.55rem}.public-payment-title{font-size:.95rem;margin-top:.55rem}.public-payment-meta{font-size:.75rem;margin-bottom:1rem}.public-payment-booking,.public-payment-amounts{border:0;border-radius:0;background:transparent;padding:0}.public-payment-booking{border-top:1px solid #e2e8f0;padding-top:1rem}.public-payment-payer{max-width:none}.public-payment-lines>div,.public-payment-total{gap:.75rem}.public-payment-total strong{font-size:1.35rem}.public-payment-card-form .paypal-card-fields-section{margin-top:.25rem;padding:.95rem}.paypal-card-fields-grid{grid-template-columns:1fr}.public-payment-card-form .field{gap:.35rem}.public-payment-card-form .paypal-card-field{min-height:48px;padding:0}.public-payment-submit{width:100%}}@media(max-width:420px){.public-shell:has(.public-payment-page){background:#fff;max-width:none;padding:0;width:100%}.public-payment-page{background:#fff;margin:0;width:100%}.public-payment-card{padding:1rem .75rem 1.25rem}.public-payment-brand{font-size:1.42rem}.public-payment-title{font-size:.9rem}.public-payment-booking{padding-top:.85rem}.public-payment-card-form .paypal-card-fields-section{border-radius:14px;padding:.85rem}.public-payment-card-form .paypal-card-fields-grid{gap:.65rem}.public-payment-card-form .field{font-size:.93rem}.public-payment-card-form .paypal-card-field{background:transparent;border:0;border-radius:0;box-shadow:none;min-height:46px;padding:0;width:100%}.public-payment-card-form .paypal-card-field:focus-within{box-shadow:none}}.admin-topbar-label{color:#9f1239;font-size:.95rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.admin-summary-grid{display:grid;gap:.875rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.admin-summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;display:grid;gap:.625rem;padding:1rem}.admin-summary-card h3{color:#0f172a;font-size:1rem;margin:0}.admin-summary-card p{margin:0}.admin-summary-list{color:#475569;display:grid;gap:.45rem;margin:0;padding-left:1rem}.accounting-ledger-toolbar{display:grid;gap:.75rem}.accounting-ledger-filters{display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.accounting-ledger-layout{display:grid;gap:1rem;grid-template-columns:280px minmax(0,1fr)}.accounting-ledger-sidebar{display:grid;gap:.5rem}.accounting-ledger-account{background:#fff;border:1px solid #e2e8f0;border-radius:18px;cursor:pointer;display:grid;gap:.3rem;padding:.9rem;text-align:left}.accounting-ledger-account.is-active{border-color:#9f123973;box-shadow:0 0 0 3px #9f12391f}.accounting-ledger-account-title{color:#0f172a;font-weight:800}.accounting-ledger-account-value{color:#0f172a;font-size:1.1rem;font-weight:800}.accounting-ledger-account-sub{color:#64748b;font-size:.85rem}.accounting-ledger-table-shell{background:#fff;border:1px solid #e2e8f0;border-radius:18px;overflow:auto}.accounting-ledger-table{border-collapse:collapse;min-width:980px;width:100%}.accounting-ledger-table th,.accounting-ledger-table td{border-bottom:1px solid #f1f5f9;padding:.75rem;vertical-align:top}.accounting-ledger-table th{background:#f8fafc;color:#334155;font-size:.82rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.accounting-ledger-table td{color:#0f172a;font-size:.95rem}.accounting-ledger-table th.is-right,.accounting-ledger-table td.is-right,.accounting-ledger-actions-heading,.accounting-ledger-actions-cell{text-align:right;white-space:nowrap}.accounting-ledger-delete-button{background:#fff;border:1px solid rgba(220,38,38,.28);border-radius:8px;color:#b91c1c;cursor:pointer;font-weight:800;padding:.45rem .65rem}.accounting-ledger-delete-button:hover:not(:disabled){background:#fef2f2;border-color:#dc262673}.accounting-ledger-delete-button:disabled{cursor:not-allowed;opacity:.62}.accounting-ledger-desc{display:grid;gap:.15rem}.accounting-ledger-desc-main{font-weight:700}.accounting-ledger-desc-sub{color:#64748b;font-size:.85rem}.compact-empty-state{padding:1.5rem 1.25rem;text-align:left}.compact-empty-state .empty-state-title{font-size:1rem}.payment-account-card{gap:.875rem}.payment-account-notes{background:#f8fafc;border-radius:14px;display:grid;gap:.35rem;padding:.75rem}.rates-grid{border:1px solid #e2e8f0;border-radius:18px;overflow:hidden}.rates-grid-header,.rates-grid-row{display:grid;grid-template-columns:120px repeat(auto-fit,minmax(160px,1fr))}.rates-grid-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#334155;font-size:.85rem;font-weight:800;padding:.85rem 1rem}.rates-grid-row{border-bottom:1px solid #f1f5f9}.rates-grid-row:last-child{border-bottom:0}.rates-grid-cell{align-items:center;display:grid;gap:.35rem;padding:.75rem 1rem}.rates-grid-occupancy{color:#0f172a;font-weight:800}.rates-grid-input{background:#fff;border:1px solid #cbd5e1;border-radius:14px;color:#0f172a;font:inherit;min-height:44px;padding:.55rem .7rem;width:100%}.rates-grid-input:focus{border-color:#9f1239;box-shadow:0 0 0 4px #9f12391f;outline:none}.rates-grid-action{background:transparent;border:0;color:#be123c;cursor:pointer;font:inherit;font-size:.82rem;font-weight:700;padding:0;text-align:left}:root{--receipt-print-scale: .8}.receipt-print-page{background:#fff;color:#0f172a;font-family:Georgia,Times New Roman,serif;min-height:100vh;padding:1.5rem 1rem 2rem}.receipt-print-toolbar{display:flex;gap:.625rem;justify-content:flex-end;margin:0 auto .9rem;max-width:800px}.receipt-print-sheet{background:#fff;box-shadow:0 18px 45px #0f172a1f;display:grid;gap:1rem;margin:0 auto;max-width:800px;padding:2rem 2.25rem}.receipt-print-header{align-items:start;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) auto}.receipt-print-title{font-size:1.35rem;letter-spacing:.03em;margin:0}.receipt-print-subtitle{font-size:.95rem;margin:.2rem 0 0}.receipt-print-meta p{font-size:.93rem;margin:.2rem 0;text-align:right}.receipt-print-separator{border:0;border-top:1px solid #dbe4ef;margin:0}.receipt-print-sheet h2{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:.92rem;font-weight:800;letter-spacing:.05em;margin:0 0 .5rem;text-transform:uppercase}.receipt-print-sheet p{line-height:1.45;margin:.18rem 0}.receipt-print-two-col{display:grid;gap:1.2rem;grid-template-columns:repeat(2,minmax(0,1fr))}.receipt-print-table{border-collapse:collapse;margin-top:.35rem;width:100%}.receipt-print-table th,.receipt-print-table td{border-bottom:1px solid #e2e8f0;padding:.45rem .25rem}.receipt-print-table tbody tr:last-child td{border-bottom:0}.receipt-print-table th{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:.82rem;text-align:left;text-transform:uppercase}.receipt-print-table td:last-child,.receipt-print-table th:last-child{text-align:right}.receipt-print-total-row td{font-weight:800}.receipt-print-payment-method{margin-top:.6rem}.receipt-print-footer{display:flex;justify-content:flex-end;margin-top:.65rem;padding-top:0}.receipt-print-declarations{margin-top:1.25rem}.receipt-print-signature{align-items:center;display:flex;flex-direction:column;page-break-inside:avoid;text-align:center;width:220px}.receipt-print-signature-label{margin:0}.receipt-print-signature-box{display:flex;justify-content:center;margin-top:.1rem;min-height:0;width:100%}.receipt-print-signature-image{height:auto;max-height:80px;max-width:180px;object-fit:contain;width:auto}.receipt-print-signature-blank{border-bottom:1px solid #94a3b8;height:80px;width:180px}.receipt-print-signature-name{font-size:1.05rem;margin-top:.1rem}.receipt-print-lines-note{color:#334155;margin:.8rem auto 0;max-width:800px}@media screen and (max-width:768px){.receipt-print-header{grid-template-columns:1fr}.receipt-print-meta p{text-align:left}.receipt-print-two-col{grid-template-columns:1fr}}@media(max-width:1024px){.accounting-ledger-layout,.accounting-ledger-filters{grid-template-columns:1fr}}.staff-shell{background:#f8fafc;display:flex;flex-direction:column;min-height:100vh;width:100%}.staff-header{background:#fffffff5;border-bottom:1px solid rgba(15,23,42,.08);display:flex;gap:1rem;justify-content:space-between;padding:1rem 1rem .75rem}.staff-header-title{min-width:0}.staff-header-actions{align-items:center;display:flex;gap:.75rem;min-width:0}.staff-current-user{color:#64748b;font-size:.95rem;font-weight:800;max-width:10rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:420px){.staff-current-user{max-width:7.5rem}}.staff-title{font-size:1.25rem;font-weight:900;margin:0}.staff-main{padding:1rem;padding-bottom:calc(1rem + 72px)}.staff-bottom-nav{background:#fffffffa;border-top:1px solid rgba(15,23,42,.08);bottom:0;display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr));left:0;padding:.75rem 1rem 1rem;position:fixed;right:0;z-index:20}.staff-nav-button{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:16px;color:#0f172a;font:inherit;font-size:.92rem;font-weight:800;min-height:52px;padding:.7rem .55rem}.staff-nav-button.is-active{background:#9f1239;border-color:#9f1239;color:#fff}.staff-page{display:grid;gap:1rem}.staff-page-title{font-size:1.4rem;font-weight:900;margin:0}.staff-page-header--today{display:flex;justify-content:flex-end;align-items:center;margin-bottom:.75rem}.staff-page-header--today .staff-page-title{margin:0;white-space:nowrap;text-align:right;color:#9f1239}.staff-summary-grid{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.staff-summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;display:grid;gap:.3rem;padding:.85rem}.staff-summary-label{color:#64748b;font-weight:800}.staff-summary-value{color:#0f172a;font-size:1.35rem;font-weight:900}.staff-section{display:grid;gap:.75rem}.staff-section-head{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.staff-section-title{font-size:1.05rem;font-weight:900;margin:0}.staff-section-count{background:#e2e8f0;border-radius:999px;color:#0f172a;font-size:.85rem;font-weight:900;padding:.25rem .6rem}.staff-card-list{display:grid;gap:.65rem}.staff-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;display:grid;gap:.5rem;padding:.85rem}.staff-card-head{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.staff-card-head-main{min-width:0}.staff-card-side-actions{align-items:flex-end;display:flex;flex-direction:column;gap:.35rem;min-width:0}.staff-room-card-layout{align-items:stretch;display:grid;gap:.75rem;grid-template-columns:minmax(0,1fr) auto}.staff-room-card-main{min-width:0}.staff-room-card .staff-card-side-actions{align-self:stretch;justify-content:space-between;min-height:100%}.staff-room-note-button{font-size:.85rem;font-weight:900;line-height:1.1;padding:.35rem .55rem;white-space:nowrap}.staff-room-card .staff-card-body{margin-top:.35rem}.staff-housekeeping-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.625rem;justify-content:space-between;margin-top:.75rem}.staff-housekeeping-actions>*{flex:0 0 auto}.staff-housekeeping-admin-actions{display:flex;flex-wrap:wrap;gap:.625rem;margin-top:.625rem}@media(max-width:360px){.staff-room-card-layout{grid-template-columns:1fr}.staff-room-card .staff-card-side-actions{align-items:center;flex-direction:row;justify-content:space-between}}.staff-card-title{color:#0f172a;font-weight:900}.staff-card-subtitle{color:#475569;font-weight:700}.staff-guest-icons{font-size:1.25rem;letter-spacing:.06em;line-height:1.15}.staff-guest-hints{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.35rem}.staff-tags{display:flex;flex-wrap:wrap;gap:.4rem}.staff-tag-pill{background:#f1f5f9;border-radius:999px;color:#334155;font-size:.78rem;font-weight:800;padding:.2rem .55rem}.staff-status-pill{border-radius:999px;font-size:.78rem;font-weight:900;padding:.2rem .6rem}.staff-status-free{background:#ecfdf5;color:#166534}.staff-status-free_not_ready{background:#fff7ed;color:#9a3412}.staff-status-free_ready,.staff-status-occupied{background:#eff6ff;color:#1d4ed8}.staff-status-blocked{background:#fff7ed;color:#9a3412}.staff-status-maintenance{background:#f5f3ff;color:#6d28d9}.staff-status-conflict{background:#fff1f2;color:#9f1239}.staff-note-list{display:grid;gap:.65rem}.staff-note-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;display:grid;gap:.5rem;padding:.85rem}.staff-note-meta{align-items:center;display:flex;gap:.65rem;justify-content:space-between}.staff-note-author{color:#0f172a;font-weight:900}.staff-note-kind{background:#e2e8f0;border-radius:999px;color:#0f172a;font-size:.78rem;font-weight:900;padding:.2rem .55rem}.staff-note-message{color:#334155;font-weight:600;white-space:pre-line}.staff-calendar-toolbar{display:grid;gap:.6rem;grid-template-columns:repeat(3,minmax(0,1fr))}.staff-my-calendar-page{max-width:760px;margin:0 auto}.staff-my-calendar-toolbar{display:grid;gap:.6rem;grid-template-columns:repeat(3,minmax(0,1fr))}.staff-my-calendar-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;display:grid;gap:.9rem;padding:.9rem}.staff-my-calendar-card h2,.staff-my-calendar-detail-block h3{margin:0}.staff-my-calendar-card h2{font-size:1.15rem}.staff-my-calendar-detail-block h3{font-size:.92rem}.staff-my-calendar-month-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between}.staff-my-calendar-month-header h2{text-transform:capitalize}.staff-my-calendar-hours{display:grid;gap:.6rem;grid-template-columns:repeat(2,minmax(0,1fr))}.staff-my-calendar-hours div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;display:grid;gap:.25rem;padding:.75rem}.staff-my-calendar-hours span{color:#64748b;font-size:.82rem;font-weight:800}.staff-my-calendar-hours strong{color:#0f172a;font-size:1.2rem}.staff-my-calendar-weekdays,.staff-my-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.staff-my-calendar-weekdays{color:#64748b;font-size:.78rem;font-weight:900;text-align:center}.staff-my-calendar-grid{gap:.35rem}.staff-my-calendar-empty-cell,.staff-my-calendar-day{aspect-ratio:1 / 1;min-width:0}.staff-my-calendar-day{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;color:#0f172a;display:grid;font:inherit;gap:.2rem;justify-items:center;padding:.28rem}.staff-my-calendar-day.is-past{color:#94a3b8;opacity:.68}.staff-my-calendar-day.is-today{border-color:#0f172a;box-shadow:0 0 0 2px #0f172a14}.staff-my-calendar-day.is-selected{background:#9f1239;border-color:#9f1239;color:#fff}.staff-my-calendar-day.has-unavailability{background:#fff1f2;border-color:#fecdd3}.staff-my-calendar-day.has-anomaly{border-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b24}.staff-my-calendar-day.is-selected.has-unavailability{background:#9f1239;border-color:#9f1239}.staff-my-calendar-day-number{font-size:.95rem;font-weight:900}.staff-my-calendar-day-markers{display:flex;gap:.16rem;min-height:.35rem}.staff-my-calendar-marker{border-radius:999px;display:block;height:.34rem;width:.34rem}.marker-unavailable{background:#be123c}.marker-worked{background:#16a34a}.marker-anomaly{background:#f59e0b}.staff-my-calendar-detail{display:grid;gap:.9rem}.staff-my-calendar-detail-head,.staff-my-calendar-list-row{align-items:center;display:flex;flex-wrap:wrap;gap:.55rem;justify-content:space-between}.staff-my-calendar-detail-head{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:.75rem}.staff-my-calendar-detail-block,.staff-my-calendar-list{display:grid;gap:.55rem}.staff-my-calendar-list-row{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:.65rem .75rem}@media(max-width:520px){.staff-my-calendar-toolbar,.staff-calendar-toolbar{grid-template-columns:1fr}.staff-nav-button{font-size:.78rem;min-height:48px;padding:.55rem .35rem}}.staff-day-list{display:grid;gap:1rem}.staff-day-section{background:#fff;border:1px solid #e2e8f0;border-radius:20px;display:grid;gap:.85rem;padding:.9rem}.staff-day-title{font-size:1.05rem;font-weight:900;margin:0;text-transform:capitalize}.staff-day-group{display:grid;gap:.6rem}.staff-empty-inline{color:#64748b;font-weight:700}.unit-color-swatch{width:12px;height:12px;border-radius:5px;border:1px solid rgba(15,23,42,.18);display:inline-block;margin-right:.5rem;vertical-align:middle}.color-field-row{display:grid;grid-template-columns:54px minmax(0,1fr);gap:.65rem;align-items:center}.color-field-row input[type=color]{width:54px;height:54px;padding:0;border-radius:16px;border:1px solid #cbd5e1;background:#fff}.color-field-row input[type=text]{width:100%}.admin-calendar-page{--admin-calendar-visible-width: 1040px;display:grid;gap:1rem}.admin-calendar-title{margin:0;font-size:2rem}.admin-calendar-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;width:100%;max-width:var(--admin-calendar-visible-width)}.admin-calendar-toolbar-left,.admin-calendar-toolbar-right{display:flex;flex-wrap:wrap;gap:.625rem;align-items:center}.admin-calendar-legend{display:flex;flex-wrap:wrap;gap:.6rem .9rem;align-items:center}.admin-calendar-legend-item{display:inline-flex;gap:.45rem;align-items:center;color:#334155;font-weight:700;font-size:.9rem}.admin-calendar-legend-swatch{width:14px;height:14px;border-radius:6px;border:1px solid rgba(15,23,42,.12)}.admin-calendar-layout{display:grid;grid-template-columns:minmax(0,var(--admin-calendar-visible-width)) 380px;gap:1rem;align-items:start}.admin-calendar-main-column{display:grid;gap:1rem;min-width:0;max-width:var(--admin-calendar-visible-width)}.admin-calendar-matrix-shell{background:#fff;border:1px solid #e2e8f0;border-radius:18px;width:100%;max-width:var(--admin-calendar-visible-width);overflow-x:auto;overflow-y:auto}.admin-calendar-table{border-collapse:separate;border-spacing:0;min-width:1080px;width:100%}.admin-calendar-table th,.admin-calendar-table td{border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;padding:0;vertical-align:top}.admin-calendar-table th:first-child,.admin-calendar-table td:first-child{border-left:1px solid #f1f5f9}.admin-calendar-sticky-head{position:sticky;top:0;z-index:4;background:#f8fafc}.admin-calendar-sticky-col{position:sticky;left:0;z-index:3;background:var(--admin-unit-bg, #fff)}.admin-calendar-sticky-head.admin-calendar-sticky-col{background:#f8fafc;z-index:6}.admin-calendar-unit-head{min-width:130px;width:130px;max-width:130px;padding:.8rem .85rem;text-align:left;font-weight:900;color:#0f172a}.admin-calendar-day-head{min-width:175px;width:175px;padding:0;text-align:left;color:#334155}.admin-calendar-day-select{align-items:flex-start;background:transparent;border:0;color:inherit;cursor:pointer;display:flex;flex-direction:column;font:inherit;padding:.6rem .65rem;text-align:left;transition:background .14s ease,color .14s ease;width:100%}.admin-calendar-day-select:hover{background:#2563eb14}.admin-calendar-day-select.is-selected{background:#2563eb24;color:#1d4ed8}.admin-calendar-day-select.is-selected .admin-calendar-day-head-sub{color:#2563eb}.admin-calendar-day-head-top{font-weight:900;text-transform:capitalize}.admin-calendar-day-head-sub{font-size:.8rem;color:#64748b;font-weight:700;margin-top:.15rem}.admin-calendar-unit-cell{min-width:130px;width:130px;max-width:130px;padding:.55rem .75rem;text-align:left;background:var(--admin-unit-bg, #fff);color:var(--admin-unit-fg, #0f172a)}.admin-calendar-unit-name{font-weight:900;color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-calendar-unit-code{color:#64748b;font-weight:700;font-size:.85rem;margin-top:.15rem}.admin-calendar-td{min-width:175px;position:relative;width:175px}.admin-calendar-cell{width:100%;min-height:62px;padding:.55rem .6rem .6rem;text-align:left;border:1px solid transparent;background:#fff;cursor:pointer}.admin-calendar-cell:hover{filter:brightness(.99)}.admin-calendar-cell.is-selected{border-color:#9f12398c;box-shadow:0 0 0 3px #9f12391f}.admin-calendar-add-booking{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:4;width:1.85rem;height:1.85rem;border:1px solid rgba(159,18,57,.3);border-radius:999px;background:#9f1239;color:#fff;box-shadow:0 8px 18px #0f172a29;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;font-weight:900;line-height:1;padding:0}.admin-calendar-add-booking:hover{background:#881337}.admin-calendar-add-booking:focus-visible{outline:3px solid rgba(159,18,57,.22);outline-offset:2px}.admin-calendar-staff-row th,.admin-calendar-staff-row td{border-top:1px solid #cbd5e1}.admin-calendar-staff-head{min-width:130px;width:130px;max-width:130px;padding:.5rem .75rem;text-align:left;background:#f8fafc;color:#334155}.admin-calendar-staff-cell{align-items:center;background:#f8fafc;border:1px solid transparent;color:#475569;cursor:pointer;display:flex;min-height:62px;padding:.4rem .6rem;text-align:left;width:100%}.admin-calendar-staff-cell:hover{background:#f1f5f9}.admin-calendar-staff-cell.is-selected{border-color:#2563eb73;box-shadow:inset 0 0 0 2px #2563eb1f}.admin-calendar-staff-cell.has-absences{background:#0ea5e914;color:#0f172a}.admin-calendar-staff-cell-main,.admin-calendar-staff-cell-empty{display:block;font-size:.8rem;font-weight:800;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-calendar-staff-cell-empty{color:#94a3b8;font-weight:700}.admin-calendar-cell-lines{display:grid;gap:.15rem}.admin-calendar-cell-line{font-size:.82rem;font-weight:800;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-calendar-cell-line-arrival{color:#166534}.admin-calendar-cell-line-departure{color:#1d4ed8}.admin-calendar-cell-line-stayover{color:#854d0e}.admin-calendar-cell-line-neutral{color:#475569}.admin-calendar-cell-badges{display:flex;gap:.25rem;align-items:center;min-height:18px}.admin-calendar-mini-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:.72rem;font-weight:900;padding:.08rem .45rem}.admin-calendar-mini-arrival{background:#22c55e29;color:#166534}.admin-calendar-mini-departure{background:#3b82f629;color:#1d4ed8}.admin-calendar-mini-stayover{background:#eab30829;color:#854d0e}.admin-calendar-cell-label{margin-top:.25rem;font-weight:900;color:#0f172a;font-size:.92rem;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-calendar-cell-sub{margin-top:.15rem;font-size:.82rem;font-weight:800;color:#475569;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-calendar-cell.admin-calendar-status-free{background:#fff}.admin-calendar-cell.admin-calendar-status-free_not_ready{background:#f973161f}.admin-calendar-cell.admin-calendar-status-free_ready{background:#fff}.admin-calendar-cell.admin-calendar-status-occupied{background:#22c55e1a}.admin-calendar-cell.admin-calendar-status-blocked{background:#94a3b838}.admin-calendar-cell.admin-calendar-status-maintenance{background:#a78bfa2e}.admin-calendar-cell.admin-calendar-status-conflict{background:#ef44441f}.admin-calendar-cell.has-arrival{border-top:3px solid rgba(34,197,94,.7)}.admin-calendar-cell.has-departure{border-bottom:3px solid rgba(59,130,246,.7)}.admin-calendar-cell.has-stayover{border-left:3px solid rgba(234,179,8,.7)}.admin-calendar-detail{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-start}.admin-calendar-detail-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:.9rem;display:grid;gap:.75rem;width:min(100%,360px);max-width:360px}.admin-calendar-detail-title{margin:0;font-size:1.25rem;font-weight:900;color:#0f172a}.admin-calendar-detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.admin-calendar-detail-label{color:#64748b;font-weight:800;font-size:.85rem}.admin-calendar-detail-value{color:#0f172a;font-weight:900;margin-top:.1rem}.admin-calendar-status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.25rem .55rem;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.admin-calendar-tags{display:flex;flex-wrap:wrap;gap:.4rem}.admin-calendar-tag{display:inline-flex;align-items:center;border-radius:999px;padding:.25rem .6rem;font-size:.82rem;font-weight:900;background:#e2e8f0;color:#0f172a}.admin-calendar-tag-arrival{background:#22c55e29;color:#166534}.admin-calendar-tag-departure{background:#3b82f629;color:#1d4ed8}.admin-calendar-tag-stayover{background:#eab30829;color:#854d0e}.admin-calendar-status-free{background:#fff}.admin-calendar-status-free_not_ready{background:#f973161f}.admin-calendar-status-free_ready{background:#fff;border:1px solid rgba(59,130,246,.28)}.admin-calendar-status-occupied{background:#22c55e1a}.admin-calendar-status-blocked{background:#94a3b838}.admin-calendar-status-maintenance{background:#a78bfa2e}.admin-calendar-status-conflict{background:#ef44441f}.admin-calendar-booking-list{display:grid;gap:.6rem}.admin-calendar-booking-card{background:#f8fafc;border-radius:14px;padding:.65rem .7rem;display:grid;gap:.35rem}.admin-calendar-booking-title{font-weight:900;color:#0f172a}.admin-calendar-booking-sub{display:flex;flex-wrap:wrap;gap:.45rem .6rem;color:#475569;font-weight:800;font-size:.85rem}.admin-calendar-booking-sub-main{align-items:center;justify-content:space-between}.admin-calendar-booking-code{background:transparent;border:none;color:#0f172a;cursor:pointer;font:inherit;font-weight:900;padding:0}.admin-calendar-booking-code:hover{text-decoration:underline;text-underline-offset:3px}.admin-calendar-booking-code:focus-visible{border-radius:.15rem;outline:2px solid #2563eb;outline-offset:2px;text-decoration:underline;text-underline-offset:3px}.admin-calendar-booking-mini-badges{display:inline-flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.admin-calendar-booking-mini-badge{background:#94a3b838;border-radius:999px;color:#334155;font-size:.72rem;font-weight:900;letter-spacing:.04em;padding:.08rem .45rem;text-transform:uppercase}.admin-calendar-booking-mini-badge-info{background:#3b82f624;color:#1d4ed8}.admin-calendar-booking-mini-badge-warning{background:#eab3082e;color:#854d0e}.admin-calendar-booking-code-row{display:inline-flex;align-items:center;gap:.5rem}.admin-calendar-booking-guest-icons{font-size:1.1rem;letter-spacing:.06em;line-height:1.1}.admin-calendar-booking-guest-icons-button{display:inline-flex;align-items:center;background:transparent;border:none;padding:0;cursor:pointer;color:inherit}.admin-calendar-booking-guest-icons-button:hover .admin-calendar-booking-guest-icons{text-decoration:underline;text-underline-offset:3px}.admin-calendar-guest-hints{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.2rem}.admin-calendar-guest-hint-pill{background:#94a3b82e;border-radius:999px;color:#64748b;display:inline-flex;font-size:.72rem;font-weight:900;letter-spacing:.04em;padding:.08rem .45rem;text-transform:uppercase}.admin-calendar-booking-sub-meta{align-items:center;justify-content:space-between}.admin-calendar-booking-tel{color:#0f172a;font-weight:900;text-decoration:none}.admin-calendar-booking-tel:hover{text-decoration:underline}.admin-calendar-booking-muted{color:#94a3b8;font-weight:800}.admin-calendar-booking-sales-badge{background:#3b82f624;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:.78rem;font-weight:900;padding:.14rem .55rem;white-space:nowrap}.admin-calendar-booking-sales-loading{background:#94a3b838;color:#64748b}.admin-calendar-booking-sales-missing{background:#94a3b82e;color:#64748b}.admin-calendar-note-list{align-items:start;display:grid;gap:.6rem}.admin-calendar-notes-section{background:transparent;border:0;border-radius:0;padding:0}.admin-calendar-notes-section .operational-card-inline-form{max-width:320px}.admin-calendar-note-card{background:#f8fafc;border-radius:14px;padding:.65rem .7rem;display:grid;gap:.35rem}.admin-calendar-note-meta{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;color:#0f172a;font-weight:900;font-size:.9rem}.admin-calendar-note-kind{background:#e2e8f0;border-radius:999px;color:#0f172a;font-size:.78rem;font-weight:900;padding:.2rem .55rem}.admin-todo-priority-high{background:#9f123924;color:#9f1239}.admin-calendar-note-message{color:#334155;font-weight:700;white-space:pre-line}.operational-note-action-toggle{margin-top:.8rem}.operational-note-todo-fields{margin-top:.75rem}.operational-card-inline-form{display:grid;gap:.65rem;margin-top:.15rem}.operational-card-inline-form .field{margin:0}.operational-card-inline-form .field input,.operational-card-inline-form .field select,.operational-card-inline-form .field textarea{min-height:2.45rem;padding:.5rem .65rem}.operational-card-inline-form .field textarea{min-height:4.75rem}.operational-card-inline-actions{display:flex;gap:.45rem;justify-content:flex-end}.operational-card-inline-actions button{min-height:2.35rem;padding:.45rem .7rem}.operational-note-library-list{align-items:start;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,320px));justify-content:start}.operational-todo-postit-list{align-items:start;display:grid;gap:1.15rem;grid-template-columns:repeat(auto-fill,minmax(280px,320px));justify-content:start;margin-top:.25rem}.admin-calendar-postit-board{display:grid;gap:.65rem;margin-top:-.25rem}.admin-calendar-postit-more{display:flex;justify-content:flex-start}.operational-card{border-radius:12px;box-shadow:0 6px 15px #44321d24;display:flex;flex-direction:column;gap:.55rem;padding:.95rem 1rem .85rem;width:100%;max-width:320px}.operational-todo-postit{background:linear-gradient(145deg,#ffef8c,#ffeb72);border:1px solid #e5cd5d}.operational-note-card{background:linear-gradient(145deg,#f2eaff,#e8ddfc);border:1px solid #d3c1ee}.operational-todo-postit-high{background:linear-gradient(145deg,#ffe785,#ffd873);border-color:#e4b951}.operational-housekeeping-postit{background:linear-gradient(145deg,#fff6bf,#ffe986);border-color:#d7b84f}.operational-housekeeping-auto-badge{background:#2921151f;border-color:#29211529;color:#4d3b15}.operational-housekeeping-action-form{margin-top:.15rem}.operational-card-header{align-items:center;color:#292115;display:flex;justify-content:space-between;position:relative}.operational-card-heading{align-items:center;display:flex;flex-wrap:wrap;font-size:.95rem;font-weight:900;gap:.45rem;padding-right:.3rem}.operational-todo-overflow{align-self:flex-start;position:relative}.operational-todo-overflow-trigger{align-items:center;background:transparent;border:1px solid transparent;border-radius:8px;color:#695631;cursor:pointer;display:inline-flex;font-size:1.05rem;font-weight:900;height:1.8rem;justify-content:center;letter-spacing:.04em;line-height:1;padding:0 .35rem}.operational-todo-overflow-trigger:hover,.operational-todo-overflow-trigger[aria-expanded=true]{background:#6956311a;border-color:#69563126}.operational-todo-overflow-menu{background:#fffdf5;border:1px solid rgba(105,86,49,.22);border-radius:10px;box-shadow:0 9px 18px #42300f29;display:grid;min-width:150px;padding:.3rem;position:absolute;right:0;top:calc(100% + .25rem);z-index:5}.operational-todo-overflow-menu button{background:transparent;border:0;border-radius:7px;color:#352a19;cursor:pointer;font:inherit;font-size:.88rem;font-weight:700;padding:.5rem .55rem;text-align:left}.operational-todo-overflow-menu button:hover{background:#6956311a}.operational-todo-overflow-menu .operational-todo-overflow-cancel{border-top:1px solid rgba(105,86,49,.18);border-radius:0 0 7px 7px;color:#9f1239;margin-top:.2rem;padding-top:.65rem}.operational-todo-postit-meta,.operational-todo-postit-status,.operational-note-meta{color:#695631;font-size:.88rem;font-weight:600;margin:0}.operational-todo-postit-message{color:#352a19;font-weight:650;line-height:1.45;white-space:pre-line}.operational-note-meta{color:#655878}.operational-note-message{color:#30283c;font-weight:650;line-height:1.45;white-space:pre-line}.operational-note-visibility{background:#61478a1f;color:#5a3e81}.operational-card-edit-row{display:flex;justify-content:flex-end;margin-top:.15rem}.operational-card-edit-button{align-items:center;background:transparent;border:1px solid transparent;border-radius:8px;color:#695631;cursor:pointer;display:inline-flex;height:2.35rem;justify-content:center;padding:0;width:2.35rem}.operational-note-card .operational-card-edit-button{color:#655878}.operational-card-edit-button:hover{background:#6956311a;border-color:#69563126}.operational-card-edit-button svg{height:1.45rem;width:1.45rem}@media(max-width:640px){.operational-todo-postit-list{grid-template-columns:minmax(0,1fr)}.operational-card{max-width:none;padding:.85rem .8rem}}.admin-calendar-placeholder{border-style:dashed;background:#f8fafce6}.paytourist-backdrop{position:fixed;inset:0;background:#0f172a8c;z-index:70;display:grid;place-items:center;padding:1.25rem}.paytourist-modal{width:min(1050px,100%);max-height:92vh;overflow:auto;background:#fff;border:1px solid rgba(148,163,184,.35);border-radius:22px;box-shadow:0 22px 60px #0f172a2e}.paytourist-modal-header{display:flex;justify-content:space-between;align-items:start;gap:1rem;padding:1rem 1.15rem;border-bottom:1px solid rgba(148,163,184,.25)}.paytourist-title{font-size:1.2rem;font-weight:900;color:#0f172a}.paytourist-subtitle{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.35rem;align-items:center}.paytourist-meta-pill{display:inline-flex;align-items:center;border-radius:999px;padding:.12rem .55rem;background:#94a3b829;color:#334155;font-size:.82rem;font-weight:800}.paytourist-link{color:#1d4ed8;font-weight:800;text-decoration:none;font-size:.9rem}.paytourist-link:hover{text-decoration:underline}.paytourist-header-actions{display:inline-flex;align-items:center;gap:.6rem}.paytourist-status{display:inline-flex;align-items:center;border-radius:999px;padding:.14rem .55rem;font-size:.78rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.paytourist-status.is-complete{background:#22c55e29;color:#166534}.paytourist-status.is-verify{background:#3b82f624;color:#1d4ed8}.paytourist-status.is-missing{background:#eab3082e;color:#854d0e}.paytourist-modal-body{padding:1.05rem 1.15rem 1.25rem}.paytourist-block{border:1px solid rgba(148,163,184,.45);border-radius:8px;padding:0;background:#fff;margin-top:.9rem;overflow:hidden}.paytourist-block-title{font-weight:900;color:#1f2937;background:#e5e7eb;border-bottom:1px solid rgba(148,163,184,.45);margin:0;padding:.45rem .7rem;text-transform:uppercase;font-size:.82rem}.paytourist-block-actions{display:flex;align-items:center;gap:.75rem;padding:.7rem;flex-wrap:wrap;border-top:1px solid rgba(226,232,240,.9)}.paytourist-copied{color:#166534;font-weight:800}.paytourist-fields{display:grid;gap:.35rem;padding:.7rem}.paytourist-field{display:grid;grid-template-columns:minmax(145px,210px) minmax(0,1fr) auto;gap:.45rem;align-items:center}.paytourist-field-label{color:#475569;font-size:.8rem;font-weight:800;line-height:1.2}.paytourist-field-value{color:#0f172a;font-weight:800;word-break:break-word;min-height:2rem;display:flex;align-items:center;border:1px solid rgba(148,163,184,.55);border-radius:4px;background:#f8fafc;padding:.35rem .5rem;line-height:1.2}.paytourist-field.is-missing .paytourist-field-value{color:#b45309;background:#fffbeb}.paytourist-copy-button{padding:.34rem .65rem;min-height:2rem}.paytourist-guest-grid{display:grid;grid-template-columns:1fr;gap:.7rem;padding:.7rem}.paytourist-guest-card{background:#fff;border:1px solid rgba(148,163,184,.4);border-radius:6px;padding:0;overflow:hidden}.paytourist-guest-card.is-placeholder{background:#fffbeb;border-color:#eab30840}.paytourist-guest-head{display:flex;justify-content:space-between;align-items:start;gap:.75rem;margin:0;padding:.55rem .7rem;background:#eef2f7;border-bottom:1px solid rgba(148,163,184,.35)}.paytourist-guest-title{font-weight:900;color:#0f172a}.paytourist-guest-sub{color:#64748b;font-weight:700;font-size:.85rem;margin-top:.15rem}.paytourist-documents{margin:0;padding-top:0;border-top:1px solid rgba(148,163,184,.35)}.paytourist-documents-title{font-weight:900;color:#1f2937;margin:0;padding:.45rem .7rem;background:#e5e7eb;border-bottom:1px solid rgba(148,163,184,.35);text-transform:uppercase;font-size:.8rem}.paytourist-documents-collapsed{margin:0;padding:.6rem .7rem .7rem;border-top:1px solid rgba(148,163,184,.35)}.paytourist-documents-collapsed summary{cursor:pointer;font-weight:900;color:#0f172a}@media(max-width:720px){.paytourist-field{grid-template-columns:1fr;gap:.25rem;padding-bottom:.45rem}.paytourist-field-actions{justify-self:start}}@media(max-width:1680px){.admin-calendar-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:900px){.admin-layout{flex-direction:column;height:auto;min-height:100dvh;overflow:visible}.admin-sidebar{height:auto;width:100%;overflow:visible}.admin-main{height:auto;min-width:100%;min-height:0;overflow:visible}}@media(max-width:520px){.admin-calendar-page,.admin-calendar-main-column{min-width:480px}}@media print{@page{margin:10mm;size:A4 portrait}html,body,#root{background:#fff!important;height:auto!important;min-height:0!important;overflow:visible!important}.no-print,.version-info{display:none!important}.receipt-print-page{background:#fff!important;margin:0;overflow:visible;padding:0;min-height:0}.receipt-print-sheet{box-shadow:none;display:flex;flex-direction:column;gap:.75rem;margin:0;max-width:none;min-height:277mm;padding:0;zoom:var(--receipt-print-scale);break-inside:auto;page-break-inside:auto}.receipt-print-header{grid-template-columns:minmax(0,1fr) auto}.receipt-print-meta p{text-align:right}.receipt-print-two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.receipt-print-title{font-size:1.2rem}.receipt-print-footer{break-inside:avoid;page-break-inside:avoid;margin-top:.5rem;padding-top:0}.receipt-print-signature-box{margin-top:0;min-height:0}.receipt-print-signature-name{margin-top:0}.receipt-print-declarations{margin-top:auto;break-inside:avoid;page-break-inside:avoid}}
