a{text-decoration:none;color:inherit}:root{--primary: #7a9c33;--primary-light: #8ba848;--primary-hover: #69862b;--secondary: #d4a373;--accent: #ff5252;--success: #7a9c33;--bg-main: #0e120e;--bg-surface: #131913;--bg-card: #161c16;--bg-elevated: #1e2a1e;--bg-interactive: #243524;--text-main: #ffffff;--text-muted: #a3b1a3;--border: #2d4a2d;--border-focus: var(--primary);--available-bg: #222e22;--booked-bg: #2d1a1a;--disabled-bg: #111611;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 6px;--radius-full: 50%;--input-height: 44px;--button-height: 44px;--button-height-sm: 36px;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-main);color:var(--text-main);line-height:1.5}html{scroll-behavior:smooth;scroll-padding-top:96px}.app{max-width:1000px;margin:0 auto;padding:2rem 1rem;min-height:100vh;scrollbar-gutter:stable}.header:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(212,163,115,.2),transparent 40%);pointer-events:none}.header-content{max-width:600px}.header h1{margin:0 0 1rem;font-size:3rem;font-weight:800;letter-spacing:-.025em;text-transform:uppercase}.subtitle{margin:0;opacity:.9;font-size:1.25rem;font-weight:500}.main-content{display:grid;grid-template-columns:1fr;gap:3rem;width:100%;align-items:start;justify-items:center}@media(min-width:900px){.main-content{display:block;padding-top:2rem}.calendar-container,.timeslots-panel{height:100%;display:flex;flex-direction:column}}.not-available-message,.expired-message{display:flex;align-items:center;justify-content:center;min-height:200px}.not-available-message{background:var(--bg-surface);color:#5c6b5c;padding:3rem 2rem;border-radius:var(--radius-sm);text-align:center;border:1px solid var(--border)}.not-available-message p{margin:0;font-size:1.1rem;font-weight:500}.expired-message{background:var(--bg-surface);color:#5c6b5c;padding:3rem 2rem;border-radius:var(--radius-sm);text-align:center;border:1px solid var(--border)}.expired-message p{margin:0;font-size:1.1rem;font-weight:500}.main-content{padding-top:4rem;padding-bottom:4rem}.calendar-layout{display:grid;grid-template-columns:400px 1fr;gap:2rem;max-width:1200px;margin:0 auto;align-items:start;width:100%}.calendar-section{margin:4rem auto;width:100%}.about-section{max-width:1200px;margin:4rem auto;padding:0;width:100%}.about-content{display:grid;grid-template-columns:1fr 1.5fr;gap:2rem;align-items:stretch}.company-info{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:2rem;display:flex;flex-direction:column;box-shadow:0 4px 6px -1px #0000001a}.company-name{font-size:1.5rem;font-weight:800;color:var(--primary);margin:0 0 1.5rem;text-transform:uppercase;letter-spacing:.02em}.company-details{display:flex;flex-direction:column;gap:1rem}.company-detail{display:flex;align-items:center;gap:.75rem;color:var(--text-muted);font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s}.company-detail svg{color:var(--primary);flex-shrink:0}a.company-detail:hover{color:var(--primary)}a.company-detail:hover svg{color:var(--primary-light)}@media(max-width:900px){.header h1{font-size:2rem}.header{padding:2.5rem 1.5rem}.calendar-container{width:100%;padding:1.25rem;max-width:100%}.calendar-layout,.about-content{grid-template-columns:1fr}.company-info{padding:1.5rem}.company-name{font-size:1.25rem}}@media(min-width:901px){.main-content{align-items:start}.calendar-container,.timeslots-panel{align-self:start}}@media(max-width:375px){.calendar-container{padding:var(--spacing-md)}}.calendar-container{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--spacing-xl);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;height:fit-content;width:400px;flex-shrink:0}@media(max-width:900px){.calendar-container{width:100%;max-width:400px;margin:0 auto}}.custom-calendar{width:100%;min-width:0}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.calendar-header h3{margin:0;font-size:1.25rem;font-weight:700;color:var(--primary)}.nav-btn{background:var(--bg-interactive);border:1px solid var(--border);border-radius:var(--radius-sm);width:var(--button-height-sm);height:var(--button-height-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted);font-size:1.25rem}.nav-btn svg{display:block}.nav-btn:active{background:var(--primary-light);color:#fff;border-color:var(--primary-light)}.weekdays-row{display:flex;gap:.25rem;margin-bottom:1rem;border-bottom:1px solid var(--border);padding-bottom:.5rem}.weekday-label{flex:1;text-align:center;font-weight:700;color:var(--text-muted);text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.days-grid{display:flex;flex-direction:column;gap:.25rem}.week-row{display:flex;gap:.25rem}.tile{flex:1;aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);--tile-border-color: var(--border);border:1px solid var(--tile-border-color);font-weight:600;font-size:.95rem;cursor:pointer;position:relative;background:var(--bg-elevated)}.tile.other-month{opacity:.3;background:var(--bg-elevated);color:#6b705c;--tile-border-color: var(--border);border-color:var(--tile-border-color);font-weight:400}.tile.past-date{background:var(--bg-elevated);color:#5c6b5c;--tile-border-color: var(--border);border-color:var(--tile-border-color);opacity:.5}.tile.weekday-disabled{background:var(--bg-elevated);color:#5c6b5c;--tile-border-color: var(--border);border-color:var(--tile-border-color);opacity:.6}.tile.today{color:var(--primary);--tile-border-color: var(--border);border-color:var(--tile-border-color)}.tile.available{background:var(--bg-elevated);color:var(--success);--tile-border-color: var(--success);border-color:var(--tile-border-color)}.tile.fully-booked{background:var(--booked-bg);color:var(--accent);--tile-border-color: var(--accent);border-color:var(--tile-border-color)}.tile.selected-date{z-index:1;font-weight:800}.tile.selected-date:after{content:"";position:absolute;bottom:4px;width:4px;height:4px;background:var(--tile-border-color);border-radius:50%}.legend{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;color:var(--text-muted)}.color-box{width:12px;height:12px;border-radius:var(--radius-sm)}.legend-item.available .color-box{background:var(--available-bg);border:1.5px solid var(--success)}.legend-item.fully-booked .color-box{background:var(--booked-bg);border:1.5px solid var(--accent)}.legend-item.selected-date .color-box{background:var(--primary)}.legend-item.weekday-disabled .color-box{background:var(--bg-elevated);border:1.5px solid var(--border);opacity:.6}@media(min-width:900px){.calendar-container{height:100%;display:flex;flex-direction:column}}@media(max-width:900px){.calendar-container{width:100%;padding:1.25rem;max-width:100%}.legend{grid-template-columns:1fr}}@media(max-width:375px){.calendar-container{padding:1rem}.custom-calendar{min-width:0}.calendar-header{margin-bottom:1rem}.calendar-header h3{font-size:1.1rem}.tile{font-size:.85rem}.weekday-label{font-size:.65rem}.weekdays-row{gap:.15rem;margin-bottom:.75rem}.week-row,.days-grid{gap:.15rem}.nav-btn{width:32px;height:32px;font-size:1.1rem}}@media(min-width:901px){.calendar-container{align-self:start}}.tooltip-wrapper{position:relative;display:inline-block}.tooltip-wrapper.show-tooltip:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);right:0;background:var(--bg-elevated);color:var(--text-muted);padding:.5rem .75rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;white-space:nowrap;border:1px solid var(--border);box-shadow:0 4px 12px #0003;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:100;pointer-events:none}.tooltip-wrapper.show-tooltip:before{content:"";position:absolute;bottom:calc(100% + 2px);right:16px;border:6px solid transparent;border-top-color:var(--border);opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:101;pointer-events:none}.tooltip-wrapper.show-tooltip:hover:after,.tooltip-wrapper.show-tooltip:hover:before{opacity:1;visibility:visible}.tooltip-wrapper.tooltip-hover{cursor:pointer}.tooltip-wrapper.tooltip-hover:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--bg-elevated);color:var(--text-muted);padding:.5rem .75rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;white-space:pre-line;border:1px solid var(--border);box-shadow:0 4px 12px #0003;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:100;pointer-events:none}.tooltip-wrapper.tooltip-hover:before{content:"";position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:var(--border);opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:101;pointer-events:none}.tooltip-wrapper.tooltip-hover:hover:after,.tooltip-wrapper.tooltip-hover:hover:before,.tooltip-wrapper.tooltip-hover.active:after,.tooltip-wrapper.tooltip-hover.active:before{opacity:1;visibility:visible}.section-header{margin:0 auto 2.25rem;text-align:left;border-left:4px solid var(--primary);padding:.75rem 0 .75rem 1.5rem;max-width:1000px;width:100%}.section-header h2{margin:0 0 .5rem;font-size:2rem;color:#fff;text-transform:uppercase;font-weight:800}.section-header p{margin:0;color:var(--text-muted)}@media(max-width:900px){.section-header{padding-left:1.25rem}}.map-container{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;position:relative;min-height:300px;box-shadow:0 4px 6px -1px #0000001a}.tactical-map{width:100%;height:100%;border:none;filter:grayscale(100%) invert(92%) contrast(83%);mix-blend-mode:luminosity;display:block}@media(max-width:900px){.map-container{min-height:250px}}.pricing-section{margin:4rem auto;padding:0;max-width:1200px}.pricing-grid{display:flex;justify-content:space-between;gap:1.5rem}.pricing-card{flex:1;background:var(--bg-card);border:1px solid var(--border);border-radius:2px;padding:1.5rem}.pricing-card.featured{border-color:var(--primary);background:var(--available-bg)}.pricing-header h3{font-size:1.1rem;margin:0 0 1rem;color:var(--text-main);text-transform:uppercase;font-weight:700}.pricing-features p{margin:.5rem 0;color:var(--text-muted);font-size:.9rem}.pricing-features p:last-child{font-size:1.5rem;color:var(--primary);font-weight:700;margin-top:1rem}@media(max-width:900px){.pricing-grid{flex-direction:column;gap:1rem}.pricing-header h3{font-size:.95rem}.pricing-features p{font-size:.85rem}.pricing-features p:last-child{font-size:1.25rem}}.gallery-section{margin:4rem auto;padding:0;max-width:1200px}.instagram-gallery-container{width:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:1.5rem;overflow:hidden;position:relative}.instagram-posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;width:100%}.instagram-post-card{position:relative;overflow:hidden;border-radius:6px;border:1px solid rgba(255,255,255,.06);background:#00000040;box-shadow:0 8px 24px #00000059}.instagram-post-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:#0000001a;mix-blend-mode:multiply}.instagram-post-embed{border:none;border-radius:6px;max-width:100%;min-height:520px;background:var(--bg-card);display:block;filter:brightness(.82) contrast(1.1) saturate(.92);opacity:.96}.instagram-gallery-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.06)}.instagram-gallery-footer-text{color:var(--text-muted);font-size:.95rem;line-height:1.3}.instagram-gallery-footer-link{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.1rem;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:#00000040;color:var(--text-main);text-decoration:none;font-weight:600;transition:transform .15s ease,border-color .15s ease,background .15s ease;white-space:nowrap}.instagram-gallery-footer-link:hover{transform:translateY(-1px);border-color:#7a9c3380;background:#7a9c331f}.instagram-gallery-footer-link:active{transform:translateY(0)}@media(max-width:900px){.gallery-section{margin:3rem auto;padding:0}.instagram-gallery-container{padding:1rem}.instagram-post-embed{min-height:480px}.instagram-gallery-footer{flex-direction:column;align-items:flex-start}}@media(max-width:480px){.instagram-gallery-container{padding:.5rem}.instagram-posts-grid{grid-template-columns:1fr}.instagram-post-embed{min-height:440px}}.gallery-directories-wrapper{position:relative;display:flex;align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:.75rem;gap:.5rem}.gallery-directories{display:flex;flex-wrap:nowrap;gap:.625rem;padding:0;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;flex:1}.gallery-directories::-webkit-scrollbar{display:none}.gallery-dir-nav-btn{flex-shrink:0;width:28px;height:28px;background:transparent;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:5;padding:0;opacity:.6}.gallery-dir-nav-btn:hover{color:var(--text-main);opacity:1;background:#7a9c331a}.gallery-dir-nav-btn:active{opacity:.8}.gallery-dir-nav-prev{margin-right:.5rem}.gallery-dir-nav-next{margin-left:.5rem}.gallery-directory-btn{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;color:var(--text-main);cursor:pointer;transition:all .2s ease;font-size:.95rem;font-weight:500;text-transform:none;white-space:nowrap;flex-shrink:0;position:relative}.gallery-directory-btn:hover{border-color:var(--primary-light);background:var(--available-bg);transform:translateY(-1px);box-shadow:0 2px 8px #7a9c3326}.gallery-directory-btn.active{background:var(--primary);border-color:var(--primary);color:var(--bg-main);font-weight:600;box-shadow:0 2px 12px #7a9c334d}.gallery-directory-btn.active:hover{background:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 16px #7a9c3366}.directory-count{font-size:.875rem;opacity:.85;font-weight:400;margin-left:.25rem}.gallery-directory-btn.active .directory-count{opacity:.9;font-weight:500}.gallery-main{position:relative;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border);border-radius:2px;padding:1rem;min-height:500px}.gallery-image-wrapper{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:2px}.gallery-main-image{width:100%;height:auto;max-height:600px;object-fit:contain;border-radius:2px}.gallery-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:#1a1c16cc;border:1px solid var(--border);color:var(--text-main);width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:10;padding:0}.gallery-nav-btn:hover{background:var(--primary);border-color:var(--primary);transform:translateY(-50%) scale(1.1)}.gallery-nav-btn:active{transform:translateY(-50%) scale(.95)}.gallery-nav-btn:disabled{opacity:.3;cursor:not-allowed}.gallery-nav-btn:disabled:hover{background:#1a1c16cc;border-color:var(--border);transform:translateY(-50%)}.gallery-nav-prev{left:1rem}.gallery-nav-next{right:1rem}.gallery-empty{display:flex;align-items:center;justify-content:center;min-height:300px;color:var(--text-muted);font-size:1.1rem}.gallery-thumbnails{display:flex;flex-wrap:nowrap;gap:.75rem;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;max-width:100%;position:relative}.gallery-thumbnails::-webkit-scrollbar{display:none}.gallery-thumbnail{aspect-ratio:4/3;width:80px;min-width:80px;flex-shrink:0;border:2px solid var(--border);border-radius:2px;overflow:hidden;cursor:pointer;background:var(--bg-card);padding:0;transition:all .2s ease;position:relative}.gallery-thumbnail img{width:100%;height:100%;object-fit:cover;display:block}.gallery-thumbnail:hover{border-color:var(--primary-light);transform:scale(1.05)}.gallery-thumbnail.active{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary)}.gallery-thumbnail.active:after{content:"";position:absolute;inset:0;background:#7a9c3333;pointer-events:none}@media(max-width:900px){.gallery-section{margin:3rem auto;padding:.5rem}.gallery-directories-wrapper{padding:.25rem}.gallery-directories{padding:.5rem;gap:.5rem}.gallery-directory-btn{padding:.7rem 1.2rem;font-size:.875rem;gap:.4rem;border-radius:5px}.directory-count{font-size:.8rem}.gallery-dir-nav-btn{width:24px;height:24px}.gallery-dir-nav-btn svg{width:14px;height:14px}.gallery-main{min-height:300px;padding:.5rem}.gallery-main-image{max-height:400px}.gallery-nav-btn{width:40px;height:40px}.gallery-nav-prev{left:.5rem}.gallery-nav-next{right:.5rem}.gallery-thumbnails{gap:.5rem}.gallery-thumbnail{width:60px;min-width:60px}}@media(max-width:480px){.gallery-main{min-height:250px}.gallery-main-image{max-height:300px}.gallery-nav-btn{width:36px;height:36px}.gallery-thumbnail{width:50px;min-width:50px}}.navbar{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 3rem;background:#0e120ed9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:fixed;top:0;left:0;right:0;z-index:1000;border-bottom:1px solid rgba(255,255,255,.05)}.nav-logo{display:flex;align-items:center;gap:1rem}.logo-icon{font-size:2.5rem}.logo-text{font-weight:800;color:#fff;line-height:1.1;font-size:1.1rem;text-transform:uppercase;letter-spacing:.05em}.nav-links{display:flex;align-items:center;gap:2.5rem}.nav-link{color:#a3b1a3;text-decoration:none;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.05em;transition:color .2s}.nav-link:hover,.nav-link.active{color:var(--primary)}.nav-link.cta{background:transparent;border:1px solid var(--primary);padding:var(--spacing-sm) 1.25rem;border-radius:var(--radius-sm);color:var(--primary)}.nav-link.cta:hover{background:var(--primary);color:#fff}.mobile-menu-btn{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer}.hero-section{height:90vh;min-height:600px;background:url(/header.jpeg) no-repeat center center/cover;position:relative;display:flex;align-items:center;padding:0 4rem;margin-top:0;margin-bottom:0}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#0e120ee6,#0e120e99,#0e120e33);z-index:1}.hero-content{position:relative;z-index:2;max-width:600px}.hero-subtitle{display:block;color:var(--primary);font-weight:700;letter-spacing:.15em;margin-bottom:.5rem;opacity:.9}.hero-section h1{font-size:4.5rem;font-weight:900;color:#fff;line-height:1;margin:0 0 1.5rem;text-transform:uppercase}.hero-description{color:#a3b1a3;font-size:1.1rem;line-height:1.6;margin-bottom:2.5rem;max-width:480px}.hero-cta-group{display:flex;gap:1rem;flex-wrap:wrap}.hero-cta{background:var(--primary);color:#fff;border:none;padding:var(--spacing-md) 2.5rem;font-size:1rem;font-weight:700;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.05em;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none}.hero-cta:hover{background:var(--primary-hover)}.hero-cta-secondary{background:transparent;border:2px solid var(--primary);color:var(--primary)}.hero-cta-secondary:hover{background:var(--primary);color:#fff}.hero-cta-secondary svg{flex-shrink:0}@media(max-width:900px){.navbar{padding:1rem}.nav-links{display:none;position:fixed;top:80px;left:0;right:0;background:var(--bg-surface);flex-direction:column;gap:0;padding:var(--spacing-md) 0;border-bottom:1px solid var(--border);z-index:999}.nav-links.mobile-open{display:flex}.nav-link{padding:1rem 1.5rem;width:100%;text-align:left;border-bottom:1px solid var(--border)}.nav-link.cta{margin:.5rem 1rem;width:calc(100% - 2rem);text-align:center}.mobile-menu-btn{display:block}.hero-section{padding:0 1.5rem;justify-content:center;text-align:center}.hero-overlay{background:#0e120eb3}.hero-section h1{font-size:2.5rem}.hero-description{margin-left:auto;margin-right:auto}.hero-cta-group{flex-direction:column;align-items:center}.hero-cta{width:100%;max-width:280px}}.weather-info{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:var(--bg-surface);border-radius:var(--radius-sm);border:1px solid var(--border)}.weather-main{display:flex;align-items:center;gap:.75rem}.weather-icon{font-size:2rem;line-height:1}.weather-details{display:flex;flex-direction:column;gap:.25rem}.weather-temp{font-size:1.25rem;font-weight:700;color:var(--primary);line-height:1}.weather-extra{display:flex;align-items:center;gap:.75rem;padding-left:1rem;border-left:1px solid var(--border)}.weather-stat{display:flex;align-items:center;gap:.25rem;font-size:.8rem;color:var(--text-muted)}.weather-stat svg{color:var(--text-muted);opacity:.7}.weather-aqi{gap:.35rem}.weather-skeleton .skeleton-icon{display:block;width:24px;height:24px;background:var(--border);border-radius:var(--radius-sm);animation:skeleton-pulse 1.5s ease-in-out infinite}.weather-skeleton .skeleton-text{display:block;background:var(--border);border-radius:3px;animation:skeleton-pulse 1.5s ease-in-out infinite}.weather-skeleton .skeleton-temp{width:2.5rem;height:1.25rem}.weather-skeleton .skeleton-extra{width:3.5rem;height:.8rem}.weather-loading{padding:.5rem 1rem;color:var(--text-muted);font-size:.9rem;font-style:italic}.weather-error{padding:.5rem 1rem;color:var(--text-muted);font-size:.85rem}.mobile-weather-section{padding:1rem 1.25rem;margin-top:0;background:var(--bg-elevated);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.mobile-weather{font-size:.9rem}.mobile-weather .weather-info{flex-direction:column;align-items:flex-start;gap:.75rem}.mobile-weather .weather-extra{padding-left:0;border-left:none;padding-top:.5rem;border-top:1px solid var(--border);width:100%}.mobile-weather .weather-icon{font-size:1.5rem}.mobile-weather .weather-temp{font-size:1.1rem}.mobile-weather .weather-stat{font-size:.75rem}.timeslots-panel{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--spacing-xl);box-shadow:0 4px 6px -1px #0000001a;display:flex;flex-direction:column;width:100%;overflow-x:hidden;overflow-y:auto}.panel-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--bg-main)}.panel-header-top{display:flex;flex-direction:column;gap:1rem}.panel-header h2{margin:0;font-size:1.75rem;font-weight:800;color:var(--primary)}.timeslot-skeleton{cursor:default!important;pointer-events:none}.timeslot-skeleton .timeslot-content{flex-direction:column;align-items:flex-start;justify-content:center}.skeleton-content-inner{display:flex;flex-direction:column;gap:.5rem;width:100%}.skeleton-block{display:block;background:var(--border);border-radius:4px;animation:skeleton-pulse 1.5s ease-in-out infinite}.skeleton-time-label{width:3rem;height:1.25rem}.skeleton-text-line{width:60%;height:.875rem}.skeleton-text-short{width:35%;height:.75rem}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.7}}.panel-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--text-muted);min-height:400px}.placeholder-icon{font-size:4rem;margin-bottom:1.5rem;opacity:.5}.panel-placeholder h3{font-size:1.5rem;margin:0 0 .75rem;color:var(--primary)}.panel-placeholder p{margin:0;max-width:250px;font-size:1rem;line-height:1.6}.timeslots-grid{display:flex;flex-direction:column;gap:.75rem;margin-bottom:0}.timeslot-btn{padding:0;border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;display:flex;align-items:stretch;background:var(--bg-interactive);min-height:80px;overflow:hidden;text-align:left;width:100%}.timeslot-time{background:var(--bg-surface);padding:var(--spacing-md);display:flex;align-items:center;justify-content:center;border-right:1px solid var(--border);min-width:90px}.timeslot-content{flex:1;padding:.75rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);background:var(--bg-surface)}.slot-main-info{display:flex;flex-direction:column;gap:.25rem}.slot-title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.badges-row{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.game-name-label{font-size:1rem;font-weight:700;color:#fff}.participants-summary{display:flex;align-items:center;gap:1rem}.participant-avatars{display:flex;align-items:center}.participant-avatar{width:24px;height:24px;border-radius:50%;background:var(--primary-light);color:#fff;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;border:1px solid white;margin-left:-8px}.participant-avatar:first-child{margin-left:0}.participant-avatar.more{background:var(--border);color:var(--text-muted)}.capacity-info{font-size:.75rem;font-weight:600;color:var(--text-muted)}.slot-status{display:flex;align-items:center}.status-tag{padding:4px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.status-tag.join,.status-tag.book{background:var(--available-bg);color:#a3e635;border:1px solid #4d7c0f}.status-tag.full{background:#450a0a;color:#fca5a5;border:1px solid #7f1d1d;font-size:.6rem;padding:2px 6px;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em}.slot-available{display:flex;flex-direction:column}.availability-text{font-size:.95rem;font-weight:600;color:var(--success)}.action-hint{font-size:.75rem;color:var(--text-muted)}.timeslot-btn.available{border-color:var(--success);background:var(--available-bg)}.timeslot-btn.available .timeslot-time,.timeslot-btn.available .timeslot-content{background:var(--available-bg)}.timeslot-btn.available:hover{border-color:var(--primary);background:var(--bg-elevated)}.timeslot-btn.joinable{border-color:var(--success);background:var(--available-bg)}.timeslot-btn.joinable .timeslot-time,.timeslot-btn.joinable .timeslot-content{background:var(--available-bg)}.timeslot-btn.booked{opacity:.6;border-color:var(--border)}.timeslot-btn.booked .timeslot-time{background:var(--bg-card)}.timeslot-btn.booked .time-label{color:var(--text-muted)}.timeslot-btn.booked .timeslot-content{background:var(--bg-card)}.timeslot-btn.booked .game-name-label{color:var(--text-muted)}.timeslot-btn.selected{border-color:var(--primary);background:var(--available-bg);transform:translate(4px);box-shadow:-4px 0 0 var(--primary);opacity:1}.timeslot-btn.selected .timeslot-time{background:var(--primary);border-right-color:var(--primary);border-bottom-color:var(--primary)}@media(max-width:900px){.timeslot-btn.selected{transform:none;box-shadow:0 2px 8px #2d5a2726}}.timeslot-btn.selected .time-label,.timeslot-btn.selected .game-name-label{color:#fff}.game-type-badge{padding:2px 6px;border-radius:var(--radius-sm);font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.game-type-badge.public{background:#112d2d;color:#4fd1c5;border:1px solid #285e61}.game-type-badge.private{background:#2d2316;color:#f6ad55;border:1px solid #7b341e}.timeslot-btn.selected .game-type-badge.public{background:#112d2d;color:#4fd1c5;border-color:#285e61}.timeslot-btn.selected .game-type-badge.private{background:#2d2316;color:#f6ad55;border-color:#7b341e}.participants-list{display:flex;flex-wrap:wrap;gap:4px;justify-content:center}.participant-tag{background:var(--bg-elevated);color:var(--text-muted);font-size:.65rem;padding:2px 6px;border-radius:var(--radius-sm);border:1px solid var(--border)}.timeslot-btn.selected .participant-tag{background:var(--bg-elevated);color:var(--text-muted);border-color:var(--border)}.participant-tag.more{font-weight:700;background:var(--available-bg);color:var(--primary);cursor:pointer}.timeslot-btn.selected .participant-tag.more{background:var(--available-bg);color:var(--primary);border-color:var(--border)}.participant-tag.more:active{transform:scale(.95);background:var(--border)}.capacity{font-size:.75rem;font-weight:700;color:var(--text-muted);margin-top:auto}.timeslot-btn:active:not(.booked){background:var(--bg-elevated)}.time-label{font-size:1.1rem;font-weight:800;color:var(--primary)}.availability,.booked-name{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.booked-name{color:var(--accent)}.slot-header{display:flex;flex-direction:column;align-items:center;gap:.25rem;margin-bottom:.25rem}.mobile-modal-overlay{position:fixed;inset:0;background:var(--bg-surface);z-index:2000;display:flex;flex-direction:column;overflow:hidden;height:100dvh;min-height:-webkit-fill-available}.mobile-modal-container{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden;border:none}.mobile-modal-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) 1.25rem;padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border);background:var(--bg-interactive);position:sticky;top:0;z-index:10;box-shadow:0 2px 4px #0000000d;min-height:80px;height:80px}.mobile-modal-header h2{margin:0;font-size:1.25rem;font-weight:700;color:var(--primary);flex:1;text-align:center;padding-right:40px}.mobile-close-btn{background:var(--bg-elevated);border:none;color:var(--text-main);cursor:pointer;padding:0;width:var(--button-height-sm);height:var(--button-height-sm);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:all .15s;flex-shrink:0}.mobile-close-btn svg{width:24px;height:24px}.mobile-close-btn:hover{background:var(--bg-interactive);transform:scale(1.05)}.mobile-close-btn:active{background:var(--bg-elevated);transform:scale(.95)}.mobile-modal-content{flex:1;overflow-y:auto;padding:var(--spacing-lg);-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.mobile-booking-content{flex:1;overflow-y:auto;padding:var(--spacing-lg);max-height:none;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.modal-overlay.mobile-modal-overlay{background:var(--bg-surface);z-index:2000!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;align-items:stretch!important;justify-content:flex-start!important;padding:0!important}.modal-container.mobile-modal-container{max-width:100%!important;border-radius:0!important;height:100%!important;display:flex!important;flex-direction:column!important;box-shadow:none!important;width:100%!important;position:relative!important;margin:0!important}@media(max-width:900px){.timeslots-panel{padding:1.5rem}}@media(max-width:900px){.timeslots-grid{gap:.5rem}.timeslot-btn{flex-direction:column;min-height:auto;align-items:stretch}.timeslot-time{min-width:100%;width:100%;padding:.75rem 1rem;border-right:none;border-bottom:1px solid var(--border);justify-content:flex-start}.time-label{font-size:.95rem;font-weight:700}.timeslot-content{padding:1rem;flex-direction:column;align-items:flex-start;gap:.75rem}.slot-main-info{width:100%}.slot-title-row{display:flex;flex-wrap:nowrap;gap:.5rem;margin-bottom:.5rem;align-items:center;width:100%}.game-name-label{font-size:.9rem;font-weight:600;line-height:1.3;word-break:break-word;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0}.badges-row{display:flex;align-items:center;gap:.5rem;flex-shrink:0;margin-left:auto}.status-tag.full{font-size:.55rem;padding:2px 6px;border-radius:var(--radius-sm)}.game-type-badge{font-size:.55rem;padding:2px 6px;flex-shrink:0}.participants-summary{flex-direction:column;align-items:flex-start;gap:.5rem;width:100%}.capacity-info{font-size:.7rem}.slot-status{align-self:flex-end;margin-top:auto}.status-tag.join{font-size:.7rem;padding:4px 10px}.slot-available{width:100%;gap:.25rem}.availability-text{font-size:.85rem}.action-hint{font-size:.7rem}.timeslots-panel,.timeslots-panel.empty{display:none}}@media(min-width:901px){.mobile-modal-overlay{display:none!important}.timeslots-panel{min-height:0;align-self:start}}.warning{background:#3e2727;color:var(--accent);padding:var(--spacing-md);border-radius:var(--radius-sm);text-align:center;margin-bottom:var(--spacing-xl);font-weight:700;border:1px solid #5e3a3a}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.form-header h3{margin:0;color:var(--primary)}.form-subtitle{margin:0 0 1.5rem;font-size:.9rem;color:var(--text-muted);font-weight:500}.type-selector{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.type-btn{padding:var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-interactive);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.type-btn small{font-size:.65rem;color:var(--text-muted);text-align:center}.type-btn strong{font-size:1rem;font-weight:700;color:var(--text-muted)}.type-btn.active{background:var(--available-bg);border-color:var(--primary)}.type-btn.active strong{color:var(--primary)}.type-btn.active small{color:var(--text-muted)}.booking-section{background:var(--bg-surface);padding:var(--spacing-lg);border-radius:var(--radius-sm);border:1px solid var(--border)}.booking-form-modal{background:var(--bg-surface);padding:var(--spacing-lg);border-radius:var(--radius-sm)}.modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:1rem}.modal-container{background:var(--bg-surface);width:100%;max-width:500px;border-radius:var(--radius-md);border:1px solid var(--border);box-shadow:0 20px 25px -5px #00000080,0 10px 10px -5px #0003;overflow:hidden;position:relative}.booking-modal-content{max-height:90vh;overflow-y:auto;padding:1.5rem}.booking-modal-content::-webkit-scrollbar{width:6px}.booking-modal-content::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}.timeslots-panel .booking-modal-content{max-height:none;overflow:visible;padding:0}.timeslots-panel .booking-form-modal{padding:0;background:transparent}.timeslots-panel .participants-details{margin-top:.75rem}.panel-back-row{margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.back-btn{font-size:var(--body-font-size);display:inline-flex;align-items:center;justify-content:center;height:var(--button-height-sm);padding:0 var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-interactive);color:var(--text-muted);font-weight:600;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease,color .15s ease}.back-btn:hover{border-color:#7a9c33a6;background:#7a9c331f;color:var(--text-main)}.back-btn:active{transform:translateY(1px)}.selected-time-label{height:var(--button-height-sm);display:inline-flex;align-items:center;padding:0 .9rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-surface);color:var(--text-muted);font-weight:700;letter-spacing:.02em;white-space:nowrap}.game-name-label{font-size:.8rem;font-weight:700;color:var(--primary);text-align:center}.form-label{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem;font-weight:700;color:var(--text-muted);letter-spacing:.01em}.booking-form-modal .form-label{margin-bottom:.75rem}.game-name-input{height:var(--input-height);padding:0 var(--spacing-md);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;font-weight:600;color:var(--text-muted);background:var(--bg-main);width:100%;margin-bottom:1.5rem}.game-name-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2d5a271a}.game-name-input::placeholder{color:var(--text-muted);opacity:.5;font-style:italic;font-weight:400}.player-count-select{height:var(--input-height);padding:0 var(--spacing-md);padding-right:2.5rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;font-weight:600;color:var(--text-muted);background:var(--bg-main);width:100%;margin-bottom:1.5rem;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;cursor:pointer}.player-count-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2d5a271a}.form-label input,.form-label select{height:var(--input-height);padding:0 var(--spacing-md);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;font-weight:600;color:var(--text-muted);background:var(--bg-main);width:100%}.form-label select{appearance:none;padding-right:2.5rem;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%),linear-gradient(to right,transparent,transparent);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%,0 0;background-size:6px 6px,6px 6px,100% 100%;background-repeat:no-repeat;cursor:pointer}.form-label input:focus,.form-label select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2d5a271a}.form-label input::placeholder{color:var(--text-muted);opacity:.5;font-style:italic;font-weight:400}.form-label select:disabled,.form-label input:disabled{opacity:.55;cursor:not-allowed}.type-btn,.add-player-btn,.remove-player-btn,.book-btn,.clear-btn{transition:transform .15s ease,border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease}.type-btn:focus-visible,.add-player-btn:focus-visible,.remove-player-btn:focus-visible,.book-btn:focus-visible,.clear-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #7a9c3340}.type-btn:hover{border-color:#7a9c338c}.add-player-btn:hover:not(:disabled){border-color:#7a9c338c;background:#7a9c331f;color:var(--text-main)}.remove-player-btn:hover{border-color:#ff5252bf;background:#ff52521f}.book-btn:hover{background:var(--primary-hover)}.clear-btn:hover{border-color:#7a9c338c;background:#7a9c331f;color:var(--text-main)}.add-player-btn:active:not(:disabled),.remove-player-btn:active,.book-btn:active,.clear-btn:active,.type-btn:active{transform:translateY(1px)}.players-inputs input{height:var(--input-height);padding:0 var(--spacing-md);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;font-weight:600;color:var(--text-muted);background:var(--bg-main)}.players-inputs input::placeholder{color:var(--text-muted);opacity:.5;font-style:italic;font-weight:400}.players-inputs input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2d5a271a}.players-section{margin-bottom:1.5rem}.existing-participants-section{margin-bottom:1.5rem;background:var(--bg-surface);padding:var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--border)}.existing-participants-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.existing-participants-header h4{margin:0;font-weight:700;color:var(--primary);font-size:.9rem}.slots-info{font-size:.85rem;color:var(--text-muted);font-weight:600}.existing-participants-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.existing-participant{display:flex;align-items:center;gap:var(--spacing-xs);background:var(--bg-elevated);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.85rem;color:var(--text-muted)}.existing-participant .user-icon{color:var(--text-muted)}.players-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;margin-top:12px}.section-title{font-weight:700;color:var(--primary)}.add-player-btn{background:var(--available-bg);color:var(--primary);border:1px solid var(--border);padding:var(--spacing-sm) 12px;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer}.add-player-btn:disabled{opacity:.5;cursor:default}.players-inputs{display:flex;flex-direction:column;gap:.75rem}.player-input-row{display:flex;gap:.5rem}.player-input-row input{flex:1}.remove-player-btn{background:#3e2727;color:#ff5252;border:1px solid #5e3a3a;width:var(--input-height);border-radius:var(--radius-sm);cursor:pointer;font-size:1.25rem;display:flex;align-items:center;justify-content:center}.price-summary{background:var(--bg-card);padding:var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--border);margin-bottom:var(--spacing-lg);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.price-summary span:first-child{font-weight:700;color:var(--text-muted);font-size:.9rem}.price-amount{font-size:1.5rem;font-weight:800;color:var(--primary)}.price-summary small{font-size:.7rem;color:var(--text-muted)}.booking-form input{padding:var(--spacing-md);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;font-weight:500;background:var(--bg-main)}.booking-form input:focus{outline:none;border-color:var(--primary)}.form-actions{display:flex;gap:1rem;margin-top:2rem}.book-btn{flex:2;padding:var(--spacing-md);background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}.clear-btn{flex:1;padding:var(--spacing-md);background:var(--bg-interactive);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer}.book-btn:active{background:var(--primary-light);transform:translateY(1px)}.clear-btn:active{background:var(--bg-elevated);transform:translateY(1px)}.booking-form-container{display:flex;flex-direction:column;gap:2rem}.private-booking-notice{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:var(--spacing-xl)}.notice-icon{font-size:2rem;opacity:.8}.notice-text strong{display:block;color:#8c9eff;font-size:1.1rem;margin-bottom:.25rem}.notice-text p{color:#8c9eff;margin:0;font-size:.9rem}.participants-details{background:var(--bg-surface);padding:var(--spacing-lg);border-radius:var(--radius-sm);border:1px solid var(--border);margin-bottom:12px}.reserved-private-message{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1.25rem;color:#5c6b5c;opacity:.9;text-align:center}.reserved-private-title{margin:0 0 .5rem;font-size:.8rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.reserved-private-name{margin:0 0 .5rem;font-size:1rem;font-weight:700;color:#5c6b5c}.reserved-private-note{margin:0;font-size:.9rem;font-weight:500;color:#5c6b5c}.private-game-info{text-align:center;padding:1rem 0}.game-name-display{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid var(--border)}.game-name-display strong{font-size:1.2rem;color:var(--text-main)}.game-icon{font-size:1.5rem}.private-notice{color:#64748b;font-size:.9rem;margin:0;font-style:italic}.details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.details-header h4{margin:0;color:var(--primary);font-size:1.1rem}.count-badge{background:var(--available-bg);color:var(--primary);padding:4px 10px;border-radius:var(--radius-lg);font-size:.8rem;font-weight:700;border:1px solid var(--border)}.details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.detail-tag{background:var(--bg-card);border:1px solid var(--border);padding:var(--spacing-sm) 12px;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;color:var(--text-main);display:flex;align-items:center;gap:var(--spacing-sm)}.user-icon{display:flex;align-items:center;justify-content:center;color:var(--text-muted);opacity:.8}.user-icon svg{display:block}.slot-full-message{background:var(--bg-surface);border:1px solid var(--border);padding:var(--spacing-lg);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:var(--spacing-md)}.slot-full-message .form-header{margin-bottom:.5rem}.warning-content{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center;padding:1rem 0}.warning-icon{font-size:3rem}.warning-text strong{display:block;font-size:1.25rem;color:var(--accent);margin-bottom:.5rem}.slot-full-message.private .warning-text strong{color:var(--primary)}.warning-text p{margin:0;color:var(--text-muted);font-size:.95rem}.ammunition-section{margin-bottom:1.5rem}.ammunition-options{display:flex;gap:.75rem;margin-top:.5rem}.ammunition-option{flex:1;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--spacing-md) .75rem;cursor:pointer;transition:border-color .2s,background .2s,transform .15s;color:var(--text-muted);-webkit-user-select:none;user-select:none;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);text-align:center}.ammunition-option:hover{border-color:#7a9c3380;background:#7a9c3314}.ammunition-option:active{transform:translateY(1px)}.ammunition-option.selected{border-color:var(--primary);background:var(--available-bg)}.ammunition-option.selected .ammunition-count,.ammunition-option.selected .ammunition-price{color:var(--primary)}.ammunition-count{font-size:1.5rem;font-weight:800;color:var(--text-main);line-height:1}.ammunition-price{font-size:1.1rem;font-weight:700;color:var(--text-muted);line-height:1.2}.ammunition-per-player{font-size:.65rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;opacity:.7}@media(max-width:900px){.ammunition-options{gap:.5rem}.ammunition-option{padding:.75rem .5rem}.ammunition-count{font-size:1.25rem}.ammunition-price{font-size:.95rem}.ammunition-per-player{font-size:.6rem}}.success-toast{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--available-bg);border:1px solid var(--success);border-radius:var(--radius-sm);box-shadow:0 8px 24px #0000004d;z-index:3000;cursor:pointer;animation:toast-slide-up .3s ease-out}@keyframes toast-slide-up{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.success-toast-icon{display:flex;align-items:center;justify-content:center;color:var(--success)}.success-toast-message{font-size:1rem;font-weight:600;color:var(--text-main)}.success-toast-close{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:0;margin-left:var(--spacing-sm);opacity:.7;transition:opacity .15s}.success-toast-close:hover{opacity:1}@media(max-width:900px){.success-toast{bottom:1.5rem;left:1rem;right:1rem;transform:none;justify-content:center}@keyframes toast-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}.payment-result{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-main);padding:20px}.payment-result-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:48px 40px;text-align:center;max-width:480px;width:100%}.payment-result-card .payment-icon{font-size:48px;width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.payment-result-card.success .payment-icon{background:#7a9c3326;color:var(--success)}.payment-result-card.cancel .payment-icon{background:#ff525226;color:var(--accent)}.payment-result-card h1{color:var(--text-main);font-size:24px;margin:0 0 12px}.payment-result-card p{color:var(--text-muted);font-size:16px;line-height:1.5;margin:0 0 32px}.payment-home-btn{display:inline-block;background:var(--primary);color:#fff;padding:12px 32px;border-radius:8px;font-weight:600;text-decoration:none;transition:background .2s}.payment-home-btn:hover{background:var(--primary-hover)}.payment-booking-details{text-align:left;background:var(--bg-main);border:1px solid var(--border);border-radius:10px;padding:20px 24px;margin:0 0 28px}.payment-booking-details h2{color:var(--text-main);font-size:16px;margin:0 0 16px;text-align:center}.payment-detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border)}.payment-detail-row:last-child{border-bottom:none}.payment-detail-label{color:var(--text-muted);font-size:14px}.payment-detail-value{color:var(--text-main);font-size:14px;font-weight:500;text-align:right}.upcoming-games{margin:2rem 0 0}.upcoming-games-header{margin-bottom:1rem}.upcoming-games-title{font-size:.75rem;font-weight:700;letter-spacing:.1em;color:var(--primary);margin:0 0 .25rem;text-transform:uppercase}.upcoming-games-subtitle{font-size:.85rem;color:var(--text-muted);margin:0}.upcoming-games-list{display:flex;gap:.75rem}.upcoming-game-card{flex:1;display:flex;align-items:center;gap:.75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem 1rem;cursor:pointer;transition:border-color .2s;text-align:left;color:inherit;font-family:inherit;font-size:inherit}.upcoming-game-card:hover{border-color:var(--primary)}.upcoming-game-date{display:flex;flex-direction:column;align-items:center;min-width:48px;flex-shrink:0}.upcoming-date-label{font-size:.7rem;font-weight:700;letter-spacing:.05em;color:var(--primary);text-transform:uppercase}.upcoming-time-label{font-size:1rem;font-weight:600;color:var(--text-main)}.upcoming-game-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem}.upcoming-game-name{font-size:.85rem;font-weight:600;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upcoming-game-players{display:flex;align-items:center;gap:.5rem}.upcoming-avatars{display:flex}.upcoming-avatars .participant-avatar{width:22px;height:22px;font-size:.65rem;margin-left:-4px}.upcoming-avatars .participant-avatar:first-child{margin-left:0}.upcoming-capacity{font-size:.75rem;color:var(--text-muted);font-weight:500}.upcoming-game-cta{font-size:.75rem;font-weight:600;color:var(--primary);white-space:nowrap;flex-shrink:0}@media(max-width:900px){.upcoming-games-list{flex-direction:column}}
