@import"https://fonts.googleapis.com/css2?family=Cormorant+Upright:ital,wght@1,600&family=League+Gothic&family=PT+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap";:root{--blue: #1363A2;--pink: #E41874;--purple: #532D8E;--green: #7BC142;--orange: #F15A24;--amber: #F4B05E;--charcoal: #404041;--blue-lt: #99C5E8;--pink-lt: #EC89B1;--white: #FFFFFF;--black: #000000;--gray-light: #F5F5F5;--gray-mid: #E0E0E0;--gray-dark: #666666;--muted: #6B6B6C;--field-border: #767676;--vibe-morning-accent: #F4B05E;--vibe-morning-bg: #FBF7F2;--vibe-midday-accent: #1363A2;--vibe-midday-bg: #F4F7FB;--vibe-happyhour-accent: #F15A24;--vibe-happyhour-bg: #FFF5F0;--vibe-evening-accent: #E41874;--vibe-evening-bg: #1A1225;--vibe-latenight-accent: #E41874;--vibe-latenight-bg: #111112;--font-header: "League Gothic", sans-serif;--font-body: "PT Sans", sans-serif;--font-accent: "Cormorant Upright Italic", serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--breakpoint-mobile: 320px;--breakpoint-tablet: 768px;--breakpoint-desktop: 1024px}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--charcoal);background-color:var(--white);line-height:1.6;transition:background-color .3s ease,color .3s ease}body.vibe-morning{background-color:var(--vibe-morning-bg)}body.vibe-midday{background-color:var(--vibe-midday-bg)}body.vibe-happyhour{background-color:var(--vibe-happyhour-bg)}body.vibe-evening{background-color:var(--vibe-evening-bg)}body.vibe-latenight{background-color:var(--vibe-latenight-bg)}body.vibe-evening #main,body.vibe-latenight #main{background-color:var(--white);color:var(--charcoal)}h1,h2,h3,h4,h5,h6{font-family:var(--font-header);text-transform:uppercase;font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md)}h1{font-size:3rem;color:var(--blue);border-bottom:4px solid var(--blue-lt);padding-bottom:var(--spacing-md)}h2{font-size:2rem;color:var(--charcoal)}h3{font-size:1.5rem;color:var(--blue)}h4{font-size:1.25rem;color:var(--pink)}h5,h6{font-size:1rem;color:var(--charcoal)}p{margin-bottom:var(--spacing-md);font-size:1rem}small{font-size:.875rem}em{font-style:italic}strong{font-weight:700}a{color:var(--blue);text-decoration:none;transition:color .2s ease}a:hover{color:var(--purple);text-decoration:underline}button,.btn{padding:var(--spacing-md) var(--spacing-lg);border:none;border-radius:4px;font-family:var(--font-body);font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease;text-transform:uppercase}.btn-primary{background-color:var(--blue);color:var(--white)}.btn-primary:hover{background-color:var(--purple);box-shadow:0 4px 8px #0003}.btn-secondary{background-color:var(--pink);color:var(--white)}.btn-secondary:hover{background-color:var(--orange);box-shadow:0 4px 8px #0003}.btn-outline{background-color:transparent;color:var(--blue);border:2px solid var(--blue)}.btn-outline:hover{background-color:var(--blue);color:var(--white)}body.vibe-morning .btn-primary,body.vibe-morning .btn-secondary{background-color:var(--vibe-morning-accent);color:#5a3800}body.vibe-midday .btn-primary{background-color:var(--vibe-midday-accent);color:var(--white)}body.vibe-happyhour .btn-primary{background-color:#b83a0e;color:#fff}body.vibe-evening .btn-primary{background-color:var(--vibe-evening-accent);color:var(--white)}body.vibe-latenight .btn-primary{background-color:var(--vibe-latenight-accent);color:var(--white)}input,textarea,select{font-family:var(--font-body);border:1px solid var(--field-border);border-radius:4px;padding:var(--spacing-sm) var(--spacing-md);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #1363a21a}label{display:block;margin-bottom:var(--spacing-sm);font-weight:700;color:var(--charcoal);font-size:.95rem}input[type=checkbox],input[type=radio]{margin-right:var(--spacing-sm);width:20px;height:20px;cursor:pointer}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.row{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.col{flex:1}nav{background-color:var(--blue);padding:var(--spacing-md) 0;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px #0000001a}nav a{color:var(--white);padding:var(--spacing-md) var(--spacing-lg);display:inline-block;font-family:var(--font-header);text-transform:uppercase;transition:background-color .2s ease}nav a:hover{background-color:var(--purple);text-decoration:none}footer{background-color:var(--charcoal);color:var(--white);padding:var(--spacing-2xl) var(--spacing-lg);margin-top:var(--spacing-2xl);border-top:4px solid var(--blue)}footer a{color:var(--blue-lt)}footer a:hover{color:var(--white)}.card{background-color:var(--white);border:1px solid var(--gray-mid);border-radius:4px;padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:0 2px 4px #0000000d;transition:box-shadow .2s ease}.card:hover{box-shadow:0 4px 12px #0000001a}.card-header{border-bottom:2px solid var(--blue-lt);padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-md)}.card-body{padding:0}.card-footer{border-top:1px solid var(--gray-mid);padding-top:var(--spacing-md);margin-top:var(--spacing-md)}.alert{padding:var(--spacing-md);margin-bottom:var(--spacing-lg);border-left:4px solid;border-radius:4px;font-size:.95rem}.alert-info{background-color:#1363a21a;border-color:var(--blue);color:var(--blue)}.alert-success{background-color:#7bc1421a;border-color:var(--green);color:#2d5a0a}.alert-warning{background-color:#f4b05e1a;border-color:var(--amber);color:#5a3800}.alert-error{background-color:#e418741a;border-color:var(--pink);color:var(--pink)}body,h1,h2,h3,h4,h5,h6{font-size:1rem}button,.btn,a,input[type=checkbox],input[type=radio]{min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}body.vibe-evening :focus-visible,body.vibe-latenight :focus-visible{outline-color:var(--white)}.skip-link{position:absolute;top:-48px;left:8px;background:var(--blue);color:#fff;padding:10px 16px;border-radius:0 0 8px 8px;font-weight:700;text-decoration:none;z-index:200;transition:top .15s ease}.skip-link:focus{top:0;outline:3px solid var(--blue-lt)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 768px){h1{font-size:2rem}h2{font-size:1.5rem}.row{flex-direction:column;gap:var(--spacing-md)}.container{padding:0 var(--spacing-md)}nav a{padding:var(--spacing-sm) var(--spacing-md)}}.m-0{margin:0}.m-1{margin:var(--spacing-sm)}.m-2{margin:var(--spacing-md)}.m-3{margin:var(--spacing-lg)}.m-4{margin:var(--spacing-xl)}.p-0{padding:0}.p-1{padding:var(--spacing-sm)}.p-2{padding:var(--spacing-md)}.p-3{padding:var(--spacing-lg)}.p-4{padding:var(--spacing-xl)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--blue)}.text-secondary{color:var(--pink)}.text-success{color:var(--green)}.text-warning{color:var(--amber)}.text-error{color:var(--pink)}.bg-primary{background-color:var(--blue)}.bg-secondary{background-color:var(--pink)}.bg-success{background-color:var(--green)}.bg-warning{background-color:var(--amber)}.hidden{display:none}.visible{display:block}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-column{display:flex;flex-direction:column}.gap-1{gap:var(--spacing-sm)}.gap-2{gap:var(--spacing-md)}.gap-3{gap:var(--spacing-lg)}.gap-4{gap:var(--spacing-xl)}.shadow{box-shadow:0 2px 8px #0000001a}.shadow-lg{box-shadow:0 4px 16px #0003}.rounded{border-radius:4px}.rounded-lg{border-radius:8px}.border{border:1px solid var(--gray-mid)}.border-top{border-top:1px solid var(--gray-mid)}.border-bottom{border-bottom:1px solid var(--gray-mid)}@media (max-width: 560px){.cpf-slot-grid{grid-template-columns:1fr 1fr!important}.cpf-slot-grid>div:first-child,.cpf-slot-grid>button{grid-column:1 / -1}.cpf-slot-grid input[type=time]{width:100%}}@media (max-width: 380px){.cpf-cadence-grid{grid-template-columns:1fr 1fr!important}}
