:root{--primary-color:#1976d2;--primary-dark:#125aa2;--bg-light:#f4f4f4;--bg-dark:#1c1c1c;--text-dark:#2c3e50;--text-light:#f4f4f4;--card-bg:#fff;--card-bg-dark:#2a2a2a;--input-bg-dark:#444;--input-border-dark:#666;--shadow:0 6px 16px rgba(0,0,0,.08)}*{box-sizing:border-box}body,html{height:100%;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,Montserrat,Segoe UI,system-ui,-apple-system,Arial,Helvetica,sans-serif;background:var(--bg-light);color:var(--text-dark);text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .25s,color .25s}h1{font-size:2.2rem;font-weight:800;font-family:Inter,Montserrat,sans-serif;letter-spacing:.05em;text-transform:uppercase;color:var(--primary-color);margin:0 0 20px;line-height:1.2}h1.glow{text-shadow:0 0 12px rgba(115,103,240,.9),0 0 28px rgba(69,196,230,.7),0 0 42px rgba(52,211,153,.5);transition:text-shadow .4s ease-in-out}h1.glow:hover{text-shadow:0 0 20px #7367f0,0 0 40px rgba(69,196,230,.9),0 0 60px rgba(52,211,153,.7)}.tagline{font-size:clamp(1.1rem,2vw,1.6rem);font-weight:600;letter-spacing:.05em;text-transform:uppercase;text-align:center;line-height:1.3;margin:12px 0 26px;background:linear-gradient(90deg,#1976d2,#34d399);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 10px rgba(25,118,210,.35),0 0 18px rgba(52,211,153,.25);transition:text-shadow .4s ease-in-out}@media (hover:hover){.tagline:hover{text-shadow:0 0 16px rgba(25,118,210,.5),0 0 28px rgba(52,211,153,.4),0 0 48px rgba(69,196,230,.3)}}@media (max-width:480px){.tagline{font-size:1.05rem;line-height:1.25;margin-bottom:20px}}h2{font-size:1.4rem;margin:0 0 14px;color:var(--primary-color)}.section{max-width:760px;margin:0 auto 48px;text-align:center;padding:0 16px}.section p{font-size:1rem;line-height:1.6;color:#555}.features{display:grid;grid-gap:20px;gap:20px;margin-top:28px}@media (min-width:640px){.features{grid-template-columns:repeat(2,1fr);text-align:left}}.feature{background:var(--card-bg);padding:18px;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05)}.feature h3{margin:0 0 8px;font-size:1.1rem;color:var(--primary-color)}.feature p{margin:0;font-size:.95rem;color:#444}.container{background:var(--card-bg);max-width:520px;margin:0 auto;padding:28px 24px;border-radius:14px;text-align:left;box-shadow:var(--shadow);transition:background-color .25s,box-shadow .25s}label{display:block;margin:14px 0 6px;font-weight:600;font-size:15px}input,select{width:100%;padding:10px 12px;font-size:16px;margin-bottom:12px;border:1px solid #ccc;border-radius:8px;background:#fff;transition:background-color .25s,color .25s,border-color .25s}button:focus,input:focus,select:focus{outline:2px solid var(--primary-color);outline-offset:2px}button{background:var(--primary-color);color:#fff;padding:12px 14px;width:100%;font-weight:700;font-size:16px;border:0;border-radius:8px;cursor:pointer;transition:background-color .2s,opacity .2s}button:hover{background:var(--primary-dark)}button:disabled{opacity:.65;cursor:not-allowed}.biz-logo{display:block;max-width:120px;margin:0 auto 16px}.booking-banner{background:#e3f2fd;padding:10px 14px;margin-bottom:18px;border-left:5px solid var(--primary-color);border-radius:6px;font-size:14px}.warning{color:#d32f2f;font-size:13px;margin:-8px 0 12px;display:block}.status-msg{margin:10px 0 14px;font-weight:600;color:#444}.reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease;will-change:opacity,transform}.reveal.show{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}}.glass{background:hsla(0,0%,100%,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.08)}.fab{position:fixed;right:1.25rem;bottom:1.25rem;z-index:40;background:var(--primary-color);color:#fff;font-weight:700;border-radius:999px;padding:.85rem 1.1rem;box-shadow:0 12px 28px rgba(0,0,0,.18);transition:opacity .3s,transform .3s}.fab.hide{opacity:0;pointer-events:none;transform:translateY(6px)}.dark{background:var(--bg-dark);color:var(--text-light)}.dark .container{background:var(--card-bg-dark)}.dark input,.dark select{background:var(--input-bg-dark);color:var(--text-light);border:1px solid var(--input-border-dark)}.dark .booking-banner{background:#223042;color:#cfe0ff}.dark .glass{background:rgba(30,35,42,.6);border-bottom:1px solid hsla(0,0%,100%,.1)}.admin-shell{max-width:1200px;margin:0 auto;padding:24px 16px}@media (min-width:768px){.admin-shell{padding:32px 24px}}.admin-header{justify-content:space-between;gap:16px;margin-bottom:18px}.admin-brand,.admin-header{display:flex;align-items:center}.admin-brand{gap:12px}.admin-brand .brand-logo{width:40px;height:40px;border-radius:12px;border:1px solid rgba(0,0,0,.08);object-fit:cover}.royal-title{font-size:22px;line-height:1.1;margin:0;color:var(--text-dark)}.royal-subtitle{font-size:13px;color:#77808a;margin-top:2px}.admin-nav{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.admin-tab{padding:8px 12px;border-radius:9px;border:1px solid #d9dee5;background:#fff;font-weight:600;font-size:13px;color:#334155;cursor:pointer;transition:all .15s}.admin-tab:hover{border-color:var(--primary-color);color:var(--primary-color)}.admin-tab.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.royal-card{background:#fff;border-radius:14px;box-shadow:var(--shadow);border:1px solid #eceff3}.royal-card.pad{padding:16px}.royal-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;border-radius:10px;padding:10px 14px;border:1px solid var(--primary-color);background:var(--primary-color);color:#fff;transition:filter .2s,transform .06s}.royal-btn:hover{filter:brightness(1.03)}.royal-btn:active{transform:translateY(1px)}.royal-btn.outline{background:#fff;color:var(--primary-color);border-color:var(--primary-color)}.royal-btn.muted{background:#eef2f7;border-color:#e3e8ef;color:#475569}.royal-filters{display:grid;grid-gap:12px;gap:12px;margin-bottom:16px;grid-template-columns:1fr}@media (min-width:768px){.royal-filters{grid-template-columns:repeat(5,minmax(0,1fr))}}.royal-field label{display:block;font-size:12px;color:#6b7280;margin:0 0 6px}.royal-field input,.royal-field select{width:100%;padding:10px 12px;border:1px solid #d9dee5;border-radius:10px;font-size:14px}.royal-table{width:100%;border-collapse:separate;border-spacing:0}.royal-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;padding:12px;border-bottom:1px solid #eef2f7;background:#fafbfc}.royal-table td{font-size:14px;color:#1f2937;padding:12px;border-bottom:1px solid #f1f5f9;background:#fff}.royal-table tr:hover td{background:#fafcff}.badge{display:inline-block;padding:4px 8px;border-radius:999px;font-weight:700;font-size:12px}.badge.green{background:#e8f7ee;color:#1b5e20}.badge.amber{background:#fff4e5;color:#92400e}.badge.red{background:#fde8e7;color:#8a1c1c}.kpis{display:grid;grid-gap:12px;gap:12px;margin:0 0 16px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:768px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}.kpi{background:#fff;border:1px solid #eceff3;border-radius:12px;padding:14px 16px;box-shadow:var(--shadow)}.kpi .label{font-size:12px;color:#6b7280}.kpi .value{font-weight:800;font-size:20px;color:#111827}.chart-card{background:#fff;border:1px solid #eceff3;border-radius:12px;padding:12px;box-shadow:var(--shadow)}.chart-title{font-size:16px;font-weight:700;margin-bottom:6px;color:#111827}.chart-sub{font-size:12px;color:#6b7280}.dark .chart-card,.dark .kpi,.dark .royal-card{background:var(--card-bg-dark);border-color:#41464d}.dark .admin-tab{background:#2b2f35;border-color:#3a3f46;color:#cbd5e1}.dark .admin-tab.active{background:var(--primary-color);color:#fff}.dark .royal-field input,.dark .royal-field select{background:#2b2f35;border-color:#3a3f46;color:#e5e7eb}.dark .royal-table th{background:#263140;border-color:#334155;color:#a8b1bb}.dark .royal-table td{background:#1f2937;border-color:#334155;color:#e5e7eb}.dark .kpi .label{color:#a8b1bb}.dark .kpi .value{color:#fff}footer{margin:48px auto 0;padding:20px;max-width:760px;text-align:center;font-size:14px;color:#666;border-top:1px solid rgba(0,0,0,.08)}footer strong{color:var(--primary-color)}.dark footer{color:#bbb;border-top:1px solid hsla(0,0%,100%,.1)}.dark footer strong{color:var(--text-light)}h1.tagline{font-size:2.2rem;letter-spacing:.04em;font-weight:800;color:var(--primary-color);text-transform:uppercase;margin:0 0 20px;line-height:1.2;text-shadow:0 0 10px rgba(25,118,210,.5);transition:all .3s ease}@media (max-width:600px){h1.tagline{font-size:1.4rem;line-height:1.3;letter-spacing:.02em;text-shadow:0 0 6px rgba(25,118,210,.3)}}h1.tagline{opacity:0;animation:fadeInTagline 1.6s ease forwards}@keyframes fadeInTagline{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.logo-royal{opacity:0;filter:drop-shadow(0 0 0 rgba(115,103,240,0));transform:scale(.98);animation:royalLogoFadeIn 2.4s ease-out forwards,royalLogoPulse 6s ease-in-out 2.4s infinite}@keyframes royalLogoFadeIn{0%{opacity:0;transform:scale(.98);filter:drop-shadow(0 0 0 rgba(115,103,240,0))}60%{opacity:1;transform:scale(1);filter:drop-shadow(0 0 18px rgba(115,103,240,.7)) drop-shadow(0 0 32px rgba(69,196,230,.4))}to{opacity:1;filter:drop-shadow(0 0 12px rgba(115,103,240,.6)) drop-shadow(0 0 24px rgba(69,196,230,.3))}}@keyframes royalLogoPulse{0%,to{filter:drop-shadow(0 0 12px rgba(115,103,240,.6)) drop-shadow(0 0 24px rgba(69,196,230,.3));transform:scale(1)}50%{filter:drop-shadow(0 0 20px rgba(115,103,240,.8)) drop-shadow(0 0 36px rgba(69,196,230,.5));transform:scale(1.02)}}h1{text-shadow:0 0 8px rgba(25,118,210,.45);opacity:0;transform:translateY(10px);animation:royalTaglineRise 1.8s ease-out .6s forwards,royalTaglinePulse 7s ease-in-out 3s infinite}@keyframes royalTaglineRise{0%{opacity:0;transform:translateY(10px);text-shadow:0 0 0 rgba(25,118,210,0)}60%{opacity:1;transform:translateY(0);text-shadow:0 0 12px rgba(25,118,210,.65)}to{opacity:1;text-shadow:0 0 8px rgba(25,118,210,.45)}}@keyframes royalTaglinePulse{0%,to{text-shadow:0 0 8px rgba(25,118,210,.45)}50%{text-shadow:0 0 14px rgba(25,118,210,.65)}}@media (max-width:480px){.logo-royal{transform:scale(.95)}h1{font-size:1.4rem;line-height:1.3;text-shadow:0 0 5px rgba(25,118,210,.4)}}