@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap);body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.system-status{display:flex;flex-direction:column;gap:.5rem;position:fixed;right:20px;top:20px;z-index:1000}.status-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000080;border:1px solid #ffffff1a;border-radius:10px;color:#fff;font-size:.9rem;padding:.5rem 1rem;transition:all .3s ease}.status-item.loading{border-color:#ffffff0d;color:#ffffff80}.status-item.active{border-color:#22c55e4d;box-shadow:0 0 10px #22c55e33;color:#22c55e}.audio-control{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:50%;bottom:20px;box-shadow:0 4px 15px #0003;color:#fff;cursor:pointer;display:flex;font-size:24px;height:50px;justify-content:center;position:fixed;right:20px;transition:all .3s ease;width:50px;z-index:1000}.audio-control:hover{background:#ffffff4d;box-shadow:0 6px 20px #0000004d;transform:scale(1.1)}.audio-control:active{transform:scale(.95)}@media (max-width:768px){.audio-control{bottom:15px;font-size:20px;height:45px;right:15px;width:45px}}.install-prompt-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:10000}.install-prompt{animation:slideUp .3s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#0f0f23f2,#1b2333f2);border-radius:24px;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff1a,0 0 40px #3a6ff74d;max-width:420px;padding:32px;width:100%}.install-prompt-header{margin-bottom:24px;text-align:center}.install-prompt-icon{animation:pulse 2s ease-in-out infinite;display:flex;justify-content:center;margin-bottom:16px}.install-prompt-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3a6ff7,#5b8fff);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:24px;font-weight:700;margin:0 0 12px}.install-prompt-description{color:#fffc;font-size:16px;line-height:1.5;margin:0}.install-prompt-benefits{background:#3a6ff71a;border:1px solid #3a6ff733;border-radius:16px;display:flex;flex-direction:column;gap:12px;margin-bottom:24px;padding:20px}.benefit-item{color:#ffffffe6;font-size:15px;gap:12px}.benefit-icon,.benefit-item{align-items:center;display:flex}.benefit-icon{background:#3a6ff733;border-radius:8px;font-size:20px;height:32px;justify-content:center;width:32px}.install-prompt-actions{display:flex;flex-direction:column;gap:12px}.install-prompt-button{border:none;border-radius:12px;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;overflow:hidden;padding:16px 24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.install-prompt-button-primary{background:linear-gradient(135deg,#3a6ff7,#5b8fff);box-shadow:0 8px 24px #3a6ff759,0 0 0 1px #ffffff1a,0 0 20px #3a6ff733;color:#fff}.install-prompt-button-primary:hover{background:linear-gradient(135deg,#4a7fff,#6b9fff);box-shadow:0 12px 32px #3a6ff773,0 0 0 1px #ffffff26,0 0 30px #3a6ff74d;transform:translateY(-2px)}.install-prompt-button-primary:active{transform:translateY(0)}.install-prompt-button-secondary{background:#0000;border:2px solid #fff3;color:#ffffffb3}.install-prompt-button-secondary:hover{background:#ffffff1a;border-color:#ffffff4d;color:#ffffffe6}.install-prompt-button-secondary:active{transform:translateY(0)}@media (max-width:480px){.install-prompt{max-width:100%;padding:24px}.install-prompt-title{font-size:20px}.install-prompt-description{font-size:14px}}.offline-indicator{align-items:center;animation:slideDown .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;left:0;padding:12px 20px;position:fixed;right:0;top:0;z-index:9999}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.offline-indicator.offline{background:linear-gradient(135deg,#ef4444f2,#dc2626f2);border-bottom:2px solid #fff3;box-shadow:0 4px 12px #ef44444d}.offline-indicator.online{background:linear-gradient(135deg,#22c55ef2,#16a34af2);border-bottom:2px solid #fff3;box-shadow:0 4px 12px #22c55e4d}.offline-indicator-content{align-items:center;color:#fff;display:flex;font-size:14px;font-weight:600;gap:12px}.offline-indicator-icon{align-items:center;background:#fff3;border-radius:50%;display:flex;font-size:18px;height:24px;justify-content:center;width:24px}.offline-indicator-text{flex:1 1;text-align:center}@media (max-width:480px){.offline-indicator{padding:10px 16px}.offline-indicator-content{font-size:13px}.offline-indicator-icon{font-size:16px;height:20px;width:20px}}.update-notification{animation:slideUp .3s ease-out;bottom:20px;left:50%;max-width:500px;position:fixed;transform:translateX(-50%);width:calc(100% - 40px);z-index:10001}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,100%)}to{opacity:1;transform:translate(-50%)}}.update-notification-content{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#0f0f23f2,#1b2333f2);border-radius:16px;box-shadow:0 12px 40px #00000080,0 0 0 1px #ffffff1a,0 0 30px #3a6ff74d;display:flex;gap:16px;padding:20px}.update-notification-icon{animation:rotate 2s linear infinite;flex-shrink:0;font-size:32px}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.update-notification-text{display:flex;flex:1 1;flex-direction:column;gap:4px}.update-notification-text strong{color:#fff;font-size:16px;font-weight:700}.update-notification-text span{color:#fffc;font-size:14px}.update-notification-actions{display:flex;flex-shrink:0;gap:8px}.update-notification-button{border:none;border-radius:8px;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.update-notification-button-primary{background:linear-gradient(135deg,#3a6ff7,#5b8fff);box-shadow:0 4px 12px #3a6ff74d;color:#fff}.update-notification-button-primary:hover{background:linear-gradient(135deg,#4a7fff,#6b9fff);box-shadow:0 6px 16px #3a6ff766;transform:translateY(-1px)}.update-notification-button-secondary{background:#0000;border:1px solid #fff3;color:#ffffffb3}.update-notification-button-secondary:hover{background:#ffffff1a;border-color:#ffffff4d;color:#ffffffe6}@media (max-width:640px){.update-notification{bottom:10px;width:calc(100% - 20px)}.update-notification-content{flex-direction:column;gap:12px;padding:16px}.update-notification-actions{flex-direction:column;width:100%}.update-notification-button{width:100%}}.dev-skip-button{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(135deg,#ff6b6b,#ee5a6f);border:2px solid #ffffff4d;border-radius:20px;box-shadow:0 4px 12px #ff6b6b4d,0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;position:fixed;right:20px;top:20px;transition:all .2s ease;z-index:9999}.dev-skip-button:hover{background:linear-gradient(135deg,#ff7b7b,#ff6a7f);box-shadow:0 6px 16px #ff6b6b66,0 4px 8px #00000026;transform:translateY(-2px)}.dev-skip-button:active{box-shadow:0 2px 8px #ff6b6b4d,0 1px 2px #0000001a;transform:translateY(0)}@keyframes devSkipPulse{0%,to{box-shadow:0 4px 12px #ff6b6b4d,0 2px 4px #0000001a}50%{box-shadow:0 4px 12px #ff6b6b80,0 2px 4px #0000001a,0 0 0 8px #ff6b6b1a}}.dev-skip-button{animation:devSkipPulse 2s ease-in-out infinite}.dev-skip-button:hover{animation:none}.login-container{align-items:center;display:flex;height:100%;justify-content:center;min-height:100vh;padding:24px;pointer-events:auto;position:relative;width:100%}.login-card{border-radius:32px;box-shadow:0 20px 60px #0006,0 0 0 1px #ffffff0d;max-width:480px;padding:56px 48px;width:100%}.login-header{align-items:center;display:flex;flex-direction:column;gap:16px;margin-bottom:48px;position:relative;text-align:center}.login-logo-animation{height:120px;width:120px}.login-logo-animation,.login-orb-background{align-items:center;display:flex;justify-content:center;margin-bottom:8px}.login-orb-background{height:300px;left:0;opacity:.8;pointer-events:none;position:absolute;top:-150px;width:100%;z-index:-1}.login-title{color:#b8860b;font-family:Playfair Display,serif;font-size:36px;font-weight:700;letter-spacing:2px;margin-bottom:16px;text-align:center}.login-subtitle{color:#fff9;font-size:14px;font-weight:400;letter-spacing:1px;line-height:1.6;margin-top:5px;text-align:center}.login-form{gap:24px}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:10px}.form-group label{color:#b8860b;font-size:10px;font-weight:700;letter-spacing:1px;margin-left:4px;text-transform:uppercase}.form-group input{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff26;border-radius:16px;color:#fff;font-family:Inter,sans-serif;font-size:16px;padding:18px 20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.form-group input:hover{background:#ffffff1a;border-color:#fff3}.form-group input:focus{background:#ffffff1f;border-color:#3a6ff7;box-shadow:0 0 0 4px #3a6ff726,0 4px 12px #3a6ff733;outline:none;transform:translateY(-1px)}.form-group input::placeholder{color:#ffffff73;font-weight:400}.error-message{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(135deg,#ef444426,#dc262626);border:1px solid #ef444466;border-radius:16px;color:#fca5a5;font-size:14px;font-weight:500;padding:16px;text-align:center}.btn-primary{background-color:#b8860b;border-radius:30px;box-shadow:0 4px 10px #b8860b4d,0 0 0 1px #ffffff1a;font-size:14px;letter-spacing:2px;margin-top:10px;padding:18px 32px;transition:all .3s ease}.btn-primary:hover{box-shadow:0 6px 20px #b8860b66,0 0 0 1px #ffffff26;transform:translateY(-1px)}.toggle-link{border-top:1px solid #ffffff1a;margin-top:24px;padding-top:24px;text-align:center}.link-button{background:none;border:none;color:#ffffffbf;cursor:pointer;font-family:Inter,sans-serif;font-size:14px;padding:0;transition:color .2s ease}.link-button:hover{color:#fffffff2}.link-text{color:#3a6ff7;font-weight:600;text-decoration:underline;transition:color .2s ease}.link-button:hover .link-text{color:#5b8df7}.field-error{color:#fca5a5;display:block;font-size:12px;font-weight:500;margin-top:6px}.form-group select.form-select{-webkit-appearance:none;appearance:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff14;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23FFF' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 20px center;background-repeat:no-repeat;border:1px solid #ffffff26;border-radius:16px;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:16px;padding:18px 50px 18px 20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.form-group select.form-select:hover{background-color:#ffffff1a;border-color:#fff3}.form-group select.form-select:focus{background-color:#ffffff1f;border-color:#3a6ff7;box-shadow:0 0 0 4px #3a6ff726,0 4px 12px #3a6ff733;outline:none;transform:translateY(-1px)}.form-group select.form-select option{background:#1a1f2e;color:#fff}.helper-text{color:#fff9;display:block;font-size:12px;font-weight:400;margin-top:6px}@media (max-width:768px){.login-container{min-height:100vh;min-height:-webkit-fill-available;padding:16px}.login-card{border-radius:24px;max-width:100%;padding:40px 32px}.login-header{gap:12px;margin-bottom:32px}.login-logo-animation{height:100px;margin-bottom:4px;width:100px}.login-orb-background{height:250px;top:-125px}.login-title{font-size:32px;margin-bottom:12px}.login-subtitle{font-size:15px}.login-form{gap:20px}.form-group input,.form-group select.form-select{-webkit-appearance:none;appearance:none;font-size:16px;min-height:48px;padding:16px 18px}.form-group select.form-select{background-position:right 18px center;padding-right:45px}.btn-primary{font-size:16px;min-height:48px;padding:16px 32px;width:100%}.toggle-link{margin-top:20px;padding-top:20px}.link-button{align-items:center;display:flex;font-size:13px;justify-content:center;min-height:44px;padding:8px}}@media (max-width:480px){.login-container{padding:12px}.login-card{border-radius:20px;padding:32px 24px}.login-header{margin-bottom:28px}.login-logo-animation{height:80px;width:80px}.login-orb-background{height:200px;top:-100px}.login-title{font-size:28px}.login-subtitle{font-size:14px}.login-form{gap:18px}.form-group label{font-size:13px}.form-group input,.form-group select.form-select{border-radius:14px;font-size:15px;padding:14px 16px}.form-group select.form-select{background-position:right 16px center;padding-right:40px}.btn-primary{border-radius:14px;font-size:15px;padding:14px 28px}.error-message{border-radius:14px;font-size:13px;padding:14px}.field-error,.helper-text{font-size:11px}}.login-container *{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.btn-primary,.form-group input,.form-group select.form-select,.link-button{-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:text;-webkit-user-select:text}.form-group input:focus,.form-group select.form-select:focus{user-select:text;-webkit-user-select:text}.skeleton{animation:skeleton-loading 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ffffff14,#ffffff1f 50%,#ffffff14);background-size:200% 100%;display:inline-block}.skeleton-rectangular{border-radius:8px}.skeleton-circular{border-radius:50%}.skeleton-text{border-radius:4px;height:16px;margin-bottom:8px}.skeleton-container{display:flex;flex-direction:column;gap:12px;width:100%}.skeleton-card{align-items:flex-start;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:24px;display:flex;gap:16px;padding:24px}.skeleton-card-content{display:flex;flex:1 1;flex-direction:column;gap:12px}.skeleton-card-line{margin-bottom:4px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none;background:#ffffff14}}.screen-transition-wrapper{height:100%;position:relative;width:100%}@media (prefers-reduced-motion:reduce){.screen-transition-wrapper{animation:none}}.toast-container{display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none;position:fixed;right:24px;top:24px;z-index:10000}.toast{backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);background:#ffffff1f;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000004d;gap:16px;justify-content:space-between;min-width:300px;padding:16px 20px;pointer-events:auto}.toast,.toast-content{align-items:center;display:flex}.toast-content{flex:1 1;gap:12px}.toast-icon{flex-shrink:0;font-size:20px}.toast-message{color:#fff;flex:1 1;font-size:15px;font-weight:500;line-height:1.4}.toast-close{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:4px;color:#ffffffb3;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:24px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:24px}.toast-close:hover{background:#ffffff1a;color:#fff}.toast-close:active{transform:scale(.95)}.toast-success{border-left:4px solid #4ade80}.toast-error{border-left:4px solid #f87171}.toast-warning{border-left:4px solid #fbbf24}.toast-info{border-left:4px solid #60a5fa}@media (max-width:768px){.toast-container{left:16px;max-width:none;right:16px;top:16px}.toast{min-width:auto;width:100%}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.container{margin:0 auto;padding:0 24px;width:100%}@media (min-width:481px){.container{padding:0 32px}}@media (min-width:769px){.container{max-width:1200px;padding:0 48px}}@media (min-width:1025px){.container{max-width:1400px;padding:0 64px}}@media (min-width:481px) and (max-width:768px){.swipe-card{max-width:450px}.chat-message-bubble{max-width:70%}.login-card{max-width:520px;padding:48px 40px}}@media (min-width:769px){.app-container{align-items:center;display:flex;justify-content:center}.swipe-screen{margin:0 auto;max-width:1200px}.swipe-card-container{margin:0 auto;max-width:600px}.swipe-card{height:700px;max-width:500px}.chat-screen{box-shadow:0 0 40px #0000004d;margin:0 auto;max-width:1000px}.chat-messages{margin:0 auto;max-width:800px}.chat-message-bubble{max-width:65%}.matches-list-screen{margin:0 auto;max-width:1000px}.edit-profile-content,.matches-list-content,.profile-screen{margin:0 auto;max-width:900px}.login-container{padding:48px}.login-card{max-width:480px;padding:56px 48px}.bottom-nav{border-right:1px solid #ffffff1f;border-top:none;bottom:0;box-shadow:4px 0 24px #0003;flex-direction:column;height:100vh;justify-content:flex-start;left:0;padding:24px 0;position:fixed;top:0;width:80px}.bottom-nav button{border-radius:16px;flex-direction:column;font-size:12px;gap:8px;margin:8px 0;padding:16px;width:100%}.bottom-nav button span{display:block}}@media (min-width:1025px){.swipe-card{height:750px;max-width:550px}.chat-screen,.matches-list-screen{max-width:1200px}.edit-profile-content{max-width:1000px}.bottom-nav{width:100px}.bottom-nav button{font-size:13px;padding:20px}}@media (orientation:landscape) and (max-height:600px){.swipe-card{height:calc(100vh - 150px);max-height:500px}.chat-screen{min-height:100vh}.bottom-nav{height:64px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.chat-avatar,.matches-list-avatar,.swipe-card-image{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media (hover:none) and (pointer:coarse){[role=button],a,button{min-height:44px;min-width:44px}.btn-primary:hover,.swipe-card:hover{transform:none}}@media (hover:hover) and (pointer:fine){.swipe-card:hover{transform:translateY(-4px)}.btn-primary:hover{transform:translateY(-2px)}.matches-list-card:hover{transform:translateX(4px)}}@media print{.bottom-nav,.chat-input-container,.swipe-actions{display:none}.chat-screen,.swipe-screen{background:#fff;color:#000}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@supports (padding:max(0px)){.app-container{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}.bottom-nav{padding-bottom:max(12px,env(safe-area-inset-bottom))}}*{-webkit-tap-highlight-color:transparent;box-sizing:border-box;margin:0;padding:0;touch-action:manipulation}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-touch-callout:none;background:#0a0e1a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden;touch-action:pan-x pan-y}[contenteditable],input,textarea{-webkit-user-select:text;user-select:text}.app-container{background:linear-gradient(135deg,#0a0e1a,#1a1f2e);height:100vh;overflow:hidden;position:relative;width:100vw}canvas{height:100%!important;image-rendering:auto;left:0!important;position:fixed!important;top:0!important;width:100%!important;will-change:auto;z-index:0!important}.ui-overlay{display:flex;flex-direction:column;height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:100}.ui-overlay [role=button],.ui-overlay a,.ui-overlay button,.ui-overlay input,.ui-overlay>*,.ui-overlay>*>*{pointer-events:auto}.bottom-nav{align-items:center;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);background:#ffffff14;border-top:1px solid #ffffff1f;bottom:0;box-shadow:0 -4px 24px #0003;display:flex;height:88px;justify-content:space-around;left:0;padding:0 24px env(safe-area-inset-bottom);position:fixed;right:0;z-index:100}.bottom-nav button{-webkit-tap-highlight-color:transparent;background:#0000;border:none;border-radius:24px;color:#ffffffa6;cursor:pointer;font-family:Inter,sans-serif;font-size:15px;font-weight:600;letter-spacing:.3px;min-height:44px;min-width:44px;padding:14px 28px;touch-action:manipulation;transition:all .3s cubic-bezier(.4,0,.2,1)}.bottom-nav button:hover{background:#ffffff1f;color:#fffffff2;transform:translateY(-2px)}.bottom-nav button:active{background:#ffffff26;transform:translateY(0)}.bottom-nav button.active{background:linear-gradient(135deg,#3a6ff759,#8b5cf659);box-shadow:0 4px 12px #3a6ff74d;color:#fff;font-weight:700}.glass-card{backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:28px;box-shadow:0 12px 40px #0003,0 0 0 1px #ffffff0d}.btn-primary{-webkit-tap-highlight-color:transparent;background:linear-gradient(135deg,#3a6ff7,#5b8fff);border:none;border-radius:16px;box-shadow:0 8px 24px #3a6ff759,0 0 0 1px #ffffff1a;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:17px;font-weight:700;letter-spacing:.3px;min-height:48px;min-width:120px;padding:18px 36px;touch-action:manipulation;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary:hover{box-shadow:0 12px 32px #3a6ff773,0 0 0 1px #ffffff26;transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}@media (min-width:481px) and (max-width:768px){.bottom-nav{height:76px;padding:0 16px calc(16px + env(safe-area-inset-bottom))}.bottom-nav button{font-size:14px;min-width:70px;padding:14px 20px}}@media (max-width:768px){.bottom-nav{height:72px;padding:0 12px calc(12px + env(safe-area-inset-bottom))}.bottom-nav button{flex:1 1;font-size:13px;max-width:120px;min-width:60px;padding:12px 16px}.btn-primary{font-size:16px;min-height:48px;padding:16px 32px}}@media (max-width:480px){.bottom-nav{height:68px;padding:0 8px calc(8px + env(safe-area-inset-bottom))}.bottom-nav button{font-size:12px;min-width:50px;padding:10px 12px}.btn-primary{font-size:15px;padding:14px 28px;width:100%}}@media (min-width:769px){.bottom-nav{align-items:center;border-right:1px solid #ffffff1f;border-top:none;bottom:0;box-shadow:4px 0 24px #0003;flex-direction:column;height:100vh;justify-content:flex-start;left:0;padding:24px 0;position:fixed;top:0;width:80px}.bottom-nav button{border-radius:16px;flex:0 0 auto;flex-direction:column;font-size:12px;gap:8px;margin:8px 0;max-width:none;min-width:auto;padding:16px;width:100%}.app-container>.ui-overlay{margin-left:80px;width:calc(100% - 80px)}}@media (min-width:1025px){.bottom-nav{width:100px}.bottom-nav button{font-size:13px;padding:20px}.app-container>.ui-overlay{margin-left:100px;width:calc(100% - 100px)}}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes glow{0%,to{box-shadow:0 0 24px #3a6ff766,0 0 0 1px #ffffff1a}50%{box-shadow:0 0 48px #3a6ff799,0 0 0 1px #fff3}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.fade-in{animation:fadeIn .8s cubic-bezier(.25,.46,.45,.94)}.glow-effect{animation:glow 2s ease-in-out infinite}.pulse-effect{animation:pulse 2s ease-in-out infinite}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#ffffff0d;border-radius:5px}::-webkit-scrollbar-thumb{background:#fff3;background-clip:padding-box;border:2px solid #0000;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d;background-clip:padding-box}.error-boundary{align-items:center;background:linear-gradient(135deg,#0a0e1a,#1a1f2e);display:flex;height:100%;justify-content:center;left:0;padding:24px;position:fixed;top:0;width:100%;z-index:10000}.error-boundary-content{backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:28px;box-shadow:0 12px 40px #0003;max-width:600px;padding:48px 32px;text-align:center;width:100%}.error-boundary-icon{animation:pulse 2s ease-in-out infinite;font-size:64px;margin-bottom:24px}.error-boundary-title{color:#fff;font-family:Inter,sans-serif;font-size:28px;font-weight:700;margin-bottom:16px}.error-boundary-message{color:#fffc;font-size:16px;line-height:1.6;margin-bottom:32px}.error-boundary-details{background:#0000004d;border-radius:12px;margin:24px 0;padding:16px;text-align:left}.error-boundary-details summary{color:#ffffffe6;cursor:pointer;font-weight:600;margin-bottom:12px;-webkit-user-select:none;user-select:none}.error-boundary-details summary:hover{color:#fff}.error-boundary-stack{background:#00000080;border-radius:8px;color:#ffffffb3;font-size:12px;max-height:300px;overflow-x:auto;overflow-y:auto;padding:16px;text-align:left;white-space:pre-wrap;word-break:break-word}.error-boundary-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.btn-secondary{-webkit-tap-highlight-color:transparent;background:#ffffff1a;border:1px solid #fff3;border-radius:16px;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:17px;font-weight:600;letter-spacing:.3px;min-height:48px;min-width:120px;padding:18px 36px;touch-action:manipulation;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-secondary:hover{background:#ffffff26;border-color:#ffffff4d;transform:translateY(-2px)}.btn-secondary:active{transform:translateY(0)}@media (max-width:768px){.error-boundary-content{padding:32px 24px}.error-boundary-title{font-size:24px}.error-boundary-message{font-size:15px}.error-boundary-actions{flex-direction:column}.error-boundary-actions button{width:100%}}