.booking-calendar-page,.booking-time-page,.booking-details-page,.booking-success-page{width:100%;height:100%;padding:2vh 3vw;display:flex;flex-direction:column;align-items:center;color:#fff;font-family:system-ui,-apple-system,sans-serif}.booking-split-layout{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:2vh 4vw;color:#fff;animation:fadeIn .5s ease-out;overflow:hidden}.booking-container-header{text-align:center;padding:2vh 3vw;border-bottom:1px solid rgba(255,255,255,.15);margin-bottom:2vh}.booking-title{font-size:4.5vh;font-weight:900;color:#fffffffa;margin:0;background:linear-gradient(135deg,#fff,#b8b8ff,#f0f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 40px rgba(255,255,255,.2);letter-spacing:-.5px}.booking-split-container{display:flex;flex-direction:column;max-width:85vw;width:100%;min-height:82vh;background:linear-gradient(135deg,#ffffff0f,#ffffff08);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:0;box-shadow:0 8px 60px #6496ff66,inset 0 1px #ffffff1a;animation:slideUp .6s ease-out .2s both}.booking-sections-wrapper{display:grid;grid-template-columns:55% 42%;gap:3%;padding:2vh 2.5vw}.calendar-section{display:flex;flex-direction:column;gap:.8vh;height:auto;background:linear-gradient(135deg,#ffffff0d,#ffffff05);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:2vh 1.5vw;box-shadow:0 4px 30px #6496ff40,inset 0 1px #ffffff14;transition:all .3s ease;min-width:0}.calendar-section:hover{border-color:#a0a0ff4d;box-shadow:0 6px 40px #6496ff59,inset 0 1px #ffffff1f}.times-section{display:flex;flex-direction:column;gap:1vh;height:auto;max-height:65vh;background:linear-gradient(135deg,#ffffff0d,#ffffff05);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:2vh 1.5vw;box-shadow:0 4px 30px #6496ff40,inset 0 1px #ffffff14;transition:all .3s ease}.times-section:hover{border-color:#a0a0ff4d;box-shadow:0 6px 40px #6496ff59,inset 0 1px #ffffff1f}.times-header{margin-bottom:1vh;text-align:center;padding-bottom:1vh;border-bottom:1px solid rgba(255,255,255,.1)}.times-date{font-size:1.6vh;font-weight:700;color:#fffffff2;background:linear-gradient(135deg,#fff,#c8c8ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.times-list{display:grid;grid-template-columns:repeat(3,1fr);gap:.7vh .6vw;overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:rgba(160,160,255,.3) transparent;padding-right:.5vw;align-content:start}.times-list::-webkit-scrollbar{width:6px}.times-list::-webkit-scrollbar-track{background:transparent}.times-list::-webkit-scrollbar-thumb{background:#a0a0ff4d;border-radius:10px}.times-list::-webkit-scrollbar-thumb:hover{background:#a0a0ff80}.time-slot{padding:0;background:linear-gradient(135deg,#ffffff0f,#ffffff08);border:1.5px solid rgba(255,255,255,.2);border-radius:8px;color:#fffffff2;font-size:1.5vh;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;height:3.5rem}.time-slot:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#6464ff26,#ff00ff1a);opacity:0;transition:opacity .3s ease}.time-slot:hover:before{opacity:1}.time-slot:hover{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border-color:#6496ff99;transform:translateY(-2px) scale(1.02);box-shadow:0 4px 16px #6496ff40}.time-slot.selected{background:linear-gradient(135deg,#6464ff59,#ff00ff4d);border-color:#ff00ffe6;color:#fff;box-shadow:0 6px 24px #f0f6,inset 0 1px #fff3;transform:scale(1.05)}.time-slot.selected:before{opacity:0}.time-slot.disabled{background:linear-gradient(135deg,#ff323233,#9600004d)!important;border-color:#ff323280!important;color:#ff9696b3!important;cursor:not-allowed!important;opacity:.6!important;text-decoration:line-through}.time-slot.disabled:before{opacity:0!important}.time-slot.disabled:hover{transform:none!important;box-shadow:none!important;background:linear-gradient(135deg,#ff323233,#9600004d)!important}.times-empty{font-size:1.7vh;color:#ffffff73;padding:3vh 2vh;text-align:center;font-style:italic}.confirm-btn{margin-top:1vh;padding:1.5vh 3vw;background:linear-gradient(135deg,#6464ff,#f0f);border:none;border-radius:10px;color:#fff;font-size:1.8vh;font-weight:800;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 6px 20px #6464ff66;text-transform:uppercase;letter-spacing:.5px}.confirm-btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px #f0f9}.confirm-btn:active{transform:translateY(0)}.booking-header{text-align:center;margin-bottom:1.5vh}.booking-header h1{font-size:4vh;font-weight:900;margin:0 0 .5vh;background:linear-gradient(135deg,#fff,#a0a0ff,#f0f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.booking-header p{font-size:1.6vh;font-weight:500;color:#ffffffe6;margin:0}.calendar-container{width:100%;max-width:50vw;display:flex;flex-direction:column;gap:.8vh}.month-nav{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:1vw;margin-bottom:1vh;position:relative}.month-title{font-size:2vh;font-weight:900;color:#fff;letter-spacing:-.3px;background:linear-gradient(135deg,#fff,#d0d0ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;flex:1;text-align:center}.nav-btn{font-size:2vh;padding:.4vh .8vw;border-radius:8px;border:1.5px solid rgba(160,160,255,.25);background:linear-gradient(135deg,#6464ff1a,#ffffff0d);color:#fff;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);min-width:2.5vw;font-weight:700;box-shadow:0 2px 10px #6464ff26;flex-shrink:0}.nav-btn:hover{background:linear-gradient(135deg,#6464ff33,#ffffff1a);border-color:#a0a0ff80;transform:translateY(-2px);box-shadow:0 4px 16px #6464ff4d}.nav-btn:active{transform:translateY(0)}.weekday{text-align:center;font-size:1vh;opacity:.6;padding:.2vh;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:#a0a0ffcc;margin-bottom:.3vh;min-width:0}.day{aspect-ratio:1 / 1;min-width:44px;min-height:44px;max-width:80px;max-height:80px;display:flex;align-items:center;justify-content:center;border-radius:5px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(135deg,#ffffff14,#ffffff0a);font-size:1.6vh;color:#fff;cursor:pointer;min-width:0;min-height:4vh;touch-action:manipulation;transition:all .3s cubic-bezier(.4,0,.2,1)}.day.today{border-color:#a0a0ffcc}.day.outside{opacity:.25}.day.disabled{opacity:.3;cursor:not-allowed}.day.selected{background:linear-gradient(135deg,#6464ff66,#ff00ff59);border-color:#f0f;color:#fff;box-shadow:0 0 0 2px #ff00ff4d,inset 0 1px #fff3;font-weight:900}.day:hover:not(.disabled):not(.outside){transform:translateY(-2px);border-color:#a0a0ff80;background:linear-gradient(135deg,#ffffff1f,#ffffff0f)}.calendar-section{min-width:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(44px,1fr));gap:.15vh .03vw;width:95%;margin:0 auto;flex:1;min-width:308px;max-width:700px;overflow-x:auto}.day{aspect-ratio:1 / 1;min-width:44px;min-height:44px;max-width:80px;max-height:80px;display:flex;align-items:center;justify-content:center;border-radius:5px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(135deg,#ffffff14,#ffffff0a);font-size:1.6vh;color:#fff;cursor:pointer;min-width:0;min-height:4vh;touch-action:manipulation}@media (max-width: 768px){.calendar-section{min-width:0;max-width:100vw;overflow-x:auto}.calendar-grid{min-width:308px;max-width:100vw;overflow-x:auto;grid-template-columns:repeat(7,minmax(38px,1fr))}.day{min-width:38px;min-height:38px;max-width:60px;max-height:60px;font-size:1.5vh}}@media (max-width: 480px){.calendar-section{min-width:0;max-width:100vw;overflow-x:auto}.calendar-grid{min-width:308px;max-width:100vw;overflow-x:auto;grid-template-columns:repeat(7,minmax(32px,1fr))}.day{min-width:32px;min-height:32px;max-width:44px;max-height:44px;font-size:1.3vh}}@media (max-width: 600px){.calendar-section{padding:1vh 1vw;border-radius:10px;min-width:0;max-width:100vw}.calendar-grid{width:100%;min-width:0;max-width:100vw;grid-template-columns:repeat(7,1fr);gap:.12vh .5vw;overflow-x:visible}.day{min-width:0;min-height:0;max-width:none;max-height:none;aspect-ratio:1 / 1;font-size:3vw;padding:.5vw}.day-num{font-size:3vw}.month-title{font-size:2.5vh}}.booking-time-page{gap:2vh}.time-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10vw,1fr));gap:1.5vh;width:100%;max-width:80vw}.time-button{padding:2vh 2vw;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:2vh;font-weight:700;cursor:pointer;transition:all .2s}.time-button:hover:not(.disabled){background:#ffffff1a;border-color:#a0a0ff80;transform:translateY(-2px)}.time-button.selected{background:linear-gradient(135deg,#6464ff4d,#ff00ff4d);border-color:#f0f;box-shadow:0 6px 20px #ff00ff4d}.time-button.disabled{background:linear-gradient(135deg,#ff323226,#64000033)!important;border-color:#ff323266!important;color:#ff646499!important;cursor:not-allowed!important;opacity:.5!important;text-decoration:line-through;position:relative}.time-button.disabled:after{content:"✕";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:3rem;color:#ff323266;pointer-events:none}.booking-details-page{gap:3vh;animation:fadeIn .5s ease-out}.details-form{display:flex;flex-direction:column;gap:3vh;width:100%;max-width:55vw;background:linear-gradient(135deg,#ffffff0f,#ffffff08);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:4vh 4vw;box-shadow:0 8px 50px #6496ff59,inset 0 1px #ffffff1a}.input-group{display:flex;flex-direction:column;gap:1.2vh}.input-group label{font-size:2vh;font-weight:700;color:#fffffff2;background:linear-gradient(135deg,#fff,#d0d0ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.input-group input,.input-group textarea{padding:1.8vh 2.5vw;background:linear-gradient(135deg,#ffffff14,#ffffff0a);border:1.5px solid rgba(255,255,255,.15);border-radius:14px;color:#fff;font-size:1.9vh;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 2px 4px #0000001a}.input-group input::placeholder,.input-group textarea::placeholder{color:#ffffff59;font-style:italic}.input-group input:focus,.input-group textarea:focus{outline:none;background:linear-gradient(135deg,#ffffff1f,#ffffff0f);border-color:#a0a0ffb3;box-shadow:0 0 0 4px #a0a0ff26,inset 0 2px 4px #0000001a;transform:translateY(-1px)}.input-group textarea{resize:vertical;min-height:18vh;line-height:1.6}.back-btn{font-size:1.9vh;padding:1.2vh 2.5vw;border-radius:12px;border:1.5px solid rgba(160,160,255,.25);background:linear-gradient(135deg,#6464ff1a,#ffffff0d);color:#fff;cursor:pointer;align-self:flex-start;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:600;box-shadow:0 2px 10px #6464ff26}.back-btn:hover{background:linear-gradient(135deg,#6464ff33,#ffffff1a);border-color:#a0a0ff80;transform:translateY(-2px);box-shadow:0 4px 16px #6464ff4d}.back-btn:active{transform:translateY(0)}.submit-button{margin-top:2vh;padding:2.8vh 5vw;background:linear-gradient(135deg,#6464ff,#f0f);border:none;border-radius:16px;color:#fff;font-size:2.4vh;font-weight:900;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 30px #ff00ff80,inset 0 1px #fff3;display:flex;align-items:center;justify-content:center;gap:2vw;text-transform:uppercase;letter-spacing:.5px;position:relative;overflow:hidden}.submit-button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 100%);opacity:0;transition:opacity .3s ease}.submit-button:hover:not(:disabled):before{opacity:1}.submit-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 40px #ff00ffb3,inset 0 1px #ffffff4d}.submit-button:active:not(:disabled){transform:translateY(-1px)}.submit-button:disabled{opacity:.6;cursor:not-allowed;filter:grayscale(.3)}.spinner{width:2vh;height:2vh;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.booking-success-page{justify-content:center;align-items:center;text-align:center;gap:3vh;animation:fadeIn .6s ease-out}.success-icon{width:14vh;height:14vh;display:flex;align-items:center;justify-content:center;font-size:7vh;background:linear-gradient(135deg,#0f8,#0c6);border-radius:50%;box-shadow:0 10px 40px #00ff8880,inset 0 2px #ffffff4d;animation:successPop .7s cubic-bezier(.68,-.55,.265,1.55)}.booking-success-page h2{font-size:5vh;font-weight:900;margin:0;background:linear-gradient(135deg,#0f8,#fff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px;animation:slideUp .6s ease-out .3s both}.booking-success-page p{font-size:2.2vh;color:#ffffffd9;margin:0;animation:slideUp .6s ease-out .4s both}.success-details{font-size:2.5vh;font-weight:800;color:#a0a0fff2;background:linear-gradient(135deg,#a0a0ff,#f8f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:slideUp .6s ease-out .5s both}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes successPop{0%{transform:scale(0) rotate(-180deg);opacity:0}50%{transform:scale(1.2) rotate(10deg)}to{transform:scale(1) rotate(0);opacity:1}}@media (max-width: 1200px){.booking-split-container{max-width:95vw}.booking-sections-wrapper{grid-template-columns:1fr;gap:2vh;padding:2vh 3vw}.calendar-section,.times-section{height:auto;max-height:none}.times-list{max-height:40vh}.details-form{max-width:80vw}}@media (max-width: 1024px){.booking-split-container{max-width:98vw;min-height:auto;border-radius:16px}.booking-sections-wrapper{grid-template-columns:1fr;gap:2vh;padding:2vh 3vw}.calendar-section,.times-section{min-width:0;max-width:100vw;padding:2vh 3vw;border-radius:16px}.booking-title{font-size:2.2vh}}@media (max-width: 768px){.booking-header-section{padding:1.5vh 3vw}.booking-title{font-size:2.5vh}.booking-header h1{font-size:2.8vh;margin:0 0 .5vh}.booking-header p{font-size:1.5vh}.booking-split-container{padding:0;max-width:98vw;min-height:auto}.booking-sections-wrapper,.calendar-section,.times-section{padding:2vh 4vw}.calendar-grid{min-width:308px;max-width:100vw;overflow-x:auto;grid-template-columns:repeat(7,minmax(32px,1fr))}.day{min-width:32px;min-height:32px;max-width:44px;max-height:44px;font-size:1.3vh}.times-list{grid-template-columns:1fr;gap:1vh;max-height:45vh}.time-slot{font-size:1.6vh;padding:1.2vh 2vw;height:2.8rem}.month-title{font-size:2vh}.nav-btn{font-size:1.8vh}.booking-details-page,.booking-success-page{padding:2vh 2.5vw}.details-form{max-width:95vw;padding:2vh 3vw}.input-group label{font-size:1.8vh}.input-group input,.input-group textarea{font-size:1.5vh;padding:1.5vh 2.5vw}.submit-button{font-size:1.8vh;padding:2vh 3vw;border-radius:12px}.back-btn{font-size:1.5vh;padding:1vh 2.5vw;border-radius:10px;margin-bottom:1.5vh}}@media (max-width: 480px){.booking-split-layout{padding:.5vh 1vw}.booking-container-header{padding:1vh 1vw;font-size:1.6vh}.booking-title{font-size:1.4vh}.booking-split-container{max-width:100vw;min-height:auto;border-radius:8px;padding:0}.booking-sections-wrapper{grid-template-columns:1fr;gap:1vh;padding:1vh 1vw}.calendar-section,.times-section{min-width:0;max-width:100vw;padding:1vh 1vw;border-radius:8px}.calendar-grid{min-width:224px;max-width:100vw;overflow-x:auto;grid-template-columns:repeat(7,minmax(24px,1fr))}.day{min-width:24px;min-height:24px;max-width:32px;max-height:32px;font-size:1vh}.times-list{grid-template-columns:1fr;gap:.7vh;max-height:35vh}.time-slot{font-size:1vh;padding:1vh 1vw;height:2.2rem}.booking-details-page,.booking-success-page{padding:1vh 1vw}.details-form{max-width:98vw;padding:1vh 1vw}.input-group input,.input-group textarea{font-size:1vh}.submit-button{font-size:1.2vh;padding:1.2vh 2vw;border-radius:8px}.back-btn{font-size:1vh;padding:.7vh 1vw;border-radius:8px}}@media (max-width: 600px){header{padding:12px 16px!important}header h2{font-size:1.5rem!important}.booking-split-layout{padding:.5vh 1vw;min-width:0;max-width:100vw;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y}.booking-container-header{font-size:1.3vh;padding:1vh 2vw;margin-bottom:1vh;border-bottom-width:.5px;position:relative}.booking-title{font-size:2.5vh;margin:.5vh 0;letter-spacing:.05px;text-shadow:0 0 10px rgba(160,160,255,.12);font-weight:700}.booking-header{text-align:center;margin-bottom:1vh;padding-top:0}.booking-header h1{font-size:2.2vh;margin:0 0 .5vh}.booking-header p{font-size:1.3vh;margin:0}.back-btn{font-size:.9rem;padding:10px 20px;border-radius:8px;margin-bottom:1.5vh;position:relative;display:inline-block;width:auto;min-width:100px}.booking-details-page .back-btn{margin-bottom:2vh}.booking-split-container{max-width:100vw;min-height:auto;border-radius:10px;padding:0;box-shadow:0 3px 15px #6496ff33;margin:0 1vw}.booking-sections-wrapper{grid-template-columns:1fr;gap:2vh;padding:2vh 3vw;min-width:0;max-width:100vw}.calendar-section,.times-section{min-width:0;max-width:100vw;padding:2vh 3vw;border-radius:10px;box-shadow:0 2px 10px #6496ff26}.month-nav{flex-direction:row;gap:2vw;margin-bottom:1vh;justify-content:space-between;align-items:center}.month-title{font-size:1.8vh;margin:0;flex:1;text-align:center}.nav-btn{font-size:1.6vh;min-width:36px;padding:.6vh 2vw;border-radius:8px;flex-shrink:0}.calendar-grid{width:100%;min-width:0;max-width:100%;grid-template-columns:repeat(7,1fr);gap:.5vh 1vw;overflow-x:visible}.weekday{font-size:.65rem;margin-bottom:.5vh;padding:.2vh;font-weight:700;opacity:.7}.day{min-width:0;min-height:0;max-width:none;max-height:none;aspect-ratio:1 / 1;font-size:.9rem;padding:.3rem;border-radius:6px;border-width:1.5px;font-weight:700}.day-num{font-size:.9rem}.times-section{max-height:50vh;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y}.times-header{font-size:.9rem;margin-bottom:1vh;padding-bottom:1vh}.times-date{font-size:.85rem;font-weight:700}.times-list{grid-template-columns:repeat(2,1fr);gap:1vh 2vw;max-height:42vh;padding-right:.5vw}.time-slot{font-size:.85rem;padding:1rem 1.5vw;height:2.5rem;border-radius:8px;font-weight:700}.times-empty{font-size:.9rem;padding:2vh 1vh}.confirm-btn{font-size:.9rem;padding:1.2vh 4vw;margin-top:1.5vh;font-weight:800}.booking-details-page,.booking-success-page{padding:1.5vh 2.5vw;min-width:0;max-width:100vw}.details-form{max-width:96vw;padding:2vh 3vw;border-radius:12px;gap:2vh}.input-group{gap:.8vh}.input-group label{font-size:1.6vh}.input-group input,.input-group textarea{font-size:1.5vh;padding:1.5vh 2.5vw;border-radius:10px}.input-group textarea{min-height:15vh}.submit-button{font-size:1.8vh;padding:1.8vh 4vw;border-radius:10px;margin-top:1.5vh}.confirm-btn{font-size:1.6vh;padding:1.3vh 3vw}.success-icon{width:11vh;height:11vh;font-size:5.5vh;margin-bottom:1.5vh}.booking-success-page h2{font-size:3.5vh}.booking-success-page p{font-size:1.8vh}.success-details{font-size:2.2vh}footer{padding:12px 16px!important;font-size:.75rem!important}}@media (max-width: 400px){header h2{font-size:1.2rem!important}.booking-title{font-size:1.4vh}.booking-header h1{font-size:1.8vh}.booking-header p{font-size:1.1vh}.booking-split-container{margin:0 .5vw}.booking-sections-wrapper{padding:1.5vh 2vw;gap:1.5vh}.calendar-section,.times-section{padding:1.5vh 2.5vw}.month-title{font-size:.8rem}.nav-btn{font-size:1rem;min-width:28px;padding:.4vh 1.5vw}.weekday{font-size:.55rem}.day{font-size:.8rem;padding:.2rem}.day-num{font-size:.8rem}.times-list{grid-template-columns:1fr;gap:.8vh}.time-slot{font-size:.75rem;height:2.3rem;padding:.8rem 1vw}.confirm-btn{font-size:.8rem}.back-btn{font-size:.75rem;padding:.6vh 2vw}}.app-container{width:100vw;height:100vh;position:relative;overflow:hidden;background:#0a0a0f}.ui-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:60px 20px;z-index:10;pointer-events:none}.title-container{text-align:center;color:#fff;animation:fadeIn 1s ease-out}.title-container h1{font-size:3.5rem;font-weight:800;margin:0 0 12px;background:linear-gradient(135deg,#fff,#a0a0ff,#f0f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 40px rgba(160,160,255,.3);letter-spacing:-1px}.subtitle{font-size:1.4rem;font-weight:400;margin:0;color:#ffffffb3;text-shadow:0 2px 10px rgba(0,0,0,.8)}.click-prompt{position:relative;text-align:center;color:#fff;animation:fadeIn 1.5s ease-out .5s both}.pulse-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80px;height:80px;border:3px solid rgba(255,0,255,.6);border-radius:50%;animation:pulse 2s ease-out infinite}.pulse-ring:before,.pulse-ring:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border:3px solid rgba(0,255,255,.4);border-radius:50%;animation:pulse 2s ease-out infinite}.pulse-ring:before{animation-delay:.5s}.pulse-ring:after{animation-delay:1s}.click-prompt p{position:relative;z-index:1;font-size:1.3rem;font-weight:600;margin:0;padding:12px 24px;background:#00000080;border-radius:50px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-shadow:0 2px 10px rgba(0,0,0,.8);border:2px solid rgba(255,255,255,.1)}.back-button{position:absolute;top:30px;left:30px;z-index:1000;padding:14px 28px;background:linear-gradient(135deg,#6464ffe6,#ff00ffe6);border:2px solid rgba(255,255,255,.2);border-radius:12px;font-size:1.1rem;font-weight:700;color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 24px #ff00ff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto}.back-button:hover{transform:translateY(-3px);box-shadow:0 12px 32px #ff00ff80;border-color:#fff6}.back-button:active{transform:translateY(-1px)}.editor-toggle-button{position:absolute;top:30px;right:30px;z-index:1000;padding:14px 28px;background:linear-gradient(135deg,#64ff64e6,#00c8ffe6);border:2px solid rgba(255,255,255,.2);border-radius:12px;font-size:1.1rem;font-weight:700;color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 24px #00ffc84d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto}.editor-toggle-button:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 12px 32px #00ffc880;border-color:#fff6}.editor-toggle-button:active{transform:translateY(-1px) scale(1.02)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(2);opacity:0}}@media (max-width: 1024px){.ui-overlay{padding:40px 20px}.title-container h1{font-size:2.8rem}.subtitle{font-size:1.2rem}.nav-menu{gap:15px}.nav-button{padding:14px 28px;font-size:1.1rem}}@media (max-width: 768px){.ui-overlay{padding:30px 15px;justify-content:space-evenly}.title-container h1{font-size:2.2rem;margin:0 0 8px}.subtitle{font-size:1rem}.click-prompt p{font-size:1rem;padding:10px 18px}.nav-menu{flex-direction:column;gap:12px;width:100%;max-width:300px}.nav-button{width:100%;padding:16px 24px;font-size:1.1rem}.back-button{top:20px;left:20px;padding:12px 20px;font-size:1rem}.editor-toggle-button{bottom:20px;right:20px;padding:14px 20px;font-size:.95rem}}@media (max-width: 480px){.ui-overlay{padding:20px 10px}.title-container h1{font-size:1.8rem}.subtitle{font-size:.9rem}.nav-menu{max-width:280px;gap:10px}.nav-button{padding:14px 20px;font-size:1rem}.back-button{top:15px;left:15px;padding:10px 18px;font-size:.95rem}.editor-toggle-button{bottom:15px;right:15px;padding:12px 18px;font-size:.9rem}}*{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;touch-action:manipulation}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;background:#1a1a1a;position:fixed;width:100%;height:100%}#root{width:100vw;height:100vh;overflow:hidden;position:relative}canvas{display:block;touch-action:none}@media (max-width: 768px){body{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}*{-webkit-tap-highlight-color:transparent}}
