@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&family=Playfair+Display:wght@600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=Inter:wght@400;500;600&display=swap";.navbar{background:#fff;min-height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid #e5d5c5;width:100%;box-sizing:border-box;position:sticky;top:0;z-index:1000;transition:box-shadow .2s ease}.navbar.scrolled{box-shadow:0 2px 12px #2c2c2c14}.nav-section{display:flex;align-items:center;flex:1}.nav-left{justify-content:flex-start}.nav-center{justify-content:center}.nav-right{justify-content:flex-end}.nav-brand,.nav-link,.auth-link,.admin-toggle,.logout-btn,.mobile-menu-toggle,.admin-dropdown-link{min-height:44px;display:inline-flex;align-items:center}.nav-brand{font-family:Playfair Display,serif;text-decoration:none;color:#5c1a2e;font-weight:700;font-size:22px;letter-spacing:.2px}.nav-links,.auth-links{display:flex;align-items:center;gap:10px;width:auto}.nav-link,.auth-link,.admin-toggle,.admin-dropdown-link,.logout-btn{font-family:Inter,sans-serif;color:#2c2c2c;font-size:15px;text-decoration:none;padding:8px 10px;border:none;background:transparent;cursor:pointer}.nav-link,.auth-link,.admin-dropdown-link,.admin-toggle{border-bottom:2px solid transparent;transition:color .2s ease,border-color .2s ease}.nav-link:hover,.auth-link:hover,.admin-dropdown-link:hover,.admin-toggle:hover{color:#5c1a2e;border-bottom-color:#5c1a2e}.nav-link.active,.auth-link.active,.admin-dropdown-link.active,.admin-toggle.active{color:#5c1a2e;font-weight:700;border-bottom-color:#5c1a2e}.auth-link.cta,.logout-btn{background:#5c1a2e;color:#fff;border-radius:8px;padding:8px 20px;border-bottom:none;font-weight:500;width:auto;flex:0 0 auto;align-self:center}.auth-link.cta:hover,.logout-btn:hover{background:#4a1525;color:#fff}.user-section,.user-display{display:flex;align-items:center;gap:10px}.admin-container{position:relative}.admin-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid #e5d5c5;border-radius:10px;min-width:180px;box-shadow:0 8px 24px #2c2c2c1f;z-index:1001;padding:6px 8px}.admin-dropdown-link{width:100%;justify-content:flex-start}.user-avatar{position:relative}.user-initial{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#f7f3ef;color:#5c1a2e;font-family:Inter,sans-serif;font-weight:700;border:1px solid #e5d5c5}.admin-badge{position:absolute;right:-6px;bottom:-4px;font-size:11px}.user-name{max-width:110px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-family:Inter,sans-serif;color:#2c2c2c}.mobile-menu-toggle{display:none;justify-content:center;min-width:44px;border:1px solid #e5d5c5;border-radius:8px;background:#fff;color:#2c2c2c;font-size:20px}.mobile-overlay{position:fixed;inset:72px 0 0;border:none;background:#2c2c2c33;z-index:1098}.mobile-menu{position:fixed;top:72px;left:0;right:0;transform:translateY(-110%);transition:transform .25s ease;z-index:1099;background:#fff;border-bottom:1px solid #e5d5c5;box-shadow:0 8px 24px #2c2c2c1a;overflow-y:auto;padding:16px 20px}.mobile-menu.open{transform:translateY(0)}.mobile-links,.mobile-auth-links{display:grid;gap:8px;align-items:center}.mobile-logout{justify-content:center}@media(max-width:767px){.desktop-only{display:none}.mobile-menu-toggle{display:inline-flex}}.app-shell{display:flex;flex-direction:column;min-height:100vh;width:100%}.app-main{flex:1;width:100%;overflow-x:hidden}.route-loading,.not-found{min-height:40vh;display:grid;place-items:center;font-size:1rem;padding:1rem}*,*:before,*:after{box-sizing:border-box}body{margin:0;background-color:#faf6f0}*{box-sizing:border-box}html,body,#root{min-height:100%;width:100%;margin:0;padding:0}body{font-family:Inter,sans-serif;font-size:16px;line-height:1.5;overflow-x:hidden}img,picture,video,canvas,svg{max-width:100%;height:auto}button,a,[role=button],input[type=checkbox],input[type=radio]{cursor:pointer}input,select,textarea,button{font:inherit;font-size:16px}h1{font-size:clamp(1.75rem,5vw,2.75rem)}h2{font-size:clamp(1.5rem,4vw,2.25rem)}h3{font-size:clamp(1.25rem,3vw,1.75rem)}
