:root{--primary:#0F172A;--primary-light:#1E293B;--accent:#2DD4BF;--accent-dark:#14B8A6;--text:#334155;--text-light:#64748B;--bg:#F8FAFC;--white:#FFFFFF;--gradient-start:#0F172A;--gradient-end:#334155;--font-heading:'Plus Jakarta Sans', sans-serif;--font-body:'Inter', sans-serif;--shadow-sm:0 1px 2px 0 rgb(0 0 0 / 0.05);--shadow-md:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--shadow-lg:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);--shadow-xl:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);background-color:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden;display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--primary);line-height:1.2}a{text-decoration:none;color:inherit;transition:color .2s}ul{list-style:none}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;transition:all .2s;cursor:pointer}.btn-primary{background-color:var(--primary);color:var(--white)}.btn-primary:hover{background-color:var(--primary-light);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:transparent;color:var(--primary);border:1px solid var(--primary);margin-left:1rem}.btn-secondary:hover{background-color:rgba(15,23,42,5%)}.navbar{position:fixed;top:0;left:0;width:100%;background-color:rgba(248,250,252,.8);backdrop-filter:blur(12px);z-index:1000;border-bottom:1px solid rgba(0,0,0,5%);padding:1rem 0}.nav-container{display:flex;justify-content:space-between;align-items:center}.logo{font-family:var(--font-heading);font-size:1.5rem;font-weight:800;color:var(--primary);letter-spacing:-.02em;display:flex;align-items:center;gap:.5rem}.logo-icon{transition:transform .3s ease}.logo:hover .logo-icon{transform:rotate(90deg)}.nav-links{display:flex;align-items:center;gap:2rem}.nav-links a:not(.btn){font-weight:500;color:var(--text)}.nav-links a:not(.btn):hover{color:var(--primary)}.mobile-menu-btn{display:none;background:0 0;border:none;cursor:pointer;flex-direction:column;gap:4px}.mobile-menu-btn span{display:block;width:24px;height:2px;background-color:var(--primary);transition:.3s}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:flex;align-items:center;gap:.25rem;cursor:pointer;font-weight:500;color:var(--text)}.nav-dropdown-trigger:hover{color:var(--primary)}.nav-dropdown-trigger svg{transition:transform .2s}.nav-dropdown:hover .nav-dropdown-trigger svg{transform:rotate(180deg)}.nav-links .nav-dropdown .nav-dropdown-menu{display:none !important;position:absolute;top:100%;left:50%;transform:translateX(-50%);background:var(--white);border-radius:.5rem;box-shadow:var(--shadow-lg);padding:.5rem 0;min-width:320px;z-index:1000;padding-top:.75rem}.nav-links .nav-dropdown .nav-dropdown-menu::before{content:'';position:absolute;top:-10px;left:0;right:0;height:10px}.nav-links .nav-dropdown:hover .nav-dropdown-menu{display:block !important}.nav-dropdown-menu a{display:block;padding:.5rem 1rem;color:var(--text);font-weight:500;white-space:nowrap}.nav-dropdown-menu a:hover{background:var(--bg);color:var(--primary)}.hero{padding-top:8rem;padding-bottom:6rem;position:relative;overflow:hidden}.hero-container{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-content h1{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;letter-spacing:-.03em}.text-gradient{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:1.25rem;color:var(--text-light);margin-bottom:2.5rem;max-width:540px}.hero-visual{position:relative;height:500px;display:flex;align-items:center;justify-content:center}.hero-gradient-orb{position:absolute;width:400px;height:400px;background:radial-gradient(circle,rgba(45,212,191,.2) 0%,rgba(15,23,42,0) 70%);border-radius:50%;z-index:-1;animation:pulse 8s infinite ease-in-out}@keyframes pulse{0%{transform:scale(1);opacity:.5}50%{transform:scale(1.2);opacity:.8}100%{transform:scale(1);opacity:.5}}.glass-card{background:rgba(255,255,255,.7);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.5);border-radius:1.5rem;box-shadow:var(--shadow-xl);padding:2rem;width:100%;max-width:400px;transform:rotate(-3deg);transition:transform .3s ease}.glass-card:hover{transform:rotate(0)scale(1.02)}.card-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.skeleton-circle{width:40px;height:40px;background-color:#e2e8f0;border-radius:50%}.skeleton-line{height:12px;width:60%;background-color:#e2e8f0;border-radius:6px}.schedule-row{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.avatar{width:32px;height:32px;background-color:#e2e8f0;border-radius:50%}.bar{height:24px;flex:1;background-color:#f1f5f9;border-radius:4px;position:relative;overflow:hidden}.bar::after{content:'';position:absolute;top:0;left:0;height:100%;width:60%;background-color:var(--accent);opacity:.3;border-radius:4px}.success-badge{margin-top:2rem;background-color:#ecfdf5;color:#059669;padding:.5rem 1rem;border-radius:2rem;display:inline-flex;align-items:center;gap:.5rem;font-weight:600;font-size:.875rem}.features{padding:6rem 0;background-color:var(--white)}.section-header{text-align:center;margin-bottom:4rem}.section-header h2{font-size:2.5rem;margin-bottom:1rem}.section-header p{color:var(--text-light);font-size:1.125rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.feature-card{padding:2rem;border-radius:1rem;background-color:var(--bg);transition:transform .2s;border:1px solid transparent}.feature-card:hover{transform:translateY(-5px);border-color:rgba(45,212,191,.3);background-color:#f0fdf4}.icon-box{width:48px;height:48px;background-color:var(--primary);color:var(--accent);border-radius:.75rem;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.feature-card h3{font-size:1.25rem;margin-bottom:.75rem}.feature-card p{color:var(--text-light)}.how-it-works{padding:6rem 0;background:linear-gradient(180deg,var(--white) 0%,var(--bg) 100%)}.workflow-animation{max-width:900px;margin:0 auto;position:relative}.animation-stage{position:relative;min-height:550px;display:flex;align-items:center;justify-content:center;padding:2rem 0}.workflow-step{position:absolute;width:100%;opacity:0;transform:translateX(100px);transition:opacity .6s ease,transform .6s ease;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:2rem}.workflow-step.active{opacity:1;transform:translateX(0);pointer-events:auto}.workflow-step.exiting{opacity:0;transform:translateX(-100px)}.step-visual{width:100%;display:flex;justify-content:center}.animated-card{background:rgba(255,255,255,.9);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);border-radius:1.5rem;box-shadow:0 20px 60px rgba(0,0,0,.1);padding:2.5rem;width:100%;max-width:500px;min-height:320px}.card-title{font-family:var(--font-heading);font-size:1.25rem;font-weight:700;color:var(--primary);margin-bottom:1.5rem;text-align:center}.rule-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg);border-radius:.75rem;margin-bottom:.75rem;animation:slideInRule .5s ease forwards;opacity:0}.workflow-step.active .rule-item:nth-child(2){animation-delay:.2s}.workflow-step.active .rule-item:nth-child(3){animation-delay:.4s}.workflow-step.active .rule-item:nth-child(4){animation-delay:.6s}@keyframes slideInRule{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.rule-icon{font-size:1.5rem;flex-shrink:0}.rule-text{flex:1;color:var(--text);font-weight:500}.rule-check{color:var(--accent);font-weight:700;font-size:1.25rem}.staff-member{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg);border-radius:.75rem;margin-bottom:.75rem;animation:popIn .4s ease forwards;opacity:0}.workflow-step.active .staff-member:nth-child(2){animation-delay:.2s}.workflow-step.active .staff-member:nth-child(3){animation-delay:.4s}.workflow-step.active .staff-member:nth-child(4){animation-delay:.6s}@keyframes popIn{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.05)}100%{opacity:1;transform:scale(1)}}.staff-member .avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.875rem;flex-shrink:0}.staff-member .avatar.small{width:40px;height:40px}.staff-info{flex:1}.staff-name{font-weight:600;color:var(--primary);margin-bottom:.25rem}.preference-tag{font-size:.875rem;color:var(--text-light);background:#fff;padding:.25rem .75rem;border-radius:1rem;display:inline-block}.status-icon{color:var(--accent);font-weight:700;font-size:1.5rem}.processing-visual{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.brain-icon{font-size:4rem;animation:pulse 2s infinite ease-in-out}@keyframes pulse{0%,100%{transform:scale(1);opacity:.8}50%{transform:scale(1.1);opacity:1}}.process-stats{display:grid;grid-template-columns:1fr 1fr;gap:2rem;width:100%}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.5rem}.stat-label{font-size:.875rem;color:var(--text-light);font-weight:500}.stat-value{font-size:2rem;font-weight:800;color:var(--accent);font-family:var(--font-heading)}.progress-bar{width:100%;height:8px;background:var(--bg);border-radius:1rem;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-dark) 100%);width:0%;animation:fillProgress 2s ease-in-out forwards}.workflow-step.active .progress-fill{animation:fillProgress 2s ease-in-out forwards}@keyframes fillProgress{to{width:100%}}.processing-text{color:var(--text-light);font-size:.875rem;font-style:italic}.calendar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.5rem}.calendar-day{background:var(--bg);border-radius:.5rem;padding:.75rem;animation:fadeInUp .5s ease forwards;opacity:0}.workflow-step.active .calendar-day:nth-child(1){animation-delay:.2s}.workflow-step.active .calendar-day:nth-child(2){animation-delay:.4s}.workflow-step.active .calendar-day:nth-child(3){animation-delay:.6s}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.day-header{font-size:.75rem;font-weight:600;color:var(--text-light);margin-bottom:.5rem;text-align:center}.day-shifts{display:flex;flex-direction:column;gap:.25rem}.shift{padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600;text-align:center}.shift.morning{background:rgba(45,212,191,.2);color:var(--accent-dark)}.shift.night{background:rgba(15,23,42,.1);color:var(--primary)}.publish-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;background:var(--primary);color:#fff;padding:1rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s ease;animation:bounceIn .6s ease .8s forwards;opacity:0}.workflow-step.active .publish-btn{animation:bounceIn .6s ease .8s forwards}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}100%{opacity:1;transform:scale(1)}}.publish-btn:hover{background:var(--primary-light);transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,0,0,.2)}.publish-icon{font-size:1.25rem}.swap-visual{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}.swap-participant{display:flex;align-items:center;gap:.75rem;flex:1;animation:slideInSwap .5s ease forwards;opacity:0}.workflow-step.active .swap-participant:first-child{animation-delay:.2s}.workflow-step.active .swap-participant:last-child{animation-delay:.5s}@keyframes slideInSwap{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}.swap-detail{flex:1}.detail-name{font-weight:600;color:var(--primary);font-size:.875rem}.detail-shift{font-size:.75rem;color:var(--text-light)}.swap-arrows{font-size:2rem;color:var(--accent);animation:swapPulse 1.5s infinite ease-in-out}@keyframes swapPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.2)}}.swap-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.swap-btn{padding:.75rem;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .3s ease;animation:fadeIn .5s ease .8s forwards;opacity:0}.workflow-step.active .swap-btn{animation:fadeIn .5s ease .8s forwards}@keyframes fadeIn{to{opacity:1}}.swap-btn.approve{background:#ecfdf5;color:#059669}.swap-btn.approve:hover{background:#d1fae5;transform:translateY(-2px)}.swap-btn.reject{background:#fef2f2;color:#dc2626}.swap-btn.reject:hover{background:#fee2e2;transform:translateY(-2px)}.step-label{text-align:center;animation:fadeInLabel .6s ease .3s forwards;opacity:0}.workflow-step.active .step-label{animation:fadeInLabel .6s ease .3s forwards}@keyframes fadeInLabel{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.step-num{font-family:var(--font-heading);font-size:3rem;font-weight:800;color:#e2e8f0;line-height:1;display:block;margin-bottom:.5rem}.step-label h3{font-size:1.5rem;color:var(--primary)}.waitlist-anchor{width:1px;height:1px;margin:0;padding:0}.waitlist-dialog{border:none;padding:0;border-radius:1.5rem;width:min(480px,88vw);max-height:90vh;overflow-y:auto;margin:auto;background:var(--white);box-shadow:0 25px 50px -12px rgba(0,0,0,.25);color:var(--text)}.waitlist-dialog::backdrop{background:rgba(15,23,42,.6);backdrop-filter:blur(4px)}.no-dialog .waitlist-dialog{display:none}.no-dialog .waitlist-dialog[data-fallback-visible=true]{display:block;margin:2rem auto}.waitlist-form{display:grid;gap:1.5rem;padding:clamp(1.75rem,5vw,2.5rem)}.waitlist-form__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.waitlist-form__header h2{margin:0;font-size:1.5rem;line-height:1.2;color:var(--primary);font-weight:800;letter-spacing:-.02em}.waitlist-form__close{background:#f1f5f9;border-radius:50%;width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;font-size:1.5rem;border:none;cursor:pointer;transition:all .2s ease;color:var(--text-light)}.waitlist-form__close:hover{background:#e2e8f0;color:var(--primary)}.waitlist-form__intro{margin:0;color:var(--text-light);font-size:1rem;line-height:1.5}.waitlist-form__field{display:grid;gap:.5rem}.waitlist-form__field label{font-weight:600;font-size:.9rem;color:var(--primary)}.optional-tag{font-weight:400;font-size:.85rem;color:var(--text-light)}.waitlist-form input{font:inherit;padding:.75rem 1rem;border-radius:.75rem;border:1px solid #e2e8f0;transition:all .2s ease;background:var(--white);color:var(--primary)}.waitlist-form input::placeholder{color:#94a3b8}.waitlist-form input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(45,212,191,.1)}.waitlist-form__submit{width:100%;justify-content:center;position:relative;background:var(--primary);color:var(--white);font-weight:600;padding:1rem;border-radius:.75rem;border:none;cursor:pointer;transition:all .2s}.waitlist-form__submit:hover{background:var(--primary-light);transform:translateY(-1px);box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.waitlist-form__message{min-height:1.2rem;margin:0;font-size:.9rem;color:var(--text-light)}.waitlist-form__message[data-status=success]{color:#059669}.waitlist-form__message[data-status=error]{color:#dc2626}@keyframes waitlist-spinner{0%{transform:translate(-50%,-50%)rotate(0)}100%{transform:translate(-50%,-50%)rotate(360deg)}}.waitlist-form__submit[data-loading=true]{color:transparent;pointer-events:none}.waitlist-form__submit[data-loading=true]::after{content:"";position:absolute;top:50%;left:50%;width:1.25rem;height:1.25rem;border-radius:50%;border:3px solid rgba(255,255,255,.3);border-top-color:var(--white);animation:waitlist-spinner .7s linear infinite}.animation-controls{display:flex;align-items:center;justify-content:center;gap:2rem;margin-top:3rem}.control-btn{background:#fff;border:1px solid rgba(0,0,0,.1);width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;color:var(--primary);position:relative}.control-btn:hover{background:var(--primary);color:#fff;transform:scale(1.1);box-shadow:0 5px 20px rgba(0,0,0,.15)}.control-btn.play-pause{width:56px;height:56px;background:var(--accent);color:#fff}.control-btn.play-pause:hover{background:var(--accent-dark)}.control-btn svg{flex-shrink:0}.control-btn .hidden{display:none}.step-indicators{display:flex;gap:.75rem}.indicator{width:12px;height:12px;border-radius:50%;background:#e2e8f0;cursor:pointer;transition:all .3s ease}.indicator:hover{background:rgba(45,212,191,.5);transform:scale(1.2)}.indicator.active{background:var(--accent);width:32px;border-radius:6px}.comparison-section{padding:6rem 0;background:linear-gradient(180deg,var(--bg) 0%,#f1f5f9 100%)}.comparison-section .section-header{text-align:center;margin-bottom:3rem}.comparison-section .section-header h2{font-size:2.5rem;margin-bottom:.75rem}.comparison-section .section-header p{color:var(--text-light);font-size:1.125rem}.comparison-table{max-width:900px;margin:0 auto;background:var(--white);border-radius:1rem;overflow:hidden;box-shadow:var(--shadow-lg)}.comparison-row{display:grid;grid-template-columns:1fr 1fr}.comparison-row.comparison-header{background:var(--primary);color:var(--white)}.comparison-row.comparison-header .comparison-cell{padding:1.25rem 1.5rem;font-weight:700;font-size:1rem;text-transform:uppercase;letter-spacing:.05em}.comparison-row.comparison-header .comparison-cell.highlight{background:var(--accent);color:var(--primary)}.comparison-row:not(.comparison-header){border-bottom:1px solid rgba(0,0,0,5%)}.comparison-row:not(.comparison-header):last-child{border-bottom:none}.comparison-cell{padding:1.25rem 1.5rem;display:flex;align-items:center;gap:.75rem}.comparison-cell.old-way{background:#fef2f2;color:#991b1b}.comparison-cell.new-way{background:#f0fdf4;color:#166534}.cell-icon{font-size:1.25rem;flex-shrink:0}@media(max-width:768px){.comparison-section{padding:4rem 0}.comparison-section .section-header h2{font-size:1.75rem}.comparison-row{grid-template-columns:1fr}.comparison-row.comparison-header .comparison-cell:first-child{display:none}.comparison-row.comparison-header .comparison-cell.highlight{text-align:center}.comparison-cell{padding:1rem;font-size:.9rem}.comparison-cell.old-way{border-bottom:1px dashed rgba(0,0,0,.1)}}.cta-section{padding:8rem 0;background-color:var(--primary);color:var(--white);text-align:center;position:relative;overflow:hidden}.cta-section::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(45,212,191,.15) 0%,rgba(15,23,42,0) 70%);border-radius:50%;pointer-events:none}.cta-content{max-width:700px;margin:0 auto;position:relative;z-index:1}.cta-content h2{font-size:3rem;color:var(--white);margin-bottom:1.5rem;letter-spacing:-.02em}.cta-content p{font-size:1.25rem;color:var(--text-light);margin-bottom:3rem}.cta-form{display:flex;gap:1rem;max-width:500px;margin:0 auto 3rem}.cta-input{flex:1;background:rgba(30,41,59,.5);border:1px solid #334155;padding:1rem 1.5rem;border-radius:.75rem;color:var(--white);font-size:1rem;transition:all .2s}.cta-input:focus{outline:none;border-color:var(--accent);background:rgba(30,41,59,.8);box-shadow:0 0 0 3px rgba(45,212,191,.1)}.cta-features{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.cta-feature{display:flex;align-items:center;gap:.5rem;color:#94a3b8;font-size:.9rem}.check-icon{color:var(--accent);font-weight:700}@media(max-width:768px){.cta-content h2{font-size:2rem}.cta-form{flex-direction:column}.cta-features{flex-direction:column;gap:1rem}}.footer{background-color:var(--primary);color:#64748b;padding:4rem 0 2rem;font-size:.9rem;border-top:1px solid #1e293b}.footer-container{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:4rem;margin-bottom:4rem}.footer-col .logo{color:var(--white);margin-bottom:1rem;display:block}.footer-col p{color:#94a3b8;max-width:300px}.footer-col h4{color:var(--white);margin-bottom:1.5rem;font-size:1.125rem}.footer-col a{display:block;color:#94a3b8;margin-bottom:.75rem}.footer-col a:hover{color:var(--accent)}.copyright{text-align:center;color:#64748b}@media(max-width:768px){.hero-container{grid-template-columns:1fr;text-align:center}.hero-subtitle{margin:0 auto 2.5rem}.hero-actions{display:flex;flex-direction:column;gap:1rem;align-items:center}.btn-secondary{margin-left:0}.nav-links{display:none;position:absolute;top:100%;left:0;width:100%;background-color:var(--white);padding:2rem;flex-direction:column;box-shadow:var(--shadow-lg)}.nav-links.active{display:flex}.mobile-menu-btn{display:flex}.nav-dropdown{width:100%}.nav-dropdown-trigger{width:100%;justify-content:center}.nav-links .nav-dropdown .nav-dropdown-menu{position:static !important;transform:none !important;box-shadow:none !important;background:var(--bg);margin-top:.5rem;border-radius:.5rem;min-width:auto !important;left:auto !important}.nav-links .nav-dropdown:hover .nav-dropdown-menu,.nav-links .nav-dropdown.active .nav-dropdown-menu{display:block !important}.nav-dropdown-menu a{text-align:center}.footer-container{grid-template-columns:1fr;gap:2rem}.animation-stage{min-height:650px}.animated-card{padding:1.5rem;max-width:100%}.card-title{font-size:1.125rem}.step-num{font-size:2.5rem}.step-label h3{font-size:1.25rem}.calendar-grid{grid-template-columns:1fr}.swap-visual{flex-direction:column}.swap-arrows{transform:rotate(90deg)}.animation-controls{gap:1rem}.control-btn{width:40px;height:40px}.control-btn.play-pause{width:48px;height:48px}}.banner{position:fixed;top:0;left:0;width:100%;padding:1rem;text-align:center;font-weight:600;z-index:2000;transform:translateY(-100%);transition:transform .3s ease-in-out;box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:center;gap:1rem}.banner--visible{transform:translateY(0)}.banner--success{background-color:#ecfdf5;color:#059669;border-bottom:1px solid #a7f3d0}.banner-close{background:0 0;border:none;color:inherit;cursor:pointer;padding:.25rem;opacity:.7;transition:opacity .2s;display:flex;align-items:center;justify-content:center}.banner-close:hover{opacity:1}.waitlist-error{background-color:#fef2f2;color:#dc2626;padding:.75rem;border-radius:.5rem;margin-bottom:1rem;font-size:.875rem;font-weight:500;border:1px solid #fecaca;text-align:center;animation:shake .5s cubic-bezier(.36,.07,.19,.97)both}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}