@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";.side-nav{position:fixed;top:0;left:0;height:100vh;width:var(--nav-width);background:var(--teal-800);color:var(--white);display:flex;flex-direction:column;z-index:var(--z-nav);transform:translate(-100%);transition:transform var(--transition-base);will-change:transform;backface-visibility:hidden}.side-nav.open{transform:translate(0)}@media (min-width: 1024px){.side-nav{transform:translate(0)}.side-nav:not(.open){transform:translate(-100%)}}.side-nav-header{padding:var(--space-6);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1)}.nav-close{background:transparent;border:none;color:var(--white);padding:var(--space-2);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.create-account-link{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--gold-500);color:var(--ink-900);font-weight:600;font-size:var(--font-size-base);border-radius:var(--radius-md);margin-bottom:var(--space-6);transition:all var(--transition-fast)}.create-account-link:hover{background:#b89539;transform:translateY(-1px);box-shadow:var(--shadow-md)}.create-account-link .material-symbols-outlined{font-size:20px}.nav-footer-title{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-3);color:#fff9}.social-links{display:flex;gap:var(--space-2)}.social-links a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--white);background:#ffffff1a;transition:all var(--transition-fast)}.social-links a:hover{background:var(--gold-500);color:var(--ink-900);transform:translateY(-2px)}.facebook-icon{font-size:20px;font-weight:700;font-family:Segoe UI,Tahoma,sans-serif}.newsletter-form input:disabled{opacity:.5;cursor:not-allowed}.newsletter-form button:disabled{opacity:.7;cursor:not-allowed}.newsletter-success{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:#c9a64633;border-radius:var(--radius-md);color:var(--white)}.newsletter-success .material-symbols-outlined{color:var(--gold-500);font-size:24px}.newsletter-success p{margin:0;font-weight:500}.form-error{color:#ff6b6b;font-size:var(--font-size-sm);margin-top:var(--space-2)}.barber-selection-sheet{overflow-y:auto;padding:0!important}.sheet-title{font-size:var(--font-size-xl, 1.25rem);color:var(--ink-900, #0B0F13);font-weight:700;margin-bottom:var(--space-2, .5rem);padding:var(--space-6, 1.5rem) var(--space-6, 1.5rem) 0}.sheet-description{font-size:var(--font-size-sm, .875rem);color:var(--text-500, #55616A);margin-bottom:var(--space-6, 1.5rem);padding:0 var(--space-6, 1.5rem)}.barber-list{display:flex;flex-direction:column;gap:var(--space-4, 1rem);padding:var(--space-4, 1rem) var(--space-6, 1.5rem) var(--space-6, 1.5rem)}.barber-card-sheet{background:var(--white, #FFFFFF);border:2px solid var(--sand-200, #E9E2D7);border-radius:var(--radius-lg, .75rem);padding:var(--space-4, 1rem);cursor:pointer;transition:all var(--transition-base, .25s ease);display:flex;flex-direction:column;gap:var(--space-3, .75rem)}.barber-card-sheet:hover{border-color:var(--gold-500, #C9A646);box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1));transform:translateY(-2px)}.barber-card-sheet:active{transform:translateY(0)}.barber-card-content{display:flex;gap:var(--space-4, 1rem);align-items:flex-start}.barber-photo-sheet{width:80px;height:80px;min-width:80px;border-radius:50%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 20%;object-position:center 20%;border:3px solid var(--sand-200, #E9E2D7);transition:border-color var(--transition-fast, .15s ease)}.barber-card-sheet:hover .barber-photo-sheet{border-color:var(--gold-500, #C9A646)}.barber-info{flex:1;display:flex;flex-direction:column;gap:var(--space-2, .5rem);min-width:0}.barber-name-sheet{font-size:var(--font-size-lg, 1.125rem);font-weight:600;color:var(--ink-900, #0B0F13);margin:0;line-height:1.2}.barber-role-sheet{font-size:var(--font-size-sm, .875rem);color:var(--text-500, #55616A);margin:0;line-height:1.3}.barber-specialties-sheet{display:flex;flex-wrap:wrap;gap:var(--space-2, .5rem);margin-top:var(--space-1, .25rem)}.specialty-tag-sheet{background:var(--sand-200, #E9E2D7);color:var(--text-700, #2B3338);font-size:10px;padding:var(--space-1, .25rem) var(--space-2, .5rem);border-radius:var(--radius-full, 9999px);font-weight:500;white-space:nowrap}.barber-card-sheet:hover .specialty-tag-sheet{background:#c9a64626;color:var(--gold-700, #B8952E)}.select-barber-btn-sheet{width:100%;padding:var(--space-3, .75rem) var(--space-4, 1rem);background:var(--teal-800, #12323D);color:var(--white, #FFFFFF);border:none;border-radius:var(--radius-md, .5rem);font-size:var(--font-size-sm, .875rem);font-weight:600;cursor:pointer;transition:all var(--transition-fast, .15s ease);font-family:inherit}.select-barber-btn-sheet:hover{background:var(--gold-500, #C9A646);color:var(--ink-900, #0B0F13)}.barber-card-sheet.coming-soon{position:relative;opacity:.7;pointer-events:none}.coming-soon-badge{position:absolute;top:var(--space-3, .75rem);right:var(--space-3, .75rem);background:var(--gold-500, #C9A646);color:var(--ink-900, #0B0F13);font-size:var(--font-size-xs, .75rem);font-weight:700;padding:var(--space-1, .25rem) var(--space-3, .75rem);border-radius:var(--radius-full, 9999px);z-index:10;text-transform:uppercase;letter-spacing:.5px}.barber-card-sheet.coming-soon .barber-photo-sheet{filter:grayscale(30%)}.barber-card-sheet.coming-soon .select-barber-btn-sheet{background:var(--sand-300, #D4C9B8);color:var(--text-500, #55616A);cursor:not-allowed}.barber-card-sheet.coming-soon .select-barber-btn-sheet:hover{background:var(--sand-300, #D4C9B8);color:var(--text-500, #55616A);transform:none}@media (min-width: 640px){.sheet-title{font-size:var(--font-size-2xl, 1.5rem)}.barber-photo-sheet{width:100px;height:100px;min-width:100px}.barber-name-sheet{font-size:var(--font-size-xl, 1.25rem)}.barber-role-sheet{font-size:var(--font-size-base, 1rem)}.specialty-tag-sheet{font-size:11px}}@media (min-width: 1024px){.barber-list{gap:var(--space-5, 1.25rem)}.barber-card-sheet{padding:var(--space-5, 1.25rem)}}.barber-selection-sheet{scroll-behavior:smooth}.barber-selection-sheet::-webkit-scrollbar{width:6px}.barber-selection-sheet::-webkit-scrollbar-track{background:transparent}.barber-selection-sheet::-webkit-scrollbar-thumb{background:var(--sand-200, #E9E2D7);border-radius:var(--radius-full, 9999px)}.barber-selection-sheet::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary, #55616A)}.hero{display:grid;gap:var(--space-8);margin-bottom:var(--space-16);align-items:center}@media (min-width: 768px){.hero{grid-template-columns:1fr 1fr;gap:var(--space-12)}}.hero-content{order:1}.hero-title{font-size:var(--font-size-4xl);line-height:1.1;margin-bottom:var(--space-4);color:var(--ink-900)}@media (min-width: 768px){.hero-title{font-size:3.5rem}}.hero-subtitle{font-size:var(--font-size-xl);color:var(--text-500);margin-bottom:var(--space-6);line-height:1.5}.hero-ctas{display:flex;gap:var(--space-4);flex-wrap:wrap}.hero-image{order:2;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}.hero-image img{width:100%;height:auto;display:block}.value-props{background:var(--sand-200);padding:var(--space-12) var(--space-6);margin-left:calc(-1 * var(--space-4));margin-right:calc(-1 * var(--space-4));border-radius:var(--radius-lg)}@media (min-width: 768px){.value-props{margin-left:calc(-1 * var(--space-8));margin-right:calc(-1 * var(--space-8))}}.value-grid{display:grid;gap:var(--space-8)}@media (min-width: 768px){.value-grid{grid-template-columns:repeat(3,1fr)}}.value-card{text-align:center}.value-icon{font-size:48px;color:var(--gold-500);margin-bottom:var(--space-3);display:block}.value-title{font-size:var(--font-size-xl);font-weight:600;margin-bottom:var(--space-2);color:var(--ink-900)}.value-text{color:var(--text-700);font-size:var(--font-size-base)}.shop-intro{display:grid;gap:var(--space-8);align-items:center}@media (min-width: 768px){.shop-intro{grid-template-columns:1.2fr 1fr;gap:var(--space-12)}}.intro-content{max-width:600px}.intro-text{font-size:var(--font-size-lg);line-height:1.7;color:var(--text-700);margin-bottom:var(--space-6)}.intro-images{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.intro-images img{width:100%;height:auto;display:block}.quick-links-grid{display:grid;gap:var(--space-6)}@media (min-width: 640px){.quick-links-grid{grid-template-columns:repeat(3,1fr)}}.quick-link-card{background:var(--white);padding:var(--space-6);border-radius:var(--radius-lg);text-align:center;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.quick-link-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.quick-link-card .material-symbols-outlined{font-size:48px;color:var(--gold-500);margin-bottom:var(--space-3);display:block}.quick-link-card h3{font-size:var(--font-size-xl);margin-bottom:var(--space-2);color:var(--ink-900)}.quick-link-card p{color:var(--text-500)}.home-footer{background:var(--teal-800);color:var(--white);padding:var(--space-12) var(--space-6);margin:var(--space-16) calc(-1 * var(--space-4)) 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0}@media (min-width: 768px){.home-footer{margin-left:calc(-1 * var(--space-8));margin-right:calc(-1 * var(--space-8))}}.footer-content{display:grid;gap:var(--space-8)}@media (min-width: 768px){.footer-content{grid-template-columns:repeat(3,1fr);gap:var(--space-12)}}.footer-section h4{font-size:var(--font-size-lg);margin-bottom:var(--space-3);color:var(--gold-500)}.footer-section p{margin-bottom:var(--space-2);color:#ffffffe6}.footer-section a{color:var(--gold-500);text-decoration:underline}.newsletter-text{margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.newsletter-form{display:flex;gap:var(--space-2);flex-direction:column}@media (min-width: 640px){.newsletter-form{flex-direction:row}}.newsletter-form input{flex:1;padding:var(--space-3) var(--space-4);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md);background:#ffffff1a;color:var(--white);font-size:var(--font-size-base)}.newsletter-form input::-moz-placeholder{color:#fff9}.newsletter-form input::placeholder{color:#fff9}.newsletter-form input:focus{outline:2px solid var(--gold-500);background:#ffffff26}.newsletter-form button{white-space:nowrap}.barber-selection-modal .modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b0f13b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4);animation:fadeIn .2s ease-out}.barber-selection-modal .modal-content{background:var(--white);border-radius:var(--radius-lg);width:60vw;max-width:none;height:70vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.barber-selection-modal .modal-header{padding:var(--space-8) var(--space-8) var(--space-6);border-bottom:1px solid var(--sand-200);position:relative}.barber-selection-modal .modal-header h2{font-size:var(--font-size-2xl);color:var(--ink-900);margin:0 var(--space-12) var(--space-2) 0;padding-right:var(--space-8)}.barber-selection-modal .modal-header p{font-size:var(--font-size-base);color:var(--text-500);margin:0;padding-right:var(--space-12)}.barber-selection-modal .modal-close{position:absolute;top:var(--space-6);right:var(--space-6);background:transparent;border:none;color:var(--text-500);cursor:pointer;padding:var(--space-2);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all var(--transition-fast)}.barber-selection-modal .modal-close:hover{background:var(--sand-200);color:var(--ink-900)}.barber-selection-modal .modal-close .material-symbols-outlined{font-size:24px}.barber-selection-modal .modal-body{padding:var(--space-6) var(--space-8) var(--space-8)}.barber-selection-modal .barber-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6)}.barber-selection-modal .barber-card{background:var(--white);border:2px solid var(--sand-200);border-radius:var(--radius-lg);padding:var(--space-6);cursor:pointer;transition:all var(--transition-base);text-align:center}.barber-selection-modal .barber-card:hover{border-color:var(--gold-500);box-shadow:var(--shadow-md);transform:translateY(-2px)}.barber-selection-modal .barber-card:active{transform:translateY(0)}.barber-selection-modal .barber-photo{width:100px;height:100px;border-radius:50%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 20%;object-position:center 20%;margin:0 auto var(--space-3);border:3px solid var(--sand-200);transition:border-color var(--transition-fast)}.barber-selection-modal .barber-card:hover .barber-photo{border-color:var(--gold-500)}.barber-selection-modal .barber-name{font-size:var(--font-size-lg);font-weight:600;color:var(--ink-900);margin:0 0 var(--space-1) 0}.barber-selection-modal .barber-role{font-size:var(--font-size-sm);color:var(--text-500);margin:0 0 var(--space-3) 0}.barber-selection-modal .barber-specialties{display:flex;flex-wrap:nowrap;gap:var(--space-2);justify-content:center;margin-bottom:var(--space-3)}.barber-selection-modal .specialty-tag{background:var(--sand-200);color:var(--text-700);font-size:10px;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-weight:500;white-space:nowrap}.barber-selection-modal .barber-card:hover .specialty-tag{background:#c9a64626;color:var(--gold-700)}.barber-selection-modal .select-barber-btn{width:100%;padding:var(--space-2) var(--space-3);background:var(--teal-800);color:var(--white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.barber-selection-modal .select-barber-btn:hover{background:var(--gold-500);color:var(--ink-900)}@media (max-width: 768px){.barber-selection-modal .modal-content{border-radius:var(--radius-md);max-height:80vh;margin:auto}.barber-selection-modal .modal-header h2{font-size:var(--font-size-xl)}.barber-selection-modal .barber-grid{grid-template-columns:1fr}.barber-selection-modal .modal-header,.barber-selection-modal .modal-body{padding-left:var(--space-6);padding-right:var(--space-6)}}body.modal-open{overflow:hidden}.barber-selection-modal .barber-card.coming-soon{position:relative;opacity:.7;pointer-events:none}.barber-selection-modal .coming-soon-badge{position:absolute;top:var(--space-4);right:var(--space-4);background:var(--gold-500);color:var(--ink-900);font-size:var(--font-size-xs);font-weight:700;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);z-index:10;text-transform:uppercase;letter-spacing:.5px}.barber-selection-modal .barber-card.coming-soon .barber-photo{filter:grayscale(30%)}.barber-selection-modal .barber-card.coming-soon .select-barber-btn{background:var(--sand-300);color:var(--text-500);cursor:not-allowed}.barber-selection-modal .barber-card.coming-soon .select-barber-btn:hover{background:var(--sand-300);color:var(--text-500);transform:none}.page-header{text-align:center;margin-bottom:var(--space-12)}.page-title{font-size:var(--font-size-4xl);margin-bottom:var(--space-4);color:var(--ink-900)}.page-subtitle{font-size:var(--font-size-lg);color:var(--text-500);margin-bottom:var(--space-6);max-width:600px;margin-left:auto;margin-right:auto}.services-note{margin-bottom:var(--space-8)}.alert-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--sand-200);border-left:4px solid var(--gold-500);border-radius:var(--radius-md)}.alert-banner .material-symbols-outlined{color:var(--gold-500);font-size:24px}.alert-banner p{color:var(--text-700);margin:0}.booking-integration{margin-top:var(--space-12)}.placeholder-box{background:var(--sand-200);border:2px dashed var(--text-500);border-radius:var(--radius-lg);padding:var(--space-16);text-align:center;color:var(--text-500)}.placeholder-box .material-symbols-outlined{font-size:64px;margin-bottom:var(--space-4);opacity:.5}.placeholder-box p{font-size:var(--font-size-lg)}.team-grid{display:grid;gap:var(--space-8)}@media (min-width: 768px){.team-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}.team-card{background:var(--white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);transition:all var(--transition-fast);display:flex;flex-direction:column}.team-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.team-photo{aspect-ratio:1;overflow:hidden;background:var(--sand-200)}.team-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 20%;object-position:center 20%;display:block}.team-info{padding:var(--space-6);display:flex;flex-direction:column;flex:1}.team-name{font-size:var(--font-size-2xl);margin-bottom:var(--space-2);color:var(--ink-900)}.team-role{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--gold-500);font-weight:600;margin-bottom:var(--space-4)}.team-bio{color:var(--text-700);line-height:1.6;margin-bottom:var(--space-4)}.team-specialties{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:auto;padding-bottom:var(--space-6)}.specialty-chip{padding:var(--space-1) var(--space-3);background:var(--sand-200);color:var(--text-700);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500}.btn-small{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom,.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-left,.mapboxgl-ctrl-right,.mapboxgl-ctrl-top,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top{left:50%;top:0;transform:translate(-50%)}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-right{right:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl-bottom{bottom:0;left:50%;transform:translate(-50%)}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-left{left:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.mapboxgl-ctrl-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-bottom .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapboxgl-ctrl-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:initial;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:initial}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:initial;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;box-sizing:initial;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid #0000;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:initial;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid #0000;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid #0000;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:#000000b3;color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-ctrl-separator{background-color:#e0e0e0;height:1px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button{color:#333;font-size:18px;font-weight:700;height:44px;width:44px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:first-child{border-top-left-radius:8px;border-top-right-radius:8px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:hover{background-color:#f5f5f5}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected{background-color:#4a5568;color:#fff}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected:hover{background-color:#2d3748}.mapbox-container{width:100%;height:500px;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.map{width:100%;height:100%}.custom-marker{width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;background:var(--gold-500);border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 4px 8px #0003;transition:transform .2s ease}.custom-marker:hover{transform:rotate(-45deg) scale(1.1)}.custom-marker .material-symbols-outlined{transform:rotate(45deg);font-size:24px;color:var(--white)}.mapboxgl-popup-content{padding:var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.map-popup h3{margin:0 0 var(--space-2) 0;font-size:var(--font-size-lg);color:var(--ink-900)}.map-popup p{margin:0 0 var(--space-1) 0;font-size:var(--font-size-sm);color:var(--text-500)}.map-popup a{display:inline-block;margin-top:var(--space-3);color:var(--gold-500);font-weight:600;font-size:var(--font-size-sm);text-decoration:none;transition:color var(--transition-fast)}.map-popup a:hover{color:var(--teal-800);text-decoration:underline}.mapboxgl-popup-close-button{font-size:20px;color:var(--text-500);padding:var(--space-2);transition:color var(--transition-fast)}.mapboxgl-popup-close-button:hover{color:var(--ink-900);background:transparent}.map-error{width:100%;height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--sand-200);border-radius:var(--radius-lg);padding:var(--space-8);text-align:center}.map-error .material-symbols-outlined{font-size:48px;color:var(--text-500);margin-bottom:var(--space-4)}.map-error p{color:var(--text-700);font-size:var(--font-size-base);max-width:400px;line-height:1.6}@media (max-width: 768px){.mapbox-container{height:400px;border-radius:var(--radius-md)}.map-error{height:400px;padding:var(--space-6)}.custom-marker{width:32px;height:32px}.custom-marker .material-symbols-outlined{font-size:20px}}.location-details{display:grid;gap:var(--space-8);margin-bottom:var(--space-12)}@media (min-width: 768px){.location-details{grid-template-columns:repeat(3,1fr)}}.detail-card{background:var(--white);padding:var(--space-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center}.detail-card .material-symbols-outlined{font-size:48px;color:var(--gold-500);margin-bottom:var(--space-4)}.detail-card h3{font-size:var(--font-size-xl);margin-bottom:var(--space-4);color:var(--ink-900)}.detail-card p{color:var(--text-700);margin-bottom:var(--space-2)}.detail-card a{color:var(--teal-800);text-decoration:underline}.detail-card .btn{margin-top:var(--space-4)}.hours-list{text-align:left}.hours-row{display:flex;justify-content:space-between;padding:var(--space-2) 0;border-bottom:1px solid var(--sand-200)}.hours-row:last-child{border-bottom:none}.hours-row span:first-child{font-weight:500;color:var(--ink-900)}.hours-row span:last-child{color:var(--text-700)}.map-section{margin-top:var(--space-12)}.map-placeholder{background:var(--sand-200);border:2px dashed var(--text-500);border-radius:var(--radius-lg);padding:var(--space-16);text-align:center;color:var(--text-500);min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center}.map-placeholder .material-symbols-outlined{font-size:64px;margin-bottom:var(--space-4);opacity:.5}.map-placeholder p{font-size:var(--font-size-lg)}.gallery-grid{display:grid;gap:var(--space-6);margin-bottom:var(--space-12)}@media (min-width: 640px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}.gallery-item{aspect-ratio:1;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);transition:all var(--transition-fast);cursor:pointer}.gallery-item:hover{transform:scale(1.02);box-shadow:var(--shadow-lg)}.gallery-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.gallery-note{text-align:center;padding:var(--space-8);background:var(--sand-200);border-radius:var(--radius-lg)}.gallery-note p{margin-bottom:var(--space-4);color:var(--text-700);font-size:var(--font-size-lg)}.gallery-note .btn{gap:var(--space-2)}.tiktok-gallery-container{margin-top:var(--space-8);min-height:400px}.tiktok-thumbnail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-4);margin-bottom:var(--space-12)}.tiktok-thumbnail{cursor:pointer;transition:all var(--transition-base)}.thumbnail-placeholder{position:relative;aspect-ratio:1 / 1;background:linear-gradient(135deg,#c9a646,#8b7332);border-radius:var(--radius-lg);overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);border:2px solid var(--sand-300)}.tiktok-thumbnail:hover .thumbnail-placeholder{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--gold-500)}.thumbnail-icon{color:#fff6;z-index:1;width:32px;height:32px}.play-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0006;opacity:0;transition:opacity var(--transition-base);z-index:2}.tiktok-thumbnail:hover .play-overlay{opacity:1}.play-icon{width:40px;height:40px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.5))}.tiktok-badge{position:absolute;top:var(--space-2);left:var(--space-2);background:#fff;padding:2px 8px;border-radius:var(--radius-full);z-index:3;box-shadow:0 2px 4px #0003}.tiktok-logo{color:var(--teal-800);font-weight:700;font-size:10px;letter-spacing:.3px}.thumbnail-title{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.9),transparent);padding:var(--space-3) var(--space-2) var(--space-2);z-index:3}.thumbnail-title span{color:#fff;font-size:11px;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}.loading-state,.empty-gallery{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) var(--space-8);text-align:center;color:var(--text-500)}.loading-state .spinner{animation:spin 1s linear infinite;margin-bottom:var(--space-4)}.empty-gallery svg{color:var(--sand-400);margin-bottom:var(--space-4)}.empty-gallery h3{color:var(--text-700);margin-bottom:var(--space-2)}.video-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:9999;padding:var(--space-4)}.video-modal-content{position:relative;max-width:605px;width:100%;background:transparent}.modal-close-btn{position:absolute;top:-48px;right:0;background:#ffffff1a;border:2px solid rgba(255,255,255,.2);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);z-index:10000}.modal-close-btn:hover{background:#fff3;border-color:#fff6;transform:scale(1.1)}.modal-video-wrapper{display:flex;justify-content:center}@media (max-width: 768px){.tiktok-thumbnail-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:var(--space-3)}.thumbnail-icon{width:24px;height:24px}.play-icon{width:32px;height:32px}.thumbnail-title span{font-size:10px}.modal-close-btn{top:var(--space-4);right:var(--space-4)}.video-modal-content{max-width:100%}}@media (min-width: 769px) and (max-width: 1024px){.tiktok-thumbnail-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}@media (min-width: 1200px){.tiktok-thumbnail-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.careers-wizard{max-width:700px;margin:0 auto}.progress-container{margin-bottom:var(--space-8)}.progress-bar{height:8px;background:var(--sand-200);border-radius:4px;overflow:hidden;margin-bottom:var(--space-2)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--teal-800),var(--gold-500));transition:width .3s ease-in-out}.progress-text{text-align:center;font-size:var(--font-size-sm);color:var(--text-500);font-weight:600}.wizard-form{background:var(--white);padding:var(--space-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.wizard-step{min-height:400px}.wizard-step h3{font-size:var(--font-size-2xl);color:var(--ink-900);margin-bottom:var(--space-3)}.step-description{color:var(--text-500);margin-bottom:var(--space-6);line-height:1.6}.step-note{background:var(--sand-200);padding:var(--space-4);border-radius:var(--radius-md);color:var(--text-700);margin-bottom:var(--space-6);border-left:3px solid var(--gold-500)}.form-row{display:grid;gap:var(--space-4);margin-bottom:var(--space-4)}.form-field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.form-field label{font-weight:600;color:var(--ink-900);font-size:var(--font-size-base)}.form-field textarea{resize:vertical;line-height:1.5}.radio-group{display:flex;gap:var(--space-6);margin-top:var(--space-2)}.radio-group label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-weight:400}.radio-group input[type=radio]{width:20px;height:20px;cursor:pointer;accent-color:var(--gold-500)}.radio-group span{color:var(--text-700)}.final-note{background:var(--sand-200);padding:var(--space-6);border-radius:var(--radius-md);text-align:center;margin-top:var(--space-6)}.final-note p{color:var(--text-700);font-weight:500;margin:0}.wizard-navigation{display:flex;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--sand-200)}.wizard-navigation button{flex:1;max-width:200px}.wizard-navigation button:only-child{margin-left:auto}.form-error{color:#ff6b6b;font-size:var(--font-size-sm);padding:var(--space-4);background:#ff6b6b1a;border-radius:var(--radius-md);border-left:4px solid #ff6b6b;margin:var(--space-4) 0}.careers-success{text-align:center;padding:var(--space-12);background:var(--sand-200);border-radius:var(--radius-lg)}.careers-success .material-symbols-outlined{font-size:64px;color:var(--gold-500);margin-bottom:var(--space-4)}.careers-success h3{font-size:var(--font-size-2xl);color:var(--ink-900);margin-bottom:var(--space-3)}.careers-success p{color:var(--text-700);font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.success-note{color:var(--text-500);font-size:var(--font-size-base)}@media (max-width: 640px){.wizard-form{padding:var(--space-6)}.wizard-step{min-height:350px}.wizard-navigation{flex-direction:column}.wizard-navigation button{max-width:100%}}.careers-content{display:flex;flex-direction:column;gap:var(--space-12)}.careers-intro{background:var(--sand-200);padding:var(--space-8);border-radius:var(--radius-lg)}.careers-intro h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-4);color:var(--ink-900)}.careers-intro p{font-size:var(--font-size-lg);line-height:1.7;color:var(--text-700)}.careers-form-container{background:var(--white);padding:var(--space-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.careers-form-container h3{font-size:var(--font-size-xl);margin-bottom:var(--space-2);color:var(--ink-900)}.form-note{color:var(--text-500);margin-bottom:var(--space-6)}.form-placeholder{background:var(--sand-200);border:2px dashed var(--text-500);border-radius:var(--radius-lg);padding:var(--space-12);text-align:center;color:var(--text-500);margin-bottom:var(--space-8)}.quick-contact{text-align:center;padding:var(--space-6);background:var(--sand-200);border-radius:var(--radius-md);margin-top:var(--space-8)}.quick-contact p{color:var(--text-700);margin-bottom:var(--space-2)}.email-link{font-size:var(--font-size-lg);color:var(--teal-800);font-weight:600;text-decoration:underline}.email-link:hover{color:var(--gold-500)}.team-photos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4);margin:var(--space-8) 0}.team-photo-item{overflow:hidden;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.team-photo-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.team-photo-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}@media (max-width: 768px){.team-photos-grid{grid-template-columns:1fr}}.contact-form{display:flex;flex-direction:column;gap:var(--space-6)}.form-field input,.form-field textarea{padding:var(--space-3) var(--space-4);border:1px solid var(--sand-200);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--text-700);background:var(--white);transition:all var(--transition-fast)}.form-field input:focus,.form-field textarea:focus{outline:2px solid var(--gold-500);border-color:var(--gold-500)}.form-field input:disabled,.form-field textarea:disabled{opacity:.5;cursor:not-allowed;background:var(--sand-200)}.form-field textarea{resize:vertical;min-height:120px}.form-error{color:#ff6b6b;font-size:var(--font-size-sm);padding:var(--space-3);background:#ff6b6b1a;border-radius:var(--radius-md);margin:0}.contact-form button{align-self:flex-start}.contact-form button:disabled{opacity:.7;cursor:not-allowed}.contact-success{text-align:center;padding:var(--space-12);background:var(--sand-200);border-radius:var(--radius-lg)}.contact-success .material-symbols-outlined{font-size:64px;color:var(--gold-500);margin-bottom:var(--space-4)}.contact-success h3{font-size:var(--font-size-2xl);color:var(--ink-900);margin-bottom:var(--space-2)}.contact-success p{color:var(--text-700);font-size:var(--font-size-lg)}.contact-cards{display:grid;gap:var(--space-6);margin-bottom:var(--space-8)}@media (min-width: 768px){.contact-cards{grid-template-columns:repeat(3,1fr)}}.contact-card{background:var(--white);padding:var(--space-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;transition:all var(--transition-fast)}.contact-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.contact-card .material-symbols-outlined{font-size:48px;color:var(--gold-500);margin-bottom:var(--space-4)}.contact-card h3{font-size:var(--font-size-xl);margin-bottom:var(--space-3);color:var(--ink-900)}.contact-card p{color:var(--text-700);margin-bottom:var(--space-1)}.contact-link{display:inline-block;margin-top:var(--space-2);color:var(--teal-800);font-size:var(--font-size-lg);font-weight:600;text-decoration:underline}.contact-link:hover{color:var(--gold-500)}.contact-cta{text-align:center;padding:var(--space-8);background:var(--sand-200);border-radius:var(--radius-lg);margin-bottom:var(--space-12)}.contact-form-section{background:var(--white);padding:var(--space-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.contact-form-section h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-3);color:var(--ink-900)}.form-intro{color:var(--text-500);margin-bottom:var(--space-6)}.form-placeholder{background:var(--sand-200);border:2px dashed var(--text-500);border-radius:var(--radius-lg);padding:var(--space-12);text-align:center;color:var(--text-500)}.form-placeholder .material-symbols-outlined{font-size:64px;margin-bottom:var(--space-4);opacity:.5}.form-placeholder p{font-size:var(--font-size-base)}.instagram-connect-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:var(--space-8) var(--space-4);display:flex;flex-direction:column;align-items:center;justify-content:center}.connect-card{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:600px;width:100%;padding:var(--space-8);margin-bottom:var(--space-8)}.connect-header{text-align:center;margin-bottom:var(--space-8)}.instagram-icon{font-size:64px;display:block;margin-bottom:var(--space-4)}.connect-header h1{font-size:var(--font-size-3xl);color:var(--ink-900);margin-bottom:var(--space-2)}.connect-header p{color:var(--text-600);font-size:var(--font-size-lg)}.connect-content{display:flex;flex-direction:column;gap:var(--space-6)}.info-section{background:var(--sand-100);border-radius:var(--radius-lg);padding:var(--space-6)}.info-section h3{color:var(--ink-900);margin-bottom:var(--space-3);font-size:var(--font-size-lg)}.info-section ul{list-style:none;padding:0;margin:0}.info-section li{color:var(--text-700);padding:var(--space-2) 0;font-size:var(--font-size-base)}.connect-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);font-size:var(--font-size-lg);font-weight:600}.help-text{text-align:center;color:var(--text-600);font-size:var(--font-size-sm)}.help-text a{color:var(--teal-700);text-decoration:underline}.loading-spinner{text-align:center;padding:var(--space-8);color:var(--text-600);font-size:var(--font-size-lg)}.success-message{text-align:center;padding:var(--space-6);background:#10b9811a;border-radius:var(--radius-lg)}.success-message .material-symbols-outlined{font-size:64px;color:#10b981;display:block;margin-bottom:var(--space-3)}.success-message h2{color:var(--ink-900);margin-bottom:var(--space-2);font-size:var(--font-size-2xl)}.success-message p{color:var(--text-600);font-size:var(--font-size-base)}.connection-details{background:var(--sand-100);border-radius:var(--radius-lg);padding:var(--space-6)}.detail-row{display:flex;justify-content:space-between;padding:var(--space-3) 0;border-bottom:1px solid var(--sand-200)}.detail-row:last-child{border-bottom:none}.detail-row .label{color:var(--text-600);font-weight:500}.detail-row .value{color:var(--ink-900);font-weight:600}.action-buttons{display:flex;gap:var(--space-3)}.action-buttons .btn{flex:1}.disconnect-btn{color:#ef4444;border-color:#ef4444}.disconnect-btn:hover{background:#ef4444;color:var(--white)}.error-message{text-align:center;padding:var(--space-6);background:#ef44441a;border-radius:var(--radius-lg)}.error-message .material-symbols-outlined{font-size:64px;color:#ef4444;display:block;margin-bottom:var(--space-3)}.error-message h2{color:var(--ink-900);margin-bottom:var(--space-2);font-size:var(--font-size-2xl)}.error-message p{color:var(--text-600);font-size:var(--font-size-base)}.connect-footer{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-width:600px;width:100%;padding:var(--space-6);text-align:center}.connect-footer h3{color:var(--ink-900);margin-bottom:var(--space-6);font-size:var(--font-size-xl)}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-6)}.step{text-align:center}.step-number{display:inline-block;width:48px;height:48px;border-radius:50%;background:var(--gold-500);color:var(--ink-900);font-size:var(--font-size-xl);font-weight:700;line-height:48px;margin-bottom:var(--space-3)}.step p{color:var(--text-700);font-size:var(--font-size-sm)}@media (max-width: 768px){.instagram-connect-page{padding:var(--space-4) var(--space-2)}.connect-card{padding:var(--space-6)}.action-buttons{flex-direction:column}.steps{grid-template-columns:1fr}}.sticky-summary-enhanced{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:2px solid #E0E0E0;box-shadow:0 -2px 10px #0000001a;z-index:100;padding:1rem 2rem}.sticky-summary-container{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.recommendations-row{display:flex;align-items:center;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #F0F0F0}.recommendations-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#666;white-space:nowrap;flex-shrink:0}.lightbulb{font-size:1rem}.recommendations-list{display:flex;gap:.5rem;flex-wrap:wrap;flex:1}.recommendation-chip{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:linear-gradient(135deg,#fffbf5,#fff8e7);border:1px solid #F0E5C8;border-radius:20px;font-size:.8rem;cursor:pointer;transition:all .2s ease;white-space:nowrap}.recommendation-chip:hover{background:#c9a646;border-color:#c9a646;transform:scale(1.05)}.recommendation-chip:hover .recommendation-name,.recommendation-chip:hover .recommendation-price,.recommendation-chip:hover .recommendation-plus{color:#fff}.recommendation-name{font-weight:600;color:#12323d}.recommendation-price{color:#c9a646;font-weight:700}.recommendation-plus{color:#c9a646;flex-shrink:0}.summary-main-row{display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.summary-left h4{font-size:1rem;font-weight:600;color:#12323d;margin:0 0 .25rem}.summary-services{font-size:.875rem;color:#666;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.summary-right{display:flex;align-items:center;gap:1.5rem;flex-shrink:0}.summary-total{display:flex;align-items:baseline;gap:.5rem}.summary-total-label{font-size:.875rem;color:#666}.summary-total-price{font-size:1.5rem;font-weight:700;color:#c9a646}.summary-duration{display:flex;align-items:center;gap:.5rem;color:#666;font-size:.875rem}.summary-next-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#c9a646;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.summary-next-btn:hover{background:#b89538;transform:translateY(-2px);box-shadow:0 4px 12px #c9a6464d}.summary-next-btn:active{transform:translateY(0)}@media (max-width: 768px){.sticky-summary-enhanced{padding:1rem}.sticky-summary-container{gap:.75rem}.recommendations-row{flex-direction:column;align-items:flex-start;gap:.75rem}.recommendations-list{width:100%;justify-content:flex-start}.recommendation-chip{font-size:.75rem;padding:.4rem .6rem}.summary-main-row{flex-direction:column;align-items:flex-start;gap:1rem}.summary-right{width:100%;justify-content:space-between}.summary-total-price{font-size:1.25rem}.summary-next-btn{width:100%;justify-content:center;padding:.875rem 1rem}}@media (min-width: 769px) and (max-width: 1024px){.recommendations-list{flex-wrap:wrap}.recommendation-chip{font-size:.75rem}}.password-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#12323d,#1a4a5a);padding:2rem}.password-card{background:#fff;border-radius:16px;padding:3rem;max-width:450px;width:100%;box-shadow:0 20px 60px #0000004d}.password-header{text-align:center;margin-bottom:2rem}.password-header svg{color:#c9a646;margin-bottom:1rem}.password-header h1{font-size:1.75rem;color:#12323d;margin:0 0 .5rem}.password-header p{color:#666;margin:0;font-size:1rem}.password-form{display:flex;flex-direction:column;gap:1.5rem}.form-group label{display:block;font-weight:600;margin-bottom:.5rem;color:#12323d}.password-input{width:100%;padding:.875rem;border:2px solid #E0E0E0;border-radius:8px;font-size:1rem;transition:border-color .2s}.password-input:focus{outline:none;border-color:#c9a646}.error-message{padding:.75rem;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;font-size:.875rem}.btn-primary{width:100%;padding:.875rem;background:#c9a646;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary:hover{background:#b89538}.tiktok-manager{min-height:100vh;background:#f5f5f5;padding:2rem}.manager-container{max-width:900px;margin:0 auto}.manager-header{background:#fff;padding:2rem;border-radius:12px;margin-bottom:2rem;display:flex;align-items:center;gap:1.5rem;box-shadow:0 2px 8px #0000001a}.manager-header svg{color:#c9a646;flex-shrink:0}.manager-header h1{font-size:1.75rem;color:#12323d;margin:0 0 .25rem}.manager-header p{color:#666;margin:0}.add-video-section{background:#fff;padding:2rem;border-radius:12px;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a}.add-video-section h2{font-size:1.25rem;color:#12323d;margin:0 0 1.5rem}.add-video-form{margin-bottom:1.5rem}.form-column{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem;position:relative}.form-group label{font-weight:600;font-size:.875rem;color:#12323d}.url-input,.title-input{padding:.875rem;border:2px solid #E0E0E0;border-radius:8px;font-size:1rem;transition:border-color .2s}.url-input:focus,.title-input:focus{outline:none;border-color:#c9a646}.url-input:disabled,.title-input:disabled{background:#f5f5f5;cursor:not-allowed}.char-count{position:absolute;bottom:-20px;right:0;font-size:.75rem;color:#999}.btn-add{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;background:#c9a646;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-add:hover:not(:disabled){background:#b89538;transform:translateY(-2px);box-shadow:0 4px 12px #c9a6464d}.btn-add:disabled{opacity:.6;cursor:not-allowed}.message{padding:.875rem;border-radius:8px;margin-bottom:1rem;font-size:.875rem}.message.success{background:#e8f5e9;border:1px solid #4caf50;color:#2e7d32}.message.error{background:#fee;border:1px solid #fcc;color:#c33}.help-text{background:#f9f9f9;padding:1rem;border-radius:8px;border-left:4px solid #C9A646}.help-text strong{display:block;margin-bottom:.5rem;color:#12323d}.help-text ol{margin:0;padding-left:1.25rem;color:#666;font-size:.875rem}.help-text li{margin-bottom:.25rem}.current-videos-section{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 8px #0000001a}.current-videos-section h2{font-size:1.25rem;color:#12323d;margin:0 0 1.5rem}.empty-state{text-align:center;padding:3rem 2rem;color:#999}.empty-state svg{color:#ccc;margin-bottom:1rem}.empty-state p{margin:0;font-size:1rem}.videos-list{display:flex;flex-direction:column;gap:1rem}.video-item{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#f9f9f9;border:1px solid #E0E0E0;border-radius:8px;gap:1rem;transition:all .2s}.video-item:hover{border-color:#c9a646;background:#fffbf5}.video-info{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.video-info svg{color:#c9a646;flex-shrink:0}.video-details{display:flex;flex-direction:column;gap:.25rem;min-width:0}.video-title{font-size:.9rem;color:#c9a646;font-weight:600}.video-url{font-size:.875rem;color:#12323d;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-date{font-size:.75rem;color:#999}.btn-delete{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#dc3545;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.btn-delete:hover:not(:disabled){background:#c82333;transform:scale(1.05)}.btn-delete:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.tiktok-manager{padding:1rem}.password-card{padding:2rem}.manager-header{flex-direction:column;text-align:center;padding:1.5rem}.manager-header h1{font-size:1.5rem}.add-video-section,.current-videos-section{padding:1.5rem}.btn-add{width:100%;justify-content:center}.char-count{bottom:-18px}.video-item{flex-direction:column;align-items:flex-start}.video-info{width:100%}.btn-delete{width:100%;justify-content:center}.video-url{font-size:.8rem}}.support-button{position:fixed;bottom:2rem;right:2rem;width:56px;height:56px;border-radius:50%;background:var(--primary);color:#fff;border:none;box-shadow:0 4px 12px #ff6b354d;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:9998;transition:all .3s ease}.support-button:hover{background:var(--primary-dark, #e55a2b);box-shadow:0 6px 20px #ff6b3566}.support-modal{background:var(--bg-primary);border-radius:var(--radius-xl);max-width:550px;width:100%;max-height:85vh;overflow-y:auto;padding:1.25rem;position:relative;z-index:10000;pointer-events:auto}.support-modal .modal-close{position:absolute;top:.75rem;right:.75rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.375rem;border-radius:var(--radius-sm);transition:all .2s;display:flex;align-items:center;justify-content:center;z-index:10001;width:32px;height:32px}.support-modal .modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.support-modal .modal-close:active{transform:scale(.95)}.modal-header{text-align:center;margin-bottom:1.25rem}.modal-header h2{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.modal-subtitle{color:var(--text-secondary);font-size:.8125rem;margin:0}.wizard-progress{display:flex;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border-primary)}.progress-step{display:flex;align-items:center;gap:.375rem;opacity:.5;transition:opacity .3s;flex:1}.progress-step.active,.progress-step.completed{opacity:1}.step-number{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:2px solid var(--border-primary);font-weight:600;font-size:.75rem;color:var(--text-secondary);transition:all .3s}.progress-step.active .step-number{background:var(--primary);border-color:var(--primary);color:#fff}.progress-step.completed .step-number{background:var(--success, #10b981);border-color:var(--success, #10b981);color:#fff}.step-label{font-size:.75rem;color:var(--text-secondary);font-weight:500}.progress-step.active .step-label,.progress-step.completed .step-label{color:var(--text-primary)}.step-content{min-height:220px;background:var(--bg-secondary);padding:1rem;border-radius:var(--radius-md)}.step-content h3{color:var(--text-primary);font-size:.9375rem;font-weight:600;margin:0 0 .875rem}.step-hint{color:var(--text-secondary);font-size:.75rem;margin:-.625rem 0 .75rem}.choice-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.625rem}.choice-chip{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem .75rem;background:var(--bg-secondary);border:1.5px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s}.choice-chip:hover{background:var(--bg-tertiary);border-color:var(--primary);transform:translateY(-2px)}.choice-chip.selected{background:var(--primary);border-color:var(--primary);color:#fff}.choice-chip svg{flex-shrink:0}.choice-chips.multi-select{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.support-textarea{width:100%;padding:1rem;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem;font-family:inherit;resize:vertical;transition:all .2s}.support-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100, rgba(255, 107, 53, .1))}.character-count{text-align:right;color:var(--text-tertiary);font-size:.75rem;margin-top:.5rem}.modal-actions{display:flex;gap:.625rem;justify-content:space-between;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border-primary)}.modal-actions .btn-primary{margin-left:auto}.modal-actions button{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem!important;font-size:.8125rem!important;font-weight:500!important}.success-state{text-align:center;padding:3rem 1rem}.success-icon{width:80px;height:80px;border-radius:50%;background:var(--success-bg, #10b98120);color:var(--success, #10b981);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.success-state h2{color:var(--text-primary);font-size:1.75rem;font-weight:700;margin:0 0 .75rem}.success-state p{color:var(--text-secondary);font-size:.95rem;margin:0 0 .5rem}.success-note{color:var(--text-tertiary);font-size:.875rem;font-style:italic;margin-top:1rem}@media (max-width: 768px){.support-button{bottom:1.5rem;right:1.5rem;width:48px;height:48px}.support-button svg{width:20px;height:20px}.support-modal{padding:1.5rem;max-width:100%;margin:1rem}.wizard-progress{flex-direction:column;gap:.75rem}.progress-step{width:100%}.choice-chips{grid-template-columns:1fr}.choice-chips.multi-select{grid-template-columns:repeat(2,1fr)}.modal-actions{flex-direction:column}.modal-actions .btn-primary{margin-left:0;order:1}.modal-actions .btn-secondary{order:2}}.pending-appointments-modal{position:relative;background:#fff;border-radius:12px;width:90%;max-width:700px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003;animation:modalFadeIn .3s ease}.pending-appointments-modal .modal-header{padding:24px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.pending-appointments-modal .modal-header h2{margin:0;font-size:24px;font-weight:600;color:#1f2937}.pending-appointments-modal .close-btn{background:none;border:none;cursor:pointer;color:#6b7280;transition:color .2s;padding:4px;display:flex;align-items:center;justify-content:center}.pending-appointments-modal .close-btn:hover{color:#1f2937}.pending-appointments-modal .modal-body{flex:1;overflow-y:auto;padding:24px}.pending-appointments-modal .loading-state,.pending-appointments-modal .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#6b7280}.pending-appointments-modal .empty-state svg{color:#d1d5db;margin-bottom:16px}.pending-appointments-modal .empty-state p{margin:0;font-size:18px;font-weight:500;color:#4b5563}.pending-appointments-modal .empty-state span{font-size:14px;color:#9ca3af;margin-top:8px}.pending-appointments-modal .appointments-list{display:flex;flex-direction:column;gap:16px}.pending-appointments-modal .appointment-card{border:1px solid #e5e7eb;border-radius:8px;padding:20px;background:#fff;transition:all .2s}.pending-appointments-modal .appointment-card:hover{box-shadow:0 4px 12px #00000014;border-color:#d1d5db}.pending-appointments-modal .appointment-info{margin-bottom:16px}.pending-appointments-modal .appointment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.pending-appointments-modal .appointment-header h3{margin:0;font-size:18px;font-weight:600;color:#1f2937}.pending-appointments-modal .appointment-date{font-size:14px;color:#6b7280;font-weight:500}.pending-appointments-modal .appointment-details{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px}.pending-appointments-modal .detail-item{display:flex;align-items:center;gap:6px;font-size:14px;color:#4b5563}.pending-appointments-modal .detail-item svg{color:#9ca3af}.pending-appointments-modal .client-contact{display:flex;align-items:center;gap:6px;font-size:14px;color:#6b7280;margin-top:8px}.pending-appointments-modal .client-contact svg{color:#9ca3af}.pending-appointments-modal .appointment-actions{display:flex;gap:12px;padding-top:16px;border-top:1px solid #f3f4f6}.pending-appointments-modal .btn-approve,.pending-appointments-modal .btn-deny{flex:1;padding:10px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s}.pending-appointments-modal .btn-approve{background:#10b981;color:#fff}.pending-appointments-modal .btn-approve:hover:not(:disabled){background:#059669}.pending-appointments-modal .btn-deny{background:#ef4444;color:#fff}.pending-appointments-modal .btn-deny:hover:not(:disabled){background:#dc2626}.pending-appointments-modal .btn-approve:disabled,.pending-appointments-modal .btn-deny:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.pending-appointments-modal{width:95%;max-height:90vh}.pending-appointments-modal .modal-header,.pending-appointments-modal .modal-body{padding:20px}.pending-appointments-modal .appointment-header{flex-direction:column;align-items:flex-start;gap:4px}.pending-appointments-modal .appointment-details{flex-direction:column;gap:8px}.pending-appointments-modal .appointment-actions{flex-direction:column}}.day-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:1000}.day-modal-container{background:var(--bg-primary);width:100%;max-width:500px;height:60vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;display:flex;flex-direction:column;overflow:hidden}.day-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.day-modal-date-nav{display:flex;align-items:center;gap:1rem}.day-modal-date-nav h2{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0}.nav-btn{padding:.5rem;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.nav-btn:hover{background:var(--bg-elevated);color:var(--text-primary)}.day-modal-weekday{padding:.75rem 1.5rem;background:var(--bg-elevated);color:var(--text-secondary);font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-primary)}.day-modal-content{flex:1;overflow-y:auto;padding:1rem}.no-appointments{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-tertiary);text-align:center;padding:2rem}.no-appointments svg{opacity:.3;margin-bottom:1rem}.no-appointments p{font-size:.95rem}.appointments-list{display:flex;flex-direction:column;gap:.75rem}.appointment-item{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:1rem;position:relative;transition:all var(--transition-fast)}.appointment-item:hover{background:var(--bg-elevated);transform:translate(4px)}.appointment-time{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.875rem;margin-bottom:.5rem}.time-end{color:var(--text-tertiary)}.appointment-details{margin-left:1.5rem}.appointment-title{font-weight:500;color:var(--text-primary);margin-bottom:.5rem}.appointment-client,.appointment-services,.appointment-price{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary);margin-top:.25rem}.appointment-client svg,.appointment-services svg,.appointment-price svg{color:var(--text-tertiary)}.appointment-status{position:absolute;top:1rem;right:1rem;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:500;text-transform:uppercase}.day-modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-primary);background:var(--bg-secondary);text-align:center;color:var(--text-secondary);font-size:.875rem}@media (min-width: 768px){.day-modal-overlay{align-items:center}.day-modal-container{height:70vh;max-height:600px;border-radius:var(--radius-lg)}.day-modal-header h2{font-size:1.25rem}}.appointment-details-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:1500}.appointment-details-container{background:var(--bg-primary);width:100%;max-width:500px;height:50vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;display:flex;flex-direction:column;overflow:hidden}.appointment-details-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.appointment-details-header h2{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0}.close-btn{padding:.5rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast)}.close-btn:hover{color:var(--text-primary)}.appointment-details-content{flex:1;overflow-y:auto;padding:1.5rem}.detail-section{margin-bottom:1.5rem}.detail-item{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.detail-item svg{color:var(--text-tertiary);margin-top:.125rem}.detail-item>div{flex:1}.detail-item label{display:block;font-size:.75rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.detail-item span{display:block;font-size:.95rem;color:var(--text-primary);font-weight:500}.status-row{display:flex;align-items:center;justify-content:space-between}.status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:500;text-transform:uppercase;margin-left:1rem}.status-confirmed{background:#10b9811a;color:#10b981;border:1px solid rgba(16,185,129,.2)}.status-completed{background:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.notes-text{background:var(--bg-secondary);padding:.75rem;border-radius:var(--radius-md);color:var(--text-secondary);font-size:.875rem;margin-top:.5rem;line-height:1.5}.appointment-details-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-primary);background:var(--bg-secondary)}.appointment-details-footer .btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.appointment-details-footer .btn:hover{background:var(--primary-dark);transform:translateY(-1px)}@media (min-width: 768px){.appointment-details-overlay{align-items:center}.appointment-details-container{height:auto;max-height:80vh;min-height:400px;border-radius:var(--radius-lg)}.appointment-details-header h2{font-size:1.25rem}}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{overflow:visible;text-transform:none;-webkit-appearance:button;-moz-appearance:button;appearance:button;cursor:pointer}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{box-sizing:border-box;height:100%;display:flex;flex-direction:column;align-items:stretch}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar *:before,.rbc-calendar *:after{box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{overflow:hidden;position:absolute;top:0;left:0;right:0;bottom:0}.rbc-ellipsis,.rbc-show-more,.rbc-row-segment .rbc-event-content,.rbc-event-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{overflow:hidden;flex:1 0 0%;text-overflow:ellipsis;white-space:nowrap;padding:0 3px;text-align:center;vertical-align:middle;font-weight:700;font-size:90%;min-height:0;border-bottom:1px solid #ddd}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{color:inherit;background:none;margin:0;padding:0;border:none;cursor:pointer;-webkit-user-select:text;-moz-user-select:text;user-select:text}.rbc-row-content{position:relative;-moz-user-select:none;user-select:none;-webkit-user-select:none;z-index:4}.rbc-row-content-scrollable{display:flex;flex-direction:column;height:100%}.rbc-row-content-scrollable .rbc-row-content-scroll-container{height:100%;overflow-y:scroll;-ms-overflow-style:none;scrollbar-width:none}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.rbc-toolbar{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:10px;font-size:16px}.rbc-toolbar .rbc-toolbar-label{flex-grow:1;padding:0 10px;text-align:center}.rbc-toolbar button{color:#373a3c;display:inline-block;margin:0;text-align:center;vertical-align:middle;background:none;background-image:none;border:1px solid #ccc;padding:.375rem 1rem;border-radius:4px;line-height:normal;white-space:nowrap}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background-image:none;box-shadow:inset 0 3px 5px #00000020;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button.rbc-active:focus{color:#373a3c;background-color:#d4d4d4;border-color:#8c8c8c}.rbc-toolbar button:focus{color:#373a3c;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:hover{color:#373a3c;cursor:pointer;background-color:#e6e6e6;border-color:#adadad}.rbc-btn-group{display:inline-block;white-space:nowrap}.rbc-btn-group>button:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:0 4px 4px 0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px 0 0 4px}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (max-width: 767px){.rbc-toolbar{flex-direction:column}}.rbc-event,.rbc-day-slot .rbc-background-event{border:none;box-sizing:border-box;box-shadow:none;margin:0;padding:2px 5px;background-color:#3174ad;border-radius:5px;color:#fff;cursor:pointer;width:100%;text-align:left}.rbc-slot-selecting .rbc-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-slot-selecting .rbc-background-event{cursor:inherit;pointer-events:none}.rbc-event.rbc-selected,.rbc-day-slot .rbc-selected.rbc-background-event{background-color:#265985}.rbc-event:focus,.rbc-day-slot .rbc-background-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{box-shadow:-1px 1px 5px #33333380}.rbc-event-continues-prior{border-top-left-radius:0;border-bottom-left-radius:0}.rbc-event-continues-after{border-top-right-radius:0;border-bottom-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-left-radius:0;border-bottom-right-radius:0}.rbc-row{display:flex;flex-direction:row}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{background-color:#ffffff4d;z-index:4;font-weight:700;font-size:85%;height:auto;line-height:normal;color:#3174ad}.rbc-show-more:hover,.rbc-show-more:focus{color:#265985}.rbc-month-view{position:relative;border:1px solid #ddd;display:flex;flex-direction:column;flex:1 0 0;width:100%;-moz-user-select:none;user-select:none;-webkit-user-select:none;height:100%}.rbc-month-header{display:flex;flex-direction:row}.rbc-month-row{display:flex;position:relative;flex-direction:column;flex:1 0 0;flex-basis:0px;overflow:hidden;height:100%}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{flex:1 1 0;min-width:0;padding-right:5px;text-align:right}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{display:flex;flex-direction:row;flex:1 0 0;overflow:hidden;right:1px}.rbc-day-bg{flex:1 0 0%}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{position:absolute;z-index:5;border:1px solid #e5e5e5;background-color:#fff;box-shadow:0 5px 15px #00000040;padding:10px}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{display:flex;flex-direction:column;flex:1 0 0;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{width:100%;border:1px solid #ddd;border-spacing:0;border-collapse:collapse}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{padding:5px 10px;vertical-align:top}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{padding-left:15px;padding-right:15px;text-transform:lowercase}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{padding:3px 5px;text-align:left;border-bottom:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{display:flex;flex-direction:column;min-height:100%}.rbc-time-column .rbc-timeslot-group{flex:1}.rbc-timeslot-group{border-bottom:1px solid #ddd;min-height:40px;display:flex;flex-flow:column nowrap}.rbc-time-gutter,.rbc-header-gutter{flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{bottom:0;left:0;position:absolute;right:0;margin-right:10px;top:0}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-event,.rbc-day-slot .rbc-background-event{border:1px solid #265985;display:flex;max-height:100%;min-height:20px;flex-flow:column wrap;align-items:flex-start;overflow:hidden;position:absolute}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{flex:none;padding-right:5px;width:auto}.rbc-day-slot .rbc-event-content{width:100%;flex:1 1 0;word-wrap:break-word;line-height:1;height:100%;min-height:1em}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{position:sticky;left:0;background-color:#fff;border-right:1px solid #ddd;z-index:10;margin-right:-1px}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{min-width:auto;flex:1 0 0;flex-basis:0px}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-header,.rbc-time-view-resources .rbc-day-bg{width:140px;flex:1 1 0;flex-basis:0 px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{flex:1 0 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{z-index:10;position:absolute;background-color:#00000080;color:#fff;font-size:75%;width:100%;padding:3px}.rbc-slot-selecting{cursor:move}.rbc-time-view{display:flex;flex-direction:column;flex:1;width:100%;border:1px solid #ddd;min-height:0}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{box-sizing:content-box;width:100%;height:100%;position:relative}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{position:relative;z-index:4}.rbc-time-view .rbc-row{box-sizing:border-box;min-height:20px}.rbc-time-header{display:flex;flex:0 0 auto;flex-direction:row}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-right-width:0;border-left:1px solid #ddd}.rbc-time-header>.rbc-row:first-child{border-bottom:1px solid #ddd}.rbc-time-header>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{flex:1;display:flex;min-width:0;flex-direction:column;border-left:1px solid #ddd}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;flex-shrink:0}.rbc-time-content{display:flex;flex:1 0 0%;align-items:flex-start;width:100%;border-top:2px solid #ddd;overflow-y:auto;position:relative}.rbc-time-content>.rbc-time-gutter{flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{width:100%;-moz-user-select:none;user-select:none;-webkit-user-select:none}.rbc-current-time-indicator{position:absolute;z-index:3;left:0;right:0;height:1px;background-color:#74ad31;pointer-events:none}.rbc-resource-grouping.rbc-time-header-content{display:flex;flex-direction:column}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.service-complete-modal{max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.service-complete-modal .client-info{padding:1rem;background:var(--bg-primary);border-radius:var(--radius-md);margin-bottom:1.5rem}.service-complete-modal .client-info h3{margin:0 0 .5rem;color:var(--text-primary)}.service-complete-modal .client-info p{margin:0;color:var(--text-secondary);font-size:.875rem}.services-section{margin-bottom:1.5rem}.services-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.services-section h3{margin:0;color:var(--text-primary)}.btn-text{display:flex;align-items:center;gap:.25rem;padding:.5rem .75rem;background:transparent;border:none;color:var(--primary);font-size:.875rem;cursor:pointer;transition:opacity var(--transition-fast)}.btn-text:hover{opacity:.8}.services-list{display:flex;flex-direction:column;gap:.75rem}.service-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:1rem;padding:.75rem;background:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--border-primary)}.service-info{display:flex;justify-content:space-between;align-items:center}.service-name{color:var(--text-primary);font-weight:500}.service-price{color:var(--text-secondary);font-size:.875rem}.quantity-controls{display:flex;align-items:center;gap:.5rem;background:var(--bg-secondary);border-radius:var(--radius-sm);padding:.25rem}.qty-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.qty-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.quantity{min-width:30px;text-align:center;color:var(--text-primary);font-weight:500}.service-total{text-align:right;font-weight:600;color:var(--text-primary)}.adjustment-section{margin-bottom:1.5rem}.adjustment-section label{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;color:var(--text-primary);font-weight:500}.adjustment-section textarea{width:100%;padding:.75rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);color:var(--text-primary);resize:vertical;font-family:inherit}.total-section{padding:1rem;background:var(--bg-primary);border-radius:var(--radius-md);margin-bottom:1rem}.total-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;color:var(--text-secondary)}.total-row.final-total{border-top:1px solid var(--border-primary);padding-top:1rem;margin-top:.5rem;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.total-input{display:flex;align-items:center;gap:.5rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);padding:.5rem .75rem}.total-input input{background:transparent;border:none;color:var(--text-primary);font-size:1.125rem;font-weight:600;width:100px;text-align:right}.total-input input:focus{outline:none}.warning-message{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:var(--radius-md);color:var(--warning);font-size:.875rem}.payment-qr-modal{max-width:800px;width:90%;max-height:90vh;overflow-y:auto}.payment-amount{display:flex;flex-direction:column;align-items:center;padding:2rem;background:linear-gradient(135deg,var(--primary),var(--primary-hover));border-radius:var(--radius-lg);margin-bottom:2rem;color:#fff}.payment-amount svg{opacity:.9}.payment-amount .amount{font-size:3rem;font-weight:700;margin:.5rem 0}.payment-amount .label{font-size:1rem;opacity:.9;text-transform:uppercase;letter-spacing:1px}.payment-methods-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem;margin-bottom:2rem}.payment-method-card{background:var(--card-bg);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-primary);transition:transform var(--transition-fast)}.payment-method-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.method-header{padding:.75rem;text-align:center;border-bottom:2px solid;background:var(--bg-primary)}.method-header h3{margin:0;font-size:1rem;color:var(--text-primary)}.qr-code{padding:1rem;background:#fff;display:flex;justify-content:center;align-items:center}.qr-code img{width:140px;height:140px;image-rendering:pixelated}.method-handle{padding:.75rem;display:flex;justify-content:space-between;align-items:center;background:var(--bg-primary);border-top:1px solid var(--border-primary)}.method-handle span{font-size:.875rem;color:var(--text-primary);font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-btn{padding:.25rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast);display:flex;align-items:center;justify-content:center}.copy-btn:hover{color:var(--primary)}.payment-actions{display:flex;flex-direction:column;gap:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-primary)}.cash-option{text-align:center}.btn-outline{padding:.75rem 1.5rem;background:transparent;border:2px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-outline:hover:not(:disabled){background:var(--bg-primary);border-color:var(--primary);color:var(--primary)}.btn-outline:disabled{opacity:.5;cursor:not-allowed}.mark-paid-section label{display:block;margin-bottom:.75rem;color:var(--text-secondary);font-size:.875rem;text-align:center}.method-buttons{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.method-btn{padding:.5rem 1rem;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);position:relative}.method-btn:hover:not(:disabled){background:var(--method-color, var(--primary));color:#fff;border-color:var(--method-color, var(--primary))}.method-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.payment-qr-modal{width:95%}.payment-amount .amount{font-size:2rem}.payment-methods-grid{grid-template-columns:repeat(2,1fr)}.qr-code img{width:120px;height:120px}}.appointment-calendar{padding:2rem}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.calendar-header h2{font-size:1.5rem;font-weight:600}.header-buttons{display:flex;gap:1rem;align-items:center}.btn-warning{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fbbf24;color:#78350f;border:none;border-radius:var(--radius-md);font-weight:600;font-size:.875rem;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 1px 3px #0000001f}.btn-warning:hover{background:#f59e0b;transform:translateY(-2px);box-shadow:0 4px 6px #00000026}.calendar-container{background:var(--card-bg);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--border-primary)}.custom-calendar-controls{background:var(--card-bg);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.5rem;border:1px solid var(--border-primary);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.controls-nav{display:flex;align-items:center;gap:1rem;height:44px}.controls-views{display:flex;gap:.5rem}.current-date-label{font-size:1.125rem;font-weight:600;color:var(--text-primary);padding:0 1rem;display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}.btn-outline{background:transparent;color:var(--primary);border:1px solid var(--primary)}.btn-outline:hover{background:var(--primary);color:#fff}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-primary)}.toolbar-nav{display:flex;align-items:center;gap:.5rem}.btn-today{padding:.5rem 1rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:500;transition:all var(--transition-fast)}.btn-today:hover{background:var(--primary-hover);transform:translateY(-1px)}.btn-nav{padding:.5rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.btn-nav:hover{background:var(--primary-hover);transform:translateY(-1px)}.toolbar-label{font-size:1.125rem;font-weight:600;margin-left:1rem;color:var(--text-primary)}.toolbar-views{display:flex;gap:.25rem;background:var(--bg-tertiary);padding:.25rem;border-radius:var(--radius-md)}.toolbar-views button{padding:.5rem 1rem;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:500;color:var(--text-secondary);transition:all var(--transition-fast)}.toolbar-views button:hover{color:var(--text-primary);background:var(--bg-primary)}.toolbar-views button.active{background:var(--primary);color:#fff;box-shadow:var(--shadow-sm)}.calendar-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem}.spinner{width:40px;height:40px;border:3px solid var(--border-primary);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.event-details{background:var(--card-bg);padding:2rem;border-radius:var(--radius-lg);max-width:400px;width:90%}.event-details h3{margin-bottom:1.5rem}.detail-row{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;color:var(--text-secondary)}.detail-status{margin:1.5rem 0;font-weight:500}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500;text-transform:capitalize;margin-left:.5rem}.status-badge.pending{background:#fbbf241a;color:var(--warning);border:1px solid rgba(251,191,36,.2)}.status-badge.confirmed{background:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.status-badge.completed{background:#10b9811a;color:#10b981;border:1px solid rgba(16,185,129,.2)}.status-badge.cancelled{background:#ef44441a;color:var(--danger);border:1px solid rgba(239,68,68,.2)}.status-badge.paid{background:#10b9811a;color:#10b981;border:1px solid rgba(16,185,129,.2)}.modal-actions{display:flex;gap:.75rem;margin-top:1.5rem}.modal-actions .btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem}.rbc-calendar{font-family:inherit;background:transparent}.rbc-header{padding:.75rem;font-weight:600;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary)!important}.rbc-today{background:#ff6b350d}.rbc-event{padding:.25rem .5rem}.rbc-selected{box-shadow:0 0 0 3px #ff6b3566!important;border:2px solid rgba(255,107,53,.8)!important;transform:scale(1.02)}.rbc-day-bg+.rbc-day-bg,.rbc-month-row+.rbc-month-row{border-top:1px solid var(--border-primary)}.rbc-month-view,.rbc-time-view,.rbc-agenda-view{border:1px solid var(--border-primary);border-radius:var(--radius-md)}.rbc-time-header-cell{min-height:25px}.rbc-time-content{border-top:1px solid var(--border-primary)}.rbc-time-content>*+*>*{border-left:1px solid var(--border-primary)}.rbc-timeslot-group{min-height:60px}.rbc-time-slot{border-top:1px solid var(--border-primary)}.dark .rbc-day-bg+.rbc-day-bg,.dark .rbc-month-row+.rbc-month-row{border-top:1px solid rgba(255,255,255,.05)}.dark .rbc-month-view,.dark .rbc-time-view,.dark .rbc-agenda-view{border:1px solid rgba(255,255,255,.08)}.dark .rbc-time-content{border-top:1px solid rgba(255,255,255,.05)}.dark .rbc-time-content>*+*>*{border-left:1px solid rgba(255,255,255,.05)}.dark .rbc-time-slot{border-top:1px solid rgba(255,255,255,.03)}.dark .rbc-header{border-bottom:1px solid rgba(255,255,255,.08)!important}.dark .rbc-header+.rbc-header{border-left:1px solid rgba(255,255,255,.05)!important}.dark .rbc-time-header-cell{border-left:1px solid rgba(255,255,255,.05)!important}.dark .rbc-time-header-gutter{border-right:1px solid rgba(255,255,255,.05)!important}.dark .rbc-time-header-content{border-left:1px solid rgba(255,255,255,.05)!important}.dark .rbc-today{background:#ff6b3514}.dark .rbc-off-range-bg{background:#00000008}.dark .rbc-timeslot-group{border-bottom:1px solid rgba(255,255,255,.03)}.dark .rbc-day-slot .rbc-time-slot{border-top:1px solid rgba(255,255,255,.03)}.dark .rbc-day-slot .rbc-events-container{border-left:1px solid rgba(255,255,255,.05)}.dark .rbc-time-header-content>.rbc-row>*+*{border-left:1px solid rgba(255,255,255,.05)!important}.rbc-agenda-view{background:transparent!important;border:none!important}.rbc-agenda-view table{width:100%;border-collapse:separate;border-spacing:0;background:var(--card-bg);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.rbc-agenda-view thead tr{background:var(--bg-tertiary)!important}.rbc-agenda-view th{background:var(--bg-tertiary)!important;color:var(--text-secondary)!important;font-weight:600;padding:1rem 1.5rem;text-align:left;border-bottom:2px solid var(--border-primary);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.rbc-agenda-view tbody tr{transition:background var(--transition-fast)}.rbc-agenda-view tbody tr:hover{background:var(--card-hover)!important}.rbc-agenda-view td{padding:1rem 1.5rem;border-bottom:1px solid var(--border-primary);background:var(--card-bg)!important;color:var(--text-primary)!important;font-size:.9375rem}.rbc-agenda-view tbody tr:last-child td{border-bottom:none}.rbc-agenda-date-cell{min-width:120px;font-weight:600;color:var(--text-primary)!important}.rbc-agenda-time-cell{min-width:140px;color:var(--text-secondary)!important;font-family:SF Mono,Monaco,Courier New,monospace;font-size:.875rem}.rbc-agenda-event-cell{color:var(--text-primary)!important;font-weight:500}.rbc-agenda-view .rbc-agenda-row{background:var(--bg-primary)!important}.rbc-agenda-view .rbc-agenda-table{border:none!important}.rbc-agenda-view .rbc-agenda-content{padding:3rem 1rem;text-align:center}.rbc-agenda-view .rbc-agenda-content:empty:after{content:"No upcoming appointments scheduled";color:var(--text-tertiary);font-size:1rem;font-weight:500;display:block;padding:2rem;background:var(--bg-tertiary);border-radius:var(--radius-md)}@media (max-width: 768px){.appointment-calendar{padding:1rem}.calendar-header{flex-direction:column;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.header-buttons{width:100%;flex-direction:column}.header-buttons button{width:100%;justify-content:center}.calendar-header h2{font-size:1.25rem}.calendar-container{padding:1rem;border-radius:var(--radius-md)}.custom-calendar-controls{padding:1rem;margin-bottom:1rem}.controls-nav{display:grid;grid-template-columns:max-content 1fr;grid-template-rows:auto auto;gap:.75rem;align-items:center;width:100%}.controls-nav button:first-child{grid-column:1;grid-row:1;width:auto;margin-right:auto}.current-date-label{grid-column:2;grid-row:1;text-align:right;font-weight:600;margin-left:auto;padding-right:0}.controls-nav button:nth-child(2){grid-column:1;grid-row:2;width:auto;margin-right:auto}.controls-nav button:last-child{grid-column:2;grid-row:2;width:auto;margin-left:auto}.controls-nav button{justify-content:center}.controls-views{display:none}.toolbar-nav{flex-wrap:wrap;gap:.25rem}.toolbar-label{font-size:1rem;margin-left:.5rem}.toolbar-views{flex-wrap:wrap}.toolbar-views button{padding:.375rem .75rem;font-size:.875rem}.event-details{padding:1.5rem;margin:1rem}.event-details h3{font-size:1.125rem}.detail-row{font-size:.875rem;gap:.5rem}.calendar-toolbar .toolbar-views{display:none!important}.rbc-event{min-height:24px;font-size:.75rem}.rbc-time-slot,.rbc-timeslot-group{min-height:40px}}@media (max-width: 640px){.appointment-calendar{padding:.75rem}.calendar-header{margin-bottom:1rem}.calendar-header h2{font-size:1.125rem}.calendar-container{padding:.75rem}.btn{padding:.5rem 1rem;font-size:.875rem}.calendar-toolbar{flex-direction:column;gap:1rem;align-items:stretch}.toolbar-nav,.toolbar-views{justify-content:center}.event-details{padding:1rem;margin:.5rem;max-width:none;width:calc(100% - 1rem)}.rbc-time-slot,.rbc-timeslot-group{min-height:50px}.rbc-event{min-height:30px;font-size:.75rem;padding:.125rem .25rem}.rbc-header{padding:.5rem .25rem;font-size:.875rem}.rbc-agenda-date-cell{min-width:60px}.rbc-agenda-time-cell{min-width:80px}}@media (max-width: 480px){.appointment-calendar{padding:.5rem}.calendar-container{padding:.5rem;border-radius:var(--radius-sm)}.calendar-header{gap:.75rem}.calendar-header h2{font-size:1rem}.btn{padding:.375rem .75rem;font-size:.75rem}.btn-nav{padding:.375rem}.toolbar-label{font-size:.875rem;margin-left:.25rem}.toolbar-views button{padding:.25rem .5rem;font-size:.75rem}.event-details{padding:.75rem;margin:.25rem;border-radius:var(--radius-md)}.event-details h3{font-size:1rem;margin-bottom:1rem}.detail-row{font-size:.75rem}.rbc-time-slot,.rbc-timeslot-group{min-height:45px}.rbc-event{min-height:28px;font-size:.6875rem}.rbc-header{padding:.375rem .125rem;font-size:.75rem}.rbc-agenda-view .rbc-agenda-content{font-size:.875rem}.rbc-agenda-date-cell{min-width:50px}.rbc-agenda-time-cell{min-width:70px}}.services-page{padding:2rem;width:100%;max-width:1600px;margin:0 auto;min-height:calc(100vh - 80px);position:relative}.toast{position:fixed;top:2rem;right:2rem;z-index:10000;display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-radius:var(--radius-lg);box-shadow:0 10px 40px #0003;font-weight:500;max-width:400px}.toast-success{background:#22c55ef2;color:#fff;border:1px solid rgba(34,197,94,1)}.toast-error{background:#ef4444f2;color:#fff;border:1px solid rgba(239,68,68,1)}.toast-close{background:transparent;border:none;color:#fff;cursor:pointer;padding:.25rem;display:flex;align-items:center;margin-left:auto;opacity:.8;transition:opacity var(--transition-fast)}.toast-close:hover{opacity:1}.page-header{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-primary);gap:1.5rem!important}.page-header-content{flex:1 1 0%!important;min-width:0!important}.page-header-content h1{font-size:1.75rem;font-weight:600;margin-bottom:.25rem;color:var(--text-primary)}.page-header-content p{color:var(--text-secondary);font-size:.95rem;white-space:nowrap!important;margin:0;overflow:visible}.page-header .btn{flex-shrink:0!important;width:auto!important}.services-controls{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-bottom:2rem}.filter-group{display:flex;gap:.5rem;align-items:center;background:var(--bg-secondary);padding:.25rem;border-radius:var(--radius-md);border:1px solid var(--border-primary)}.filter-btn{padding:.5rem 1rem;background:transparent;border:none;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.filter-btn:hover{background:var(--bg-elevated);color:var(--text-primary)}.filter-btn.active{background:var(--primary);color:#fff}.category-filter{position:relative}.category-filter select{padding:.5rem 2rem .5rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.category-filter:after{content:"▼";position:absolute;right:.75rem;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-tertiary);font-size:.75rem}.search-bar{position:relative;flex:1;max-width:300px}.search-bar svg{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-tertiary);width:18px;height:18px}.search-bar input{width:100%;padding:.5rem .75rem .5rem 2.5rem;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem}.search-bar input:focus{outline:none;border-color:var(--primary);background:var(--bg-elevated)}.search-bar input::-moz-placeholder{color:var(--text-tertiary)}.search-bar input::placeholder{color:var(--text-tertiary)}.services-table-container{background:var(--card-bg);border-radius:var(--radius-lg);border:1px solid var(--border-primary);overflow:hidden}.services-table{width:100%;border-collapse:collapse}.services-table thead{background:var(--bg-secondary);border-bottom:2px solid var(--border-primary)}.services-table th{padding:1rem;text-align:left;font-weight:600;color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.services-table th.center{text-align:center}.services-table th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.services-table th.sortable:hover{background:var(--bg-elevated)}.th-content{display:flex;align-items:center;gap:.5rem;justify-content:flex-start}.services-table tbody tr{border-bottom:1px solid var(--border-primary);transition:all var(--transition-fast)}.services-table tbody tr:hover{background:var(--bg-elevated)}.services-table tbody tr:last-child{border-bottom:none}.services-table td{padding:1rem;color:var(--text-primary);font-size:.95rem}.service-name-cell{font-weight:500}.service-description{font-size:.85rem;color:var(--text-tertiary);margin-top:.25rem}.category-badge{display:inline-block;padding:.25rem .75rem;background:var(--bg-elevated);color:var(--text-secondary);border-radius:var(--radius-full);font-size:.8rem;font-weight:500}.duration-cell,.price-cell{font-weight:500}.price-cell{color:var(--success);font-size:1rem}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.8rem;font-weight:500}.status-badge.active{background:#10b9811a;color:#10b981;border:1px solid rgba(16,185,129,.2)}.status-badge.inactive{background:#6b72801a;color:#6b7280;border:1px solid rgba(107,114,128,.2)}.status-badge .status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.actions-cell{text-align:center;position:relative}.action-dropdown-btn{padding:.5rem;background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.action-dropdown-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.action-dropdown{position:absolute;right:0;top:100%;margin-top:.25rem;background:var(--card-bg);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:0 4px 6px #0000001a;z-index:10;min-width:150px;overflow:hidden}.action-dropdown.dropup{top:auto;bottom:100%;margin-top:0;margin-bottom:.25rem}.action-dropdown button{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:none;border:none;color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all var(--transition-fast);text-align:left}.action-dropdown button:hover{background:var(--bg-secondary)}.action-dropdown button.delete{color:var(--danger)}.action-dropdown button.delete:hover{background:#ef44441a}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.empty-state svg{opacity:.2;margin-bottom:1rem}.empty-state h3{font-size:1.25rem;margin-bottom:.5rem;color:var(--text-primary)}.empty-state p{margin-bottom:2rem;color:var(--text-secondary)}.loading-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.services-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{padding:1rem;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.stat-label{font-size:.75rem;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:.25rem}.stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.services-mobile-list{display:none}.service-list-item{padding:1rem;background:var(--card-bg);border:1px solid var(--border-primary);border-radius:var(--radius-md);margin-bottom:.75rem}.service-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.service-list-title{flex:1}.service-list-title h3{font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:.25rem}.service-list-details{display:flex;flex-wrap:wrap;gap:1rem;font-size:.875rem;color:var(--text-secondary)}.service-list-details .detail{display:flex;align-items:center;gap:.25rem}.service-list-price{font-size:1.125rem;font-weight:600;color:var(--success)}@media (max-width: 1024px){.services-page{padding:1.5rem}.services-controls{flex-direction:column;align-items:stretch}.filter-group{justify-content:center}.search-bar{max-width:none}}@media (max-width: 768px){.services-page{width:100%;padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.services-table-container{display:none}.services-mobile-list{display:block}.services-stats{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.services-stats{grid-template-columns:1fr}.filter-group{flex-direction:column;width:100%}.filter-btn{width:100%;text-align:center}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--card-bg);border-radius:var(--radius-lg);width:100%;max-width:500px;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-primary)}.modal-header h2{font-size:1.25rem;font-weight:600;margin:0;color:var(--text-primary)}.close-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.confirm-content{padding:1.5rem}.confirm-content p{color:var(--text-primary);margin-bottom:1rem;line-height:1.6}.warning-text{color:var(--text-secondary);font-size:.875rem;margin-top:1rem;margin-bottom:0}.delete-warning{display:flex;gap:1rem;padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);margin:1rem 0;color:var(--text-primary)}.delete-warning svg{color:#ef4444;flex-shrink:0}.warning-title{font-weight:600;margin-bottom:.25rem;color:#ef4444;margin-top:0}.warning-subtitle{font-size:.875rem;color:var(--text-secondary);margin:0}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border-primary)}.btn{padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:500;font-size:.875rem;cursor:pointer;transition:all var(--transition-fast);border:none;display:flex;align-items:center;gap:.5rem}.btn-secondary:hover:not(:disabled){background:var(--bg-elevated)}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn:disabled{opacity:.5;cursor:not-allowed}.pagination{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);margin-top:1rem;gap:1rem}.pagination-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pagination-btn:hover:not(:disabled){background:var(--primary);color:#fff;border-color:var(--primary)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{color:var(--text-secondary);font-size:.875rem}.bulk-actions-toolbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--primary);color:#fff;border-radius:var(--radius-lg);margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.bulk-actions-info{display:flex;align-items:center;gap:1rem;font-weight:500}.btn-link{background:transparent;border:none;color:#fff;text-decoration:underline;cursor:pointer;font-size:.875rem;padding:0;opacity:.9}.btn-link:hover{opacity:1}.bulk-actions-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.btn-sm{padding:.5rem 1rem;font-size:.813rem}.btn-success{background:#22c55e;color:#fff}.btn-success:hover:not(:disabled){background:#16a34a}.checkbox-cell{width:40px;text-align:center}.service-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--primary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}.platform-import-modal{background:var(--card-bg);border-radius:var(--radius-lg);max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:1px solid var(--border-primary)}.modal-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:var(--radius-md);transition:all var(--transition-fast)}.close-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-body{padding:2rem}.modal-description{color:var(--text-secondary);margin-bottom:2rem;font-size:1rem;line-height:1.5}.platform-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.platform-card{background:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:var(--radius-md);padding:1.5rem;text-align:center;cursor:pointer;transition:all var(--transition-fast);position:relative}.platform-card:hover:not(:disabled){border-color:var(--primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.platform-card:disabled{opacity:.6;cursor:not-allowed}.platform-card.coming-soon{background:var(--bg-tertiary)}.platform-icon{font-size:2.5rem;display:block;margin-bottom:.75rem}.platform-card h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.platform-card p{font-size:.875rem;color:var(--text-secondary);margin-bottom:.75rem;line-height:1.4}.platform-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;background:var(--success);color:#fff}.platform-badge.coming-soon{background:var(--text-tertiary)}.divider{display:flex;align-items:center;gap:1rem;margin:2rem 0;color:var(--text-secondary);font-size:.875rem}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border-primary)}.request-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.request-btn:hover{border-color:var(--primary);background:var(--primary);color:#fff}.platform-instructions{background:var(--bg-secondary);border-left:4px solid var(--primary);padding:1.5rem;border-radius:var(--radius-md);margin-bottom:2rem}.platform-instructions h3{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.platform-instructions ol{margin:0;padding-left:1.5rem}.platform-instructions li{color:var(--text-secondary);margin-bottom:.5rem;line-height:1.5}.platform-instructions strong{color:var(--text-primary)}.upload-section{margin-bottom:2rem}.upload-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-weight:500;font-size:1rem;cursor:pointer;transition:all var(--transition-fast)}.upload-btn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.upload-btn:disabled{opacity:.6;cursor:not-allowed}.custom-platform-form{display:flex;flex-direction:column;gap:1rem}.custom-platform-form label{font-weight:500;color:var(--text-primary);font-size:.875rem}.platform-input{width:100%;padding:.75rem 1rem;border:2px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:1rem;transition:border-color var(--transition-fast)}.platform-input:focus{outline:none;border-color:var(--primary)}.helper-text{font-size:.813rem;color:var(--text-secondary);margin-top:-.5rem}.error-message{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--danger);font-size:.875rem;margin-top:1rem}.back-btn{background:none;border:none;color:var(--text-secondary);font-size:.875rem;cursor:pointer;padding:.5rem;transition:color var(--transition-fast)}.back-btn:hover{color:var(--text-primary)}.confirmation-section{text-align:center;padding:2rem 0}.confirmation-section svg{margin-bottom:1.5rem}.confirmation-section h3{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.confirmation-section p{color:var(--text-secondary);font-size:1rem;line-height:1.5;margin-bottom:.5rem}.confirmation-note{font-size:.875rem;color:var(--text-tertiary);margin-top:1rem}.preview-note{background:var(--bg-secondary);border-radius:var(--radius-md);padding:1rem;margin:1.5rem 0;text-align:left;font-size:.875rem;color:var(--text-secondary)}.preview-note ul{margin:.5rem 0 0;padding-left:1.5rem}.preview-note li{margin-bottom:.25rem}.confirmation-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-md);font-weight:500;font-size:1rem;cursor:pointer;transition:all var(--transition-fast)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-1px)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary)}.btn-secondary:hover{background:var(--bg-tertiary)}@media (max-width: 768px){.platform-grid{grid-template-columns:1fr}.modal-body{padding:1.5rem}.confirmation-actions{flex-direction:column}.btn{width:100%}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:var(--spacing-xl);position:relative}.back-link{position:absolute;top:2rem;left:2rem;display:inline-flex;align-items:center;gap:.5rem;color:#6b7280;text-decoration:none;font-size:.9rem;font-weight:500;transition:all var(--transition-base);z-index:10;padding:.5rem;border-radius:var(--radius-md)}.back-link:hover{color:#374151;background:#0000000d}.back-link svg{width:20px;height:20px}.auth-container{width:100%;max-width:450px}.auth-card{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--spacing-2xl);box-shadow:var(--shadow-xl)}.auth-header{text-align:center;margin-bottom:var(--spacing-xl)}.auth-logo{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;background:var(--primary-color);border-radius:var(--radius-full);margin-bottom:var(--spacing-lg);color:#fff}.auth-header h1{font-size:1.875rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.auth-header p{font-size:1rem;color:var(--text-secondary)}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:var(--spacing-md);color:var(--text-tertiary);pointer-events:none}.form-input{width:100%;padding:.75rem var(--spacing-md) .75rem 3rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;transition:border-color var(--transition-base)}.form-input:focus{outline:none;border-color:var(--input-focus)}.form-input::-moz-placeholder{color:var(--text-muted)}.form-input::placeholder{color:var(--text-muted)}.password-toggle{position:absolute;right:var(--spacing-md);background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color var(--transition-base)}.password-toggle:hover{color:var(--text-primary)}.form-options{display:flex;align-items:center;justify-content:space-between;font-size:.875rem}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-secondary);cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.forgot-link{color:var(--primary-color);text-decoration:none;font-weight:500;transition:opacity var(--transition-base)}.forgot-link:hover{opacity:.8}.submit-btn,.google-btn{width:100%;padding:.875rem var(--spacing-lg);border-radius:var(--radius-md);font-size:1rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);transition:all var(--transition-base);cursor:pointer;border:none}.submit-btn{background:var(--primary-color);color:#fff}.submit-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.google-btn{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary)}.google-btn:hover:not(:disabled){background:var(--card-hover)}.google-btn:disabled{opacity:.6;cursor:not-allowed}.divider{display:flex;align-items:center;text-align:center;color:var(--text-tertiary);font-size:.875rem;margin:var(--spacing-sm) 0}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid var(--border-primary)}.divider span{padding:0 var(--spacing-md)}.error-message{padding:var(--spacing-md);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:#fca5a5;font-size:.875rem;text-align:center}.auth-footer{text-align:center;margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-primary)}.auth-footer p{color:var(--text-secondary);font-size:.875rem}.auth-link{color:var(--primary-color);text-decoration:none;font-weight:600;transition:opacity var(--transition-base)}.auth-link:hover{opacity:.8}@media (max-width: 640px){.auth-page{padding:var(--spacing-lg)}.auth-card{padding:var(--spacing-xl)}.auth-header h1{font-size:1.5rem}.back-link{top:var(--spacing-md);left:var(--spacing-md)}}.magic-link-auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:var(--spacing-xl)}.magic-link-card{width:100%;max-width:450px;background:var(--card-bg);border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--spacing-2xl);box-shadow:var(--shadow-xl)}.magic-link-content{text-align:center}.magic-link-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:var(--radius-full);margin-bottom:var(--spacing-lg)}.magic-link-icon.verifying{background:#3b82f61a;color:#3b82f6}.magic-link-icon.success{background:#22c55e1a;color:#22c55e}.magic-link-icon.error{background:#ef44441a;color:#ef4444}.magic-link-icon .animate-spin{animation:spin 1s linear infinite}.magic-link-content h1{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-md)}.magic-link-content p{font-size:1rem;color:var(--text-secondary);margin-bottom:var(--spacing-lg);line-height:1.6}.magic-link-content .error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-xl);color:#fca5a5}.magic-link-actions{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.magic-link-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);font-size:1rem;font-weight:600;border-radius:var(--radius-md);border:none;cursor:pointer;text-decoration:none;transition:all var(--transition-base)}.magic-link-actions .btn-primary{background:var(--primary-color);color:#fff}.magic-link-actions .btn-primary:hover{opacity:.9;transform:translateY(-1px)}.magic-link-actions .btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary)}.magic-link-actions .btn-secondary:hover{background:var(--card-hover)}@media (max-width: 640px){.magic-link-auth-container{padding:var(--spacing-lg)}.magic-link-card{padding:var(--spacing-xl)}.magic-link-content h1{font-size:1.25rem}.magic-link-icon{width:64px;height:64px}}.client-login-page{min-height:100vh;background:var(--stone-100);padding:var(--space-8) var(--space-4);display:flex;align-items:center;justify-content:center}.login-container{max-width:500px;width:100%;margin:0 auto}.login-header{text-align:center;margin-bottom:var(--space-8)}.client-login-page .back-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-700);font-size:var(--font-size-sm);font-weight:500;margin-bottom:var(--space-6);transition:color var(--transition-fast)}.client-login-page .back-link:hover{color:var(--teal-800)}.client-login-page .back-link .material-symbols-outlined{font-size:20px}.login-logo{height:60px;width:auto;margin:0 auto var(--space-6);display:block}.login-header h1{font-size:var(--font-size-3xl);color:var(--ink-900);margin-bottom:var(--space-2)}.login-subtitle{font-size:var(--font-size-lg);color:var(--text-500);max-width:400px;margin:0 auto}.login-form{background:var(--white);padding:var(--space-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:var(--space-5)}.login-form .form-field{display:flex;flex-direction:column;gap:var(--space-2)}.login-form .form-field label{font-weight:600;color:var(--ink-900);font-size:var(--font-size-sm)}.login-form .form-field input{padding:var(--space-3) var(--space-4);border:1px solid var(--sand-200);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--text-700);background:var(--white);transition:all var(--transition-fast);width:100%;box-sizing:border-box}.login-form .form-field input:focus{outline:2px solid var(--gold-500);border-color:var(--gold-500)}.login-form .form-field input:disabled{opacity:.5;cursor:not-allowed;background:var(--sand-200)}.login-form .form-field input.error{border-color:#ff6b6b;outline-color:#ff6b6b}.field-error{color:#ff6b6b;font-size:var(--font-size-sm);margin:0}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{padding-right:48px!important}.password-toggle{position:absolute;right:12px;background:none;border:none;cursor:pointer;padding:4px;color:var(--text-500);display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast)}.password-toggle:hover{color:var(--ink-900)}.password-toggle .material-symbols-outlined{font-size:20px}.form-options{display:flex;justify-content:flex-end;margin-top:calc(-1 * var(--space-2));margin-bottom:var(--space-4)}.forgot-link{color:var(--gold-500);font-size:var(--font-size-sm);font-weight:500;transition:color var(--transition-fast)}.forgot-link:hover{color:#b89539;text-decoration:underline}.general-error{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:var(--radius-md);color:#ff6b6b;font-size:var(--font-size-sm)}.general-error .material-symbols-outlined{font-size:20px}.login-form .btn{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--font-size-base);font-weight:600;border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer}.login-form .btn:disabled{opacity:.7;cursor:not-allowed}.login-form .btn-primary{background:var(--gold-500);color:var(--ink-900);border:none}.login-form .btn-primary:hover:not(:disabled){background:#b89539}.btn-google{background:var(--white);color:var(--ink-900);border:1px solid var(--sand-200)}.btn-google:hover:not(:disabled){background:var(--stone-100);border-color:var(--sand-300)}.btn-google svg{flex-shrink:0}.divider{position:relative;text-align:center;margin:var(--space-2) 0}.divider:before{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:var(--sand-200)}.divider span{position:relative;padding:0 var(--space-4);background:var(--white);color:var(--text-500);font-size:var(--font-size-sm)}.login-footer-text{text-align:center;color:var(--text-500);font-size:var(--font-size-base);margin:var(--space-4) 0 0}.signup-link{color:var(--gold-500);font-weight:600;transition:color var(--transition-fast)}.signup-link:hover{color:#b89539;text-decoration:underline}@media (max-width: 640px){.client-login-page{padding:var(--space-4) var(--space-3)}.login-form{padding:var(--space-6)}.login-header h1{font-size:var(--font-size-2xl)}.login-subtitle{font-size:var(--font-size-base)}}.client-nav{position:fixed;top:0;left:0;height:100vh;width:var(--nav-width);background:var(--teal-800);color:var(--white);display:flex;flex-direction:column;z-index:var(--z-nav);transform:translate(-100%);transition:transform var(--transition-base);will-change:transform;backface-visibility:hidden}.client-nav.open{transform:translate(0)}@media (min-width: 1024px){.client-nav{transform:translate(0)}.client-nav:not(.open){transform:translate(-100%)}}.nav-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0b0f1380;z-index:calc(var(--z-nav) - 1)}@media (min-width: 1024px){.nav-overlay{display:none}}.client-nav-header{padding:var(--space-6);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1)}.nav-logo{height:40px;width:auto}.nav-close{background:transparent;border:none;color:var(--white);padding:var(--space-2);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);cursor:pointer}.nav-close:hover{background:#ffffff1a}.user-info{padding:var(--space-6);display:flex;align-items:center;gap:var(--space-3);border-bottom:1px solid rgba(255,255,255,.1)}.user-avatar{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#ffffff1a;color:var(--gold-500);flex-shrink:0}.user-avatar .material-symbols-outlined{font-size:32px}.user-details{flex:1;min-width:0}.user-name{font-weight:600;font-size:var(--font-size-base);color:var(--white);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:var(--font-size-sm);color:#fff9;margin:var(--space-1) 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-items{flex:1;list-style:none;padding:var(--space-4) 0;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);color:#fffc;transition:all var(--transition-fast);position:relative}.nav-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold-500);transform:scaleY(0);transition:transform var(--transition-fast)}.nav-item:hover{background:#ffffff0d;color:var(--white)}.nav-item.active{color:var(--gold-500);background:#c9a6461a}.nav-item.active:before{transform:scaleY(1)}.nav-icon{font-size:20px;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.nav-label{font-weight:500;font-size:var(--font-size-base)}.nav-footer{padding:var(--space-6);border-top:1px solid rgba(255,255,255,.1)}.logout-button{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:#ef44441a;color:#fca5a5;font-weight:600;font-size:var(--font-size-base);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);width:100%;cursor:pointer;transition:all var(--transition-fast)}.logout-button:hover{background:#ef444433;border-color:#ef444480;color:#fecaca;transform:translateY(-1px)}.logout-button .material-symbols-outlined{font-size:20px}.appointment-details-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:var(--z-modal, 2000);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.appointment-details-container.client-modal{background:var(--white, #FFFFFF);width:100%;max-width:600px;max-height:90vh;border-radius:var(--radius-lg, 12px) var(--radius-lg, 12px) 0 0;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 -4px 24px #0b0f1326}.appointment-details-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6, 1.5rem);border-bottom:1px solid var(--sand-200, #E9E2D7);background:var(--stone-100, #F5F6F7);flex-shrink:0}.appointment-details-header .header-content{display:flex;align-items:center;gap:var(--space-3, .75rem);flex:1}.appointment-details-header h2{font-size:var(--font-size-lg, 1.125rem);font-weight:600;color:var(--ink-900, #0B0F13);margin:0}.close-btn{padding:var(--space-2, .5rem);background:transparent;border:none;color:var(--text-500, #55616A);cursor:pointer;transition:color var(--transition-fast, .15s);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm, 4px)}.close-btn:hover{color:var(--ink-900, #0B0F13);background:#0b0f130d}.appointment-details-content{flex:1;overflow-y:auto;padding:var(--space-6, 1.5rem)}.detail-section{margin-bottom:var(--space-8, 2rem)}.detail-section:last-child{margin-bottom:0}.section-heading{font-size:var(--font-size-sm, .875rem);font-weight:600;color:var(--text-700, #2B3338);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-4, 1rem);display:flex;align-items:center;gap:var(--space-2, .5rem)}.date-time-section{background:var(--white, #FFFFFF);padding:var(--space-6, 1.5rem);border-radius:var(--radius-lg, 12px);margin:calc(var(--space-6, 1.5rem) * -1);margin-bottom:var(--space-8, 2rem)}.date-time-section .detail-item{margin-bottom:var(--space-4, 1rem)}.date-time-section .detail-item:last-child{margin-bottom:0}.date-time-section svg,.date-time-section .material-symbols-outlined{color:var(--text-500, #55616A)}.date-time-section label{color:var(--text-500, #55616A)}.date-time-section .prominent-text{color:var(--text-700, #2B3338);font-size:var(--font-size-lg, 1.125rem);font-weight:600}.detail-item{display:flex;align-items:flex-start;gap:var(--space-3, .75rem);margin-bottom:var(--space-4, 1rem)}.detail-item:last-child{margin-bottom:0}.detail-item svg,.detail-item .material-symbols-outlined{color:var(--text-500, #55616A);margin-top:.125rem;flex-shrink:0}.detail-item .detail-icon{font-size:18px}.detail-item>div{flex:1;min-width:0}.detail-item label{display:block;font-size:var(--font-size-xs, .75rem);color:var(--text-500, #55616A);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-1, .25rem);font-weight:500}.detail-item span{display:block;font-size:var(--font-size-base, 1rem);color:var(--text-700, #2B3338);font-weight:500}.status-badge{display:inline-flex;align-items:center;padding:var(--space-1, .25rem) var(--space-3, .75rem);border-radius:var(--radius-md, 8px);font-size:var(--font-size-xs, .75rem);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-scheduled{background:#10b9811a;color:#10b981;border:1px solid rgba(16,185,129,.2)}.status-pending{background:#fbbf241a;color:#fbbf24;border:1px solid rgba(251,191,36,.2)}.status-completed{background:#6b72801a;color:#6b7280;border:1px solid rgba(107,114,128,.2)}.status-cancelled{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.status-default{background:#6b72801a;color:#6b7280;border:1px solid rgba(107,114,128,.2)}.services-list{background:var(--stone-100, #F5F6F7);border-radius:var(--radius-md, 8px);padding:var(--space-4, 1rem);margin-bottom:var(--space-4, 1rem)}.service-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3, .75rem) 0;border-bottom:1px solid var(--sand-200, #E9E2D7)}.service-item:last-child{border-bottom:none;padding-bottom:0}.service-item:first-child{padding-top:0}.service-info{display:flex;align-items:center;gap:var(--space-2, .5rem);flex:1}.service-icon{color:var(--gold-500, #C9A646);font-size:20px}.service-name{font-weight:500;color:var(--text-700, #2B3338);font-size:var(--font-size-base, 1rem)}.service-details{display:flex;align-items:center;gap:var(--space-3, .75rem);font-size:var(--font-size-sm, .875rem)}.service-duration{color:var(--text-500, #55616A)}.service-price{color:var(--text-700, #2B3338);font-weight:600}.services-total{background:var(--white, #FFFFFF);border:2px solid var(--gold-500, #C9A646);border-radius:var(--radius-md, 8px);padding:var(--space-4, 1rem)}.total-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4, 1rem)}.total-item{display:flex;flex-direction:column;gap:var(--space-1, .25rem)}.total-item label{font-size:var(--font-size-xs, .75rem);color:var(--text-500, #55616A);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.total-item span{font-size:var(--font-size-base, 1rem);color:var(--text-700, #2B3338);font-weight:600}.price-total{text-align:right}.total-price{color:var(--gold-500, #C9A646);font-size:var(--font-size-xl, 1.25rem);font-weight:700}.notes-item{align-items:flex-start}.notes-text{background:var(--stone-100, #F5F6F7);padding:var(--space-3, .75rem);border-radius:var(--radius-md, 8px);color:var(--text-700, #2B3338);font-size:var(--font-size-sm, .875rem);line-height:1.6;margin-top:var(--space-2, .5rem);white-space:pre-wrap}.appointment-details-footer{padding:var(--space-4, 1rem) var(--space-6, 1.5rem);border-top:1px solid var(--sand-200, #E9E2D7);background:var(--stone-100, #F5F6F7);flex-shrink:0}.action-buttons{display:flex;flex-direction:column;gap:var(--space-3, .75rem)}.appointment-details-footer .btn{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2, .5rem);padding:var(--space-3, .75rem) var(--space-4, 1rem);border:none;border-radius:var(--radius-md, 8px);font-weight:600;font-size:var(--font-size-base, 1rem);cursor:pointer;transition:all var(--transition-fast, .15s)}.appointment-details-footer .btn .material-symbols-outlined{font-size:20px}.btn-primary{background:var(--gold-500, #C9A646);color:var(--white, #FFFFFF)}.btn-primary:hover{background:#b89540;transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 6px rgba(11, 15, 19, .07))}.btn-secondary{background:var(--white, #FFFFFF);color:var(--text-700, #2B3338);border:1px solid var(--sand-200, #E9E2D7)}.btn-secondary:hover{background:var(--stone-100, #F5F6F7);border-color:var(--text-500, #55616A)}.btn-danger{background:var(--white, #FFFFFF);color:#ef4444;border:1px solid #EF4444}.btn-danger:hover{background:#ef4444;color:var(--white, #FFFFFF);transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 6px rgba(239, 68, 68, .2))}@media (min-width: 768px){.appointment-details-overlay{align-items:center}.appointment-details-container.client-modal{max-height:85vh;border-radius:var(--radius-lg, 12px)}.appointment-details-header h2{font-size:var(--font-size-xl, 1.25rem)}.date-time-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6, 1.5rem)}.date-time-section .detail-item{margin-bottom:0}.action-buttons{flex-direction:row}.action-buttons .btn-danger{order:2;flex:0 0 auto;width:auto;min-width:200px}.action-buttons .btn-primary{order:1;flex:1}}@media (min-width: 640px) and (max-width: 767px){.appointment-details-container.client-modal{border-radius:var(--radius-lg, 12px) var(--radius-lg, 12px) 0 0}}.appointment-details-content{scrollbar-width:thin;scrollbar-color:var(--sand-200, #E9E2D7) transparent}.appointment-details-content::-webkit-scrollbar{width:6px}.appointment-details-content::-webkit-scrollbar-track{background:transparent}.appointment-details-content::-webkit-scrollbar-thumb{background:var(--sand-200, #E9E2D7);border-radius:3px}.appointment-details-content::-webkit-scrollbar-thumb:hover{background:var(--text-500, #55616A)}.cancel-modal{position:relative;background:#fff;border-radius:12px;width:90%;max-width:500px;box-shadow:0 10px 40px #0003;animation:modalFadeIn .3s ease}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.cancel-modal .modal-header{padding:24px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;position:relative}.cancel-modal .modal-header.warning{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-bottom:1px solid #fecaca}.cancel-modal .header-icon{margin-right:12px;color:#dc2626;display:flex;align-items:center}.cancel-modal .modal-header h2{margin:0;font-size:24px;font-weight:600;color:#1f2937;flex:1}.cancel-modal .close-btn{background:none;border:none;cursor:pointer;color:#6b7280;transition:color .2s;padding:4px;display:flex;align-items:center;justify-content:center;position:absolute;right:16px;top:50%;transform:translateY(-50%)}.cancel-modal .close-btn:hover{color:#1f2937}.cancel-modal .modal-body{padding:24px}.cancel-modal .warning-message{margin-bottom:24px}.cancel-modal .warning-message p{margin:0;font-size:16px;color:#374151;font-weight:500}.cancel-modal .appointment-details{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:20px}.cancel-modal .appointment-details h3{margin:0 0 12px;font-size:14px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.cancel-modal .detail-list{display:flex;flex-direction:column;gap:10px}.cancel-modal .detail-item{display:flex;align-items:center;gap:8px;color:#374151;font-size:14px}.cancel-modal .detail-item svg{color:#9ca3af}.cancel-modal .service-name{font-weight:500;color:#1f2937}.cancel-modal .cancellation-policy{background:#fef3c7;border:1px solid #fde68a;border-radius:8px;padding:16px;margin-bottom:24px}.cancel-modal .policy-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.cancel-modal .policy-header svg{color:#d97706}.cancel-modal .policy-header h3{margin:0;font-size:14px;font-weight:600;color:#92400e;text-transform:uppercase;letter-spacing:.5px}.cancel-modal .policy-content{color:#78350f;font-size:14px;line-height:1.6}.cancel-modal .policy-content p{margin:0}.cancel-modal .policy-notice{display:flex;align-items:flex-start;gap:8px;padding:12px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;margin-bottom:24px}.cancel-modal .policy-notice svg{color:#0284c7;flex-shrink:0;margin-top:2px}.cancel-modal .policy-notice p{margin:0;font-size:14px;color:#075985;line-height:1.5}.cancel-modal .modal-actions{display:flex;gap:12px;justify-content:flex-end}.cancel-modal .btn-secondary,.cancel-modal .btn-danger{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.cancel-modal .btn-secondary{background:#f3f4f6;color:#4b5563}.cancel-modal .btn-secondary:hover:not(:disabled){background:#e5e7eb}.cancel-modal .btn-danger{background:#ef4444;color:#fff}.cancel-modal .btn-danger:hover:not(:disabled){background:#dc2626}.cancel-modal .btn-secondary:disabled,.cancel-modal .btn-danger:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.cancel-modal{width:95%}.cancel-modal .modal-header h2{font-size:20px}.cancel-modal .modal-actions{flex-direction:column-reverse}.cancel-modal .btn-secondary,.cancel-modal .btn-danger{width:100%}}.client-signup-page{min-height:100vh;background:var(--stone-100);padding:var(--space-8) var(--space-4);display:flex;align-items:center;justify-content:center}.signup-container{max-width:600px;width:100%;margin:0 auto}.signup-header{text-align:center;margin-bottom:var(--space-8)}.back-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-700);font-size:var(--font-size-sm);font-weight:500;margin-bottom:var(--space-6);transition:color var(--transition-fast)}.back-link:hover{color:var(--teal-800)}.back-link .material-symbols-outlined{font-size:20px}.signup-logo{height:60px;width:auto;margin:0 auto var(--space-6);display:block}.signup-header h1{font-size:var(--font-size-3xl);color:var(--ink-900);margin-bottom:var(--space-2)}.signup-subtitle{font-size:var(--font-size-lg);color:var(--text-500);max-width:480px;margin:0 auto}.signup-form{background:var(--white);padding:var(--space-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:var(--space-6)}.form-row{display:grid;gap:var(--space-4)}@media (min-width: 640px){.form-row{grid-template-columns:repeat(2,1fr)}}.form-field{display:flex;flex-direction:column;gap:var(--space-2)}.form-field label{font-weight:600;color:var(--ink-900);font-size:var(--font-size-sm)}.form-field input{padding:var(--space-3) var(--space-4);border:1px solid var(--sand-200);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--text-700);background:var(--white);transition:all var(--transition-fast)}.form-field input:focus{outline:2px solid var(--gold-500);border-color:var(--gold-500)}.form-field input:disabled{opacity:.5;cursor:not-allowed;background:var(--sand-200)}.form-field input.error{border-color:#ff6b6b;outline-color:#ff6b6b}.field-error{color:#ff6b6b;font-size:var(--font-size-sm);margin:0;margin-top:calc(-1 * var(--space-1))}.signup-form button{margin-top:var(--space-2);width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.signup-form button:disabled{opacity:.7;cursor:not-allowed}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.signup-footer-text{text-align:center;color:var(--text-500);font-size:var(--font-size-base);margin:var(--space-4) 0 0}.login-link{color:var(--gold-500);font-weight:600;transition:color var(--transition-fast)}.login-link:hover{color:#b89539;text-decoration:underline}@media (max-width: 640px){.client-signup-page{padding:var(--space-4) var(--space-3)}.signup-form{padding:var(--space-6)}.signup-header h1{font-size:var(--font-size-2xl)}.signup-subtitle{font-size:var(--font-size-base)}}.app{display:flex;min-height:100vh}.content-wrapper{flex:1;display:flex;flex-direction:column;margin-left:0;transition:margin-left var(--transition-base)}.mobile-header{position:fixed;top:0;left:0;right:0;height:64px;background:var(--teal-800);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-4);z-index:calc(var(--z-nav) - 1);box-shadow:var(--shadow-md)}.mobile-logo{height:40px;width:auto;position:absolute;left:50%;transform:translate(-50%);pointer-events:none}@media (min-width: 1024px){.content-wrapper.nav-open{margin-left:var(--nav-width)}.content-wrapper.nav-closed{margin-left:0}.mobile-header{display:none}}.nav-toggle{width:48px;height:48px;border:none;border-radius:var(--radius-lg);background:transparent;color:var(--white);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);position:relative;z-index:10;cursor:pointer}.nav-toggle:hover{background:#ffffff1a}.nav-toggle:active{transform:scale(.95);background:#fff3}.desktop-nav-reopen{position:fixed;top:var(--space-4);left:var(--space-4);z-index:calc(var(--z-nav) - 1);width:48px;height:48px;border:none;border-radius:var(--radius-lg);background:var(--teal-800);color:var(--white);display:none!important;align-items:center;justify-content:center;box-shadow:var(--shadow-md);transition:all var(--transition-fast)}@media (min-width: 1024px){.desktop-nav-reopen{display:flex!important}}.main-content{flex:1;max-width:var(--content-max-width);margin:0 auto;padding:calc(64px + var(--space-8)) var(--space-4) var(--space-8);width:100%}.main-content.dashboard-content{max-width:none;padding:0;margin:0;width:100%}@media (min-width: 768px){.main-content{padding:calc(64px + var(--space-12)) var(--space-8) var(--space-12)}}@media (min-width: 1024px){.main-content{padding:var(--space-12) var(--space-8)}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-6);border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:600;transition:all var(--transition-fast);min-height:44px}.btn-primary{background:var(--gold-500);color:var(--ink-900)}.btn-primary:hover{background:#b89539;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:transparent;color:var(--teal-800);border:2px solid var(--teal-800)}.btn-secondary:hover{background:var(--teal-800);color:var(--white)}.btn-outline{background:transparent;color:var(--ink-900);border:2px solid var(--sand-300)}.btn-outline:hover{background:var(--sand-200);border-color:var(--ink-900)}.section{margin-bottom:var(--space-16)}.section-title{font-size:var(--font-size-3xl);margin-bottom:var(--space-4);color:var(--ink-900)}.section-subtitle{font-size:var(--font-size-lg);color:var(--text-500);margin-bottom:var(--space-8)}body.scroll-locked{overflow:hidden}body.modal-open{overflow:hidden!important;position:fixed;width:100%;height:100%}:root{--ink-900: #0B0F13;--teal-800: #12323D;--sand-200: #E9E2D7;--gold-500: #C9A646;--stone-100: #F5F6F7;--white: #FFFFFF;--text-700: #2B3338;--text-500: #55616A;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(11, 15, 19, .05);--shadow-md: 0 4px 6px rgba(11, 15, 19, .07);--shadow-lg: 0 10px 15px rgba(11, 15, 19, .1);--transition-fast: .15s ease-in-out;--transition-base: .2s ease-in-out;--z-nav: 1000;--z-modal: 2000;--z-toast: 3000;--nav-width: 240px;--content-max-width: 1600px}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--text-700);background-color:var(--stone-100);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--ink-900)}button{font-family:var(--font-family);cursor:pointer}a{color:inherit;text-decoration:none}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:focus-visible{outline:2px solid var(--gold-500);outline-offset:2px}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{border-color:hsl(var(--border));outline-color:hsl(var(--ring) / .5)}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.right-4{right:1rem}.top-0{top:0}.top-4{top:1rem}.z-50{z-index:50}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.size-4{width:1rem;height:1rem}.size-\[--cell-size\]{width:var(--cell-size);height:var(--cell-size)}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-16{height:4rem}.h-20{height:5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[--cell-size\]{height:var(--cell-size)}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-64{max-height:16rem}.min-h-\[400px\]{min-height:400px}.min-h-\[500px\]{min-height:500px}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-20{width:5rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[--cell-size\]{width:var(--cell-size)}.w-\[280px\]{width:280px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[--cell-size\]{min-width:var(--cell-size)}.min-w-\[400px\]{min-width:400px}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-\[100px\]{max-width:100px}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize-y{resize:vertical}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-l-md{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.rounded-r-md{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-amber-500{--tw-border-opacity: 1;border-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-900{--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.border-input{border-color:hsl(var(--input))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.border-t-black{--tw-border-opacity: 1;border-top-color:rgb(0 0 0 / var(--tw-border-opacity, 1))}.bg-accent{background-color:hsl(var(--accent))}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-background{background-color:hsl(var(--background))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/80{background-color:#000c}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-muted{background-color:hsl(var(--muted))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.px-\[--cell-size\]{padding-left:var(--cell-size);padding-right:var(--cell-size)}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-3{padding-bottom:.75rem}.pl-2{padding-left:.5rem}.pr-1{padding-right:.25rem}.pt-0{padding-top:0}.pt-4{padding-top:1rem}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.8rem\]{font-size:.8rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-slate-950{--tw-text-opacity: 1;color:rgb(2 6 23 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-amber-500\/20{--tw-ring-color: rgb(245 158 11 / .2)}.ring-offset-white{--tw-ring-offset-color: #fff}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.duration-300{animation-duration:.3s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.\[--cell-size\:2rem\]{--cell-size: 2rem}:root{--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", sans-serif;--background: 0 0% 100%;--foreground: 222 47% 11%;--card: 0 0% 100%;--card-foreground: 222 47% 11%;--popover: 0 0% 100%;--popover-foreground: 222 47% 11%;--primary: 222 47% 11%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96%;--secondary-foreground: 222 47% 11%;--muted: 210 40% 96%;--muted-foreground: 215 16% 47%;--accent: 210 40% 96%;--accent-foreground: 222 47% 11%;--destructive: 0 84% 60%;--destructive-foreground: 210 40% 98%;--border: 214 32% 91%;--input: 214 32% 91%;--ring: 222 47% 11%;--radius: .5rem;--teal-800: #12323D;--teal-700: #1a4552;--teal-900: #0B1E26;--gold-500: #C9A646;--gold-600: #B8953F;--danger: #EF4444;--warning: #F97316;--primary-color: var(--teal-800);--secondary-color: var(--gold-500);--accent-color: var(--gold-500);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .5);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .5), 0 2px 4px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -2px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .5), 0 10px 10px -5px rgba(0, 0, 0, .4);--glass-bg: rgba(255, 255, 255, .05);--glass-border: rgba(255, 255, 255, .1);--chart-1: 12 76% 61%;--chart-2: 173 58% 39%;--chart-3: 197 37% 24%;--chart-4: 43 74% 66%;--chart-5: 27 87% 67%;--sidebar: 0 0% 98%;--sidebar-foreground: 240 5% 26%;--sidebar-primary: 222 47% 11%;--sidebar-primary-foreground: 210 40% 98%;--sidebar-accent: 240 5% 96%;--sidebar-accent-foreground: 240 6% 10%;--sidebar-border: 220 13% 91%;--sidebar-ring: 217 91% 60%}[data-theme=dark],[data-theme=light]{--bg-primary: #F5F6F7;--bg-secondary: #FFFFFF;--bg-tertiary: #E9E2D7;--bg-elevated: #FFFFFF;--bg-overlay: rgba(18, 50, 61, .9);--text-primary: #0B0F13;--text-secondary: #2B3338;--text-tertiary: #55616A;--text-muted: #7B8894;--border-primary: #E1E4E8;--border-secondary: #D1D5DB;--card-bg: #FFFFFF;--card-hover: #F9FAFB;--input-bg: #FFFFFF;--input-border: #D1D5DB;--input-focus: var(--teal-800)}.shadow-sm{--shadow-sm: 0 1px 2px 0 rgba(11, 15, 19, .05);--shadow-md: 0 4px 6px -1px rgba(11, 15, 19, .07), 0 2px 4px -1px rgba(11, 15, 19, .06);--shadow-lg: 0 10px 15px -3px rgba(11, 15, 19, .1), 0 4px 6px -2px rgba(11, 15, 19, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(0, 0, 0, .1)}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;padding:0;margin:0}body{font-family:var(--font-family);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;transition:background-color var(--transition-base),color var(--transition-base);padding:0;margin:0;padding-top:constant(safe-area-inset-top);padding-top:env(safe-area-inset-top);padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom);padding-left:constant(safe-area-inset-left);padding-left:env(safe-area-inset-left);padding-right:constant(safe-area-inset-right);padding-right:env(safe-area-inset-right)}body.no-scroll{overflow:hidden!important;height:100vh!important;width:100%!important;position:relative!important}html.no-scroll{overflow:hidden!important}input,textarea,select{font-size:16px!important}#root,.app{min-height:100vh;display:flex;flex-direction:column;position:relative}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md);color:var(--text-primary)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-bottom:var(--spacing-md);color:var(--text-secondary)}a{color:var(--teal-800);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--teal-700)}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--spacing-lg)}.glass{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border)}.card{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-base)}.card:hover{background:var(--card-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:.875rem;font-weight:600;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;font-family:var(--font-family)}.btn-primary{background:var(--primary-color, var(--teal-800));color:#fff}.btn-primary:hover{background:var(--teal-700);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary)}.btn-secondary:hover{background:var(--bg-elevated);border-color:var(--border-secondary);color:var(--text-primary)}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border-primary)}.btn-ghost:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-secondary)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626}.input,.textarea,.select{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;font-family:var(--font-family);transition:all var(--transition-fast)}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--primary-color, var(--input-focus));box-shadow:0 0 0 3px var(--primary-100, rgba(255, 107, 53, .1))}.input::-moz-placeholder,.textarea::-moz-placeholder{color:var(--text-muted)}.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.label{display:block;margin-bottom:var(--spacing-xs);font-size:.875rem;font-weight:500;color:var(--text-secondary)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;background:var(--bg-tertiary);border-radius:var(--radius-md)}@media (max-width: 640px){html{font-size:14px}.container{padding:0 var(--spacing-md)}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}}@media (max-width: 768px){.hide-mobile{display:none!important}}@media (min-width: 768px){.hide-desktop{display:none!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeIn var(--transition-base)}.animate-slideInUp{animation:slideInUp var(--transition-base)}.animate-slideInDown{animation:slideInDown var(--transition-base)}.dark{--background: 222 47% 11%;--foreground: 210 40% 98%;--card: 222 47% 11%;--card-foreground: 210 40% 98%;--popover: 222 47% 11%;--popover-foreground: 210 40% 98%;--primary: 210 40% 98%;--primary-foreground: 222 47% 11%;--secondary: 217 33% 17%;--secondary-foreground: 210 40% 98%;--muted: 217 33% 17%;--muted-foreground: 215 20% 65%;--accent: 217 33% 17%;--accent-foreground: 210 40% 98%;--destructive: 0 63% 31%;--destructive-foreground: 210 40% 98%;--border: 217 33% 17%;--input: 217 33% 17%;--ring: 212 27% 84%}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:bottom-1:after{content:var(--tw-content);bottom:.25rem}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:h-1:after{content:var(--tw-content);height:.25rem}.after\:w-1:after{content:var(--tw-content);width:.25rem}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:bg-amber-500:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.hover\:border-amber-500:hover{--tw-border-opacity: 1;border-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.hover\:border-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.hover\:border-gray-900:hover{--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-red-800:hover{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-2xl:hover{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:border-amber-500:focus{--tw-border-opacity: 1;border-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-gray-900:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(17 24 39 / var(--tw-ring-opacity, 1))}.focus\:ring-slate-950:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(2 6 23 / var(--tw-ring-opacity, 1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.group:hover .group-hover\:text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\:text-muted-foreground[aria-selected=true]{color:hsl(var(--muted-foreground))}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:calc(var(--radius) - 2px)}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:hsl(var(--primary))}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:hsl(var(--accent))}.data-\[range-start\=true\]\:bg-primary[data-range-start=true],.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:hsl(var(--primary))}.data-\[state\=open\]\:bg-slate-100[data-state=open]{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:hsl(var(--primary-foreground))}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:hsl(var(--accent-foreground))}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true],.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:hsl(var(--primary-foreground))}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y: 100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x: -100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y: -100%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y: 100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x: -100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x: 100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:relative{position:relative}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:z-10{z-index:10}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:border-ring{border-color:hsl(var(--ring))}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:ring-\[3px\]{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:ring-ring\/50{--tw-ring-color: hsl(var(--ring) / .5)}@media not all and (min-width: 1024px){.max-lg\:hidden{display:none}}@media not all and (min-width: 768px){.max-md\:w-full{width:100%}.max-md\:min-w-full{min-width:100%}.max-md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.max-md\:flex-col{flex-direction:column}}@media (min-width: 640px){.sm\:max-w-sm{max-width:24rem}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:text-left{text-align:left}}@media (min-width: 768px){.md\:max-w-md{max-width:28rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:p-8{padding:2rem}.md\:px-8{padding-left:2rem;padding-right:2rem}}@media (min-width: 1024px){.lg\:max-w-lg{max-width:32rem}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>span\]\:text-xs>span{font-size:.75rem;line-height:1rem}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>svg\]\:size-3\.5>svg{width:.875rem;height:.875rem}.\[\&\>svg\]\:text-muted-foreground>svg{color:hsl(var(--muted-foreground))}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:transparent}
