*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--brand:#268bd2;--brand-dark:#1f6fa8;--brand-light:#e8f4fb;--accent:#2aa198;--accent-2:#7aa21d;--success:#2f9e44;--success-bg:#e7f7ed;--danger:#dc2626;--danger-bg:#fee2e2;--warning:#b58900;--warning-bg:#fef3c7;--text:#0f172a;--text-2:#475569;--text-3:#94a3b8;--border:#d6dee8;--border-2:#c3cedb;--bg:#f8fafc;--bg-2:#eef3f8;--bg-3:#e4ebf3;--white:#fff;--sidebar-bg:#0f3140;--sidebar-text:#c7d2de;--sidebar-active:#268bd2;--pill-booking-bg:#e6f2fb;--pill-booking-text:#155e8a;--pill-id-bg:#eaf6ff;--pill-id-text:#1b5f84;--radius:12px;--radius-sm:8px;--shadow-sm:0 1px 3px #00000012, 0 1px 2px #0000000d;--shadow:0 4px 16px #00000014, 0 1px 4px #0000000d;--shadow-lg:0 20px 48px #00000024, 0 4px 12px #0000000f;--slack-btn:#2f6f9f;--slack-btn-hover:#3b84bc;--slack-btn-text:#f8fbff}html{-webkit-font-smoothing:antialiased;font-size:16px}body{background:var(--bg);color:var(--text);letter-spacing:.01em;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}h1{font-size:2rem;font-weight:800;line-height:1.2}h2{font-size:1.4rem;font-weight:700}h3{font-size:1.1rem;font-weight:600}h4{font-size:.95rem;font-weight:600}p{color:var(--text-2)}a{color:var(--brand);font-weight:600;text-decoration:none}a:hover{text-decoration:underline}small{font-size:.8rem}#app{min-height:100vh}.toast{z-index:9999;border-radius:var(--radius);max-width:360px;box-shadow:var(--shadow-lg);opacity:0;padding:.75rem 1.2rem;font-size:.9rem;font-weight:500;transition:opacity .3s,transform .3s;position:fixed;bottom:1.5rem;right:1.5rem;transform:translateY(8px)}.toast-success{color:#f0fdf4;background:#0f172a}.toast-error{background:var(--danger);color:#fff}.notification-bubble{z-index:10001;color:#f8fafc;max-width:360px;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;background:#0f172a;border-radius:10px;padding:.7rem 1rem;font-size:.86rem;font-weight:500;transition:opacity .2s,transform .2s;position:fixed;bottom:1.5rem;right:1.5rem;transform:translateY(10px)}.notification-bubble--visible{opacity:1;transform:translateY(0)}button{cursor:pointer;border:none;font-family:inherit;font-weight:600;transition:all .15s}button:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--brand);color:#fff;border-radius:var(--radius-sm);align-items:center;gap:.4rem;padding:.65rem 1.3rem;font-size:.9rem;display:inline-flex}.btn-primary:hover{background:var(--brand-dark)}.btn-full{justify-content:center;width:100%}.btn-secondary{color:#1f2937;border-radius:var(--radius-sm);background:linear-gradient(135deg,#f8fafc 0%,#eef2ff 100%);border:1px solid #d6dee8;padding:.65rem 1.2rem;font-size:.9rem}.btn-secondary:hover{background:#e8eef7;border-color:#b9cde3}.btn-ghost{color:var(--text-2);border-radius:var(--radius-sm);background:0 0;padding:.5rem .9rem;font-size:.9rem}.btn-ghost:hover{background:var(--bg-3);color:var(--text)}.btn-danger{background:var(--danger);color:#fff;border-radius:var(--radius-sm);padding:.65rem 1.2rem;font-size:.9rem}.btn-danger:hover{background:#b91c1c}.btn-sm{border-radius:6px;padding:.4rem .85rem;font-size:.82rem}.btn-full{justify-content:center;width:100%;padding:.8rem;font-size:1rem}.field{flex-direction:column;margin-bottom:1rem;display:flex}.field label{color:var(--text-2);text-transform:uppercase;letter-spacing:.03em;margin-bottom:5px;font-size:.85rem;font-weight:600}.field input,.field textarea,.field select{border:1.5px solid var(--border);border-radius:var(--radius-sm);color:#1f2937;background:#fff;width:100%;padding:.6rem .85rem;font-family:inherit;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px #2563eb1f}.field textarea{resize:vertical}.input-disabled{cursor:not-allowed;background:var(--bg-2)!important;color:var(--text-3)!important}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-section{margin-bottom:2rem}.form-section h3{color:var(--text);margin-bottom:1rem}.search-wrap{margin-left:auto}.search-input{border:1.5px solid var(--border);color:#1f2937;min-width:260px;box-shadow:var(--shadow-sm);background:#fff;border-radius:999px;padding:.55rem .9rem;font-size:.95rem}.search-input:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px #2563eb1f}.login-page{background:linear-gradient(135deg,#0f3140 0%,#1e4b60 100%);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.login-card{background:var(--white);width:100%;max-width:420px;box-shadow:var(--shadow-lg);border-radius:20px;padding:2.5rem 2rem}.login-logo{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.login-card h2{margin-bottom:.3rem;font-size:1.6rem}.login-subtitle{color:var(--text-2);margin-bottom:1.5rem;font-size:.9rem}.login-back{text-align:center;color:var(--text-3);margin-top:1.2rem;font-size:.88rem;display:block}.login-back:hover{color:var(--brand)}.login-link{cursor:pointer;width:100%;color:var(--brand);text-align:center;background:0 0;border:none;padding:0;font-family:inherit;font-size:.88rem;display:block}.login-link:hover{text-decoration:underline}.login-card form button{margin-top:.5rem}.logo-img{object-fit:contain;height:auto;display:block}.logo-text{color:var(--white);font-size:1rem;font-weight:800}.login-logo{justify-content:center;margin-bottom:1.5rem;display:flex}.login-logo .logo-img{width:80px}.sidebar-logo .logo-img{border-radius:6px;width:44px}.landing-logo{justify-content:center;margin-bottom:1.5rem;display:flex}.landing-logo .logo-img{filter:drop-shadow(0 4px 16px #0006);width:140px}.admin-layout{background:var(--bg);height:100vh;display:flex;overflow:hidden}.admin-sidebar{background:var(--sidebar-bg);flex-direction:column;flex-shrink:0;width:240px;display:flex;overflow-y:auto}.sidebar-logo{border-bottom:1px solid #ffffff0f;align-items:center;gap:.75rem;padding:1.2rem 1.2rem 1rem;display:flex}.sidebar-logo .logo-text{color:var(--white);font-size:.95rem}.sidebar-logo svg{width:52px;height:auto}.sidebar-nav{flex:1;padding:.75rem 0;list-style:none}.sidebar-nav li a{color:var(--sidebar-text);border-left:3px solid #0000;border-radius:0;align-items:center;gap:.75rem;padding:.75rem 1.2rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.sidebar-nav li a svg{flex-shrink:0;width:18px;height:18px}.sidebar-nav li a:hover{color:#fff;background:#ffffff0d}.sidebar-nav li.active a{color:#93c5fd;border-left-color:var(--brand);background:#2563eb33}.sidebar-logout{color:var(--sidebar-text);border-radius:var(--radius-sm);background:#ffffff0d;border:1px solid #ffffff14;align-items:center;gap:.6rem;margin:.75rem 1rem 1.5rem;padding:.6rem 1rem;font-size:.87rem;font-weight:500;display:flex}.sidebar-logout svg{width:16px;height:16px}.sidebar-logout:hover{color:#fca5a5;background:#dc262633;border-color:#dc26264d}.admin-layout{--admin-bg:#fdf6e3;--admin-panel:#f5edd8;--admin-border:#d8ccb2;--admin-sidebar:#073642;--admin-sidebar-soft:#0a4657;--admin-sidebar-text:#93a1a1;--admin-sidebar-active:#2aa198;--admin-text:#1f2933;--admin-text-soft:#475569;--admin-accent:#4a154b;--admin-accent-hover:#611f69;--admin-accent-soft:#eee8d5;--admin-unread:#cb4b16;background:var(--admin-bg)}.admin-layout .admin-sidebar{background:linear-gradient(180deg, var(--admin-sidebar) 0%, var(--admin-sidebar-soft) 100%)}.admin-layout .sidebar-logo{border-bottom:1px solid #93a1a133}.admin-layout .sidebar-logo .logo-text{color:#fdf6e3;letter-spacing:.02em}.admin-layout .sidebar-nav li a{color:var(--admin-sidebar-text);border-left:4px solid #0000}.admin-layout .sidebar-nav li a:hover{color:#fdf6e3;background:#eee8d514;text-decoration:none}.admin-layout .sidebar-nav li.active a{color:#fdf6e3;border-left-color:var(--admin-sidebar-active);background:#2aa19833}.admin-layout .sidebar-badge{background:var(--admin-unread);color:#fff}.admin-layout .admin-topbar{background:var(--admin-panel);border-bottom:1px solid var(--admin-border)}.admin-layout .topbar-title{color:var(--admin-text)}.admin-layout .role-pill{background:var(--admin-accent-soft);border-color:var(--admin-border);color:var(--admin-text-soft)}.admin-layout .admin-content{background:var(--admin-bg);color:var(--admin-text)}.admin-layout .content-card{border:1px solid var(--admin-border);background:#fffdf7}.admin-layout .btn-primary{background:var(--admin-accent);color:#fdf6e3;border:1px solid #00000014;border-radius:8px;box-shadow:0 1px #0000001a}.admin-layout .btn-primary:hover{background:var(--admin-accent-hover)}.admin-layout .btn-secondary,.admin-layout .btn-ghost{border:1px solid var(--admin-border);color:var(--admin-text-soft);background:#eee8d5;border-radius:8px}.admin-layout .btn-secondary:hover,.admin-layout .btn-ghost:hover{color:var(--admin-text);background:#e8dfc6;text-decoration:none}.admin-layout .msg-full-layout{background:var(--admin-bg);border-top:1px solid var(--admin-border)}.admin-layout .msg-thread-list{border-right:1px solid var(--admin-border);background:#f7f1dd}.admin-layout .thread-item{border-bottom:1px solid var(--admin-border)}.admin-layout .thread-item:hover{background:#eee8d5}.admin-layout .thread-item--active{box-shadow:inset 3px 0 0 var(--admin-sidebar-active);background:#e4dcc3!important}.admin-layout .thread-from,.admin-layout .thread-subject{color:var(--admin-text)}.admin-layout .thread-time,.admin-layout .thread-preview{color:var(--admin-text-soft)}.admin-layout .unread-dot{background:var(--admin-unread)}.admin-layout p{color:var(--admin-text-soft)}.admin-layout .bubble-body,.admin-layout .bubble-text,.admin-layout .bubble-body p,.admin-layout .bubble-text p{color:var(--admin-text)}.admin-layout .thread-header{border-bottom:1px solid var(--admin-border);background:#fffdf7}.admin-layout .thread-header h4{color:var(--admin-text)}.admin-layout .thread-header-sub{color:var(--admin-text-soft)}.admin-layout .thread-messages{background:#fdf6e3}.admin-layout .bubble-in .bubble-body,.admin-layout .bubble-in .bubble-text{background:#fffaf0;border:1px solid #ccbfa3}.admin-layout .bubble-out .bubble-body,.admin-layout .bubble-out .bubble-text{background:#efe6cf;border:1px solid #cdbf9f}.admin-layout .bubble-tag{color:#586e75;background:#eee8d5;border-color:#d8ccb2}.admin-layout .reply-form{border-top:1px solid var(--admin-border);background:#fffdf7;box-shadow:0 -8px 16px #07364214}.admin-layout .reply-to-input{border-color:var(--admin-border);background:#fdf6e3}.admin-layout .reply-to-input:focus{border-color:var(--admin-sidebar-active)}.admin-layout .quill-wrapper .ql-toolbar,.admin-layout .reply-quill .ql-toolbar{border-color:var(--admin-border);background:#eee8d5}.admin-layout .quill-wrapper .ql-container,.admin-layout .reply-quill .ql-container{border-color:var(--admin-border);background:#fffaf0}.admin-layout .quill-wrapper .ql-editor,.admin-layout .reply-quill .ql-editor{color:#1f2933;background:#fffaf0}.admin-layout .reply-quill .ql-editor.ql-blank:before{color:#64748b;opacity:1}.admin-layout .template-toolbar{border-bottom:1px solid var(--admin-border)}.admin-layout .template-picker select{border-color:var(--admin-border);background:#fffdf7}.admin-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.admin-topbar{background:var(--white);border-bottom:1px solid var(--border);z-index:100;height:64px;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:0 2rem;display:flex;position:sticky;top:0}.topbar-title{color:var(--text);font-size:1.1rem;font-weight:700}.topbar-right{align-items:center;gap:.75rem;display:flex;position:relative}.topbar-profile-wrap{position:relative}.profile-icon-btn{background:var(--bg-2);border:1px solid var(--border);color:var(--text-2);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:all .15s;display:inline-flex}.profile-icon-btn svg{width:18px;height:18px}.profile-icon-btn:hover{background:var(--brand-light);color:var(--brand);border-color:#bfdbfe}.topbar-profile-panel{background:var(--white);border:1px solid var(--border);min-width:210px;box-shadow:var(--shadow-lg);z-index:120;border-radius:12px;display:none;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden}.topbar-profile-panel.open{display:block}.topbar-profile-item{color:var(--text);padding:.8rem .95rem;font-size:.88rem;font-weight:600;text-decoration:none;display:block}.topbar-profile-item:hover{background:var(--bg-2);text-decoration:none}.notif-icon-btn{background:var(--bg-2);border:1px solid var(--border);color:var(--text-2);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:all .15s;display:inline-flex;position:relative}.notif-icon-btn svg{width:18px;height:18px}.notif-icon-btn:hover{background:var(--brand-light);color:var(--brand);border-color:#bfdbfe}.notif-icon-badge{background:var(--danger);color:#fff;border:2px solid var(--white);border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:700;position:absolute;top:-5px;right:-5px}.topbar-notif-panel{background:var(--white);border:1px solid var(--border);width:360px;max-height:420px;box-shadow:var(--shadow-lg);z-index:120;border-radius:12px;display:none;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden}.topbar-notif-panel.open{display:block}.topbar-notif-header{color:var(--text);border-bottom:1px solid var(--border);padding:.75rem .9rem;font-size:.85rem;font-weight:700}.topbar-notif-list{max-height:360px;overflow-y:auto}.topbar-notif-item{border-bottom:1px solid var(--bg-2);padding:.65rem .9rem;text-decoration:none;display:block}.topbar-notif-item:hover{background:var(--bg-2);text-decoration:none}.topbar-notif-item-title{color:var(--text);font-size:.83rem;font-weight:600}.topbar-notif-item-meta{color:var(--text-3);margin-top:2px;font-size:.75rem}.topbar-notif-empty{color:var(--text-3);padding:1rem;font-size:.82rem}.role-pill{border:1px solid var(--border);background:var(--bg-2);color:var(--text-2);border-radius:999px;align-items:center;padding:.2rem .85rem;font-size:.78rem;font-weight:600;display:inline-flex}.role-pill.role-superadmin{color:#6d28d9;background:#ede9fe;border-color:#c4b5fd}.role-pill.role-facilitator{color:#0f172a;background:#cffafe;border-color:#22d3ee}.view-only-note{color:var(--text-2);background:#fef3c7;border:1px solid #fde68a;border-radius:999px;align-items:center;gap:.35rem;margin-top:.5rem;padding:.35rem .75rem;font-size:.82rem;display:inline-flex}.msg-icon-btn{background:var(--bg-2);border:1px solid var(--border);color:var(--text-2);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:all .15s;display:flex;position:relative}.msg-icon-btn svg{width:18px;height:18px}.msg-icon-btn:hover{background:var(--brand-light);color:var(--brand);border-color:#bfdbfe}.msg-badge{background:var(--danger);color:#fff;border:2px solid var(--white);border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:.7rem;font-weight:700;position:absolute;top:-5px;right:-5px}.admin-content{flex:1;width:100%;max-width:none;min-height:0;padding:2rem;overflow-y:auto}.admin-content.admin-content--full{flex-direction:column;max-width:100%;padding:0;display:flex;overflow:hidden}.rate-form--disabled{opacity:.55;pointer-events:none}.rate-form--disabled input,.rate-form--disabled button,.rate-form--disabled select,.rate-form--disabled textarea{cursor:not-allowed}.page-header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.page-header p{color:var(--text-2);margin-top:.2rem;font-size:.9rem}.content-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--border);margin-bottom:1.5rem;padding:1.75rem}.content-card h3{color:var(--text);margin-bottom:1rem}.content-card h4{color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.75rem;font-size:.85rem}.content-card h5{color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem;font-size:.8rem}.content-card-narrow{max-width:540px}.booking-internal-block{border-top:1px dashed var(--border);margin-top:.9rem;padding-top:.85rem}.booking-portal-block,.booking-dates-block{border-top:1px dashed var(--border);margin-top:.8rem;padding-top:.8rem}.booking-request-info{color:#7c2d12;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;margin-bottom:.5rem;padding:.6rem .9rem;font-size:.9rem}.admin-date-cal-wrap{margin-top:.5rem}.booking-linked-services{border-top:1px dashed var(--border);margin-top:.75rem;padding-top:.6rem}.booking-internal-editor .ql-editor{min-height:90px}.booking-internal-feed{flex-direction:column;gap:.5rem;margin-top:.65rem;display:flex}.booking-note-item{border:1px solid var(--border);background:var(--bg);border-radius:10px;padding:.55rem .7rem}.booking-note-meta{color:var(--text-3);margin-bottom:.35rem;font-size:.78rem}.booking-note-body{color:var(--text);font-size:.9rem}.table-wrap{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-sm);overflow:hidden}.data-table{border-collapse:collapse;width:100%;font-size:.875rem}.data-table thead{background:var(--bg-2)}.data-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:.75rem 1rem;font-size:.78rem;font-weight:700}.data-table td{border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text);padding:.85rem 1rem}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--bg)}.data-table .id-code{color:var(--text-2);background:var(--bg-2);border-radius:4px;padding:2px 6px;font-family:SF Mono,Menlo,monospace;font-size:.78rem}.data-table .text-muted{color:var(--text-3)}.data-table .email-cell{color:var(--text-2);font-size:.83rem}.data-table .actions-cell{white-space:nowrap}.data-table .actions-cell button{margin-right:4px}.table-input{border:1.5px solid var(--border);border-radius:6px;width:90px;padding:.4rem .6rem;font-family:inherit;font-size:.85rem}.table-input:focus{border-color:var(--brand);outline:none}.status-select{border:1.5px solid var(--border);background:var(--white);cursor:pointer;border-radius:6px;padding:.4rem .6rem;font-family:inherit;font-size:.82rem}.status-select:focus{border-color:var(--brand);outline:none}.empty-state{color:var(--text-3);background:var(--white);border-radius:var(--radius);border:1px solid var(--border);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:4rem 2rem;display:flex}.empty-state p{font-size:.95rem}.calendar-grid{grid-template-columns:minmax(420px,500px) minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}.cal-controls{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.cal-month-title{text-align:center;flex:1;font-size:.95rem;font-weight:700}.calendar-legend{color:var(--text-3);align-items:center;gap:.4rem;margin:.15rem 0 1rem;font-size:.8rem;display:inline-flex}.legend-dot{background:var(--border);border-radius:50%;flex-shrink:0;width:12px;height:12px}.legend-dot--unavailable{background:#f87171;border:1px solid #b91c1c}.calendar-table{border-collapse:collapse;width:100%}.calendar-table th{text-align:center;color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;padding:.5rem 0;font-size:.75rem;font-weight:700}.calendar-table td{text-align:center;cursor:default;border-radius:6px;height:44px;padding:.5rem .25rem;font-size:.85rem;position:relative}.calendar-table td.other-month{color:var(--text-3)}.calendar-table td.blocked{color:#9f1239;background:#fee2e2;font-weight:600;text-decoration:line-through}.rate-tag{color:var(--brand);margin-top:2px;font-size:.65rem;font-weight:600;display:block}.availability-preview-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);margin-top:1.5rem;padding:1.25rem}.availability-preview-header{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.availability-preview-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;display:inline-flex}.availability-preview-controls .btn-sm{justify-content:center;align-items:center;min-width:36px;display:inline-flex}.availability-preview-range{color:var(--text-2);font-size:.85rem;font-weight:600}.availability-preview-header h4{margin:0;font-size:1.05rem}.availability-preview-header p{color:var(--text-3);margin:.2rem 0 0;font-size:.85rem}.availability-preview-legend{color:var(--text-3);align-items:center;gap:.35rem;margin:.5rem 0 .35rem;font-size:.8rem;display:inline-flex}.availability-preview-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem;display:grid}.availability-mini{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);box-shadow:var(--shadow-sm);padding:.75rem}.availability-preview-month-title{margin-bottom:.4rem;font-size:.9rem;font-weight:600}.availability-preview-loading,.availability-preview-error{color:var(--text-2);margin:0;font-size:.85rem}.availability-preview-error{color:var(--danger)}.guest-portal-page{background:#fdf6e3}.guest-portal-page .booking-wrap{gap:1rem;max-width:1100px;padding:1.25rem 1.5rem 3rem}.guest-portal-page .booking-topbar{background:0 0}.guest-portal-page .btn-ghost,.guest-portal-page .lang-btn{color:#586e75;background:#eee8d5;border-color:#d8ccb2}.guest-portal-page .btn-ghost:hover,.guest-portal-page .lang-btn:hover{color:#1f2933;background:#e8dfc6;text-decoration:none}.guest-portal-page .lang-btn.active{color:#fdf6e3;background:#2aa198;border-color:#2aa198}.guest-portal-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.guest-thread{flex-direction:column;gap:.6rem;max-height:360px;padding-right:.2rem;display:flex;overflow-y:auto}.guest-portal-wrap{background:0 0;max-width:1300px;padding:0!important}.guest-portal-wrap .content-card{background:#fffdf7;border:1px solid #d8ccb2}.guest-portal-wrap h2,.guest-portal-wrap h3,.guest-portal-wrap h4,.guest-portal-wrap h5{color:#1f2933}.guest-portal-wrap p,.guest-portal-wrap .about-sub{color:#475569}.guest-portal-wrap label{color:#586e75}.guest-portal-wrap input,.guest-portal-wrap select,.guest-portal-wrap textarea{color:#1f2933;background:#fdf6e3;border-color:#d8ccb2}.guest-portal-wrap input:focus,.guest-portal-wrap select:focus,.guest-portal-wrap textarea:focus{border-color:#2aa198;outline:none;box-shadow:0 0 0 2px #2aa19826}.guest-portal-wrap .guest-thread{background:#f7f1dd;border:1px solid #d8ccb2;border-radius:10px;padding:.8rem}.guest-portal-wrap .bubble-in .bubble-body,.guest-portal-wrap .bubble-in .bubble-text{color:#1f2933;background:#fffaf0;border:1px solid #ccbfa3}.guest-portal-wrap .bubble-out .bubble-body,.guest-portal-wrap .bubble-out .bubble-text{color:#1f2933;background:#efe6cf;border:1px solid #cdbf9f}.guest-portal-wrap .bubble-meta{color:#657b83}.guest-portal-wrap .bubble-meta-author{color:#1f2933}.guest-portal-wrap .reply-form{background:#fffdf7;border-top:1px solid #d8ccb2;box-shadow:0 -4px 12px #0736420f}.guest-portal-wrap .reply-to-input{color:#1f2933;background:#fdf6e3;border-color:#d8ccb2}.guest-portal-wrap .reply-quill .ql-toolbar{background:#eee8d5;border-color:#d8ccb2}.guest-portal-wrap .reply-quill .ql-container{background:#fffaf0;border-color:#d8ccb2}.guest-portal-wrap .reply-quill .ql-editor{color:#1f2933;background:#fffaf0}.guest-portal-wrap .reply-quill .ql-editor.ql-blank:before{color:#93a1a1;opacity:1}.guest-portal-wrap .btn-primary{color:#fdf6e3;background:#2aa198;border:1px solid #00000014;border-radius:8px}.guest-portal-wrap .btn-primary:hover{background:#218f87;text-decoration:none}.guest-portal-wrap .btn-secondary{color:#586e75;background:#eee8d5;border:1px solid #d8ccb2;border-radius:8px}.guest-portal-wrap .btn-secondary:hover{color:#1f2933;background:#e8dfc6;text-decoration:none}.guest-portal-wrap .btn-ghost{color:#586e75;background:0 0;border:1px solid #d8ccb2}.guest-portal-wrap .btn-ghost:hover{color:#1f2933;background:#eee8d5;text-decoration:none}.guest-portal-wrap .data-table thead th{color:#586e75;background:#eee8d5;border-bottom:1px solid #d8ccb2}.guest-portal-wrap .data-table td{color:#1f2933;border-bottom:1px solid #e8dfcb}.guest-portal-wrap .table-wrap{border-color:#d8ccb2;overflow-x:auto}.guest-portal-wrap .availability-mini{background:#fffdf7;border-color:#d8ccb2;flex:280px;min-width:280px}.guest-portal-wrap .availability-preview-month-title{color:#1f2933}.guest-portal-wrap .calendar-table th{color:#657b83}.guest-portal-wrap .calendar-table td{color:#1f2933}.guest-portal-wrap .calendar-table td.blocked{color:#93a1a1;background:#f0e6ce}.guest-portal-wrap .calendar-table td.other-month{color:#b0a891}.guest-portal-wrap .attach-chip{color:#586e75;background:#eee8d5;border-color:#d8ccb2}.gp-shell{padding:0;overflow:hidden}.gp-header{border-bottom:1px solid #d8ccb2;padding:1.25rem 1.5rem .9rem}.gp-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.gp-title{color:#1f2933;margin:0 0 .2rem;font-size:1.25rem;font-weight:700}.gp-subtitle{color:#657b83;margin:0;font-size:.875rem}.gp-nav{scrollbar-width:none;background:#f7f1dd;border-bottom:1px solid #d8ccb2;gap:0;display:flex;overflow-x:auto}.gp-nav::-webkit-scrollbar{display:none}.gp-tab-btn{color:#657b83;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;flex-shrink:0;align-items:center;gap:.4rem;padding:.75rem 1.1rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:color .15s,border-color .15s,background .15s;display:flex}.gp-tab-btn:hover{color:#1f2933;background:#2aa1980f}.gp-tab-btn--active{color:#2aa198;background:#2aa1980f;border-bottom-color:#2aa198;font-weight:600}.gp-tab-badge{color:#fff;background:#cb4b16;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:700;line-height:1;display:inline-flex}.gp-tab-section{flex-direction:column;gap:1rem;display:flex}.gp-card{background:#fffdf7;border:1px solid #d8ccb2}#guest-portal-root{padding:1.25rem 1.5rem 1.5rem}.gp-dl{grid-template-columns:auto 1fr;gap:.4rem 1rem;margin-top:.75rem;display:grid}.gp-dl>div{display:contents}.gp-dl dt{color:#657b83;white-space:nowrap;padding-top:2px;font-size:.825rem;font-weight:500}.gp-dl dd{color:#1f2933;margin:0;font-size:.9rem}.gp-pay-breakdown{flex-direction:column;gap:.45rem;margin:0;display:flex}.gp-pay-row{grid-template-columns:1fr auto auto;align-items:center;gap:.5rem .75rem;font-size:.85rem;display:grid}.gp-pay-method{color:#374151;font-weight:500}.gp-pay-amount{color:#1f2933;white-space:nowrap;text-align:right;font-weight:600}.gp-pay-stat{white-space:nowrap}.gp-pay-status{border-radius:10px;padding:1px 7px;font-size:.78rem;font-weight:600;display:inline-block}.gp-pay-status--ok{color:#16a34a;background:#dcfce7}.gp-pay-status--pending{color:#92400e;background:#fef3c7}.gp-pay-status--verifying{color:#6d28d9;background:#ede9fe}.gp-pay-status--due{color:#4b5563;background:#f3f4f6}.bubble-subject{color:#374151;letter-spacing:.01em;opacity:.7;margin-bottom:3px;font-size:.75rem;font-weight:700}.gp-doc-list{flex-direction:column;gap:.4rem;margin-top:.6rem;list-style:none;display:flex}.gp-doc-list a{color:#2aa198;font-size:.9rem;font-weight:500}.gp-doc-list a:hover{text-decoration:underline}.my-bookings-grid{grid-template-columns:1fr;gap:1.25rem;display:grid}.my-bookings-section{min-width:0}.guest-portal-wrap .my-bookings-section .table-wrap{width:100%;overflow-x:auto}.guest-portal-wrap .my-bookings-section .data-table{min-width:700px}.booking-row-current{background:#f7f1dd}.status-pill--cancellation_requested{color:#78350f;background:#fef3c7;border-color:#fcd34d}.status-pill--date_change_requested{color:#4a154b;background:#eee8d5;border-color:#c8b89a}.calendar--compact .calendar-table th{padding:.35rem 0;font-size:.65rem}.calendar--compact .calendar-table td{height:36px;padding:.35rem .1rem;font-size:.78rem}.calendar--compact .rate-tag{font-size:.55rem}.rate-list{list-style:none}.rate-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.875rem;display:flex}.rate-list li:last-child{border-bottom:none}.rate-list li strong{color:var(--brand)}.rate-list-empty{color:var(--text-3);padding:.5rem 0;font-size:.875rem}.rate-list-wrap{margin-top:1.5rem}.gallery-editor-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);grid-template-columns:100px 1fr;gap:1rem;margin-bottom:.75rem;padding:1rem;display:grid}.gallery-thumb-wrap{justify-content:center;align-items:center;display:flex}.gallery-thumb{object-fit:cover;border:1px solid var(--border);border-radius:8px;width:90px;height:70px}.gallery-thumb-empty{background:var(--bg-2);border:1.5px dashed var(--border-2);width:90px;height:70px;color:var(--text-3);border-radius:8px;justify-content:center;align-items:center;display:flex}.gallery-editor-inputs{flex-direction:column;justify-content:center;display:flex}.gallery-editor-inputs .field{margin-bottom:.5rem}.gallery-editor-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.gallery-slot-badge{background:var(--brand-light);color:var(--brand-dark);border-radius:999px;align-items:center;padding:.22rem .55rem;font-size:.76rem;font-weight:700;display:inline-flex}.gallery-hero-toggle{color:var(--text-2);align-items:center;gap:.45rem;font-size:.82rem;font-weight:600;display:inline-flex}.gallery-hero-toggle input{width:auto}.gallery-editor-actions{justify-content:flex-end;display:flex}.file-upload-label{background:var(--bg-2);border:1.5px solid var(--border);cursor:pointer;color:var(--text-2);border-radius:6px;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.83rem;font-weight:600;transition:all .15s;display:inline-flex}.file-upload-label:hover{background:var(--brand-light);color:var(--brand);border-color:#bfdbfe}.file-input-hidden{display:none}.file-name-display{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;max-width:200px;margin-top:4px;font-size:.8rem;display:block;overflow:hidden}.msg-overlay{display:none!important}.msg-full-layout{background:var(--white);flex:1;grid-template-columns:300px 1fr;min-height:0;display:grid;overflow:hidden}.sidebar-badge{background:var(--brand);color:#fff;border-radius:99px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:.7rem;font-weight:700;display:inline-flex}.msg-body{flex:1;grid-template-columns:280px 1fr;min-height:0;display:grid;overflow:hidden}.msg-thread-list{border-right:1px solid var(--border);background:var(--bg);overflow-y:auto}.thread-list-empty{text-align:center;color:var(--text-3);padding:2rem 1rem;font-size:.875rem}.thread-item{border-bottom:1px solid var(--border);cursor:pointer;padding:.9rem 1rem;transition:background .1s;position:relative}.thread-item:hover{background:var(--bg-2)}.thread-item--active{background:var(--brand-light)!important}.thread-item--unread .thread-from{font-weight:700}.thread-item-top{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.thread-from{color:var(--text);font-size:.875rem;font-weight:600}.thread-time{color:var(--text-3);font-size:.75rem}.thread-subject{color:var(--text-2);margin-bottom:2px;font-size:.8rem;font-weight:500}.thread-preview{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.unread-dot{background:var(--brand);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.msg-thread-detail{flex-direction:column;min-height:0;display:flex;overflow:hidden auto}.thread-detail-empty{color:var(--text-3);text-align:center;flex:1;justify-content:center;align-items:center;padding:2rem;font-size:.9rem;display:flex}.thread-header{border-bottom:1px solid var(--border);background:var(--white);flex-shrink:0;padding:1rem 1.25rem}.thread-header h4{margin-bottom:2px}.thread-header-sub{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.85rem;display:flex}.thread-header-actions{margin-top:.5rem}.thread-header-status{background:var(--bg-2);color:var(--text);border:1px solid var(--border);border-radius:999px;padding:.15rem .55rem;font-size:.78rem}.thread-messages{background:var(--bg);flex-direction:column;flex:1;gap:.75rem;min-height:0;padding:1rem 1.25rem 1.5rem;display:flex;overflow-y:auto}.bubble{max-width:80%}.bubble-in{align-self:flex-start}.bubble-out{align-self:flex-end}.bubble-meta{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:3px;font-size:.72rem;display:flex}.bubble-out .bubble-meta{text-align:right;justify-content:flex-end}.bubble-meta-author{color:var(--text-2);font-weight:600}.bubble-meta-time{opacity:.75}.bubble-tag{letter-spacing:.04em;text-transform:uppercase;background:var(--brand-light);color:var(--brand-dark);border:1px solid #2563eb40;border-radius:999px;padding:.05rem .4rem;font-size:.62rem}.bubble-tag--automation{color:#3f6212;background:#ecfccb;border-color:#3f621240}.bubble-tag--encrypted{color:#5b21b6;background:#ede9fe;border-color:#5b21b640}.bubble-out .bubble-tag{color:#075985;background:#e0f2fe;border-color:#bae6fd}.bubble-body{word-break:break-word;border-radius:12px;padding:.65rem .9rem;font-size:.875rem;line-height:1.5}.bubble-muted{color:var(--text-3);font-style:italic}.bubble-text{word-break:break-word;border-radius:12px;padding:.65rem .9rem;font-size:.875rem;line-height:1.5}.bubble-in .bubble-body,.bubble-in .bubble-text{background:var(--white);border:1px solid var(--border);color:var(--text);border-radius:2px 12px 12px}.bubble-out .bubble-body,.bubble-out .bubble-text{color:var(--text);background:#eef2ff;border:1px solid #c7d2fe;border-radius:12px 2px 12px 12px}.admin-layout .bubble-meta{color:#64748b}.admin-layout .bubble-meta-author{color:#334155}.admin-layout .bubble-out .bubble-body,.admin-layout .bubble-out .bubble-text,.admin-layout .bubble-in .bubble-body,.admin-layout .bubble-in .bubble-text{color:#1f2933}.bubble-out .bubble-body a{color:var(--brand)}.bubble-attachments{flex-wrap:wrap;gap:.4rem;margin-top:.5rem;display:flex}.bubble-attach-img{object-fit:cover;cursor:zoom-in;border-radius:6px;max-width:140px;max-height:100px;display:block}.bubble-attach-file{color:inherit;opacity:.85;font-size:.8rem}.bubble-out .bubble-attach-file{color:var(--brand)}.reply-form{border-top:1px solid var(--border);background:var(--white);z-index:2;flex-direction:column;flex-shrink:0;gap:.4rem;padding:.75rem 1rem;display:flex;position:sticky;bottom:0;box-shadow:0 -8px 16px #0f172a14}.reply-to-row{align-items:center;gap:.5rem;display:flex}.reply-to-label{color:var(--text-2);white-space:nowrap;font-size:.8rem;font-weight:600}.reply-to-input{border:1.5px solid var(--border);border-radius:var(--radius-sm);flex:1;padding:.3rem .55rem;font-family:inherit;font-size:.83rem}.reply-to-input:focus{border-color:var(--brand);outline:none}.reply-quill-wrap{flex-direction:column;max-height:200px;display:flex;overflow:hidden}.reply-quill .ql-toolbar{background:var(--bg-2);flex-shrink:0;padding:4px 8px}.reply-quill .ql-toolbar .ql-formats{margin-right:6px}.reply-quill .ql-container{flex:1;min-height:0;overflow:hidden}.reply-quill .ql-editor{color:#1f2937;background:#fff;min-height:80px;max-height:140px;padding:.6rem .75rem;font-size:.875rem;overflow-y:auto}.reply-quill .ql-editor.ql-blank:before{color:#94a3b8;opacity:1}.reply-actions{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;padding-top:.4rem;display:flex}.reply-actions-left{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.reply-actions-right{align-items:center;gap:.4rem;display:flex}.reply-actions-right .btn-primary{justify-content:center;min-width:120px}.reply-attach-row{flex-wrap:wrap;flex-shrink:0;gap:.3rem;display:flex}.reply-compose-bar{border-top:1px solid var(--border);background:var(--white);flex-shrink:0;padding:.6rem 1rem}.admin-layout .reply-compose-bar{border-top:1px solid var(--admin-border);background:#fffdf7}.template-toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:flex-end;gap:.75rem;min-width:0;padding-bottom:.35rem;display:flex;overflow:hidden}.template-picker{flex-direction:column;flex:1;min-width:160px;display:flex}.template-picker label{color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.15rem;font-size:.72rem;font-weight:600}.template-picker select{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;padding:.4rem .6rem;font-family:inherit;font-size:.85rem}.template-toolbar-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.4rem;display:flex}.template-manage-btn{color:var(--text-2)}.template-toolbar-actions .btn-secondary{white-space:nowrap}.template-overlay{z-index:999;background:#fff;justify-content:center;align-items:stretch;padding:0;display:flex;position:fixed;inset:0}.template-panel{background:var(--white);flex-direction:column;width:100%;height:100%;display:flex}.template-panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.template-panel-body{flex-direction:column;flex:1;padding:1rem 1.5rem 1.5rem;display:flex;overflow:hidden}.template-lang-switch{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.template-lang-switch button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-2);color:var(--text-2);padding:.35rem .85rem;font-size:.8rem;font-weight:600}.template-lang-switch button.active{background:var(--brand);color:#fff;border-color:var(--brand)}.template-body-grid{flex:1;grid-template-columns:420px 1fr;gap:1rem;min-height:0;display:grid}.template-list{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);padding:.75rem;overflow-y:auto}.template-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;justify-content:space-between;gap:.75rem;margin-bottom:.65rem;padding:.75rem;display:flex}.template-item:last-child{margin-bottom:0}.template-item strong{font-size:.92rem;display:block}.template-item small{color:var(--text-3);font-size:.75rem}.template-item-meta{color:var(--text-3);margin-top:4px;font-size:.72rem;display:inline-block}.template-actions{flex-shrink:0;gap:.4rem;display:flex}.template-empty{text-align:center;color:var(--text-3);padding:1rem 0;font-size:.85rem}.template-form{border:1px solid var(--border);border-radius:var(--radius);background:#fff;flex-direction:column;gap:.6rem;padding:.75rem;display:flex;overflow-y:auto}.template-form .field:last-of-type{margin-bottom:0}.template-editor .ql-container{min-height:150px}.template-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.template-attachments{border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--bg);padding:.6rem}.template-attachments-head{flex-direction:column;gap:.15rem;margin-bottom:.35rem;display:flex}.template-attachments-head label{color:var(--text);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:700}.template-attachments-head small{color:var(--text-3);font-size:.8rem}.template-attach-list{flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem;display:flex}.template-attach-chip{background:var(--bg-2);border:1px solid var(--border);border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.8rem;display:inline-flex}.template-attach-chip button{cursor:pointer;color:var(--text-2);background:0 0;border:none;font-size:1rem}.template-attach-empty{color:var(--text-3);font-size:.8rem}.template-attach-actions{align-items:center;gap:.5rem;display:flex}.public-calendar-header h2{margin-bottom:.35rem}.public-calendar-wrap{margin-top:.25rem}.public-calendar-wrap .cal-controls{margin-bottom:.75rem}@media (width<=900px){.template-body-grid{grid-template-columns:1fr}.template-toolbar{flex-direction:column;align-items:stretch}.template-toolbar-actions{justify-content:flex-start}.template-panel-body{padding:1rem}.cta-panel-inner{text-align:center;grid-template-columns:1fr}.cta-panel-actions{justify-content:center}.cta-row{flex-direction:column}}.landing-page{--landing-ink:#09243d;--landing-ocean-1:#05263f;--landing-ocean-2:#0a4c6d;--landing-ocean-3:#0ea5b7;--landing-sand-1:#fff6e8;--landing-sand-2:#fff2df;--landing-coral:#ef6c3e;--landing-mint:#a7f3d0;max-width:100%;color:var(--landing-ink);background:radial-gradient(circle at 15% -10%,#1f6f9d 0%,#0000 42%),#041f33}.landing-hero{background:radial-gradient(ellipse 95% 65% at 85% 0%, #0cb4c457 0%, transparent 65%), radial-gradient(ellipse 100% 70% at 15% 100%, #157ea373 0%, transparent 63%), linear-gradient(165deg, var(--landing-ocean-1) 0%, var(--landing-ocean-2) 54%, #0b7590 100%);text-align:center;color:#fff;place-items:center;min-height:94vh;padding:5.75rem 1.5rem 4.5rem;display:grid;position:relative;overflow:hidden}.landing-hero:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff38 0%,#ffffff08 68%,#0000 75%);border-radius:999px;width:520px;height:520px;position:absolute;top:-240px;left:-140px}.landing-hero:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90'%3E%3Cpath fill='%23fef9f0' fill-opacity='1' d='M0,64L60,58.7C120,53,240,43,360,48C480,53,600,75,720,74.7C840,75,960,53,1080,42.7C1200,32,1320,43,1380,48L1440,53L1440,90L1380,90C1320,90,1200,90,1080,90C960,90,840,90,720,90C600,90,480,90,360,90C240,90,120,90,60,90L0,90Z'/%3E%3C/svg%3E") bottom/cover no-repeat;height:90px;position:absolute;bottom:0;left:0;right:0}.hero-inner{z-index:1;max-width:980px;margin:0 auto;position:relative}.hero-badges{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-bottom:1.4rem;display:flex}.hero-pill{color:#def8ff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.03em;text-transform:uppercase;background:#ffffff29;border:1px solid #ffffff52;border-radius:999px;padding:.38rem .92rem;font-size:.8rem;font-weight:600}.landing-logo{flex-direction:column;align-items:center;gap:.5rem;margin-bottom:2rem;display:inline-flex}.landing-logo .logo-text{color:#fff;letter-spacing:-.01em;font-size:1.5rem;display:none}.hero-title{color:#fff;letter-spacing:-.025em;text-wrap:balance;text-shadow:0 10px 30px #031b2f6b;margin-bottom:.8rem;font-family:Fraunces,Iowan Old Style,Palatino Linotype,serif;font-size:clamp(2.15rem,5.2vw,4rem);font-weight:700}.hero-subtitle{color:#f6fcfff0;text-wrap:pretty;max-width:640px;margin:0 auto 1.3rem;font-size:clamp(1rem,1.95vw,1.25rem);line-height:1.8}.hero-meta-strip{color:#ecfcfff2;flex-wrap:wrap;justify-content:center;gap:1.1rem;margin:0 auto 2rem;font-size:.83rem;display:inline-flex}.hero-meta-strip span{padding-left:1rem;position:relative}.hero-meta-strip span:before{content:"";background:var(--landing-mint);border-radius:50%;width:7px;height:7px;position:absolute;top:.48rem;left:0}.cta-row{justify-content:center;align-items:center;gap:.75rem;margin-bottom:2rem;display:flex}.cta-button{color:#6b2d16;cursor:pointer;letter-spacing:.01em;background:linear-gradient(140deg,#fff8f0 0%,#ffd9bf 45%,#ffb987 100%);border:none;border-radius:50px;padding:1rem 2.5rem;font-size:1.05rem;font-weight:700;transition:transform .2s,box-shadow .2s;box-shadow:0 14px 34px #f37c4066}.cta-button:hover{transform:translateY(-2px);box-shadow:0 18px 40px #ef6c3e80}.cta-secondary{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);letter-spacing:.01em;background:#ffffff2e;border:1.5px solid #ffffff61;border-radius:50px;padding:.9rem 1.6rem;font-weight:700;transition:all .2s;box-shadow:0 8px 20px #06283c2e}.cta-secondary[href]{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.cta-secondary:hover{background:#ffffff47;transform:translateY(-1px)}.landing-gallery{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;max-width:900px;margin:0 auto 2.2rem;display:grid}.landing-gallery--hero{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:112px;max-width:1020px}.landing-gallery--all{max-width:1180px;margin-bottom:0}.gallery-item{aspect-ratio:4/3;background:#ffffff1f;border:1px solid #fff3;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;transform:translateY(0);box-shadow:0 8px 26px #06283c47}.gallery-item--hero-main{aspect-ratio:auto;grid-area:span 2/span 2}.gallery-item img{object-fit:cover;width:100%;height:100%}.gallery-label{color:#fff;text-align:center;background:linear-gradient(#0000,#083344b8);padding:.4rem .6rem;font-size:.82rem;font-weight:600;position:absolute;bottom:0;left:0;right:0}.gallery-placeholder{color:#ffffffa6;font-size:.9rem;font-weight:600}.landing-gallery-extra-toggle{justify-content:center;margin-top:-1rem;display:flex}.landing-gallery-section{background:linear-gradient(#f7fcff,#eef7fb);padding:2.75rem 1.5rem 1.5rem}.landing-gallery-section-head{text-align:center;margin-bottom:1.25rem}.landing-gallery-section-head h2,.about-inner h2{padding-bottom:.35rem;display:inline-block;position:relative}.landing-gallery-section-head h2{letter-spacing:-.02em;color:#0c4a6e;font-family:Fraunces,Iowan Old Style,Palatino Linotype,serif;font-size:clamp(1.8rem,3vw,2.3rem)}.landing-gallery-section-head h2:after,.about-inner h2:after{content:"";background:linear-gradient(90deg,#0e74903d,#f973163d,#10b98133);border-radius:999px;height:4px;position:absolute;bottom:-.05rem;left:6%;right:6%}.landing-about{background:linear-gradient(180deg, var(--landing-sand-1) 0%, #fff9ef 100%);padding:5rem 1.5rem}.about-inner{max-width:700px;margin:0 auto}.about-inner h2{letter-spacing:-.02em;color:#0c4a6e;margin-bottom:1rem;font-family:Fraunces,Iowan Old Style,Palatino Linotype,serif;font-size:clamp(1.8rem,3vw,2.3rem)}.about-inner p{color:#44596a;margin-bottom:.75rem;font-size:1.05rem;line-height:1.85}.about-sub{color:#64748b!important;font-size:.9rem!important}.landing-highlights{background:linear-gradient(125deg,#dff7ff 0%,#c8f5ff 38%,#ecfeff 100%);padding:5rem 1.5rem}.section-inner{text-align:center;max-width:1200px;margin:0 auto}.section-inner h2{color:#083344}.section-sub{color:#0e7490;max-width:760px;margin:.75rem auto 2rem}.highlight-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem;display:grid}.highlight-card{text-align:left;background:#ffffffed;border:1px solid #06b6d433;border-radius:18px;padding:1.75rem 1.5rem;transition:transform .18s,box-shadow .18s;box-shadow:0 10px 30px #0891b224}.highlight-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px #0891b22e}.highlight-icon{color:#0891b2;background:linear-gradient(135deg,#cffafe,#a5f3fc);border-radius:14px;place-items:center;width:46px;height:46px;margin-bottom:.9rem;display:grid}.highlight-card h3{color:#083344;margin-bottom:.4rem}.highlight-card p{color:#0e7490;margin:0}.landing-info{background:linear-gradient(#fff8ee 0%,#fff2df 100%);padding:4rem 1.5rem}.info-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.info-card{background:#fff;border:1px solid #fde8c8;border-radius:16px;padding:1.4rem;box-shadow:0 10px 26px #db6a341f}.info-label{text-transform:uppercase;letter-spacing:.1em;color:#f97316;margin-bottom:.35rem;font-size:.78rem;font-weight:700}.info-card h4{color:#083344;margin-bottom:.3rem}.info-copy{color:#44596a;margin:0}.landing-cta-panel{color:#fff;background:linear-gradient(132deg,#052c43 0%,#0b5f82 62%,#0da5bf 100%);padding:4rem 1.5rem;position:relative;overflow:hidden}.landing-cta-panel:before{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80'%3E%3Cpath fill='%23fef9f0' fill-opacity='1' d='M0,32L60,37.3C120,43,240,53,360,48C480,43,600,21,720,21.3C840,21,960,43,1080,48C1200,53,1320,43,1380,37.3L1440,32L1440,0L1380,0C1320,0,1200,0,1080,0C960,0,840,0,720,0C600,0,480,0,360,0C240,0,120,0,60,0L0,0Z'/%3E%3C/svg%3E") top/cover no-repeat;height:80px;position:absolute;top:0;left:0;right:0}.landing-trust{background:linear-gradient(#fff8ef 0%,#fff4e5 100%);padding:4rem 1.5rem}.trust-grid{grid-template-columns:1fr;gap:1rem;max-width:980px;margin:0 auto;display:grid}.trust-card{background:#fff;border:1px solid #f4dfc4;border-radius:16px;padding:1.3rem;box-shadow:0 10px 28px #08334414}.trust-card p{color:#4f6476}.trust-card--rules{background:linear-gradient(#fffdf9 0%,#fff6e8 100%)}.trust-card--reviews{background:linear-gradient(#f8fdff 0%,#eef9ff 100%)}.trust-block{border-radius:12px;margin-bottom:.85rem;padding:.85rem .95rem}.trust-block--rules{background:#fff1d9;border:1px solid #f6ddbe}.trust-block--policy{background:#eef9ff;border:1px solid #d6edf8}.reviews-list{gap:.85rem;margin:.75rem 0 1rem;display:grid}.review-item{background:linear-gradient(#f7fcff 0%,#edf7ff 100%);border:1px solid #dcecf8;border-radius:12px;padding:.95rem;box-shadow:0 6px 18px #2a71a314}.review-item h4{color:#083344;margin-bottom:.25rem}.review-item p{color:#4f6476;margin-bottom:.25rem}.review-stars{align-items:center;gap:.12rem;margin-bottom:.3rem;font-size:clamp(1rem,1.6vw,1.25rem);font-weight:700;display:inline-flex}.review-star{color:#c8d5de;line-height:1}.review-star.is-on{color:var(--review-star-color,#f0b17b);text-shadow:0 0 #0000}.review-item--rating-1{--review-star-color:#cf8f8a}.review-item--rating-2{--review-star-color:#d8a07f}.review-item--rating-3{--review-star-color:#e3b17c}.review-item--rating-4{--review-star-color:#d2b96d}.review-item--rating-5{--review-star-color:#8bbf9f}.reviews-write-note{color:#6b7f8f;margin-top:.35rem;font-size:.88rem}.review-form{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.review-form h4{margin-bottom:.65rem}.trust-list{margin:.7rem 0 1rem;padding-left:1.1rem}.trust-list--styled{margin-bottom:0;padding-left:0;list-style:none}.trust-list--styled li{color:#496373;background:#ffffffb8;border:1px solid #f5d8bae6;border-radius:10px;margin-bottom:.45rem;padding:.55rem .7rem .55rem 1.55rem;position:relative}.trust-list--styled li:before{content:"•";color:#d28758;position:absolute;top:.5rem;left:.75rem}.trust-list li{color:#4f6476;margin-bottom:.4rem}.faq-list details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:.5rem;padding:.6rem .75rem}.faq-list summary{cursor:pointer;color:#083344;font-weight:600}.faq-list details p{color:#4f6476;margin-top:.5rem}.landing-legal{background:#f8fafc;padding:3rem 1.5rem}.landing-legal .trust-card p{color:#5a6f81}.legal-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.cookie-consent{z-index:9999;position:fixed;bottom:1rem;left:1rem;right:1rem}.cookie-consent-inner{color:#fdf6e3;box-shadow:var(--shadow-lg);background:#073642;border-radius:12px;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.cookie-consent-inner p{color:#e2e8f0;margin:0;font-size:.88rem}.dashboard-top-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem;display:grid}.dashboard-kpi{border:1px solid var(--border);background:linear-gradient(#fff 0%,#f8fbff 100%);border-radius:12px;padding:.8rem}.dashboard-kpi h4{text-transform:uppercase;color:var(--text-3);margin-bottom:.25rem;font-size:.78rem}.dashboard-kpi p{color:var(--text);margin:0;font-size:1.15rem;font-weight:700}.dashboard-kpi small{color:var(--text-3);font-size:.75rem}.dashboard-kpi-icon{align-items:center;gap:.65rem;display:flex}.dashboard-icon{background:#eaf2ff;border:1px solid #dce8ff;border-radius:999px;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.05rem;display:inline-flex}.dashboard-detail-grid{grid-template-columns:repeat(2,minmax(280px,1fr));gap:.85rem;margin-top:.9rem;display:grid}.dashboard-panel{border:1px solid var(--border);background:#fff;border-radius:12px;padding:.8rem}.dashboard-panel h4{color:var(--text-2);margin-bottom:.5rem;font-size:.86rem}.dashboard-trend-chart{grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:.45rem;height:150px;display:grid}.dashboard-trend-bar-wrap{flex-direction:column;justify-content:flex-end;align-items:center;gap:.25rem;height:100%;display:flex}.dashboard-trend-value{color:var(--text-3);font-size:.7rem}.dashboard-trend-bar{background:linear-gradient(#7cb2ff 0%,#3b82f6 100%);border-radius:8px 8px 2px 2px;width:100%;max-width:26px;min-height:8px}.dashboard-trend-bar-wrap small{color:var(--text-3);font-size:.68rem}.dashboard-list{flex-direction:column;gap:.4rem;display:flex}.dashboard-list-row{border:1px solid var(--border);background:var(--bg);border-radius:8px;justify-content:space-between;align-items:center;padding:.35rem .45rem;display:flex}.dashboard-meta-line{margin-top:.5rem}.dashboard-revenue-panel{border:1px solid var(--border);background:#fff;border-radius:12px;padding:1rem}.revenue-period-btns{flex-wrap:wrap;gap:.3rem;display:flex}.revenue-period-btn{border:1px solid var(--border-2);background:var(--bg);color:var(--text-2);cursor:pointer;border-radius:999px;padding:.25rem .65rem;font-size:.78rem;font-weight:500;transition:background .15s,color .15s,border-color .15s}.revenue-period-btn:hover{background:var(--brand-light);border-color:var(--brand);color:var(--brand)}.revenue-period-btn--active{background:var(--brand);border-color:var(--brand);color:#fff!important}.revenue-eur{color:var(--text);font-size:1.25rem;font-weight:700}.dashboard-revenue-chart{grid-template-columns:repeat(auto-fill,minmax(36px,1fr));height:160px}.dashboard-revenue-bar{background:linear-gradient(#34d399 0%,#059669 100%)}.dashboard-finance-grid{grid-template-columns:repeat(2,minmax(280px,1fr));gap:.85rem;display:grid}.dashboard-finance-grid section{border:1px solid var(--border);background:var(--bg);border-radius:10px;padding:.7rem}.dashboard-net-pie-wrap{grid-template-columns:120px 1fr;align-items:center;gap:.8rem;display:grid}.dashboard-net-pie{border:1px solid var(--border);border-radius:50%;width:120px;height:120px}.dashboard-net-legend{color:var(--text-2);flex-direction:column;gap:.5rem;font-size:.83rem;display:flex}.dashboard-net-legend .dot{border-radius:50%;width:9px;height:9px;margin-right:.4rem;display:inline-block}.dashboard-net-legend .dot--net{background:#16a34a}.dashboard-net-legend .dot--expenses{background:#f59e0b}.cve-amount{color:var(--text-3);font-size:.82em;font-weight:400}.audit-row{border-bottom:1px solid var(--border);padding:.9rem 0}.audit-row:last-child{border-bottom:0}.audit-title{margin-bottom:.2rem}.audit-details{gap:.35rem;margin-top:.55rem;display:grid}.audit-detail-row{grid-template-columns:minmax(170px,260px) minmax(0,1fr);align-items:start;gap:.7rem;display:grid}.audit-detail-key{color:var(--text-2);letter-spacing:.01em;font-size:.8rem;font-weight:700}.audit-detail-value{color:var(--text);word-break:break-word;font-size:.88rem}.audit-booking-link{color:var(--brand);cursor:pointer;background:0 0;border:none;padding:0;font-size:.88rem;font-weight:700;text-decoration:underline}.audit-booking-link:hover{color:#1d4ed8}@media (width<=760px){.audit-detail-row{grid-template-columns:1fr;gap:.25rem}}.legal-page-card h2{margin-bottom:.8rem}.review-admin-item{border:1px solid var(--border);background:#fff;border-radius:12px;margin-bottom:.75rem;padding:.9rem}.review-admin-head{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.review-admin-head h4{margin-bottom:.25rem}.review-comment{color:var(--text-2);margin:.4rem 0 .2rem}.review-reason{color:var(--danger);margin:.4rem 0;font-size:.85rem}.status-pill.status-pending{color:#92400e;background:#fef3c7}.status-pill.status-approved{color:#166534;background:#dcfce7}.status-pill.status-rejected{color:#991b1b;background:#fee2e2}@media (width<=960px){.dashboard-detail-grid{grid-template-columns:1fr}}.cta-panel-inner{z-index:1;grid-template-columns:1.4fr 1fr;align-items:center;gap:1.5rem;max-width:1100px;margin:0 auto;display:grid;position:relative}.cta-pill{color:#a5f3fc;letter-spacing:.04em;text-transform:uppercase;background:#ffffff29;border-radius:999px;align-items:center;gap:.4rem;margin-bottom:.6rem;padding:.35rem .85rem;font-size:.82rem;font-weight:700;display:inline-flex}.cta-panel-inner h3{color:#fff}.cta-panel-copy{color:#a5f3fc;margin-top:.35rem}.cta-panel-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.cta-panel-actions .cta-secondary{background:#ffffff24;border-color:#ffffff59}.cta-link-mini{color:#e9f9ffeb;background:#ffffff14;border:1px solid #c9efff61;border-radius:999px;align-self:center;padding:.25rem .45rem;font-size:.78rem;font-weight:600;text-decoration:none}.cta-link-mini:hover{background:#ffffff29;text-decoration:none}.write-review-card{background:linear-gradient(#fff9f1 0%,#f6fbff 100%);border:1px solid #f1dfca}.review-form--standalone{border-top:none;margin-top:.6rem;padding-top:0}.write-review-actions{flex-wrap:wrap;gap:.65rem;margin-top:.8rem;display:flex}.landing-video-section,.landing-about,.landing-gallery-section,.landing-highlights,.landing-info,.landing-trust,.landing-legal,.landing-cta-panel{position:relative}.landing-reveal{opacity:0;animation:.6s cubic-bezier(.2,.7,.2,1) forwards landing-reveal;animation-delay:var(--reveal-delay,0s);transform:translateY(20px)}@keyframes landing-reveal{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.landing-reveal{opacity:1;animation:none;transform:none}}.lang-switcher{flex-wrap:wrap;gap:.25rem;display:flex}.hero-lang-switcher{justify-content:flex-end;margin:0 0 1rem;position:static}.lang-btn{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26;border:1.5px solid #ffffff59;border-radius:6px;padding:.3rem .65rem;font-size:.78rem;font-weight:600;transition:background .15s,border-color .15s}.lang-btn:hover{background:#ffffff47;border-color:#fff9}.lang-btn.active{color:var(--brand-dark);background:#ffffffe6;border-color:#ffffffe6}.booking-topbar .lang-switcher .lang-btn{background:var(--bg-2);border-color:var(--border);color:var(--text-2)}.booking-topbar .lang-switcher .lang-btn:hover{background:var(--bg-3)}.booking-topbar .lang-switcher .lang-btn.active{background:var(--brand);border-color:var(--brand);color:#fff}.quill-wrapper{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:#fff;overflow:hidden}.quill-wrapper .ql-toolbar{border:none;border-bottom:1px solid var(--border);background:#f3f6fa;padding:6px 8px}.quill-wrapper .ql-container{font-family:var(--font);color:var(--text);background:#fff;border:none;font-size:.9rem}.quill-wrapper .ql-editor{min-height:140px;max-height:320px;padding:.75rem 1rem;line-height:1.7;overflow-y:auto}.quill-wrapper .ql-editor p{margin-bottom:.4rem}.about-rich-text h1,.about-rich-text h2,.about-rich-text h3{margin:.75rem 0 .4rem;line-height:1.3}.about-rich-text p{white-space:pre-line;margin-bottom:.5rem;font-size:1.05rem;line-height:1.8}.about-rich-text ul,.about-rich-text ol{margin-bottom:.75rem;padding-left:1.5rem}.about-rich-text li{white-space:pre-line;margin-bottom:.25rem;line-height:1.7}.about-rich-text a{color:var(--brand);text-decoration:underline}.about-rich-text img{border-radius:18px;width:min(100%,760px);height:auto;margin:1rem auto;display:block;box-shadow:0 16px 36px #08334429}.lang-tabs{flex-wrap:wrap;gap:.35rem;margin-bottom:1rem;display:flex}.lang-tab-btn{border:1.5px solid var(--border);background:var(--bg-2);color:var(--text-2);cursor:pointer;border-radius:6px;padding:.35rem .85rem;font-size:.82rem;font-weight:600;transition:all .15s}.lang-tab-btn:hover{background:var(--bg-3)}.lang-tab-btn.active{background:var(--brand);border-color:var(--brand);color:#fff}.booking-page{background:var(--bg);min-height:100vh}.booking-wrap{flex-direction:column;gap:1.5rem;max-width:780px;margin:0 auto;padding:2rem 1.5rem 4rem;display:flex}.booking-topbar{align-items:center;margin-bottom:.25rem;display:flex}.booking-hero{text-align:center;padding:1rem 0 .5rem}.booking-hero h1{color:var(--text);margin-bottom:.4rem;font-size:2rem;font-weight:800}.booking-hero p{color:var(--text-2);font-size:1rem}.guest-row{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.5rem;display:grid}.guest-row input,.guest-extra-row input{border:1.5px solid var(--border);border-radius:var(--radius-sm);width:100%;padding:.55rem .75rem;font-family:inherit;font-size:.9rem}.guest-row input:focus,.guest-extra-row input:focus{border-color:var(--brand);outline:none}.guest-extra-row{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.4rem;display:grid}.booking-steps{justify-content:center;align-items:center;gap:0;margin-bottom:.5rem;display:flex}.booking-step{color:var(--text-3);align-items:center;gap:.45rem;font-size:.82rem;font-weight:500;display:flex}.booking-step.active{color:var(--brand);font-weight:700}.booking-step.done{color:var(--success,#16a34a)}.step-num{background:var(--bg-2);border:2px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;font-weight:700;display:flex}.booking-step.active .step-num{background:var(--brand);border-color:var(--brand);color:#fff}.booking-step.done .step-num{background:var(--success,#16a34a);border-color:var(--success,#16a34a);color:#fff}.step-connector{background:var(--border);flex-shrink:0;width:40px;height:2px;margin:0 4px}.booking-summary-bar{background:var(--brand-light);border-radius:var(--radius-sm);color:var(--brand-dark);border:1px solid #bfdbfe;flex-wrap:wrap;gap:1.5rem;padding:.65rem 1rem;font-size:.875rem;font-weight:600;display:flex}.avail-ok{color:#15803d;border-radius:var(--radius-sm);background:#dcfce7;border:1px solid #bbf7d0;margin-top:.75rem;padding:.65rem 1rem;font-size:.875rem}.avail-conflict{color:#dc2626;border-radius:var(--radius-sm);background:#fee2e2;border:1px solid #fecaca;margin-top:.75rem;padding:.65rem 1rem;font-size:.875rem}.booking-success-card{text-align:center;padding:3rem 2rem}.success-icon{margin-bottom:1rem;font-size:3rem}.booking-success-card h2{margin-bottom:.75rem;font-size:1.5rem}.booking-success-card p{color:var(--text-2);max-width:420px;margin:0 auto;font-size:.95rem}.booking-card{margin-bottom:1rem}.booking-card--focus{outline:2px solid var(--brand);box-shadow:0 0 0 3px #2563eb2e}.bk-list-panel{margin-bottom:1rem}.bk-list-table-wrap{border:1px solid var(--border);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-sm);overflow-x:auto}.bk-list-table{border-collapse:collapse;width:100%;font-size:.875rem}.bk-list-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);background:var(--bg-2);border-bottom:1px solid var(--border);padding:.6rem 1rem;font-size:.75rem;font-weight:600}.bk-list-row{cursor:pointer;border-bottom:1px solid var(--border);transition:background .1s}.bk-list-row:last-child{border-bottom:none}.bk-list-row:hover{background:var(--bg-2)}.bk-list-row--active{background:#eff6ff!important}.bk-list-row td{vertical-align:top;padding:.65rem 1rem}.bk-list-num{color:var(--pill-booking-text);white-space:nowrap;font-weight:700}.bk-open-booking-btn{color:inherit;font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin:0;padding:0;font-weight:700;text-decoration:underline}.bk-open-booking-btn:hover{opacity:.86}.bk-open-booking-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}.bk-list-dates{white-space:nowrap;color:var(--text);font-weight:600}.bk-list-guest{min-width:160px}.bk-list-email{color:var(--text-3);margin-top:2px;font-size:.8rem}.bk-list-price{white-space:nowrap;color:var(--text);font-weight:700}.bk-detail-panel{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:1.5rem}.bk-detail-backdrop{z-index:2400;background:#0f172a73;position:fixed;inset:0}.bk-detail-panel--floating{z-index:2401;width:min(1100px,100vw - 2.5rem);max-height:calc(100vh - 2.5rem);box-shadow:var(--shadow-lg);margin:0;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}body.bk-window-open{overflow:hidden}.bk-detail-header{border-bottom:1px solid var(--border);background:var(--bg-2);border-radius:var(--radius) var(--radius) 0 0;padding:1rem 1.25rem .75rem}.bk-detail-title{flex-wrap:wrap;align-items:flex-start;gap:.75rem;display:flex}.bk-detail-nav{border-bottom:1px solid var(--border);scrollbar-width:none;background:var(--bg);gap:0;display:flex;overflow-x:auto}.bk-detail-nav::-webkit-scrollbar{display:none}.bk-detail-tab{color:var(--text-3);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;flex-shrink:0;padding:.65rem 1.1rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:color .15s,border-color .15s,background .15s}.bk-detail-tab:hover{color:var(--text);background:#00000008}.bk-detail-tab--active{color:var(--brand,#2563eb);border-bottom-color:var(--brand,#2563eb);font-weight:600}.bk-detail-content{padding:1.25rem}.bk-notes-compose{border-top:1px dashed var(--border);margin-top:.5rem;padding-top:.75rem}.booking-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.booking-card-info{flex:1;min-width:0}.booking-card-dates{margin-bottom:.25rem;font-size:1rem;font-weight:700}.booking-card-guest{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:.2rem;font-size:.9rem;display:flex}.booking-card-note{color:var(--text-3);margin-top:.2rem;font-size:.82rem;font-style:italic}.booking-card-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.3rem;display:flex}.booking-card-price{color:var(--text);font-size:1.1rem;font-weight:700}.booking-card-id{color:var(--pill-booking-text);font-size:.82rem;font-weight:700}.booking-card-actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:.5rem;margin-top:.85rem;padding-top:.85rem;display:flex}.booking-expense-summary{grid-template-columns:repeat(3,minmax(160px,1fr));gap:.5rem;margin-bottom:.75rem;display:grid}.booking-expense-summary>div{border:1px solid var(--border);background:var(--bg);border-radius:8px;padding:.45rem .55rem}.booking-expense-summary span{color:var(--text-3);font-size:.75rem;display:block}.booking-expense-summary strong{color:var(--text);margin-top:.2rem;font-size:.92rem;display:block}.booking-expense-form{border:1px dashed var(--border-2);background:var(--bg-2);border-radius:10px;flex-wrap:wrap;align-items:flex-end;gap:.6rem;margin-bottom:.6rem;padding:.6rem;display:flex}.pill{border-radius:999px;align-items:center;gap:.3rem;padding:.25rem .65rem;font-size:.82rem;font-weight:700;display:inline-flex}.pill--booking{background:var(--pill-booking-bg);color:var(--pill-booking-text);border:1px solid #ddd6fe}.pill--link{cursor:pointer}.pill--link:hover{filter:brightness(.97);text-decoration:none}.pill--identity{background:var(--pill-id-bg);color:var(--pill-id-text);border:1px solid #bae6fd}.pill--language{color:#5b21b6;background:#f5f3ff;border:1px solid #ddd6fe}.pill-ghost{background:var(--bg-2);color:var(--text-2)}.bk-list-language{margin-top:.35rem}.status-pill{border:1px solid var(--border);border-radius:999px;align-items:center;gap:.3rem;padding:.25rem .55rem;font-size:.78rem;font-weight:700;display:inline-flex}.status-pill--pending_review{color:#92400e;background:#fef3c7;border-color:#fcd34d}.status-pill--needs_verification{color:#5b21b6;background:#ede9fe;border-color:#c4b5fd}.status-pill--awaiting_payment{color:#1d4ed8;background:#dbeafe;border-color:#bfdbfe}.status-pill--approved{color:#166534;background:#dcfce7;border-color:#bbf7d0}.status-pill--rejected{color:#b91c1c;background:#fee2e2;border-color:#fecaca}.status-pill--cancelled{color:#4b5563;background:#f3f4f6;border-color:#d1d5db}.status-pill--pending{color:#92400e;background:#fef3c7;border-color:#fcd34d}.status-pill--completed{color:#166534;background:#dcfce7;border-color:#bbf7d0}.status-pill--canceled{color:#b91c1c;background:#fee2e2;border-color:#fecaca}.status-pill--guest_requested{color:#6d28d9;background:#ede9fe;border-color:#c4b5fd}.status-badge{border-radius:999px;align-items:center;padding:.2rem .65rem;font-size:.75rem;font-weight:700;display:inline-flex}.task-kanban-grid{grid-template-columns:repeat(4,minmax(260px,1fr));gap:.9rem;padding-bottom:.2rem;display:grid;overflow:auto}.task-kanban-column{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;min-height:240px;padding:.85rem;display:flex}.task-kanban-column h4{margin:0 0 .7rem}.task-kanban-items{flex:1;gap:.65rem;display:grid}.task-create-col-btn{width:100%;margin-top:.75rem}.task-card-head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.task-card-badges{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex}.task-status-badge,.task-type-badge{border:1px solid #0000;border-radius:999px;align-items:center;padding:.2rem .55rem;font-size:.75rem;font-weight:700;display:inline-flex}.task-status-badge--todo{color:#92400e;background:#fef3c7;border-color:#fcd34d}.task-status-badge--in_progress{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.task-status-badge--blocked{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.task-status-badge--done{color:#166534;background:#dcfce7;border-color:#86efac}.task-type-badge--housekeeping{color:#6b21a8;background:#f3e8ff;border-color:#d8b4fe}.task-type-badge--checkin{color:#0e7490;background:#cffafe;border-color:#67e8f9}.task-type-badge--checkout{color:#c2410c;background:#ffedd5;border-color:#fdba74}.task-type-badge--custom{color:#374151;background:#e5e7eb;border-color:#d1d5db}.task-number-badge{color:#fff;letter-spacing:.03em;background:#1e40af;border-radius:6px;flex-shrink:0;padding:.15rem .45rem;font-size:.7rem;font-weight:700;display:inline-block}.task-number-badge--link{cursor:pointer;border:none}.task-number-badge--link:hover{filter:brightness(1.08)}.task-card-compact .task-card-head{flex-wrap:wrap;align-items:center;gap:.4rem}.task-card-title-link{color:#1e3a5f;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.88rem;font-weight:600;transition:color .15s;overflow:hidden}.task-card-title-link:hover{color:var(--brand);text-decoration:underline}.task-card-meta{flex-wrap:wrap;gap:.3rem;margin-top:.45rem;display:flex}.task-card-footer{flex-wrap:wrap;gap:.5rem;margin-top:.45rem;font-size:.78rem;display:flex}.task-table-wrap{overflow-x:auto}.task-inline-select{min-width:9.5rem}.task-card[draggable=true]{cursor:grab}.task-card[draggable=true]:active{cursor:grabbing}.task-card--dragging{opacity:.45;transform:rotate(1deg)}.task-kanban-items{border:1px dashed #0000;border-radius:14px;min-height:8rem;transition:background-color .15s,border-color .15s,box-shadow .15s}.task-kanban-items--drop-target{background:#1e40af0f;border-color:#1e40af59;box-shadow:inset 0 0 0 1px #1e40af14}.task-detail-modal{width:100%;max-width:760px;max-height:90vh;overflow-y:auto}.task-detail-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.task-detail-comments{border-top:1px solid #e5e7eb;padding-top:.85rem}.modal-overlay{z-index:3000;background:#0006;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card{padding:2rem}.availability-info{color:var(--text-2);margin-top:.5rem;font-size:.875rem}.price-box{background:var(--brand-light);border-radius:var(--radius-sm);color:var(--brand-dark);border:1px solid #bfdbfe;margin:.75rem 0;padding:.85rem 1rem;font-size:.95rem}.contact-section h2{margin-bottom:.5rem}#public-calendar h2{margin-bottom:1rem}.message{border-radius:var(--radius-sm);border:1px solid var(--border);margin-top:.75rem;padding:.85rem 1rem}.message.success{background:var(--success-bg);color:var(--success);border-color:#bbf7d0}.message.error{background:var(--danger-bg);color:var(--danger);border-color:#fecaca}.login-page .login-card p{margin-bottom:0}.sidebar-nav .sidebar-separator{pointer-events:none;background:#ffffff1a;height:1px;margin:.5rem 1rem}.service-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.service-info{flex:1;align-items:flex-start;gap:1rem;display:flex}.service-icon{background:var(--brand-light);width:52px;height:52px;color:var(--brand);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.service-name{margin:0 0 .25rem;font-size:1rem;font-weight:700}.service-desc{color:var(--text-2);margin:0;font-size:.85rem}.service-status-badge{border:1.5px solid var(--border);background:var(--bg-2);white-space:nowrap;border-radius:999px;align-self:flex-start;align-items:center;gap:.5rem;padding:.4rem 1rem;font-size:.875rem;font-weight:600;display:flex}.service-meta{color:var(--text-3);margin-top:.75rem;font-size:.8rem}.status-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.dot-ok{background:var(--success);box-shadow:0 0 0 3px #bbf7d0}.dot-error{background:var(--danger);box-shadow:0 0 0 3px #fecaca}.dot-warn{background:#f59e0b;box-shadow:0 0 0 3px #fde68a}.dot-checking{background:var(--text-3);animation:1s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.link{color:var(--brand);text-decoration:underline}.automation-list{flex-direction:column;gap:.75rem;display:flex}.automation-item{border:1.5px solid var(--border);border-radius:var(--radius);background:var(--bg-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:opacity .2s;display:flex}.automation-item.disabled{opacity:.55}.automation-item-left{flex:1;align-items:flex-start;gap:1rem;min-width:0;display:flex}.automation-toggle-wrap{padding-top:2px}.automation-meta{flex-direction:column;gap:.25rem;min-width:0;display:flex}.automation-meta strong{font-size:.95rem}.automation-trigger-pill{background:var(--brand-light);color:var(--brand-dark);border-radius:999px;width:fit-content;padding:.15rem .7rem;font-size:.78rem;display:inline-block}.automation-subject{color:var(--text-2);font-size:.8rem}.automation-attach{color:var(--text-3);font-size:.78rem}.automation-actions{flex-shrink:0;gap:.4rem;display:flex}.automation-delivery-card{margin-bottom:1.5rem}.automation-delivery-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.automation-delivery-summary{flex-wrap:wrap;gap:.8rem;margin-top:.9rem;display:flex}.automation-metric{border:1px solid var(--border);background:var(--bg-2);border-radius:10px;min-width:160px;padding:.55rem .8rem}.automation-metric-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;display:block}.automation-metric strong{font-size:1.1rem}.automation-delivery-toolbar{flex-wrap:wrap;gap:.5rem;margin-top:.85rem;display:flex}.automation-delivery-table th:first-child,.automation-delivery-table td:first-child{white-space:nowrap}.automation-delivery-detail{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.automation-detail-body{border:1px solid var(--border);background:#fff;border-radius:8px;max-height:280px;padding:.7rem;overflow:auto}.toggle-switch{cursor:pointer;width:40px;height:22px;display:inline-block;position:relative}.toggle-input{opacity:0;width:0;height:0;position:absolute}.toggle-track{background:var(--border);border-radius:999px;transition:background .2s;position:absolute;inset:0}.toggle-input:checked+.toggle-track{background:var(--brand)}.toggle-track:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px}.toggle-input:checked+.toggle-track:after{transform:translate(18px)}.auto-attachment-list{flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem;display:flex}.attach-chip{background:var(--brand-light);color:var(--brand-dark);border:1px solid #bfdbfe;border-radius:6px;align-items:center;gap:.4rem;padding:.25rem .6rem;font-size:.8rem;display:flex}.attach-remove{cursor:pointer;color:var(--brand-dark);background:0 0;border:none;padding:0;font-size:1rem;line-height:1}.attach-remove:hover{color:var(--danger)}@media (width<=1024px){.admin-sidebar{width:200px}.calendar-grid{grid-template-columns:minmax(380px,460px) minmax(0,1fr)}}@media (width<=768px){.admin-layout{flex-direction:column;height:auto;min-height:100vh;overflow:visible}.admin-sidebar{z-index:20;width:100%;height:auto;box-shadow:none;border-bottom:1px solid #93a1a140;flex-flow:row;align-items:center;position:relative;top:auto;overflow:auto hidden}.admin-main{min-height:0;overflow:visible}.sidebar-logo{border-bottom:none;flex-shrink:0;padding:.5rem .7rem}.sidebar-logo .logo-text{display:none}.sidebar-logo .logo-img{width:30px}.sidebar-nav{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-flow:row;gap:.45rem;min-width:0;padding:.45rem .5rem;display:flex;overflow:auto hidden}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-nav li{flex:none}.sidebar-nav li a{white-space:nowrap;border:1px solid #ffffff38;border-radius:999px;gap:.42rem;padding:.58rem .82rem;font-size:.84rem}.sidebar-nav li a svg{width:14px;height:14px}.sidebar-nav li.active a{background:#2563eb40;border-color:#93c5fd8c;border-bottom-style:none;border-bottom-width:medium;border-left-style:none;border-left-width:medium}.sidebar-nav .sidebar-separator{display:none}.sidebar-logout{white-space:nowrap;flex:none;margin:.45rem .5rem;padding:.5rem .78rem;font-size:.82rem}.admin-topbar{flex-wrap:wrap;align-items:flex-start;gap:.55rem;height:auto;min-height:56px;padding:.55rem .75rem}.topbar-left{flex:1;min-width:0}.topbar-title{word-break:break-word;font-size:1rem;line-height:1.3}.topbar-right{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;margin-left:auto}.notif-icon-btn,.msg-icon-btn,.profile-icon-btn{border-radius:9px;width:36px;height:36px}.role-pill{padding:.2rem .6rem;font-size:.72rem}.topbar-notif-panel,.topbar-profile-panel{width:auto;max-height:65vh;position:fixed;top:58px;left:.5rem;right:.5rem}.topbar-profile-panel{min-width:0}.admin-content.admin-content--full{overflow:visible}.admin-content{padding:.85rem}.content-card{margin-bottom:1rem;padding:1rem}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.data-table{min-width:700px}.page-header{align-items:flex-start}.search-wrap{width:100%;margin-left:0}.search-input{width:100%;min-width:0}.dashboard-finance-grid,.booking-expense-summary{grid-template-columns:1fr}.dashboard-net-pie-wrap{grid-template-columns:1fr;justify-items:start}.calendar-grid{grid-template-columns:1fr}.bk-detail-panel--floating{width:calc(100vw - 1rem);max-height:calc(100vh - 1rem)}.msg-full-layout{background:0 0;grid-template-columns:1fr;overflow:visible}.msg-body{grid-template-columns:1fr}.msg-thread-list{border-right:none;border-bottom:1px solid var(--border);max-height:42vh}.thread-item{padding:.72rem .78rem}.thread-item-top{align-items:flex-start}.msg-thread-detail{min-height:52vh;overflow-y:visible}.thread-header{padding:.75rem .85rem}.thread-messages{gap:.6rem;padding:.75rem .75rem .9rem}.bubble{max-width:94%}.reply-form{box-shadow:none;padding:.65rem .75rem;position:static;bottom:auto}.reply-quill .ql-editor{min-height:72px;max-height:120px}.form-row{grid-template-columns:1fr}.landing-hero{padding:3.2rem 1rem 2.6rem}.hero-inner{max-width:100%}.hero-lang-switcher{justify-content:center;margin:0 0 .9rem;position:static}.hero-badges{margin-bottom:1rem}.hero-pill{padding:.3rem .65rem;font-size:.76rem}.hero-title{margin-bottom:.75rem;font-size:clamp(1.7rem,8.4vw,2.35rem)}.hero-subtitle{max-width:34ch;margin:0 auto 1rem;font-size:1rem}.hero-meta-strip{gap:.7rem;margin-bottom:1.2rem;font-size:.76rem}.cta-row{gap:.6rem;width:100%;margin-bottom:1.4rem}.cta-button,.cta-secondary{justify-content:center;width:min(100%,360px);padding:.9rem 1.2rem}.landing-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:0 auto 1.5rem}.landing-gallery--hero{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:120px}.gallery-item--hero-main{grid-column:span 2}.landing-about,.landing-highlights,.landing-info,.landing-cta-panel{padding:2.5rem 1rem}.about-inner h2,.section-inner h2{font-size:1.65rem}.highlight-grid,.info-grid{grid-template-columns:1fr}.cta-panel-inner{text-align:left;grid-template-columns:1fr;gap:1rem}.cta-panel-actions{justify-content:stretch;gap:.6rem}.cta-panel-actions .cta-button,.cta-panel-actions .cta-secondary{width:100%}.cta-link-mini{text-align:center;width:100%}.cookie-consent-inner{flex-direction:column;align-items:stretch}}@media (width<=540px){.booking-wrap{padding:1rem}.guest-row{grid-template-columns:1fr}.admin-topbar{gap:.45rem;padding:.45rem .6rem}.topbar-title{font-size:.94rem}.topbar-right{justify-content:flex-start;width:100%}.topbar-notif-panel,.topbar-profile-panel{top:54px;left:.35rem;right:.35rem}.data-table{min-width:620px;font-size:.8rem}.sidebar-nav li a{padding:.52rem .7rem;font-size:.8rem}.sidebar-logout{padding:.44rem .66rem;font-size:.78rem}.msg-thread-list{max-height:46vh}.thread-messages{padding:.65rem}.thread-header-sub{font-size:.8rem}.bubble-body,.bubble-text{font-size:.84rem}.reply-actions{gap:.45rem}.data-table th,.data-table td{padding:.6rem}.content-card{padding:.85rem}.landing-gallery{grid-template-columns:1fr}.landing-gallery--hero{grid-template-columns:1fr;grid-auto-rows:190px}.gallery-item--hero-main{grid-area:auto}.hero-title{font-size:clamp(1.6rem,9.5vw,2rem)}.hero-subtitle{font-size:.96rem}.hero-meta-strip{grid-template-columns:1fr;justify-items:center;margin-bottom:1rem;display:grid}.hero-meta-strip span{padding-left:0}.hero-meta-strip span:before{display:none}}.lightbox-overlay{z-index:9000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000eb;justify-content:center;align-items:center;animation:.2s lb-in;display:flex;position:fixed;inset:0}.lightbox-overlay.lightbox-closing{animation:.18s forwards lb-out}@keyframes lb-in{0%{opacity:0}to{opacity:1}}@keyframes lb-out{0%{opacity:1}to{opacity:0}}.lightbox-content{flex-direction:column;align-items:center;max-width:min(92vw,1200px);max-height:92vh;display:flex}.lightbox-img{object-fit:contain;border-radius:8px;max-width:100%;max-height:calc(92vh - 60px);transition:opacity .2s;display:block}.lightbox-caption{color:#ffffffbf;text-align:center;min-height:1.4em;margin-top:.75rem;font-size:.9rem;font-weight:500}.lightbox-close{color:#fff;cursor:pointer;z-index:1;background:#ffffff1f;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;transition:background .15s;display:flex;position:fixed;top:1.25rem;right:1.25rem}.lightbox-close:hover{background:#ffffff40}.lightbox-prev,.lightbox-next{color:#fff;cursor:pointer;z-index:1;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:background .15s;display:flex;position:fixed;top:50%;transform:translateY(-50%)}.lightbox-prev{left:1.25rem}.lightbox-next{right:1.25rem}.lightbox-prev:hover,.lightbox-next:hover{background:#ffffff40}.lightbox-dots{justify-content:center;gap:6px;margin-top:.75rem;display:flex}.lightbox-dot{background:#ffffff4d;border-radius:50%;width:7px;height:7px;transition:background .15s}.lightbox-dot.active{background:#fff}.gallery-item{transition:transform .2s,box-shadow .2s}.gallery-item:hover{transform:scale(1.03);box-shadow:0 8px 24px #00000040}.rate-form-row{grid-template-columns:repeat(2,minmax(180px,1fr));align-items:start;gap:.75rem;display:grid}.rate-card,.rate-form-row .field{min-width:0}.rate-form-row .field label{white-space:nowrap}.rate-form-row .field input[type=date]{width:100%;min-width:0}.label-hint{color:var(--text-3);text-transform:none;letter-spacing:0;font-size:.75rem;font-weight:400}.rate-range-info{color:var(--brand);min-height:1.2em;margin-bottom:.5rem;font-size:.82rem;font-weight:600}.rate-days{background:var(--brand-light);color:var(--brand);vertical-align:middle;border-radius:4px;margin-left:5px;padding:1px 5px;font-size:.72rem;font-weight:700;display:inline-block}.landing-video-section{background:var(--bg);width:100%;padding:3rem 1.5rem}.video-wrap{max-width:900px;box-shadow:var(--shadow-lg);aspect-ratio:16/9;background:#000;border-radius:16px;margin:0 auto;position:relative;overflow:hidden}.landing-video{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.landing-video-placeholder{background:var(--bg-2);border:2px dashed var(--border-2);aspect-ratio:16/9;border-radius:16px;justify-content:center;align-items:center;max-width:900px;margin:0 auto;line-height:normal;display:flex}.video-placeholder-inner{color:var(--text-3);flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1rem;display:flex}.video-section-header{max-width:900px;margin:0 auto 1.25rem}.video-section-header h2{color:var(--text);font-size:1.6rem}.section-hint{color:var(--text-3);margin-bottom:1rem;font-size:.83rem;line-height:1.5}.video-upload-row{flex-direction:column;gap:.75rem;display:flex}.video-preview-wrap{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex;position:relative}.video-preview-wrap.video-preview-empty{background:var(--bg-2);border:1.5px dashed var(--border-2);border-radius:var(--radius-sm);color:var(--text-3);flex-direction:row;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;font-size:.875rem}.video-preview{border-radius:var(--radius-sm);border:1px solid var(--border);object-fit:cover;background:#000;width:100%;max-width:480px;max-height:270px;display:block}.video-upload-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.video-upload-progress{align-items:center;gap:.75rem;margin-top:.25rem;display:flex}.progress-bar{background:var(--border);border-radius:99px;flex:1;max-width:300px;height:6px;overflow:hidden}.progress-fill{background:var(--brand);border-radius:99px;height:100%;transition:width .2s}#progress-label{color:var(--text-2);white-space:nowrap;font-size:.8rem}.admin-user-row{border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.85rem 1rem;display:flex}.admin-user-row:hover{background:var(--surface-1)}.admin-user-info{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.admin-user-actions{flex-wrap:wrap;gap:.5rem;display:flex}.btn-danger{background:var(--danger,#dc2626);color:#fff;cursor:pointer;border-radius:var(--radius);border:none;padding:.4rem .9rem;font-size:.85rem;font-weight:500;transition:opacity .15s}.btn-danger:hover{opacity:.85}.form-row{flex-wrap:wrap;gap:.75rem;display:flex}.form-row .field{flex:1;min-width:200px}.ext-cal-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.75rem 1rem;display:flex}.ext-cal-row:hover{background:var(--surface-1,var(--bg-2))}.ext-cal-info{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.ext-cal-url{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-family:monospace;font-size:.75rem;overflow:hidden}.ext-cal-meta{color:var(--text-2);font-size:.75rem}.ext-cal-actions{flex-shrink:0;gap:.5rem;display:flex}
