.logo-loader-container{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.logo-loader-container--fullscreen{position:fixed;inset:0;min-height:100vh;background:var(--bg-primary, #fdfbfd);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9999;animation:fadeIn .2s ease-out;width:100vw;height:100vh;overflow:hidden}.logo-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md, 1rem)}.logo-loader__wrapper{position:relative;display:flex;align-items:center;justify-content:center;transition:transform .3s cubic-bezier(.4,0,.2,1)}.logo-loader__image{position:relative;z-index:2;animation:logoRotate 2s cubic-bezier(.4,0,.2,1) infinite;transition:opacity .3s ease,transform .3s ease;will-change:transform;transform:translateZ(0);-webkit-transform:translateZ(0);user-select:none;-webkit-user-select:none;pointer-events:none}@keyframes logoRotate{0%{transform:rotate(0) translateZ(0) scale(1)}50%{transform:rotate(180deg) translateZ(0) scale(1.05)}to{transform:rotate(360deg) translateZ(0) scale(1)}}.logo-loader__ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) translateZ(0);border:3px solid transparent;border-radius:50%;animation:ringRotateAndClose 2s cubic-bezier(.4,0,.2,1) infinite;will-change:transform,border-color;z-index:1;transition:border-color .3s ease;box-sizing:border-box}@keyframes ringRotateAndClose{0%{transform:translate(-50%,-50%) rotate(0) translateZ(0);border-top-color:var(--primary, #6c5ce7);border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent;opacity:.6}25%{transform:translate(-50%,-50%) rotate(90deg) translateZ(0);border-top-color:var(--primary, #6c5ce7);border-right-color:var(--primary, #6c5ce7);border-bottom-color:transparent;border-left-color:transparent;opacity:.8}50%{transform:translate(-50%,-50%) rotate(180deg) translateZ(0);border-top-color:var(--primary, #6c5ce7);border-right-color:var(--primary, #6c5ce7);border-bottom-color:var(--primary, #6c5ce7);border-left-color:transparent;opacity:1}75%{transform:translate(-50%,-50%) rotate(270deg) translateZ(0);border-top-color:var(--primary, #6c5ce7);border-right-color:var(--primary, #6c5ce7);border-bottom-color:var(--primary, #6c5ce7);border-left-color:var(--primary, #6c5ce7);opacity:1}to{transform:translate(-50%,-50%) rotate(360deg) translateZ(0);border-top-color:var(--primary, #6c5ce7);border-right-color:var(--primary, #6c5ce7);border-bottom-color:var(--primary, #6c5ce7);border-left-color:var(--primary, #6c5ce7);opacity:.9}}.logo-loader__text{margin:0;color:var(--text-secondary, #6b7280);font-size:.9375rem;font-weight:500;text-align:center;animation:textFadeIn .5s ease-out .2s both;transition:color .3s ease}@keyframes textFadeIn{0%{opacity:0;transform:translateY(10px) translateZ(0)}to{opacity:1;transform:translateY(0) translateZ(0)}}.logo-loader--small .logo-loader__wrapper{width:24px;height:24px}.logo-loader--small .logo-loader__image{width:20px;height:20px}.logo-loader--small .logo-loader__ring{width:24px;height:24px;border-width:2px}.logo-loader--small .logo-loader__text{font-size:.75rem;margin-top:var(--spacing-xs, .5rem)}.logo-loader--medium .logo-loader__wrapper{width:80px;height:80px}.logo-loader--medium .logo-loader__image{width:64px;height:64px}.logo-loader--medium .logo-loader__ring{width:80px;height:80px;border-width:3px}.logo-loader--medium .logo-loader__text{font-size:.9375rem}.logo-loader--large .logo-loader__wrapper{width:120px;height:120px}.logo-loader--large .logo-loader__image{width:100px;height:100px}.logo-loader--large .logo-loader__ring{width:120px;height:120px;border-width:4px}.logo-loader--large .logo-loader__text{font-size:1.125rem}@media(max-width:480px){.logo-loader--medium .logo-loader__wrapper{width:64px;height:64px}.logo-loader--medium .logo-loader__image{width:52px;height:52px}.logo-loader--medium .logo-loader__ring{width:64px;height:64px}.logo-loader--large .logo-loader__wrapper{width:100px;height:100px}.logo-loader--large .logo-loader__image{width:80px;height:80px}.logo-loader--large .logo-loader__ring{width:100px;height:100px}}@media(min-width:768px){.logo-loader--medium .logo-loader__wrapper{width:96px;height:96px}.logo-loader--medium .logo-loader__image{width:80px;height:80px}.logo-loader--medium .logo-loader__ring{width:96px;height:96px}}@media(min-width:1024px){.logo-loader--large .logo-loader__wrapper{width:140px;height:140px}.logo-loader--large .logo-loader__image{width:120px;height:120px}.logo-loader--large .logo-loader__ring{width:140px;height:140px}}@media(prefers-reduced-motion:reduce){.logo-loader__image{animation:none;transform:none}.logo-loader__ring{animation:ringPulse 2s ease-in-out infinite}.logo-loader__text{animation:none}}@media(max-width:480px){.logo-loader__image,.logo-loader__ring{animation-duration:1.8s}}.airplane-transition-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#0a0a1a;will-change:transform,opacity;transform:translateZ(0);-webkit-transform:translateZ(0)}.map-background{position:absolute;inset:0;overflow:hidden}.map-image{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .5s ease}.map-image.loaded{opacity:1}.map-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#581c8799,#2d236480 40%,#140f28b3);mix-blend-mode:multiply}.map-background:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 0%,transparent 40%,rgba(10,10,26,.8) 100%);pointer-events:none}.sky-gradient{position:absolute;inset:0;background:linear-gradient(180deg,#0a0a1a,#1a1a3e,#2d2d6e,#5c4d8e 60%,#8b6bae,#c9a0dc 90%,#f0d0f0);background-size:100% 200%}.airplane-transition-overlay.takeoff .sky-gradient{background-position:0% 100%}.airplane-transition-overlay.landing .sky-gradient{background-position:0% 0%}.destination-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:3rem;font-weight:700;color:#fff;text-shadow:0 0 40px rgba(168,85,247,.8),0 4px 20px rgba(0,0,0,.5);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;z-index:5}@media(max-width:600px){.destination-label{font-size:1.8rem}}.airplane-icon-container{position:absolute;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 50px rgba(255,255,255,.7));z-index:10}.airplane-icon{font-size:6rem;color:#fff;filter:drop-shadow(0 4px 30px rgba(0,0,0,.5))}.airplane-icon.takeoff{transform:scaleX(1)}.airplane-icon.landing{transform:scaleX(-1)}.airplane-glow{position:absolute;width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,.5) 0%,rgba(168,85,247,.4) 30%,transparent 70%);border-radius:50%;pointer-events:none}.engine-glow{position:absolute;left:-35px;width:50px;height:25px;background:radial-gradient(ellipse at right,rgba(255,180,80,.9) 0%,rgba(255,120,50,.5) 50%,transparent 100%);border-radius:50%;filter:blur(5px)}.airplane-icon.landing+.airplane-glow+.engine-glow{left:auto;right:-35px;background:radial-gradient(ellipse at left,rgba(255,180,80,.9) 0%,rgba(255,120,50,.5) 50%,transparent 100%)}.speed-lines{position:absolute;inset:0;pointer-events:none;z-index:3}.speed-line{position:absolute;width:120px;height:3px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.7) 50%,transparent 100%);border-radius:2px;transform-origin:left center}.transition-clouds{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:4}.cloud{position:absolute;background:#ffffff40;border-radius:50%;filter:blur(50px)}.cloud-1{width:400px;height:200px;top:8%;left:5%}.cloud-2{width:350px;height:180px;top:45%;right:10%}.cloud-3{width:300px;height:150px;bottom:20%;left:30%}.transition-status{position:absolute;bottom:15%;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;color:#fff;font-size:1.5rem;font-weight:600;letter-spacing:.08em;text-shadow:0 2px 30px rgba(0,0,0,.7);white-space:nowrap;z-index:10;transition:all .3s ease;overflow:visible;max-height:none}@media(max-width:768px){.transition-status{bottom:calc(20% + env(safe-area-inset-bottom,0px));left:0!important;right:0!important;font-size:1rem;letter-spacing:.04em;white-space:normal;word-break:break-word;overflow-wrap:break-word;max-width:100%!important;width:100%!important;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));padding-left:24px;padding-right:24px;box-sizing:border-box;overflow:hidden;max-height:none;min-height:auto;transition:all .3s ease-in-out}.transition-status.mobile{min-height:auto;overflow:hidden;overflow-wrap:break-word;padding-top:8px}.transition-status.mobile>div{max-width:100%!important;overflow-wrap:break-word;word-break:break-word;box-sizing:border-box}.airplane-transition-overlay{overflow:visible}.airplane-icon-container.mobile{filter:drop-shadow(0 0 30px rgba(255,255,255,.5))}.map-layer{will-change:transform,opacity;transform:translateZ(0);-webkit-transform:translateZ(0)}.speed-line{width:80px;height:2px}}@media(max-width:375px){.transition-status{bottom:calc(18% + env(safe-area-inset-bottom,0px));font-size:.85rem;padding-left:20px;padding-right:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));max-width:100%!important;width:100%!important;left:0!important;right:0!important}.transition-status.mobile>div{font-size:.8rem!important;letter-spacing:.5px!important;padding-left:4px;padding-right:4px}}.status-text{display:flex;align-items:center;gap:.5rem}.status-dots{margin-left:2px}@media(prefers-reduced-motion:reduce){.airplane-transition-overlay *{animation:none!important;transition:none!important}}[data-motion=reduced] .airplane-transition-overlay *{animation:none!important;transition:none!important}.toast{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-secondary);border:2px solid var(--bg-tertiary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:300px;max-width:500px;animation:slideInRight .3s ease-out;position:relative;z-index:10000}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-exiting{animation:slideOutRight .3s ease-out forwards}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.toast-icon{flex-shrink:0}.toast-success{border-color:var(--success-dark);background:var(--success)}.toast-success .toast-icon{color:var(--success-dark)}.toast-error{border-color:var(--error-dark);background:var(--error)}.toast-error .toast-icon{color:var(--error-dark)}.toast-warning{border-color:var(--warning-dark);background:var(--warning)}.toast-warning .toast-icon{color:var(--warning-dark)}.toast-info{border-color:var(--info-dark);background:var(--info)}.toast-info .toast-icon{color:var(--info-dark)}.toast-message{flex:1;font-size:.9375rem;font-weight:500;color:var(--text-primary);line-height:1.4}.toast-close{background:transparent;border:none;padding:var(--spacing-xs);cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:var(--transition);flex-shrink:0}.toast-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}@media(max-width:767px){.toast{min-width:auto;max-width:calc(100vw - var(--spacing-xl));padding:var(--spacing-sm) var(--spacing-md)}.toast-message{font-size:.875rem}}.page-transition{width:100%;min-height:100%;animation:fadeIn .3s cubic-bezier(.4,0,.2,1);will-change:opacity;transform:translateZ(0);-webkit-transform:translateZ(0)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.page-transition{transition-duration:.12s}}@media(prefers-reduced-motion:reduce){.page-transition{transition:none}.page-transition--fadeIn,.page-transition--fadeOut{opacity:1;transform:none}}.bottom-nav{position:fixed;bottom:0;left:0;width:100%;background-color:var(--bg-secondary, #fafafa);border-top:1px solid var(--border-color, #e0e0e0);padding:0;z-index:1000;display:none;box-shadow:0 -2px 10px #0000000d;padding-bottom:env(safe-area-inset-bottom,0px);transform:translateY(100%);opacity:0;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1)}@media(max-width:767px){.bottom-nav{display:block;transform:translateY(0);opacity:1}.bottom-nav.hidden{transform:translateY(100%);opacity:0;pointer-events:none}}.bottom-nav-container{display:flex;justify-content:space-around;align-items:center;height:60px;max-width:600px;margin:0 auto;position:relative;padding:0 12px}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:var(--text-secondary, #757575);flex:1;height:100%;transition:all .2s ease;background:transparent;border:none;cursor:pointer;position:relative}.nav-item.active{color:var(--primary, #6c5ce7)}.icon-container{display:flex;align-items:center;justify-content:center;margin-bottom:4px;transition:transform .2s ease}.nav-item.active .icon-container{transform:translateY(-2px)}.nav-label{font-size:.7rem;font-weight:500;white-space:nowrap}.bottom-nav-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;border:1.5px solid currentColor}.nav-item.active .bottom-nav-avatar{border-color:var(--primary, #6c5ce7)}.fab-container{position:relative;overflow:visible;z-index:1001}.fab-button{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#6c5ce7,#a29bfe);color:#fff;border:none;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #6c5ce766;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);transform:translateY(-20px)}.fab-button.active{transform:translateY(-20px) rotate(45deg);background:linear-gradient(135deg,#5a4fd4,#8c82eb);box-shadow:0 6px 15px #6c5ce799}.fab-button:active{transform:translateY(-18px) scale(.95)}.fab-menu{position:fixed;bottom:90px;left:50%;transform:translate(-50%) translateY(20px) scale(.9);display:flex;flex-direction:column;gap:12px;opacity:0;pointer-events:none;transition:all .3s cubic-bezier(.175,.885,.32,1.275);z-index:2000}.fab-menu.open{opacity:1;transform:translate(-50%) translateY(0) scale(1);pointer-events:auto}.fab-menu-item{display:flex;align-items:center;gap:12px;padding:10px 16px;border-radius:20px;background:#fff;box-shadow:0 4px 15px #00000026;text-decoration:none;color:var(--text-primary, #333);font-weight:500;font-size:.9rem;transition:transform .2s ease;white-space:nowrap}@media(prefers-color-scheme:dark){.fab-menu-item{background:#2d2d2d;color:#f5f5f5;box-shadow:0 4px 15px #00000080}}[data-theme=dark] .fab-menu-item{background:var(--bg-secondary, #2d2d2d);color:var(--text-primary, #f5f5f5);box-shadow:0 4px 15px #00000080}.fab-menu-item:hover{transform:scale(1.05)}.fab-menu-item.income svg{color:#00b894}.fab-menu-item.expense svg{color:#ff7675}.fab-backdrop{position:fixed;inset:0;background:#00000080;z-index:1500;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);animation:fadeIn .3s ease}.accessibility-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.accessibility-modal{width:90%;max-width:500px;background:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s ease}.accessibility-header{padding:var(--spacing-lg);border-bottom:1px solid var(--bg-tertiary);display:flex;align-items:center;justify-content:space-between}.accessibility-header h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.accessibility-content{padding:var(--spacing-lg);overflow-y:auto;flex:1}.setting-group{margin-bottom:var(--spacing-xl);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.setting-label{display:flex;gap:var(--spacing-md);flex:1}.setting-icon{font-size:1.5rem;color:var(--primary);flex-shrink:0;margin-top:4px}.setting-label h3{margin:0 0 4px;font-size:1.1rem;color:var(--text-primary)}.setting-label p{margin:0;font-size:.9rem;color:var(--text-secondary)}.segmented-control{background:var(--bg-tertiary);padding:4px;border-radius:var(--radius-md);display:flex;gap:4px}.segment-btn{padding:8px 16px;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;font-weight:600;transition:all .2s ease;min-width:48px;display:flex;align-items:center;justify-content:center}.segment-btn.active{background:var(--bg-primary);color:var(--primary);box-shadow:var(--shadow-sm)}.switch{position:relative;display:inline-block;width:50px;height:28px;flex-shrink:0}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--bg-tertiary);transition:.4s}.slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff;transition:.4s;box-shadow:0 2px 4px #0003}input:checked+.slider{background-color:var(--primary)}input:checked+.slider:before{transform:translate(22px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.accessibility-footer{padding:var(--spacing-lg);border-top:1px solid var(--bg-tertiary);display:flex;justify-content:space-between;background:var(--bg-secondary)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:768px){.setting-group{flex-direction:column;align-items:flex-start}.segmented-control,.switch{margin-left:48px;margin-top:var(--spacing-sm)}}.currency-popover-trigger.active{background:var(--primary-light);color:#fff}.currency-popover-overlay{position:fixed;inset:0;background:#0000004d;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:9998;animation:fadeIn .2s ease-out}.currency-popover{position:fixed;top:70px;right:16px;width:100%;max-width:380px;max-height:calc(100vh - 100px);background:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg),0 20px 60px #00000026;z-index:9999;display:flex;flex-direction:column;overflow:hidden;animation:slideDown .25s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .currency-popover{background:var(--bg-secondary);border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 60px #0006,0 0 0 1px #ffffff0d inset}.currency-popover-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--bg-tertiary);background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%)}.currency-popover-header h3{display:flex;align-items:center;gap:var(--spacing-sm);margin:0;font-size:1rem;font-weight:600;color:#fff}.currency-popover-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-full);background:#fff3;color:#fff;cursor:pointer;transition:var(--transition)}.currency-popover-close:hover{background:#ffffff4d;transform:scale(1.1)}.currency-popover-content{padding:var(--spacing-lg);overflow-y:auto;flex:1}.currency-popover-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-xl);color:var(--text-secondary)}.currency-loading-spinner{width:32px;height:32px;border:3px solid var(--bg-tertiary);border-radius:50%;border-top-color:var(--primary);animation:spin 1s linear infinite}.currency-loading-spinner.small{width:18px;height:18px;border-width:2px;border-color:#ffffff4d;border-top-color:#fff}.currency-popover-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.currency-popover-amount{display:flex;flex-direction:column;gap:var(--spacing-xs)}.currency-popover-amount label{font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-left:4px}.currency-popover-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:1.25rem;font-weight:600;color:var(--text-primary);background:var(--bg-tertiary);border:2px solid transparent;border-radius:var(--radius-md);transition:var(--transition);outline:none}.currency-popover-input:focus{border-color:var(--primary);background:var(--bg-secondary);box-shadow:0 0 0 4px #8e44ad1a}[data-theme=dark] .currency-popover-input{background:var(--bg-tertiary);color:var(--text-primary)}[data-theme=dark] .currency-popover-input:focus{background:var(--bg-primary)}.currency-popover-selectors{display:flex;align-items:center;gap:var(--spacing-sm)}.currency-popover-select{flex:1;padding:var(--spacing-sm) var(--spacing-md);font-size:.95rem;font-weight:600;color:var(--text-primary);background:var(--bg-tertiary);border:2px solid transparent;border-radius:var(--radius-sm);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:16px;padding-right:32px;transition:var(--transition)}.currency-popover-select:focus{outline:none;border-color:var(--primary)}[data-theme=dark] .currency-popover-select{background-color:var(--bg-tertiary);color:var(--text-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E")}.currency-popover-swap{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:2px solid var(--bg-tertiary);border-radius:var(--radius-full);background:var(--bg-secondary);color:var(--primary);cursor:pointer;transition:var(--transition);flex-shrink:0}.currency-popover-swap:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:rotate(180deg)}[data-theme=dark] .currency-popover-swap{background:var(--bg-tertiary);border-color:#ffffff1a}.currency-popover-convert{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:.95rem;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);box-shadow:0 4px 12px #8e44ad4d}.currency-popover-convert:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #8e44ad66}.currency-popover-convert:active:not(:disabled){transform:translateY(0)}.currency-popover-convert:disabled{opacity:.7;cursor:not-allowed}.currency-popover-error{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#e74c3c1a;border:1px solid rgba(231,76,60,.3);border-radius:var(--radius-sm);color:var(--error);font-size:.875rem;text-align:center}.currency-popover-result{margin-top:var(--spacing-md);padding:var(--spacing-md);background:linear-gradient(135deg,var(--bg-tertiary) 0%,var(--bg-secondary) 100%);border:1px solid var(--bg-tertiary);border-radius:var(--radius-md);animation:fadeIn .3s ease-out}.result-main{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--spacing-xs);text-align:center}.result-from-amount{font-size:.95rem;color:var(--text-secondary)}.result-equals{font-size:1rem;color:var(--text-light);margin:0 var(--spacing-xs)}.result-to-amount{font-size:1.35rem;font-weight:700;color:var(--primary);background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}[data-theme=dark] .result-to-amount{background:linear-gradient(135deg,var(--primary-light) 0%,#d2b4de 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.result-rate{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);margin-top:var(--spacing-sm);font-size:.8rem;color:var(--text-light)}.currency-popover-rates{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--bg-tertiary)}.rates-header{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);font-size:.85rem;font-weight:600;color:var(--text-secondary)}.rates-header svg{color:var(--primary)}.rates-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.rate-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-sm);transition:var(--transition)}.rate-item:hover{background:var(--bg-primary);transform:translateY(-1px)}[data-theme=dark] .rate-item:hover{background:var(--bg-secondary)}.rate-code{font-weight:600;font-size:.85rem;color:var(--text-primary)}.rate-value{font-weight:700;font-size:.85rem;color:var(--primary)}[data-theme=dark] .rate-value{color:var(--primary-light)}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:640px){.currency-popover-overlay{background:#00000080}.currency-popover{position:fixed;inset:auto 0 0;max-width:100%;max-height:85vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;animation:slideUpMobile .3s cubic-bezier(.4,0,.2,1)}.currency-popover-content{padding:var(--spacing-md);padding-bottom:calc(var(--spacing-lg) + env(safe-area-inset-bottom,20px))}.currency-popover-input{font-size:1.1rem;padding:var(--spacing-md)}.currency-popover-select{padding:var(--spacing-md);font-size:1rem}.currency-popover-swap{width:44px;height:44px}.currency-popover-convert{padding:var(--spacing-md);font-size:1rem}.result-to-amount{font-size:1.5rem}.rates-grid{grid-template-columns:repeat(2,1fr)}.rate-item{padding:var(--spacing-md)}}@keyframes slideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media(min-width:1024px){.currency-popover{max-width:400px}}.calculator-reveal-btn{position:fixed;top:80px;right:0;width:28px;height:36px;border-radius:8px 0 0 8px;border:none;background:#8e44ad26;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--primary);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:-2px 2px 8px #8e44ad33,0 1px 4px #0000001a;z-index:998;transition:all .2s ease}.calculator-reveal-btn:hover{background:#8e44ad40;width:32px}[data-theme=dark] .calculator-reveal-btn{background:#8e44ad33;color:var(--primary-light)}[data-theme=dark] .calculator-reveal-btn:hover{background:#8e44ad4d}.calculator-fab{position:fixed;top:80px;right:0;transform:none;width:36px;height:44px;border-radius:12px 0 0 12px;border:none;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:-2px 2px 12px #8e44ad4d,0 2px 6px #0000001a;z-index:999;transition:all .3s cubic-bezier(.4,0,.2,1)}.calculator-fab svg{width:18px;height:18px}.calculator-fab:hover{width:44px;box-shadow:-4px 2px 16px #8e44ad66,0 4px 12px #00000026}.calculator-fab:active{width:40px}.calculator-fab.active{background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary) 100%);width:44px}.calculator-fab-badge{position:absolute;top:4px;left:4px;width:8px;height:8px;background:var(--success, #10B981);border-radius:50%;border:1.5px solid white;animation:badge-pulse 1.5s infinite}@keyframes pulse-glow{0%,to{box-shadow:0 4px 16px #8e44ad59,0 2px 8px #00000026}50%{box-shadow:0 4px 24px #8e44ad80,0 2px 12px #0003,0 0 0 4px #8e44ad26}}@keyframes pulse-edge{0%,to{width:36px;box-shadow:-2px 2px 12px #8e44ad4d,0 2px 6px #0000001a}50%{width:42px;box-shadow:-4px 2px 16px #8e44ad73,0 2px 8px #00000026}}@keyframes badge-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.calculator-overlay{position:fixed;inset:0;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1001}.calculator-panel{position:fixed;bottom:0;left:0;right:0;max-height:70vh;max-height:calc(70vh - env(safe-area-inset-bottom,0px));background:var(--bg-secondary);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-xl, 24px) var(--radius-xl, 24px) 0 0;box-shadow:0 -8px 32px #00000026,0 0 0 1px #ffffff1a inset;z-index:1002;display:flex;flex-direction:column;overflow:hidden}[data-theme=dark] .calculator-panel{background:#1e1432f2;border:1px solid rgba(255,255,255,.08);box-shadow:0 -8px 40px #0006,0 0 0 1px #ffffff0d inset}.calculator-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md, 16px) var(--spacing-lg, 20px);border-bottom:1px solid rgba(255,255,255,.1);background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%)}.calculator-header h3{display:flex;align-items:center;gap:var(--spacing-sm, 8px);margin:0;font-size:1rem;font-weight:600;color:#fff;letter-spacing:-.01em}.calculator-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-full, 50%);background:#fff3;color:#fff;cursor:pointer;transition:all .2s ease}.calculator-close:hover{background:#ffffff4d;transform:scale(1.1)}.calculator-display{flex-shrink:0;min-height:5rem;padding:var(--spacing-lg, 20px);background:var(--bg-tertiary, #f5f5f5);text-align:right;overflow:visible}[data-theme=dark] .calculator-display{background:#0003}.calculator-display-inner{display:block;min-height:3rem;line-height:1.4}.calculator-expression{display:block;font-size:1.5rem;font-weight:600;color:var(--text-primary);word-break:break-all;min-height:2rem;letter-spacing:-.02em}.calculator-result-line{display:block;font-size:1.25rem;font-weight:600;color:#8b5cf6;margin-top:.35rem;min-height:1.75rem;-webkit-font-smoothing:antialiased}[data-theme=dark] .calculator-result-line{color:#a78bfa}.calculator-keypad{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:var(--spacing-md, 16px);padding-bottom:calc(var(--spacing-md, 16px) + env(safe-area-inset-bottom,16px))}.calc-btn{display:flex;align-items:center;justify-content:center;height:56px;font-size:1.25rem;font-weight:600;border:none;border-radius:var(--radius-lg, 16px);cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.calc-btn-default{background:var(--bg-tertiary, #f0f0f0);color:var(--text-primary)}[data-theme=dark] .calc-btn-default{background:#ffffff14;color:var(--text-primary)}.calc-btn-default:hover{background:var(--bg-secondary);transform:scale(1.02)}[data-theme=dark] .calc-btn-default:hover{background:#ffffff1f}.calc-btn-default:active{transform:scale(.98);background:var(--bg-primary)}.calc-btn-function{background:#8e44ad1a;color:var(--primary)}[data-theme=dark] .calc-btn-function{background:#8e44ad33;color:var(--primary-light)}.calc-btn-function:hover{background:#8e44ad33;transform:scale(1.02)}[data-theme=dark] .calc-btn-function:hover{background:#8e44ad4d}.calc-btn-function:active{transform:scale(.98);background:#8e44ad40}.calc-btn-operator{background:var(--primary);color:#fff}.calc-btn-operator:hover{background:var(--primary-light);transform:scale(1.02)}.calc-btn-operator:active{transform:scale(.98);background:var(--primary-dark, #6b3fa0)}.calc-btn-equals{background:linear-gradient(135deg,var(--success, #10B981) 0%,#34D399 100%);color:#fff;font-size:1.5rem}.calc-btn-equals:hover{transform:scale(1.02);box-shadow:0 4px 12px #10b9814d}.calc-btn-equals:active{transform:scale(.98)}.calculator-hint{text-align:center;padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);padding-bottom:calc(var(--spacing-sm, 8px) + env(safe-area-inset-bottom,8px));font-size:.75rem;color:var(--text-light, #9ca3af);border-top:1px solid var(--bg-tertiary)}[data-theme=dark] .calculator-hint{border-top-color:#ffffff0d}@media(max-width:639px){.calculator-display{min-height:5.5rem;-webkit-flex-shrink:0;flex-shrink:0}.calculator-result-line{font-size:1.35rem;color:#8b5cf6!important}[data-theme=dark] .calculator-result-line{color:#a78bfa!important}.calculator-panel{max-height:70dvh;max-height:calc(70vh - env(safe-area-inset-bottom,0px))}}@media(min-width:640px){.calculator-reveal-btn{top:auto;bottom:24px;right:90px;width:40px;height:40px;border-radius:var(--radius-full, 50%);background:#8e44ad33}.calculator-reveal-btn:hover{width:44px;height:44px;background:#8e44ad4d}.calculator-fab{top:auto;bottom:24px;right:90px;transform:none;width:48px;height:48px;border-radius:var(--radius-full, 50%);box-shadow:0 4px 16px #8e44ad59,0 2px 8px #00000026}.calculator-fab svg{width:22px;height:22px}.calculator-fab:hover{width:48px;transform:translateY(-2px);box-shadow:0 6px 24px #8e44ad73,0 4px 12px #0003}.calculator-fab:active{width:48px;transform:translateY(0)}.calculator-fab.active{width:48px;transform:rotate(45deg)}.calculator-fab-badge{top:6px;left:auto;right:6px;width:10px;height:10px}.calculator-overlay{background:#0000004d}.calculator-panel{position:fixed;inset:auto 90px 90px auto;width:320px;max-height:none;border-radius:var(--radius-xl, 24px);box-shadow:0 12px 40px #00000026,0 0 0 1px #ffffff1a inset}[data-theme=dark] .calculator-panel{box-shadow:0 12px 50px #0006,0 0 0 1px #ffffff0d inset}.calculator-keypad{padding-bottom:var(--spacing-md, 16px)}.calc-btn{height:48px;font-size:1.1rem}.calculator-hint{padding-bottom:var(--spacing-sm, 8px)}}@media(min-width:1024px){.calculator-fab{bottom:32px;right:100px}.calculator-panel{right:100px;bottom:100px;width:340px}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.calculator-fab,.calculator-fab-badge,.calc-btn,.calculator-close{transition:none;animation:none}}@media(prefers-contrast:high){.calculator-panel{border:2px solid var(--text-primary)}.calc-btn{border:1px solid var(--text-primary)}.calculator-fab{border:2px solid white}}body.chatbot-open .calculator-fab,body.chatbot-open .calculator-panel,body.chatbot-open .calculator-overlay,body.chatbot-open .calculator-reveal-btn{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}.layout{min-height:100vh;display:flex;flex-direction:column}.layout input[type=date]{color:var(--text-primary);background-color:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--glass-border, #e0e0e0);padding:.5rem .75rem;accent-color:var(--primary)}.layout input[type=date]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #8b5cf640}.layout input[type=date]::-webkit-calendar-picker-indicator{color:var(--primary);opacity:.9;cursor:pointer}.layout input[type=date]:hover::-webkit-calendar-picker-indicator,.layout input[type=date]:focus::-webkit-calendar-picker-indicator{color:var(--text-primary)}[data-theme=dark] .layout input[type=date]{background-color:var(--bg-tertiary, #111827);border-color:var(--glass-border, rgba(255, 255, 255, .08))}[data-theme=dark] .layout input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1) brightness(1.3);opacity:.9}.layout svg{display:inline-block!important;vertical-align:middle;pointer-events:none;opacity:1!important;visibility:visible!important}.layout-header svg,.header-icon-btn svg,.user-menu-btn svg{color:#fff!important}.layout-header{background:linear-gradient(135deg,#6c5ce7,#4a3f8f);color:#fff;padding:var(--spacing-md);box-shadow:var(--shadow-md);position:sticky;top:0;z-index:100}.header-content{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.header-left{flex:1;min-width:0}.theme-toggle-btn{background:none;border:none;color:var(--text-primary);font-size:1.25rem;cursor:pointer;padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.theme-toggle-btn:hover{background-color:#0000000d}.theme-toggle-sidebar{width:100%;margin-bottom:.5rem;background:none;border:none;cursor:pointer;color:var(--text-secondary)}.theme-toggle-sidebar:hover{background-color:#0000000d;color:var(--primary)}[data-theme=dark] .theme-toggle-btn:hover,[data-theme=dark] .theme-toggle-sidebar:hover{background-color:#ffffff1a}.header-brand{display:flex;align-items:center;gap:var(--spacing-sm)}.header-logo{flex-shrink:0;filter:brightness(1.1) drop-shadow(0 2px 4px rgba(0,0,0,.1));transition:transform .3s ease}.header-logo:hover{transform:scale(1.05)}.header-text{min-width:0}.app-title{font-size:1.25rem;font-weight:700;margin:0;color:#fff!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-tagline{font-size:.75rem;margin:4px 0 0;opacity:.9;color:#fff!important;display:none}.header-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.header-icon-btn{background:#ffffff26;color:#fff;width:40px;height:40px;border-radius:var(--radius-md);cursor:pointer;display:none;align-items:center;justify-content:center;transition:all .3s ease}.header-icon-btn:hover{background:#ffffff40;transform:translateY(-2px)}.news-button{position:relative}@keyframes pulse{0%,to{box-shadow:0 0 #fff6}50%{box-shadow:0 0 0 6px #fff0}}.news-button{transition:all .3s ease}.news-button:hover{background:#ffffff40;transform:translateY(-2px)}.travel-airplane-btn{position:relative;overflow:visible;background:linear-gradient(135deg,#fff3,#ffffff1a)!important;border:1px solid rgba(255,255,255,.3)}.travel-airplane-btn:hover{background:linear-gradient(135deg,#ffffff4d,#ffffff26)!important;transform:translateY(-3px);box-shadow:0 4px 12px #00000026}.travel-airplane-btn svg{transition:transform .3s ease}.travel-airplane-btn:hover svg{transform:rotate(-10deg)}.travel-mode-link{background:linear-gradient(135deg,#6c5ce726,#6c5ce70d)!important;border-left:3px solid var(--primary)!important}.travel-mode-link:hover{background:linear-gradient(135deg,#6c5ce740,#6c5ce71a)!important}.user-menu{position:relative;display:none;margin-left:12px;padding-left:12px;border-left:1px solid rgba(255,255,255,.2)}.user-menu-btn{background:#ffffff26;color:#fff;width:40px;height:40px;border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.user-menu-btn:has(.user-avatar){background:transparent;width:auto;height:auto;padding:2px;border-radius:50%;border:2px solid rgba(255,255,255,.5)}.user-menu-btn:hover,.user-menu-btn.active{background:#ffffff40;transform:translateY(-2px)}.user-menu-btn:has(.user-avatar):hover,.user-menu-btn:has(.user-avatar).active{background:transparent;border-color:#fff;transform:scale(1.05)}.tag-avatar{width:16px;height:16px;border-radius:50%;margin-right:6px;vertical-align:middle;object-fit:cover;border:1px solid rgba(255,255,255,.2);display:inline-block}.user-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;display:block}.user-avatar-mobile{width:48px;height:48px;border-radius:50%;object-fit:cover;flex-shrink:0;margin-right:-10px;border:2px solid rgba(255,255,255,.5)}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:220px;overflow:hidden;z-index:1000;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.menu-item{width:100%;display:flex;align-items:center;gap:var(--spacing-sm);padding:12px 16px;background:transparent;border:none;color:var(--text-primary);font-size:.95rem;cursor:pointer;transition:all .2s ease;text-align:left}.menu-item svg{flex-shrink:0;color:currentColor!important}.menu-item:hover{background:var(--bg-tertiary)}.menu-item.logout{color:var(--error-dark)}.menu-item.logout:hover{background:var(--error);color:#fff}.menu-divider{height:1px;background:var(--bg-tertiary);margin:4px 0}.mobile-menu-toggle{display:flex;align-items:center;justify-content:center;background:#ffffff26;color:#fff;cursor:pointer;width:40px;height:40px;border-radius:var(--radius-md);transition:all .3s ease}.mobile-menu-toggle:hover{background:#ffffff40}.mobile-menu-toggle svg{color:#fff}.layout-nav{position:fixed;inset:0;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-right:var(--glass-border);transform:translate(-100%);transition:transform .3s ease;z-index:200;overflow-y:auto;display:flex;flex-direction:column}.layout-nav.mobile-open{transform:translate(0)}.mobile-nav-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:var(--glass-border);background:transparent;position:sticky;top:0;z-index:10}.mobile-nav-close-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:12px 16px;background-color:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease;width:100%;justify-content:center}.mobile-nav-close-btn:hover{background-color:var(--primary-dark, #5a4fd4);transform:translateY(-2px);box-shadow:var(--shadow-md)}.mobile-nav-close-btn:active{transform:translateY(0)}.mobile-nav-close-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px;background-color:var(--primary-dark, #5a4fd4)}.mobile-nav-close-btn svg{flex-shrink:0;transition:transform .3s ease}.mobile-nav-close-btn:hover svg{transform:rotate(90deg)}.mobile-nav-close-text{transition:opacity .3s ease}.nav-list{padding:var(--spacing-xl);margin:0;list-style:none;display:flex;flex-direction:column;gap:var(--spacing-md);flex:1;overflow-y:auto;overflow-x:visible;padding-bottom:120px}.nav-link{display:flex;align-items:center;gap:var(--spacing-md);padding:16px 20px;border-radius:var(--radius-md);color:var(--text-secondary);font-weight:500;transition:all .3s ease;white-space:nowrap;background:transparent;border:none;font-size:1.125rem;cursor:pointer;text-decoration:none;position:relative}.nav-icon{flex-shrink:0;transition:transform .3s ease}.nav-label{transition:opacity .3s ease}.nav-link:hover{background-color:var(--secondary);color:var(--primary);transform:translate(4px)}.nav-link:hover .nav-icon{transform:scale(1.1)}.nav-link.active{background-color:var(--primary);color:#fff;box-shadow:var(--shadow-sm)}.logout-mobile{color:var(--error-dark)!important;margin-top:var(--spacing-md)}.logout-mobile:hover{background-color:var(--error)!important;color:#fff!important}.mobile-section-divider{padding:var(--spacing-md) var(--spacing-lg);margin-top:var(--spacing-md);border-top:1px solid var(--bg-tertiary)}.mobile-section-divider .section-label{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-light);letter-spacing:.5px}.more-menu-container{position:relative;overflow:visible;display:flex;align-items:center}.more-btn{display:flex;align-items:center;gap:var(--spacing-sm)}.more-chevron{transition:transform .2s ease;margin-left:2px}.more-chevron.open{transform:rotate(180deg)}.more-dropdown{position:absolute;top:calc(100% + 8px);left:50%;background:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:220px;width:max-content;overflow:hidden;z-index:1001;animation:slideDown .2s ease;white-space:nowrap;transform-origin:top center;backface-visibility:hidden;-webkit-font-smoothing:antialiased}.more-dropdown-item{width:100%;display:flex;align-items:center;gap:var(--spacing-sm);padding:12px 16px;background:transparent;border:none;color:var(--text-primary);font-size:.95rem;cursor:pointer;transition:all .2s ease;text-align:left}.more-dropdown-item:hover{background:var(--bg-tertiary);color:var(--primary)}.more-dropdown-item svg{flex-shrink:0;color:var(--text-secondary);transition:color .2s ease}.more-dropdown-item:hover svg{color:var(--primary)}.layout-main{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:var(--spacing-md);background-color:var(--bg-primary);min-height:calc(100vh - var(--header-height, 60px));transition:background-color .2s ease;position:relative;z-index:1}@media(max-width:767px){.layout-main{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}}.mobile-overlay{position:fixed;inset:0;background:#00000080;z-index:150;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.desktop-only{display:none!important}.mobile-only{display:block}@media(min-width:768px){.mobile-only{display:none!important}.desktop-only{display:flex!important}.app-title{font-size:1.5rem}.app-tagline{display:block;font-size:.875rem}.mobile-menu-toggle{display:none}.header-icon-btn,.user-menu{display:flex}.layout-nav{position:sticky;inset:73px auto auto;transform:translate(0);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:var(--glass-border);box-shadow:var(--shadow-sm);z-index:99;overflow:visible}.nav-list{max-width:1400px;margin:0 auto;padding:var(--spacing-sm) var(--spacing-md);flex-direction:row;gap:var(--spacing-xs);justify-content:center;overflow-x:visible;overflow-y:visible}.nav-list .more-menu-container{overflow:visible}.nav-link{padding:12px 14px;font-size:1rem;position:relative;min-width:auto}.nav-link:hover{transform:translateY(-2px)}.nav-label{display:none}.nav-link:after{content:attr(title);position:absolute;bottom:-40px;left:50%;transform:translate(-50%) scale(.8);background:var(--text-primary);color:var(--bg-primary);padding:6px 12px;border-radius:var(--radius-sm);font-size:.875rem;white-space:nowrap;opacity:0;pointer-events:none;transition:all .2s ease;z-index:1000}.nav-link:hover:after{opacity:1;transform:translate(-50%) scale(1)}.more-btn{padding:12px 14px}.more-btn .nav-label,.more-chevron{display:none}.more-dropdown{left:auto;right:0;transform:none;animation:slideDownRight .2s ease}@keyframes slideDownRight{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.layout-main{padding:var(--spacing-lg) var(--spacing-md)}}@media(min-width:1024px){.app-title{font-size:1.75rem}.layout-header{padding:var(--spacing-lg) var(--spacing-xl)}.nav-list{padding:var(--spacing-md) var(--spacing-xl);gap:var(--spacing-sm)}.nav-link{padding:12px 20px;min-width:120px}.nav-label{display:inline-block}.nav-link:after{display:none}.more-btn{padding:12px 20px}.more-btn .nav-label{display:inline-block}.more-chevron{display:block}.more-dropdown{left:50%;right:auto;transform:translate(-50%);animation:slideDown .2s ease}}.version-display{position:fixed;bottom:10px;right:20px;font-size:.75rem;color:var(--text-tertiary);opacity:.6;pointer-events:none;z-index:100;display:flex;gap:8px}.version-display:hover{opacity:1}.api-version{color:var(--text-quaternary)}@media(max-width:768px){.version-display{display:none}.version-mobile-container{margin-top:auto;padding-bottom:80px}.version-mobile{text-align:center;font-size:.7rem;color:var(--text-quaternary);padding:10px}}.import-modal-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;display:flex;justify-content:flex-end;animation:fadeInOverlay .2s ease-out}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.import-modal-panel{background:var(--bg-secondary);width:100%;height:100%;max-height:100vh;display:flex;flex-direction:column;animation:slideInFromRight .3s cubic-bezier(.32,.72,0,1);overflow:hidden}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.import-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;flex-shrink:0}.import-modal-title{display:flex;align-items:center;gap:var(--spacing-sm)}.import-modal-title h2{margin:0;font-size:1.1rem;font-weight:600}.import-modal-close{background:#ffffff26;border:none;width:40px;height:40px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:var(--transition)}.import-modal-close:hover{background:#ffffff40}.import-modal-close:active{transform:scale(.95)}.import-modal-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}@media(min-width:600px){.import-modal-panel{width:480px;max-width:90vw;height:100%;border-radius:var(--radius-lg) 0 0 var(--radius-lg);box-shadow:-10px 0 30px #0003}.import-modal-header{padding:var(--spacing-lg)}.import-modal-title h2{font-size:1.25rem}}@media(min-width:1024px){.import-modal-panel{width:520px}}[data-theme=dark] .import-modal-overlay{background:#000c}[data-theme=dark] .import-modal-panel{box-shadow:-10px 0 40px #0006}@media(prefers-reduced-motion:reduce){.import-modal-overlay,.import-modal-panel{animation:none!important}}.cookie-consent-banner{position:fixed;bottom:0;left:0;width:100%;background-color:var(--card-bg, #ffffff);color:var(--text-primary, #333333);box-shadow:0 -4px 10px #0000001a;padding:1rem;z-index:9999;border-top:1px solid var(--border-color, #e0e0e0);display:flex;justify-content:center;align-items:center;animation:slideUp .5s ease-out}.cookie-content{max-width:1200px;width:100%;display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}@media(min-width:768px){.cookie-content{flex-direction:row;justify-content:space-between;text-align:left}}.cookie-message{font-size:.9rem;line-height:1.5;color:var(--text-secondary, #666666)}.cookie-message a{color:var(--primary-color, #0066cc);text-decoration:underline;cursor:pointer}.cookie-actions{display:flex;gap:1rem;flex-shrink:0}.cookie-btn{padding:.5rem 1.5rem;border-radius:4px;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s ease;border:none}.cookie-btn-accept{background-color:var(--primary-color, #0066cc);color:#fff}.cookie-btn-accept:hover{opacity:.9;transform:translateY(-1px)}.cookie-btn-decline{background-color:transparent;border:1px solid var(--border-color, #cccccc);color:var(--text-secondary, #666666)}.cookie-btn-decline:hover{background-color:var(--bg-secondary, #f5f5f5)}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:var(--spacing-lg)}.error-content{max-width:600px;text-align:center;background:var(--bg-secondary);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.error-content h1{font-size:2rem;margin-bottom:var(--spacing-md);color:var(--text-primary)}.error-content p{font-size:1.0625rem;color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.error-details{text-align:left;margin:var(--spacing-lg) 0;padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md);max-height:300px;overflow-y:auto}.error-details summary{cursor:pointer;font-weight:600;color:var(--error-dark);margin-bottom:var(--spacing-sm)}.error-details pre{font-size:.875rem;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;margin-top:var(--spacing-sm)}:root{--primary: #8e44ad;--primary-light: #a569bd;--primary-dark: #7d3c98;--primary-gradient: linear-gradient(135deg, #8e44ad 0%, #a569bd 100%);--secondary: #f4ecf7;--accent: #d2b4de;--glass-bg: rgba(255, 255, 255, .85);--glass-border: 1px solid rgba(0, 0, 0, .08);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .08);--glass-blur: blur(12px);--bg-primary: #fdfbfd;--bg-secondary: #ffffff;--bg-tertiary: #f5f5f5;--text-primary: #1e293b;--text-secondary: #475569;--text-light: #94a3b8;--success: #2ecc71;--success-dark: #27ae60;--error: #e74c3c;--error-dark: #c0392b;--warning: #f1c40f;--warning-dark: #f39c12;--info: #3498db;--info-dark: #2980b9;--shadow-sm: 0 2px 8px rgba(142, 68, 173, .05);--shadow-md: 0 4px 16px rgba(142, 68, 173, .08);--shadow-lg: 0 8px 30px rgba(142, 68, 173, .12);--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--radius-full: 50%;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--transition: all .3s cubic-bezier(.25, .8, .25, 1);--font-scale: 1}[data-font-size=large]{--font-scale: 1.15}[data-font-size=xl]{--font-scale: 1.3}[data-motion=reduced] *,[data-motion=reduced] *:before,[data-motion=reduced] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}*{margin:0;padding:0;box-sizing:border-box}html{font-size:calc(16px * var(--font-scale, 1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;overflow-y:scroll;width:100%;max-width:100vw;height:100%}[data-contrast=high]{--border-width: 2px;--glass-border: 2px solid rgba(0, 0, 0, .4);--text-primary: #000000;--text-secondary: #000000;--bg-primary: #ffffff}[data-theme=dark][data-contrast=high]{--glass-border: 2px solid #ffffff;--text-primary: #ffffff;--text-secondary: #ffffff;--bg-primary: #000000}[data-contrast=high] .btn,[data-contrast=high] input,[data-contrast=high] .card{border:2px solid currentColor}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100%;overflow-x:hidden;overflow-y:auto;width:100%;max-width:100vw;position:relative;transition:background-color .2s ease}html{background-color:var(--bg-primary);transition:background-color .2s ease}#root{background-color:var(--bg-primary);min-height:100%;overflow-x:hidden;width:100%;max-width:100vw;transition:background-color .2s ease}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;color:var(--text-primary)}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}p{margin-bottom:var(--spacing-md);color:var(--text-secondary)}a{color:var(--primary);text-decoration:none;transition:var(--transition)}a:hover{color:var(--primary-dark)}button,.btn{padding:8px 16px;border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-family:inherit;white-space:nowrap}button svg,.btn svg,a.btn svg{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;flex-shrink:0;width:22px;height:22px;margin:0;padding:0}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary) 100%);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-secondary{background-color:var(--secondary);color:var(--primary)}.btn-secondary:hover{background-color:var(--primary-light);color:#fff}.btn-success{background-color:var(--success-dark);color:#fff}.btn-error{background-color:var(--error-dark);color:#fff}.btn-outline{background-color:transparent;border:2px solid var(--primary);color:var(--primary)}.btn-outline:hover{background-color:var(--primary);color:#fff}.btn-sm{padding:6px 12px;font-size:.8125rem;border-radius:var(--radius-sm)}.page-header .btn,.page-header button{padding:8px 16px;font-size:.875rem;max-width:fit-content}button svg,.btn svg,a.btn svg,button .icon,.btn .icon,a.btn .icon,button * svg,.btn * svg{animation:none!important;transform:none!important;transition:none!important}button:hover svg,.btn:hover svg,a.btn:hover svg,button:hover .icon,.btn:hover .icon,a.btn:hover .icon,button:hover * svg,.btn:hover * svg,button:focus svg,.btn:focus svg,button:active svg,.btn:active svg{animation:none!important;transform:none!important;transition:none!important}button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.form-group{margin-bottom:var(--spacing-lg)}label{display:block;margin-bottom:var(--spacing-sm);font-weight:500;color:var(--text-primary)}input:not([type=checkbox]):not([type=radio]),textarea,select{width:100%;padding:14px 18px;border:2px solid #e0e0e0;border-radius:var(--radius-md);font-size:1rem;font-family:inherit;transition:var(--transition);background-color:var(--bg-secondary);color:var(--text-primary);line-height:1.5;min-height:48px;-webkit-appearance:none;appearance:none}select{padding-right:40px;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:20px;cursor:pointer}[data-theme=dark] select{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5f6fa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e")}input[type=checkbox],input[type=radio]{width:auto;min-height:auto;padding:0;margin:0;-webkit-appearance:checkbox;appearance:checkbox;cursor:pointer;flex-shrink:0}input[type=radio]{-webkit-appearance:radio;appearance:radio}[data-theme=dark]{--primary: #8b7af0;--primary-light: #a394f4;--primary-dark: #6c5ce7;--secondary: #00b894;--secondary-light: #55efc4;--secondary-dark: #00cec9;--accent: #fd79a8;--bg-primary: #1a1b26;--bg-secondary: #0f1016;--bg-tertiary: #2d2e3a;--text-primary: #f5f6fa;--text-secondary: #b2bec3;--text-tertiary: #636e72;--card-bg: var(--bg-secondary);--card-border: rgba(255, 255, 255, .1);--card-shadow: 0 4px 6px rgba(0, 0, 0, .3);--glass-bg: rgba(30, 32, 45, .6);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .5);--gradient-primary: linear-gradient(135deg, #6c5ce7 0%, #341f97 100%);--gradient-glass: linear-gradient(135deg, rgba(255, 255, 255, .05) 0%, rgba(255, 255, 255, .01) 100%)}label:has(input[type=checkbox]),label:has(input[type=radio]){cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;display:flex;align-items:center;gap:var(--spacing-sm)}@media(max-width:767px){input[type=checkbox],input[type=radio]{width:28px;height:28px;min-width:28px;min-height:28px;flex-shrink:0}label:has(input[type=checkbox]),label:has(input[type=radio]){min-height:48px;padding:var(--spacing-sm);gap:var(--spacing-md)}}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #6c5ce726;transform:translateY(-1px);transition:var(--transition)}input[type=checkbox]:focus,input[type=radio]:focus{outline:2px solid var(--primary);outline-offset:2px;transform:none;box-shadow:none}input::placeholder,textarea::placeholder{color:var(--text-light)}.card{background-color:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:var(--transition);border:1px solid rgba(0,0,0,.02)}.glass-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--radius-lg);transition:var(--transition)}.card:hover,.glass-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#8e44ad33}.card-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--bg-tertiary)}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:var(--spacing-md);background-color:var(--bg-primary);transition:background-color .2s ease;width:100%;position:relative}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:var(--spacing-md);padding:var(--spacing-xl);background-color:var(--bg-primary);transition:background-color .2s ease;width:100%}.spinner{width:48px;height:48px;border:4px solid var(--secondary, rgba(0, 0, 0, .1));border-top-color:var(--primary, #6c5ce7);border-right-color:var(--primary, #6c5ce7);border-bottom-color:var(--primary, #6c5ce7);border-left-color:var(--primary, #6c5ce7);border-radius:50%;animation:spinSmooth 1s cubic-bezier(.4,0,.2,1) infinite;transition:all .3s cubic-bezier(.4,0,.2,1);will-change:transform;transform:translateZ(0);-webkit-transform:translateZ(0)}@keyframes spinSmooth{0%{transform:rotate(0) translateZ(0)}to{transform:rotate(360deg) translateZ(0)}}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.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{flex-direction:column}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}@media(min-width:768px){html{font-size:calc(17px * var(--font-scale, 1))}h1{font-size:2.5rem}}@media(min-width:1024px){html{font-size:calc(18px * var(--font-scale, 1))}h1{font-size:3rem}h2{font-size:2.25rem}}.page-header .btn,.page-header button{padding:10px 18px;font-size:.875rem;min-height:44px}.empty-state .btn{padding:12px 24px;font-size:.9375rem;min-height:48px}@media(min-width:768px){.page-header .btn,.page-header button{padding:8px 16px;font-size:.875rem;min-height:auto}input,textarea,select{padding:9px 18px;font-size:1.0625rem}}.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}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--primary);outline-offset:2px}
