:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1d2635;background:#f4f7fb}*{box-sizing:border-box}body{margin:0;background:#f4f7fb;overflow-x:hidden}a{color:inherit}button,input,textarea,select{font:inherit}button{border:1px solid transparent;border-radius:10px;padding:.72rem 1rem;background:#1890ff;color:#fff;cursor:pointer;font-weight:700;box-shadow:0 1px 2px #00000014}button:hover{background:#096dd9}button:disabled{cursor:not-allowed;opacity:.6}input,textarea,select{width:100%;border:1px solid #d9e2ec;border-radius:10px;padding:.85rem 1rem;background:#fff;color:#1d2635;box-shadow:inset 0 1px 1px #00000008}textarea{min-height:110px;resize:vertical}.app-shell{min-height:100vh;display:flex;flex-direction:column}.site-header{position:sticky;top:0;z-index:120;display:flex;align-items:center;gap:1rem;padding:.85rem clamp(1rem,4vw,2rem);background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #e6edf5;box-shadow:0 1px 3px #0000000f}.header-left{display:flex;align-items:center;gap:.85rem;min-width:0;flex:1}.brand{text-decoration:none;display:grid;line-height:1;margin-right:auto}.brand span{font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;color:#1890ff}.brand strong{font-size:1.2rem;color:#1d2635}.menu-trigger{display:none;width:44px;height:44px;border-radius:10px;padding:.72rem;background:#f4f7fb;color:#1d2635;flex-direction:column;justify-content:center;gap:.25rem;border-color:#d9e2ec}.menu-trigger span{display:block;width:100%;height:2px;border-radius:99px;background:currentColor}.desktop-nav{display:flex;flex-wrap:wrap;gap:.35rem}.desktop-nav a{text-decoration:none;padding:.62rem .9rem;border-radius:10px;color:#5b6b7f}.desktop-nav a.active,.desktop-nav a:hover{background:#e8f4ff;color:#096dd9}.header-actions{display:flex;align-items:center;gap:.5rem}.admin-button{background:#fa8c16}.user-trigger{width:44px;height:44px;display:inline-grid;place-items:center;padding:0;background:#f4f7fb;color:#1d2635;border-color:#d9e2ec}.user-trigger:hover{background:#e8f4ff}.user-glyph{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-drawer{position:fixed;inset:0 auto 0 0;z-index:220;width:min(84vw,320px);padding:5rem 1rem 1rem;display:grid;gap:.55rem;background:#fffffffa;border-right:1px solid #e6edf5;box-shadow:8px 0 24px #00000012;transform:translate(-102%);transition:transform .18s ease}.mobile-drawer.open{transform:translate(0)}.mobile-drawer a{text-decoration:none;padding:.9rem 1rem;border-radius:10px;color:#5b6b7f;background:#f8fafc;border:1px solid #edf2f7}.mobile-drawer a.active{background:#e8f4ff;color:#096dd9}.drawer-cta{background:#1890ff!important;color:#fff!important;font-weight:800;border-color:transparent}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;background:#00000040}.auth-popover{position:fixed;right:clamp(1rem,4vw,2rem);top:4.6rem;z-index:230;width:min(92vw,320px);padding:1rem;border:1px solid #e6edf5;border-radius:14px;background:#fffffffa;box-shadow:0 8px 24px #00000014;display:grid;gap:.8rem}.auth-title{margin:0;font-weight:800;color:#1d2635}.auth-note{margin:0;color:#5b6b7f;font-size:.95rem}.auth-summary{display:grid;gap:.15rem}.auth-summary span{overflow-wrap:anywhere;color:#5b6b7f}main{width:min(1180px,calc(100% - 2rem));margin:0 auto;flex:1}.hero{margin:1.5rem 0 1rem;min-height:220px;border-radius:16px;padding:clamp(1.5rem,5vw,3rem);color:#1d2635;display:flex;align-items:end;background:linear-gradient(135deg,#fff,#f8fbff);background-size:cover;background-position:center;border:1px solid #e6edf5;box-shadow:0 8px 24px #0000000f;overflow:hidden;position:relative}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 0 62%,#e8f4ff 100%);pointer-events:none}.hero h1{font-size:clamp(2rem,7vw,4.6rem);margin:.2rem 0;letter-spacing:-.04em}.hero p{max-width:660px;font-size:1.05rem;color:#5b6b7f}.eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:.78rem!important;opacity:.82}.version-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1.25rem;padding:1rem 1.15rem;border:1px solid #e6edf5;border-radius:14px;background:#fff;box-shadow:0 8px 24px #0000000f}.version-banner p{margin:.3rem 0 .5rem}.version-banner ul{margin:0;padding-left:1.15rem;color:#5b6b7f}.content-card,.calendar-card,.reserve-card{background:#fff;border:1px solid #e6edf5;border-radius:16px;box-shadow:0 8px 24px #0000000f;padding:clamp(1.25rem,3vw,2.2rem);margin-bottom:1.25rem}.content-card{font-size:1.02rem;line-height:1.7}.content-card h2,.content-card h3{color:#1d2635}.content-card img{max-width:100%;border-radius:12px}.reserve-cta{display:inline-flex;margin:0 0 1.25rem;padding:.85rem 1.2rem;border-radius:10px;background:#1890ff;color:#fff;text-decoration:none;font-weight:800;box-shadow:0 8px 24px #00000012}.reservation-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:1.25rem;align-items:start}.calendar-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.calendar-head h2{margin:0;text-transform:capitalize;color:#1d2635}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.45rem}.calendar-grid.labels{margin:1rem 0 .45rem;color:#5b6b7f;font-weight:700;text-align:center}.day{min-height:64px;border-radius:12px;display:grid;place-items:center;background:#f8fafc;border:1px solid #e6edf5;font-weight:700;color:#1d2635;padding:0}.day.free:not(.muted):hover{background:#e8f4ff;color:#096dd9;transform:translateY(-1px)}.day.muted{opacity:.35}.day.pending{background:#fff7e6;border-color:#ffd591;color:#d46b08}.day.confirmed{background:#1890ff;border-color:#1890ff;color:#fff}.day.cancelled,.day.rejected{opacity:.45}.legend{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;color:#5b6b7f}.dot{width:12px;height:12px;display:inline-block;border-radius:99px;background:#f8fafc;border:1px solid #e6edf5}.dot.pending{background:#fff7e6;border-color:#ffd591}.dot.confirmed{background:#1890ff}.stack-form{display:grid;gap:.8rem}.stack-form h2{margin:0;color:#1d2635}.notice{background:#f8fafc;color:#1d2635;padding:.75rem 1rem;border-radius:12px;margin:0;border:1px solid #e6edf5}.secondary-button{background:#f8fafc;color:#1d2635;border-color:#d9e2ec}.secondary-button:hover{background:#e8f4ff}.guest-summary{display:grid;gap:.35rem;padding:1rem;border-radius:12px;background:#f8fafc;border:1px solid #e6edf5}.guest-summary p{margin:.4rem 0 0}.rules{margin:1rem 0;padding:1rem;border-radius:12px;background:#f8fafc;border:1px solid #e6edf5}.rules p{margin:.35rem 0}.mini-row,.table-row{display:flex;align-items:center;gap:.7rem;justify-content:space-between;padding:.75rem;border-radius:12px;background:#fff;border:1px solid #e6edf5;margin:.5rem 0;box-shadow:0 1px 2px #00000008}.mini-row span,.table-row span{min-width:0;overflow-wrap:anywhere}.edit-reservation-form{margin-top:1rem}.edit-note{grid-column:1 / -1}.edit-actions{display:flex;gap:.5rem;grid-column:1 / -1;flex-wrap:wrap}.admin-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#00000040;padding:1rem;display:grid;place-items:center}.admin-panel{width:min(1180px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:16px;border:1px solid #e6edf5;box-shadow:0 8px 24px #00000014;padding:1.25rem}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.tabs button,.admin-grid aside button{background:#f8fafc;color:#5b6b7f;border-color:#e6edf5}.tabs button.active,.admin-grid aside button.active{background:#1890ff;color:#fff}.admin-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:1rem}.admin-grid aside{display:grid;align-content:start;gap:.5rem}.editor-area{display:grid;gap:.75rem;min-width:0}.markdown-editor{border:1px solid #e6edf5;border-radius:12px;background:#fff;overflow:hidden}.toolbar{display:flex;flex-wrap:wrap;gap:.35rem;padding:.55rem;border-bottom:1px solid #e6edf5;background:#f8fafc}.toolbar button{padding:.45rem .7rem;background:#f8fafc;color:#1d2635;border-color:#e6edf5}.tiptap-editor-content{min-height:320px;padding:1rem;outline:none;line-height:1.65}.tiptap-editor-content img{max-width:100%;border-radius:12px}.table-list{display:grid;gap:.5rem}.table-row{text-decoration:none;flex-wrap:wrap}.inline-admin-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-bottom:1rem;padding:1rem;border:1px solid #e6edf5;border-radius:12px;background:#fff}.inline-admin-form h3{grid-column:1 / -1;margin:0;color:#1d2635}.inline-admin-form textarea{grid-column:1 / -1;min-height:82px}.payment-analytics{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0;padding:1rem;border-radius:12px;background:linear-gradient(135deg,#1890ff,#69c0ff);color:#fff}.payment-analytics strong{font-size:clamp(1.5rem,5vw,2.4rem)}.filters-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin-bottom:.75rem}.backup-panel{display:grid;gap:1rem}.backup-schedule-stack{display:grid;gap:.75rem;padding:1rem;border:1px solid #e6edf5;border-radius:12px;background:#fff}.backup-schedule-stack label{display:grid;gap:.35rem}.backup-schedule-stack span{color:#5b6b7f;font-size:.9rem}.backup-actions{display:flex;gap:.5rem;flex-wrap:wrap}.empty-card{padding:1rem;border:1px dashed #d9e2ec;border-radius:12px;background:#f8fafc;color:#5b6b7f}.wide-table{overflow-x:auto;border:1px solid #e6edf5;border-radius:12px;background:#fff}.wide-table table{width:100%;border-collapse:collapse;min-width:820px}.wide-table th,.wide-table td{text-align:left;padding:.75rem;border-bottom:1px solid #edf2f7;vertical-align:top}.wide-table th{color:#1d2635;background:#f8fafc;position:sticky;top:0}footer{text-align:center;color:#5b6b7f;padding:2rem}@media (max-width: 820px){.site-header{justify-content:space-between;align-items:center;gap:.65rem}.header-left{min-width:0;flex:1 1 auto}.brand{margin-right:0}.desktop-nav{display:none}.menu-trigger{display:inline-flex}.header-actions{margin-left:auto;flex:0 0 auto}.auth-popover{right:1rem;top:4.2rem}.version-banner{flex-direction:column;align-items:stretch}.reservation-layout,.admin-grid,.inline-admin-form,.filters-row{grid-template-columns:1fr}.day{min-height:44px;border-radius:12px}.mini-row,.table-row{align-items:flex-start;flex-direction:column}.edit-actions{flex-direction:column}}
