:root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;width:100vw;height:100vh;overflow:hidden}#root{width:100vw;height:100vh;margin:0;padding:0}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{width:0px;height:0px;background:transparent}.scrolling{scrollbar-width:thin;-ms-overflow-style:-ms-autohiding-scrollbar;overflow-y:overlay;overflow-x:overlay}.scrolling::-webkit-scrollbar{width:10px;height:10px;background:transparent}.scrolling::-webkit-scrollbar-track{background:transparent;border-radius:5px}.scrolling::-webkit-scrollbar-thumb{background:#0000004d;border-radius:5px;border:2px solid transparent;background-clip:content-box;transition:background .2s ease;min-height:20px}.scrolling::-webkit-scrollbar-thumb:hover{background:#00000080;background-clip:content-box}.window-content,.search-content,.clock-app,.timers-list{position:relative}.window-content.scrolling::-webkit-scrollbar-thumb{background:#00000059;background-clip:content-box}.search-content.scrolling::-webkit-scrollbar-thumb{background:#00000059;background-clip:content-box}.context-menu{position:fixed;background:#141414f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid rgba(255,255,255,.2);border-radius:8px;padding:4px 0;min-width:200px;z-index:10000;box-shadow:0 8px 32px #00000080,inset 0 1px #ffffff1a;font-size:13px;font-weight:400;color:#fff;-webkit-user-select:none;user-select:none}.context-menu-item{padding:6px 16px;cursor:pointer;transition:background-color .1s ease}.context-menu-item:hover:not(.disabled){background-color:#007affcc}.context-menu-item.disabled{color:#fff6;cursor:not-allowed}.context-menu-separator{height:1px;background-color:#ffffff1a;margin:4px 0}.sky-banner{position:absolute;inset:0;width:100vw;height:100vh;z-index:-1;transition:background 30s ease-in-out;overflow:hidden}.sky-clouds{position:absolute;inset:0}.cloud{position:absolute;background:#fff9;border-radius:50px;opacity:.7;animation:float 20s ease-in-out infinite}.cloud:before,.cloud:after{content:"";position:absolute;background:#fff9;border-radius:50px}.cloud-1{width:120px;height:45px;top:15%;left:10%;animation-delay:0s;animation-duration:40s}.cloud-1:before{width:50px;height:40px;top:-20px;left:10px}.cloud-1:after{width:60px;height:35px;top:-15px;right:15px}.cloud-2{width:140px;height:50px;top:25%;right:15%;animation-delay:-15s;animation-duration:50s}.cloud-2:before{width:60px;height:45px;top:-25px;left:20px}.cloud-2:after{width:70px;height:40px;top:-20px;right:20px}.cloud-3{width:100px;height:40px;top:35%;left:55%;animation-delay:-25s;animation-duration:45s}.cloud-3:before{width:40px;height:30px;top:-15px;left:15px}.cloud-3:after{width:50px;height:28px;top:-12px;right:10px}@keyframes float{0%,to{transform:translate(0) translateY(0)}25%{transform:translate(30px) translateY(-10px)}50%{transform:translate(-20px) translateY(5px)}75%{transform:translate(15px) translateY(-5px)}}.sky-stars{position:absolute;inset:0;pointer-events:none}.star{position:absolute;width:2px;height:2px;background:#fff;border-radius:50%;animation:twinkle 3s ease-in-out infinite}.star-1{top:15%;left:20%;animation-delay:0s}.star-2{top:25%;left:80%;animation-delay:.5s}.star-3{top:10%;left:60%;animation-delay:1s}.star-4{top:35%;left:30%;animation-delay:1.5s}.star-5{top:20%;left:90%;animation-delay:2s}.star-6{top:40%;left:70%;animation-delay:2.5s}.star-7{top:12%;left:40%;animation-delay:.3s}.star-8{top:28%;left:15%;animation-delay:.8s}.star-9{top:18%;left:75%;animation-delay:1.3s}.star-10{top:60%;left:25%;animation-delay:1.8s}.star-11{top:70%;left:85%;animation-delay:2.3s}.star-12{top:80%;left:45%;animation-delay:.1s}@keyframes twinkle{0%,to{opacity:.2;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.window{position:fixed;background:#f5f5f5f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:8px;border:.25px solid rgba(0,0,0,.1);border-top:none;box-shadow:0 16px 64px #0000004d,inset 0 1px #ffffff80;z-index:100;overflow:hidden;transition:all .2s ease;-webkit-user-select:none;user-select:none;display:flex;flex-direction:column}.window.maximized{border-radius:0;border:none}.window.dragging{transition:none}.window-titlebar{height:24px;background:linear-gradient(180deg,#fffc,#f0f0f0cc);border-bottom:.25px solid rgba(0,0,0,.1);display:flex;align-items:center;padding:0 16px;cursor:default;position:relative;flex-shrink:0}.window-titlebar:active{cursor:default}.window.maximized .window-titlebar{border-radius:0}.window-controls{display:flex;gap:8px;position:absolute;left:12px}.window-control{width:12px;height:12px;border-radius:50%;border:none;cursor:default;display:flex;align-items:center;justify-content:center;transition:all .2s ease;position:relative;flex-shrink:0;box-shadow:inset 0 .5px 1px #0000001a}.window-control span{display:none;font-size:7px;font-weight:700;color:#000000b3;line-height:1}.window:hover .window-control span{display:block}.window:not(.focused):hover .window-control span{display:none}.window-control.close{background:linear-gradient(135deg,#ff5f56,#f44);box-shadow:inset 0 .5px 1px #ffffff4d,0 1px 2px #0000001a}.window:not(.focused) .window-control.close{background:#e0e0e0;box-shadow:inset 0 .5px 1px #0000000d}.window-control.close span:before{content:"×";font-size:10px}.window-control.minimize{background:linear-gradient(135deg,#ffbd2e,#fa0);box-shadow:inset 0 .5px 1px #ffffff4d,0 1px 2px #0000001a}.window:not(.focused) .window-control.minimize{background:#e0e0e0;box-shadow:inset 0 .5px 1px #0000000d}.window-control.minimize.disabled{background:#e0e0e0;box-shadow:inset 0 .5px 1px #0000000d;cursor:not-allowed;opacity:.5}.window-control.minimize.disabled:hover{transform:none}.window-control.minimize span:before{content:"−";font-size:8px}.window-control.maximize{background:linear-gradient(135deg,#27ca3f,#2b3);box-shadow:inset 0 .5px 1px #ffffff4d,0 1px 2px #0000001a}.window:not(.focused) .window-control.maximize{background:#e0e0e0;box-shadow:inset 0 .5px 1px #0000000d}.window-control.maximize span:before{content:"+";font-size:10px}.window-control:hover{transform:scale(1.1)}.window-control:active{transform:scale(.95)}.window-title{flex:1;text-align:center;font-size:13px;font-weight:600;color:#1d1d1f;pointer-events:none}.window-action-buttons{display:flex;gap:4px;position:absolute;right:12px;align-items:center;pointer-events:auto}.window-action-buttons .action-button{padding:4px 8px;border:.25px solid rgba(0,0,0,.1);border-radius:4px;background:#fffc;color:#374151;font-size:11px;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.window-action-buttons .action-button:hover{background:#fffffff2;border-color:#0003;transform:translateY(-.5px)}.window-action-buttons .action-button:active{transform:translateY(0)}.window-action-buttons .help-button{background:#3b82f6e6!important;color:#fff!important;border-color:#2563ebcc!important}.window-action-buttons .help-button:hover{background:#2563ebf2!important;border-color:#1d4ed8e6!important}.window-content{flex:1;padding:0;background:#ffffffe6;overflow:hidden;color:#1d1d1f;font-size:14px;line-height:1.5;min-height:0}.window-resize-handle{position:absolute;bottom:0;right:0;width:16px;height:16px;cursor:nw-resize;background:linear-gradient(-45deg,transparent 0%,transparent 30%,rgba(0,0,0,.1) 30%,rgba(0,0,0,.1) 35%,transparent 35%,transparent 45%,rgba(0,0,0,.1) 45%,rgba(0,0,0,.1) 50%,transparent 50%,transparent 60%,rgba(0,0,0,.1) 60%,rgba(0,0,0,.1) 65%,transparent 65%)}.window-resize-handle:hover{background-size:8px 8px}@keyframes windowAppear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.window{animation:windowAppear .3s ease-out}.desktop{position:relative;width:100vw;height:100vh;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.menubar{position:fixed;top:0;left:0;right:0;height:24px;background:#f8f8f8cc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:1001;display:flex;align-items:center;justify-content:space-between;padding:0 16px;font-size:13px;font-weight:500;color:#1d1d1f;border-bottom:.5px solid rgba(0,0,0,.1)}.menubar-left{display:flex;align-items:center;gap:8px}.nexus-logo{font-size:18px;margin-right:8px;cursor:default;-webkit-user-select:none;user-select:none;transition:all .2s ease;color:#007aff;font-weight:700}.nexus-logo:hover{transform:scale(1.1);color:#0056cc}.menu-items{display:flex;align-items:center;gap:0}.menu-container{position:relative}.menu-item{cursor:default;padding:2px 16px;border-radius:4px;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.menu-item:hover,.menu-item.active{background-color:#007affcc;color:#fff}.menu-item:first-child{font-weight:600}.dropdown-menu{position:absolute;top:100%;left:0;background:#f8f8f8f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid rgba(0,0,0,.1);border-radius:6px;box-shadow:0 8px 32px #0003,inset 0 1px #ffffff4d;min-width:200px;max-width:350px;width:max-content;padding:4px 0;z-index:2001;animation:menuDropdown .15s ease-out}@keyframes menuDropdown{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.menu-dropdown-item{display:flex;justify-content:space-between;align-items:center;padding:2px 16px;height:20px;font-size:13px;cursor:default;transition:background-color .1s ease;color:#1d1d1f}.menu-dropdown-item:hover:not(.disabled){background-color:#007affcc;color:#fff}.menu-dropdown-item.disabled{color:#999;cursor:default}.menu-dropdown-item.disabled .menu-shortcut{color:#ccc}.menu-label{flex:1;text-align:left}.menu-shortcut{color:#666;font-size:11px;margin-left:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.menu-dropdown-item:hover:not(.disabled) .menu-shortcut{color:#fffc}.menu-separator{height:1px;background:#0000001a;margin:4px 12px}.login-window{display:flex;flex-direction:column;height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);justify-content:center;align-items:center;padding:20px;color:#fff}.login-header{text-align:center;margin-bottom:30px;max-width:400px}.login-header h2{font-size:28px;font-weight:700;margin:0 0 10px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.login-header p{font-size:16px;margin:0;opacity:.9;font-weight:400}.login-content{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;padding:30px;width:100%;max-width:400px;color:#1d1d1f;box-shadow:0 8px 32px #0000001a}.login-form{width:100%;max-width:400px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;padding:30px;box-shadow:0 8px 32px #0000001a;color:#1d1d1f}.form-group{margin-bottom:24px}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:#1d1d1f}.form-group input{width:100%;padding:16px;border:2px solid rgba(0,0,0,.1);border-radius:12px;font-size:16px;background:#ffffffe6;transition:all .2s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a;background:#fff}.form-group input.error{border-color:#ff6b6b;background:#ff6b6b0d}.form-group input:disabled{background:#f5f5f5;opacity:.7;cursor:not-allowed}.field-error{color:#ff6b6b;font-size:12px;margin-top:6px;font-weight:500}.form-actions{margin-top:24px}.login-button{width:100%;padding:16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px #667eea4d}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.login-button:active{transform:translateY(0)}.login-button:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.secondary-button{padding:12px 24px;background:transparent;color:#667eea;border:2px solid #667eea;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.secondary-button:hover{background:#667eea;color:#fff;transform:translateY(-1px)}.success-message,.error-message{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:12px;margin-bottom:24px}.success-message{background:#2ed5731a;border:1px solid rgba(46,213,115,.2)}.error-message{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.2)}.success-message span,.error-message span{font-size:20px;flex-shrink:0}.success-message div,.error-message div{flex:1}.success-message strong,.error-message strong{display:block;font-weight:600;margin-bottom:4px}.success-message p,.error-message p{margin:0;font-size:14px;opacity:.8}.login-instructions{margin:24px 0;background:#667eea0d;border-radius:12px;padding:20px}.login-instructions h4{margin:0 0 12px;color:#667eea;font-size:14px;font-weight:600}.login-instructions ol{margin:0;padding-left:20px}.login-instructions li{font-size:14px;margin-bottom:8px;line-height:1.4}.loading-container{text-align:center;padding:40px 20px}.loading-spinner{animation:spin 1s linear infinite;font-size:32px;margin-bottom:16px;display:block}.login-info{width:100%;max-width:400px;margin-top:30px}.info-section{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;padding:20px;margin-bottom:16px;border:1px solid rgba(255,255,255,.2)}.info-section h4{font-size:14px;font-weight:600;margin:0 0 8px;color:#fff}.info-section p{font-size:13px;margin:0;opacity:.9;line-height:1.4}.login-footer{margin-top:24px;text-align:center;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.privacy-note{font-size:11px;opacity:.8;text-align:center;line-height:1.4;margin:20px 0 0;width:100%}.link-button{background:none;border:none;color:#667eea;font-size:14px;cursor:pointer;text-decoration:none;padding:8px;border-radius:8px;transition:all .2s ease;font-weight:500}.link-button:hover{background:#667eea1a;text-decoration:underline}.link-button:disabled{opacity:.5;cursor:not-allowed}.login-window-compact{padding:20px;width:100%;max-width:none;color:#1d1d1f;background:transparent}.login-header-compact{text-align:center;margin-bottom:20px}.login-header-compact h3{font-size:18px;font-weight:600;margin:0 0 8px;color:#1d1d1f}.login-header-compact p{font-size:13px;margin:0;color:#666}.login-info-compact{margin-top:20px;padding:16px;background:#667eea0d;border-radius:8px;border:1px solid rgba(102,126,234,.1)}.info-item-compact{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:12px;color:#666}.info-item-compact:last-child{margin-bottom:0}.info-item-compact span:first-child{font-size:14px;flex-shrink:0}.user-list-compact{margin-bottom:20px}.user-list-compact h4{font-size:14px;font-weight:600;margin:0 0 12px;color:#1d1d1f}.user-grid-compact{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.user-card-compact{background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:.5px solid rgba(0,0,0,.1);border-radius:8px;padding:12px 8px;text-align:center;cursor:pointer;transition:all .2s ease}.user-card-compact:hover{background:#ffffffe6;border-color:#007aff80;transform:translateY(-1px);box-shadow:0 2px 8px #007aff26}.user-avatar-compact{font-size:20px;margin-bottom:4px}.user-name-compact{font-weight:500;font-size:11px;margin-bottom:2px;color:#1d1d1f}.user-status-compact{font-size:9px;padding:1px 4px;border-radius:8px;display:inline-block}.user-status-compact.active{background:#e8f5e8;color:#2d5a2d}.user-status-compact.away{background:#fff3cd;color:#856404}.user-status-compact.offline{background:#f8d7da;color:#721c24}.login-divider-compact{text-align:center;margin:16px 0;position:relative}.login-divider-compact:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#0000001a;z-index:1}.login-divider-compact span{background:#f8f8f8e6;padding:0 12px;color:#666;font-size:11px;position:relative;z-index:2}.login-form-compact{width:100%}.form-group-compact{margin-bottom:16px}.form-group-compact label{display:block;margin-bottom:6px;font-size:12px;font-weight:500;color:#1d1d1f}.form-group-compact input{width:100%;padding:10px 12px;border:1px solid rgba(0,0,0,.2);border-radius:6px;font-size:13px;background:#ffffffe6;transition:all .2s ease;box-sizing:border-box}.form-group-compact input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a;background:#fff}.form-group-compact input.error{border-color:#ff6b6b;background:#ff6b6b0d}.field-error-compact{color:#ff6b6b;font-size:10px;margin-top:4px;font-weight:500}.form-actions-compact{margin-top:16px}.login-button-compact{width:100%;padding:10px;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.login-button-compact:hover:not(:disabled){background:#5a6fd8;transform:translateY(-1px)}.login-button-compact:disabled{background:#ccc;cursor:not-allowed;transform:none}.secondary-button-compact{padding:8px 16px;background:transparent;color:#667eea;border:1px solid #667eea;border-radius:6px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.secondary-button-compact:hover{background:#667eea;color:#fff}.success-message-compact,.error-message-compact{display:flex;align-items:flex-start;gap:8px;padding:12px;border-radius:8px;margin-bottom:16px}.success-message-compact{background:#2ed5731a;border:1px solid rgba(46,213,115,.2)}.error-message-compact{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.2)}.success-message-compact span,.error-message-compact span{font-size:16px;flex-shrink:0}.success-message-compact div,.error-message-compact div{flex:1}.success-message-compact strong,.error-message-compact strong{display:block;font-weight:600;margin-bottom:2px;font-size:12px}.success-message-compact p,.error-message-compact p{margin:0;font-size:11px;opacity:.8;line-height:1.3}.loading-container-compact{text-align:center;padding:20px}.loading-container-compact .loading-spinner{font-size:24px;margin-bottom:8px;display:block}.loading-container-compact p{font-size:12px;color:#666;margin:0}.login-footer-compact{margin-top:16px;display:flex;justify-content:space-between;align-items:center;gap:12px}.link-button-compact{background:none;border:none;color:#667eea;font-size:11px;cursor:pointer;text-decoration:none;padding:4px;border-radius:4px;transition:all .2s ease;font-weight:500}.link-button-compact:hover{background:#667eea1a;text-decoration:underline}.link-button-compact:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 480px){.login-window{padding:16px}.login-content,.login-form,.login-info{max-width:100%}.login-header h2{font-size:24px}.login-header p{font-size:14px}}.clock-app{height:100%;padding:0;overflow-y:auto;background:transparent;max-height:600px}.timers-list{margin:0 16px 16px;padding-right:0}.timers-list h3{font-size:16px;font-weight:600;margin-bottom:15px;margin-left:4px}.add-timer{background:#fff9;border-radius:12px;padding:20px;margin:16px;border:.5px solid rgba(0,0,0,.05)}.timer-inputs{display:flex;justify-content:center;gap:20px;margin:20px 0}.time-input-group{display:flex;flex-direction:column;align-items:center;gap:8px}.time-input-group label{font-size:13px;color:#666;font-weight:500}.time-input-group input{width:60px;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:16px;text-align:center;background:#fff;transition:border-color .2s ease}.time-input-group input:focus{outline:none;border-color:#007aff;box-shadow:0 0 0 3px #007aff1a}.add-timer-button{width:100%;padding:14px;background:#007aff;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.add-timer-button:hover{background:#0056cc;transform:translateY(-1px)}.add-timer-button:active{transform:translateY(0)}.add-timer h3{margin:0 0 15px;font-size:16px;font-weight:600;text-align:center}.no-items{color:#666;text-align:center;padding:40px;font-style:italic}.timer-item{display:flex;align-items:center;padding:15px 20px;border:.5px solid rgba(0,0,0,.1);border-radius:8px;margin-bottom:10px;margin-right:0;background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .2s ease}.timer-item.finished{border-color:#ff5f56;background:#fff5f5}.timer-info{flex:1}.timer-name{font-weight:500;margin-bottom:5px}.timer-time{font-size:14px;color:#666;font-variant-numeric:tabular-nums;margin-bottom:8px}.timer-progress{width:100%;height:4px;background:#e0e0e0;border-radius:2px;overflow:hidden}.progress-bar{height:100%;transition:width .3s ease;border-radius:2px}.timer-controls{display:flex;gap:8px;margin-left:15px}.timer-controls button{width:32px;height:32px;border:none;border-radius:6px;background:#f0f0f0;cursor:pointer;font-size:14px;transition:background .2s ease}.timer-controls button:hover{background:#e0e0e0}.timer-controls button:disabled{opacity:.5;cursor:not-allowed}.statusbar{position:fixed;top:0;left:0;right:0;height:24px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;color:#1d1d1f;font-size:13px;font-weight:500;z-index:1001;pointer-events:none}.status-icons{display:flex;align-items:center;gap:8px;pointer-events:auto}.status-icon{cursor:pointer;padding:4px 6px;border-radius:4px;transition:background-color .2s ease;-webkit-user-select:none;user-select:none;font-size:12px;pointer-events:auto}.status-icon:hover{background-color:#007affcc;color:#fff}.clock-container{position:relative;pointer-events:auto}.clock{font-variant-numeric:tabular-nums;cursor:pointer;padding:2px 6px;border-radius:4px;transition:background-color .2s ease;-webkit-user-select:none;user-select:none;min-width:140px;text-align:right}.clock:hover,.clock.active{background-color:#007affcc;color:#fff}.clock-dropdown{position:absolute;top:24px;right:0;width:400px;max-height:600px;background:#f8f8f8f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid rgba(0,0,0,.1);border-top:none;border-radius:0 0 12px 12px;box-shadow:0 8px 32px #0003,inset 0 1px #ffffff4d;z-index:1002;overflow:hidden;animation:clockDropdownAppear .2s ease-out}@keyframes dropdownAppear{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes clockDropdownAppear{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.weather-icon{font-size:11px;min-width:auto;padding:2px 4px}.user-switcher-container{position:absolute;left:50%;transform:translate(-50%);pointer-events:auto}.user-switcher-center{font-size:13px;font-weight:500;padding:2px 6px;border-radius:3px;transition:all .2s ease;-webkit-user-select:none;user-select:none;background:transparent;min-width:60px;text-align:center}.user-switcher-center:hover,.user-switcher-center.active{background-color:#007affcc;color:#fff}.user-dropdown{position:absolute;top:24px;left:50%;transform:translate(-50%);width:350px;max-height:600px;background:#f8f8f8f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid rgba(0,0,0,.1);border-top:none;border-radius:0 0 12px 12px;box-shadow:0 8px 32px #0003,inset 0 1px #ffffff4d;z-index:1002;overflow:hidden;animation:dropdownAppear .2s ease-out}.user-info{padding:16px}.user-details{display:flex;align-items:center;gap:12px;margin-bottom:16px}.user-avatar-large{font-size:24px;width:40px;height:40px;background:#007aff1a;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-text{flex:1}.user-email{font-size:14px;font-weight:500;color:#1d1d1f;margin-bottom:2px}.user-status{font-size:12px;color:#666}.logout-button{width:100%;padding:10px;background:#ff6b6b;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.logout-button:hover{background:#ff5252}.kanban-app{height:100%;padding:0;overflow:hidden;display:flex;flex-direction:column}.kanban-header{padding:20px 24px;border-bottom:1px solid #e0e0e0;background:#fff;flex-shrink:0}.kanban-header h2{margin:0 0 20px;font-size:20px;font-weight:600;color:#1d1d1f}.add-task-form{display:flex;gap:12px;align-items:flex-end}.task-inputs{flex:1;display:flex;gap:12px}.task-title-input,.task-description-input{flex:1;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;transition:border-color .2s ease}.task-title-input:focus,.task-description-input:focus{outline:none;border-color:#007aff;box-shadow:0 0 0 3px #007aff1a}.task-title-input::placeholder,.task-description-input::placeholder{color:#999}.add-task-button{padding:10px 20px;background:#007aff;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.add-task-button:hover:not(:disabled){background:#0056cc;transform:translateY(-1px)}.add-task-button:disabled{background:#ccc;cursor:not-allowed;transform:none}.kanban-board{flex:1;display:flex;gap:16px;padding:24px;overflow:auto;background:#f8f8f8}.kanban-column{flex:1;min-width:280px;max-width:350px;background:#fff;border-radius:12px;border:1px solid #e0e0e0;display:flex;flex-direction:column;height:fit-content;min-height:400px}.column-header{padding:16px 20px;border-bottom:1px solid #f0f0f0;display:flex;align-items:center;justify-content:space-between}.column-title{display:flex;align-items:center;gap:8px}.column-icon{font-size:18px}.column-name{font-size:16px;font-weight:600;color:#1d1d1f}.task-count{background:#f0f0f0;color:#666;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600}.column-content{flex:1;padding:12px;min-height:300px}.empty-column{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:#999}.empty-icon{font-size:48px;margin-bottom:12px;opacity:.5}.empty-column p{margin:0;font-style:italic;font-size:14px}.tasks-list{display:flex;flex-direction:column;gap:12px}.task-card{background:#fff;border:1px solid #e8e8e8;border-radius:8px;padding:16px;cursor:grab;transition:all .2s ease;box-shadow:0 1px 3px #0000000d}.task-card:hover{border-color:#007aff;box-shadow:0 2px 8px #007aff26;transform:translateY(-1px)}.task-card:active{cursor:grabbing}.task-content{margin-bottom:12px}.task-title{font-size:14px;font-weight:600;color:#1d1d1f;margin-bottom:6px;line-height:1.3}.task-description{font-size:13px;color:#666;line-height:1.4;margin-bottom:8px}.task-meta{display:flex;align-items:center;gap:8px}.task-date{font-size:11px;color:#999;font-variant-numeric:tabular-nums}.task-actions{display:flex;gap:4px;justify-content:flex-end}.task-action-button{width:28px;height:28px;border:none;border-radius:4px;background:#f5f5f5;cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.task-action-button:hover{background:#e8e8e8;transform:scale(1.05)}.task-action-button.move-back{color:#666}.task-action-button.move-forward{color:#007aff}.task-action-button.delete{color:#ff5f56}.task-action-button.delete:hover{background:#ffebea}.kanban-column:hover{background:#fafafa}.task-card[draggable=true]{-webkit-user-select:none;user-select:none}.kanban-stats{display:flex;gap:24px;padding:20px 24px;border-top:1px solid #e0e0e0;background:#fff;justify-content:center}.stats-item{text-align:center}.stat-number{display:block;font-size:24px;font-weight:700;color:#007aff;margin-bottom:4px}.stat-label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px;font-weight:500}@media (max-width: 768px){.kanban-board{flex-direction:column;gap:12px}.kanban-column{max-width:none}.add-task-form{flex-direction:column;gap:12px}.task-inputs{flex-direction:column}.kanban-stats{justify-content:space-around}}.kanban-column.drag-over{background:#f0f8ff;border-color:#007aff}.task-card{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.text-editor-app{height:100%;display:flex;flex-direction:column;background:#fff;position:relative;overflow:hidden}.editor-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f8f9fa;border-bottom:1px solid #e1e5e9;flex-shrink:0}.editor-header h2{margin:0;font-size:18px;font-weight:600;color:#2d3748}.editor-actions{display:flex;gap:8px}.action-button{padding:6px 12px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;font-size:12px;cursor:pointer;transition:all .2s ease}.action-button:hover{background:#f3f4f6;border-color:#9ca3af}.action-button:active{background:#e5e7eb}.help-button{background:#3b82f6!important;color:#fff!important;border-color:#2563eb!important}.help-button:hover{background:#2563eb!important;border-color:#1d4ed8!important}.editor-content{display:flex;height:100%;position:relative;flex:1;overflow:hidden}.editor-pane,.preview-pane{display:flex;flex-direction:column;height:100%;overflow:hidden}.preview-pane{position:relative}.pane-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f1f5f9;border-bottom:1px solid #e2e8f0;font-size:14px;font-weight:500;color:#475569}.preview-header-badge{position:absolute;top:8px;right:12px;z-index:10;background:#f1f5f9e6;border:1px solid rgba(226,232,240,.7);border-radius:12px;padding:4px 10px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 4px #0000000d}.editor-stats,.preview-stats{font-size:12px;color:#64748b}.editor-actions-inline{display:flex;align-items:center;gap:6px}.editor-actions-inline .action-button{padding:6px 8px;border:1px solid rgba(0,0,0,.08);border-radius:6px;background:#fff;color:#374151;font-size:13px;cursor:pointer;min-width:28px;height:28px;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 2px #0000000d;position:relative;overflow:visible}.editor-actions-inline .action-button[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:-34px;left:50%;transform:translate(-50%);background:#000000e6;color:#fff;padding:6px 10px;border-radius:6px;font-size:11px;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;z-index:1000;box-shadow:0 4px 12px #00000026}.editor-actions-inline .action-button[data-tooltip]:before{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid rgba(0,0,0,.9);opacity:0;pointer-events:none;z-index:1000}.editor-actions-inline .action-button[data-tooltip]:hover:after,.editor-actions-inline .action-button[data-tooltip]:hover:before{opacity:1}.editor-actions-inline .action-button:hover{background:#f8fafc;border-color:#0000001f}.editor-actions-inline .action-button:active{background:#e2e8f0}.editor-actions-inline .help-button{background:#3b82f6!important;color:#fff!important;border-color:#2563eb!important}.editor-actions-inline .help-button:hover{background:#2563eb!important;border-color:#1d4ed8!important}.editor-actions-inline .help-button:active{background:#1d4ed8!important}.editor-actions-inline .editor-stats{margin-left:8px;padding-left:8px;border-left:1px solid #e5e7eb}.preview-header-badge .preview-stats{font-size:10px;color:#64748be6;font-weight:500;white-space:nowrap}.editor-container{display:flex;height:100%;position:relative}.line-numbers{background:#f8f9fa;border-right:1px solid #e1e5e9;padding:16px 8px;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:14px;line-height:1.6;color:#6b7280;-webkit-user-select:none;user-select:none;overflow:hidden;min-width:40px;text-align:right}.line-number{height:22.4px;display:flex;align-items:center;justify-content:flex-end;padding-right:8px;transition:all .1s ease}.line-number.current-line{background:#dbeafe;color:#1e40af;font-weight:600;border-radius:4px;margin:-1px 0}.markdown-editor{flex:1;border:none;outline:none;padding:16px;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:14px;line-height:1.6;color:#1f2937;background:#fff;resize:none;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word}.markdown-editor:focus{background:#fefefe}.markdown-editor::selection{background:#dbeafe}.markdown-preview{padding:0 16px 16px;height:100%;overflow-y:auto;background:#fff;color:#1f2937;line-height:1.6;scroll-behavior:smooth;position:relative}.markdown-preview:before{content:"";position:absolute;top:50%;left:0;right:0;height:2px;background:linear-gradient(to right,transparent,#3b82f6,transparent);opacity:.3;pointer-events:none;transform:translateY(-50%);transition:opacity .2s ease}.markdown-preview h1{font-size:2rem;font-weight:700;margin-top:2rem;margin-bottom:1rem;color:#111827;border-bottom:2px solid #e5e7eb;padding-bottom:.5rem}.markdown-preview h1:first-child{margin-top:2.5rem}.markdown-preview h2{font-size:1.5rem;font-weight:600;margin-bottom:.75rem;margin-top:1.5rem;color:#1f2937;border-bottom:1px solid #e5e7eb;padding-bottom:.25rem}.markdown-preview h3{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;margin-top:1.25rem;color:#374151}.markdown-preview strong{font-weight:700;color:#111827}.markdown-preview em{font-style:italic;color:#374151}.markdown-preview code{background:#f3f4f6;color:#dc2626;padding:2px 4px;border-radius:4px;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:.875em}.markdown-preview pre{background:#1f2937;color:#f9fafb;padding:16px;border-radius:8px;overflow-x:auto;margin:16px 0;border:1px solid #374151}.markdown-preview pre code{background:none;color:inherit;padding:0;border-radius:0;font-size:.875rem}.markdown-preview ul{list-style-type:disc;margin-left:1.5rem;margin-bottom:1rem}.markdown-preview ol{list-style-type:decimal;margin-left:1.5rem;margin-bottom:1rem}.markdown-preview li{margin-bottom:.25rem}.markdown-preview blockquote{border-left:4px solid #3b82f6;background:#eff6ff;padding:12px 16px;margin:16px 0;color:#1e40af;border-radius:0 4px 4px 0}.markdown-preview a{color:#2563eb;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease}.markdown-preview a:hover{border-bottom-color:#2563eb}.divider{position:absolute;top:0;bottom:0;width:8px;margin-left:-4px;cursor:col-resize;background:linear-gradient(to right,transparent,#e5e7eb,transparent);display:flex;align-items:center;justify-content:center;z-index:10}.divider:hover{background:linear-gradient(to right,transparent,#9ca3af,transparent)}.divider-handle{color:#6b7280;font-size:18px;writing-mode:vertical-lr;-webkit-user-select:none;user-select:none}.divider:hover .divider-handle{color:#374151}.markdown-editor::-webkit-scrollbar,.markdown-preview::-webkit-scrollbar{width:8px}.markdown-editor::-webkit-scrollbar-track,.markdown-preview::-webkit-scrollbar-track{background:transparent}.markdown-editor::-webkit-scrollbar-thumb,.markdown-preview::-webkit-scrollbar-thumb{background:transparent;border-radius:4px;transition:background-color .2s ease}.markdown-editor.scrolling::-webkit-scrollbar-track,.markdown-preview.scrolling::-webkit-scrollbar-track{background:#f1f5f9}.markdown-editor.scrolling::-webkit-scrollbar-thumb,.markdown-preview.scrolling::-webkit-scrollbar-thumb{background:#cbd5e1}.markdown-editor.scrolling::-webkit-scrollbar-thumb:hover,.markdown-preview.scrolling::-webkit-scrollbar-thumb:hover{background:#94a3b8}.markdown-editor,.markdown-preview{scrollbar-width:none}.markdown-editor.scrolling,.markdown-preview.scrolling{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9}@media (max-width: 768px){.editor-actions{flex-direction:column;gap:4px}.action-button{font-size:11px;padding:4px 8px}.markdown-editor,.markdown-preview{padding:12px;font-size:13px}.line-numbers{padding:12px 4px;min-width:32px;font-size:13px}.line-number{height:20.8px}}.text-editor-app ::selection{background:#dbeafe;color:#1e40af}.markdown-editor:focus{box-shadow:inset 0 0 0 2px #3b82f6}.editor-pane,.preview-pane{transition:width .1s ease}.help-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.help-modal{background:#fff;border-radius:12px;width:90%;max-width:800px;max-height:80vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040;border:1px solid #e5e7eb}.help-modal::-webkit-scrollbar{width:8px}.help-modal::-webkit-scrollbar-track{background:transparent}.help-modal::-webkit-scrollbar-thumb{background:transparent;border-radius:4px;transition:background-color .2s ease}.help-modal.scrolling::-webkit-scrollbar-track{background:#f1f5f9}.help-modal.scrolling::-webkit-scrollbar-thumb{background:#cbd5e1}.help-modal.scrolling::-webkit-scrollbar-thumb:hover{background:#94a3b8}.help-modal{scrollbar-width:none}.help-modal.scrolling{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9}.help-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid #e5e7eb;background:#f8f9fa;border-radius:12px 12px 0 0}.help-header h3{margin:0;color:#1f2937;font-size:20px;font-weight:600}.close-help{background:none;border:none;font-size:20px;cursor:pointer;padding:4px 8px;border-radius:4px;color:#6b7280;transition:all .2s ease}.close-help:hover{background:#f3f4f6;color:#374151}.help-content{padding:24px}.help-content>p{margin:0 0 20px;color:#6b7280;font-size:14px}.help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:32px}.help-item{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:all .2s ease}.help-item:hover{border-color:#3b82f6;box-shadow:0 4px 6px -1px #0000001a}.help-insert-button{width:100%;background:#fff;border:none;padding:16px;cursor:pointer;text-align:left;transition:background-color .2s ease;border-bottom:1px solid #e5e7eb}.help-insert-button:hover{background:#f8fafc}.help-item-name{font-weight:600;color:#1f2937;margin-bottom:4px;font-size:14px}.help-item-symbol{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;color:#3b82f6;font-size:13px;background:#eff6ff;padding:4px 8px;border-radius:4px;display:inline-block}.help-item-example{padding:12px 16px;background:#f8f9fa;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:12px;color:#4b5563;border-top:1px solid #e5e7eb}.help-tips{background:#f0f9ff;padding:20px;border-radius:8px;border:1px solid #bae6fd}.help-tips h4{margin:0 0 12px;color:#0c4a6e;font-size:16px;font-weight:600}.help-tips ul{margin:0;padding-left:20px;color:#0f172a}.help-tips li{margin-bottom:8px;font-size:14px;line-height:1.5}@media (max-width: 768px){.help-modal{width:95%;margin:10px;max-height:85vh}.help-grid{grid-template-columns:1fr;gap:12px}.help-content,.help-header{padding:16px}}.voxelforge-app{display:flex;flex-direction:column;height:100%;min-height:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;scrollbar-gutter:stable;margin:0;padding:0}.voxelforge-header{padding:12px 20px;background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.2);display:flex;justify-content:space-between;align-items:center;gap:15px}.header-content h1{margin:0 0 2px;font-size:20px;font-weight:600}.header-content p{margin:0;opacity:.8;font-size:13px}.guest-notice{display:flex;align-items:center;gap:6px;background:#ffc10733;padding:4px 12px;border-radius:16px;border:1px solid rgba(255,193,7,.3);font-size:12px}.header-middle{display:flex;align-items:center;gap:20px}.workflow-indicator{display:flex;align-items:center;gap:12px}.step-indicator{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:16px;font-size:12px;font-weight:600;transition:all .3s ease;opacity:.6}.step-indicator span{background:#fff3;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700}.step-indicator.active{background:#fff3;opacity:1;border:1px solid rgba(255,255,255,.4)}.step-indicator.active span{background:#ffffffe6;color:#667eea}.step-indicator.completed{opacity:.8}.step-indicator.completed span{background:#4ade80cc;color:#fff}.history-button{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:6px 12px;border-radius:16px;cursor:pointer;font-size:12px;font-weight:600;transition:all .2s ease;display:flex;align-items:center;gap:4px}.history-button:hover:not(:disabled){background:#fff3;border-color:#fff6}.history-button.active{background:#fff3;border-color:#fff6}.history-button:disabled{opacity:.5;cursor:not-allowed}.voxelforge-workspace{flex:1;padding:20px;overflow:auto;display:flex;flex-direction:column;scrollbar-gutter:stable}.section-header{margin-bottom:20px}.section-header h2{margin:0 0 5px;font-size:20px;font-weight:600}.section-header p{margin:0;opacity:.8;font-size:14px}.type-selection-step{flex:1;display:flex;flex-direction:column;scrollbar-gutter:stable}.step-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:15px}.step-info h2{margin:0 0 3px;font-size:20px;font-weight:600}.step-info p{margin:0;opacity:.8;font-size:14px}.selected-type-badge{display:flex;align-items:center;gap:12px;background:#ffffff26;padding:10px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.2)}.type-icon{font-size:20px}.type-info{display:flex;flex-direction:column;gap:1px}.type-info strong{font-size:14px;font-weight:600}.type-info span{font-size:11px;opacity:.8;text-transform:uppercase;letter-spacing:.5px}.badge-actions{display:flex;gap:10px;align-items:center}.change-type-btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:6px 12px;border-radius:8px;cursor:pointer;font-size:12px;transition:all .2s ease;white-space:nowrap}.change-type-btn:hover{background:#ffffff4d;border-color:#ffffff80}.generate-button-inline{background:linear-gradient(135deg,#4ade80,#22c55e);color:#fff;border:none;padding:6px 16px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:600;transition:all .2s ease;display:flex;align-items:center;gap:4px;box-shadow:0 2px 8px #4ade804d;white-space:nowrap}.generate-button-inline:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #4ade8066}.generate-button-inline:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:0 2px 8px #4ade8033}.upload-customize-step{flex:1;display:flex;flex-direction:column;scrollbar-gutter:stable}.upload-customize-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.upload-section,.customization-section{background:#ffffff1a;border-radius:12px;padding:20px;border:1px solid rgba(255,255,255,.2)}.upload-section h3,.customization-section h3{margin:0 0 15px;font-size:18px;font-weight:600}.input-requirements-reminder{background:#ffd70026;border:1px solid rgba(255,215,0,.3);padding:12px;border-radius:8px;margin-bottom:15px;font-size:14px}.custom-prompt-input{width:100%;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:12px;color:#fff;font-size:14px;font-family:inherit;resize:vertical;min-height:120px;margin-bottom:15px;scrollbar-gutter:stable}.custom-prompt-input::placeholder{color:#fff9}.custom-prompt-input:focus{outline:none;border-color:#ffffff80;background:#ffffff26}.examples-list{font-size:14px}.examples-list strong{display:block;margin-bottom:8px;font-weight:600}.examples-list ul{margin:0;padding-left:20px;opacity:.8}.examples-list li{margin-bottom:4px}.results-step{flex:1;display:flex;flex-direction:column;overflow:auto;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#ffffff0d;scrollbar-gutter:stable}.generation-loader{flex:1;display:flex;align-items:center;justify-content:center;padding:40px;text-align:center}.loader-content{max-width:500px}.loader-spinner{margin-bottom:30px;display:flex;justify-content:center}.spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.2);border-left:4px solid #4ade80;border-radius:50%;animation:spin 1s linear infinite}.loader-text h3{margin:0 0 10px;font-size:24px;font-weight:600;color:#fff}.loader-text p{margin:0 0 30px;opacity:.9;font-size:16px}.loader-steps{display:flex;flex-direction:column;gap:15px;margin-bottom:30px;max-width:300px;margin-left:auto;margin-right:auto}.loader-step{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#ffffff1a;border-radius:8px;transition:all .3s ease;opacity:.6}.loader-step.active{background:#4ade8033;border:1px solid rgba(74,222,128,.3);opacity:1}.loader-step .step-icon{font-size:20px;flex-shrink:0}.loader-step span:last-child{font-size:14px;font-weight:500}.loader-tip{display:flex;align-items:center;justify-content:center;gap:8px;background:#ffd70026;border:1px solid rgba(255,215,0,.3);padding:12px 16px;border-radius:8px;font-size:14px;opacity:.9}.loader-tip span:first-child{font-size:16px;flex-shrink:0}.loader-step.active{animation:stepPulse 2s ease-in-out infinite}@keyframes stepPulse{0%,to{background:#4ade8033;border-color:#4ade804d}50%{background:#4ade804d;border-color:#4ade8080}}.results-header{padding:20px 20px 0;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:20px}.results-header h2{margin:0;font-size:20px;font-weight:600}.upload-area{border:2px dashed rgba(255,255,255,.3);border-radius:12px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .3s ease;background:#ffffff0d;min-height:200px;display:flex;align-items:center;justify-content:center}.upload-area:hover{border-color:#ffffff80;background:#ffffff1a}.upload-content .upload-icon{font-size:48px;margin-bottom:15px}.upload-content h3{margin:0 0 5px;font-size:18px;font-weight:600}.upload-content p{margin:0 0 15px;opacity:.8}.supported-formats{background:#ffffff1a;padding:8px 12px;border-radius:6px;font-size:12px;display:inline-block;opacity:.7}.uploaded-image{background:#ffffff1a;border-radius:12px;overflow:hidden}.image-container{position:relative;width:100%;height:250px;background:#000;display:flex;align-items:center;justify-content:center}.image-container img{max-width:100%;max-height:100%;object-fit:contain}.reset-button{position:absolute;top:10px;right:10px;background:#0009;color:#fff;border:none;border-radius:50%;width:30px;height:30px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.reset-button:hover{background:#000c}.image-info{padding:20px;text-align:center}.image-info h3{margin:0 0 5px;font-size:16px}.image-info p{margin:0;opacity:.8;font-size:14px}.options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.option-card{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:20px;cursor:pointer;transition:all .3s ease;position:relative;display:flex;flex-direction:column;min-height:300px}.option-card:not(.disabled):hover{background:#ffffff26;border-color:#fff6;transform:translateY(-2px)}.option-card.selected{background:#fff3;border-color:#fff9}.option-card.disabled{opacity:.5;cursor:not-allowed}.option-card.generating{background:#ffd70033;border-color:#ffd70080}.option-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.option-icon{font-size:24px}.option-category{background:#fff3;padding:4px 8px;border-radius:12px;font-size:11px;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.option-content{flex:1}.option-content h3{margin:0 0 8px;font-size:16px;font-weight:600}.option-content p{margin:0;opacity:.8;font-size:13px;line-height:1.4}.option-details{margin-top:15px;padding-top:15px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;line-height:1.4}.option-details>div{margin-bottom:10px}.option-details strong{display:block;margin-bottom:4px;font-weight:600;opacity:.9}.detailed-description,.input-requirements,.examples{opacity:.8}.option-footer{margin-top:auto;padding-top:15px}.locked-badge,.disabled-badge,.generating-badge,.generate-badge,.select-badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;padding:6px 10px;border-radius:16px}.locked-badge{background:#dc354533;color:#ffb3ba}.disabled-badge{background:#6c757d33;color:#adb5bd}.generating-badge{background:#ffd70033;color:#fff3cd;animation:pulse 1.5s infinite}.generate-badge{background:#28a74533;color:#b3f5c0}.select-badge{background:#3b82f633;color:#bfdbfe}.result-content{flex:1;display:flex;flex-direction:column;background:#ffffff1a;border-radius:12px;padding:30px;margin:0 20px 20px}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px}.result-metadata h3{margin:0 0 15px;font-size:18px;font-weight:600;color:#fff}.generated-image{background:#0000004d;border-radius:12px;padding:15px;display:flex;justify-content:center;align-items:center;min-height:200px}.result-image{max-width:100%;max-height:300px;object-fit:contain;border-radius:8px;box-shadow:0 4px 20px #0000004d}.metadata-grid{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.metadata-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1)}.metadata-item label{font-weight:600;opacity:.8;font-size:14px}.metadata-item span{font-size:14px;color:#fff}.status.success{color:#4ade80;font-weight:600}.status.error{color:#f87171;font-weight:600}.prompt-display{background:#ffffff0d;border-radius:8px;padding:15px;margin-top:15px}.prompt-display label{display:block;font-weight:600;margin-bottom:8px;opacity:.8;font-size:14px}.prompt-display p{margin:0;font-size:13px;line-height:1.4;opacity:.9}.result-actions{display:flex;gap:15px;justify-content:center;flex-wrap:wrap;margin-top:auto;padding-top:20px}.action-button{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:12px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s ease;display:flex;align-items:center;gap:8px;min-width:140px;justify-content:center}.action-button:hover:not(:disabled){background:#ffffff4d;border-color:#ffffff80}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-button.primary{background:#007bffcc;border-color:#007bff}.action-button.primary:hover:not(:disabled){background:#007bff}.action-button.secondary{background:#6c757d4d;border-color:#6c757d80}.action-button.secondary:hover:not(:disabled){background:#6c757d80}@media (max-width: 768px){.voxelforge-workspace{padding:20px}.voxelforge-header{padding:10px 15px;flex-direction:column;gap:10px;text-align:center}.header-middle{flex-direction:column;gap:15px}.workflow-indicator{gap:10px;flex-wrap:wrap;justify-content:center}.step-indicator{font-size:11px;padding:3px 6px;gap:4px}.step-indicator span{width:16px;height:16px;font-size:9px}.step-header{flex-direction:column;align-items:flex-start;gap:15px}.selected-type-badge{flex-direction:column;gap:15px;align-items:stretch}.badge-actions{justify-content:center;flex-wrap:wrap;gap:8px}.change-type-btn,.generate-button-inline{flex:1;min-width:120px;justify-content:center}.upload-customize-grid{grid-template-columns:1fr;gap:20px}.options-grid{grid-template-columns:1fr}.option-card{min-height:auto}.option-details{font-size:11px}.result-actions{flex-direction:column;align-items:center}.action-button{width:200px;justify-content:center}.result-grid{grid-template-columns:1fr;gap:20px}.result-image-container,.result-metadata{width:100%}.custom-prompt-input{min-height:100px}.generate-button{width:100%;max-width:300px}.history-header{flex-direction:column;align-items:flex-start;gap:15px}.back-to-workflow-btn{align-self:stretch;text-align:center}.history-item-header{flex-direction:column;align-items:stretch;gap:10px}.history-actions{justify-content:center}.history-images{flex-direction:column;gap:15px}.history-arrow{transform:rotate(90deg)}}@media (max-width: 480px){.upload-area{padding:30px 15px;min-height:150px}.upload-content .upload-icon{font-size:36px}.upload-content h3{font-size:16px}.image-container{height:200px}.result-content{padding:20px}.generated-image{min-height:150px}.result-image{max-height:200px}.metadata-item{flex-direction:column;align-items:flex-start;gap:4px}.prompt-display{padding:12px}}.voxelforge-app ::-webkit-scrollbar{width:8px;height:8px}.voxelforge-app ::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}.voxelforge-app ::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px;transition:background .2s ease}.voxelforge-app ::-webkit-scrollbar-thumb:hover{background:#ffffff80}.voxelforge-app ::-webkit-scrollbar-corner{background:#ffffff1a}.voxelforge-app{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) rgba(255,255,255,.1)}.history-step{flex:1;display:flex;flex-direction:column;scrollbar-gutter:stable}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:20px}.history-title h2{margin:0 0 3px;font-size:24px;font-weight:600}.history-title p{margin:0;opacity:.8;font-size:14px}.back-to-workflow-btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s ease;white-space:nowrap}.back-to-workflow-btn:hover{background:#ffffff4d;border-color:#ffffff80}.history-content{flex:1;overflow:auto}.history-grid{display:flex;flex-direction:column;gap:20px}.history-item{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:20px;transition:all .2s ease}.history-item:hover{background:#ffffff26;border-color:#ffffff4d}.history-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:15px}.history-type{display:flex;align-items:center;gap:12px}.history-icon{font-size:20px;flex-shrink:0}.history-type-info{display:flex;flex-direction:column;gap:2px}.history-type-info strong{font-size:16px;font-weight:600}.history-timestamp{font-size:12px;opacity:.7}.history-actions{display:flex;gap:8px}.history-action-btn{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px;transition:all .2s ease;white-space:nowrap}.history-action-btn:hover{background:#fff3;border-color:#fff6}.history-images{display:flex;align-items:center;gap:20px;margin-bottom:15px;justify-content:center}.history-image-container{display:flex;flex-direction:column;align-items:center;gap:8px}.history-image-label{font-size:12px;font-weight:600;opacity:.8;text-transform:uppercase;letter-spacing:.5px}.history-image{width:120px;height:120px;border-radius:8px;object-fit:cover;border:2px solid rgba(255,255,255,.2);transition:border-color .2s ease}.history-image:hover{border-color:#fff6}.history-arrow{font-size:20px;color:#fff9;font-weight:700}.history-prompt{background:#ffd70026;border:1px solid rgba(255,215,0,.3);padding:12px;border-radius:8px;font-size:14px;line-height:1.4}.history-prompt strong{color:#ffd700e6}.history-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 20px}.history-empty-state .empty-icon{font-size:64px;margin-bottom:20px;opacity:.6}.history-empty-state h3{margin:0 0 10px;font-size:20px;font-weight:600}.history-empty-state p{margin:0;opacity:.8;font-size:16px}.desktop-icons{position:absolute;inset:24px 0 0;pointer-events:none}.desktop-icon{display:flex;flex-direction:column;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;pointer-events:auto;width:80px;padding:8px;border-radius:8px;transition:background-color .2s ease}.desktop-icon:hover{background-color:#ffffff1a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.desktop-icon.selected{background-color:#007aff4d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.icon-image{font-size:48px;margin-bottom:4px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.icon-label{font-size:12px;font-weight:500;color:#fff;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.8);line-height:1.2;word-wrap:break-word;max-width:100%}@keyframes iconSelect{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.desktop-icon:active{animation:iconSelect .15s ease-out}.desktop-icon.dragging{transform:scale(1.05);opacity:.8;cursor:grabbing;transition:none}.desktop-icon.dragging .icon-image{filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}.desktop-icon:not(.dragging){cursor:grab}.desktop-icon:not(.dragging):hover{transform:translateY(-2px)}.desktop-icon.selected:not(.dragging){animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.dock-container{position:fixed;bottom:8px;left:50%;transform:translate(-50%);z-index:999}.dock{display:flex;align-items:end;padding:4px 8px;background:#0003;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:16px;border:.5px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a;gap:4px;min-height:68px}.dock-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:end;cursor:pointer;border-radius:8px;padding:4px;transition:all .3s cubic-bezier(.34,1.56,.64,1);-webkit-user-select:none;user-select:none;transform-origin:bottom}.dock-item:hover{transform:scale(1.4) translateY(-8px);z-index:10}.dock-item:hover+.dock-item,.dock-item:has(+.dock-item:hover){transform:scale(1.2) translateY(-4px)}.dock-item:hover+.dock-item+.dock-item,.dock-item:has(+.dock-item+.dock-item:hover){transform:scale(1.1) translateY(-2px)}.dock-icon{font-size:44px;transition:all .3s ease;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.dock-item:hover .dock-icon{filter:drop-shadow(0 4px 12px rgba(0,0,0,.4))}.running-indicator{position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:4px;height:4px;background-color:#fff;border-radius:50%;box-shadow:0 0 4px #ffffff80}.window-count{position:absolute;top:-4px;right:-4px;background-color:#ff3b30;color:#fff;border-radius:50%;width:18px;height:18px;font-size:10px;display:flex;align-items:center;justify-content:center;font-weight:700;border:1px solid rgba(255,255,255,.2)}.dock:hover .dock-item:not(:hover){transition-delay:0s}@keyframes dockSlideUp{0%{transform:translate(-50%) translateY(100px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.dock-container{animation:dockSlideUp .5s ease-out}.dock-item.launching{animation:genieEffect .6s ease-out}@keyframes genieEffect{0%{transform:scale(1)}30%{transform:scale(.8) skew(5deg)}60%{transform:scale(1.2) skew(-5deg)}to{transform:scale(1)}}.search-app{height:100%;display:flex;flex-direction:column;background:#fafafa;overflow:hidden}.search-header{background:#fff;border-bottom:1px solid #e0e0e0;padding:20px;flex-shrink:0}.search-input-container{position:relative;width:100%;margin:0 auto}.search-input{width:100%;padding:16px 60px 16px 50px;font-size:16px;border:1px solid #e0e0e0;border-radius:8px;background:#f8f8f8;outline:none;transition:all .2s ease}.search-input:focus{border-color:#007aff;background:#fff;box-shadow:0 0 0 3px #007aff1a}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:18px;color:#666;pointer-events:none}.search-actions{position:absolute;right:16px;top:50%;transform:translateY(-50%);display:flex;gap:8px;align-items:center}.clear-search{background:#ccc;border:none;border-radius:50%;width:20px;height:20px;font-size:12px;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.clear-search:hover{background:#999}.close-search{background:#f0f0f0;border:1px solid #ddd;border-radius:12px;padding:4px 8px;font-size:10px;cursor:pointer;color:#666;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-weight:500}.close-search:hover{background:#e8e8e8;border-color:#bbb;color:#444}.category-filter{background:#fff;border-bottom:1px solid #e0e0e0;padding:15px 20px;display:flex;gap:12px;flex-shrink:0;overflow-x:auto}.category-button{display:flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid #e0e0e0;border-radius:20px;background:#fff;cursor:pointer;font-size:14px;white-space:nowrap;transition:all .2s ease}.category-button:hover{border-color:#007aff;background:#f0f8ff}.category-button.active{background:#007aff;border-color:#007aff;color:#fff}.category-icon{font-size:16px}.category-name{font-weight:500}.search-content{flex:1;position:relative;padding:20px;overflow-y:auto}.results-header{margin-bottom:20px}.results-header h3{font-size:18px;font-weight:600;color:#1d1d1f;margin:0}.results-list{display:flex;flex-direction:column;gap:2px}.result-item{display:flex;align-items:center;padding:12px 16px;border-radius:8px;cursor:pointer;transition:background .2s ease;background:#fff;border:1px solid transparent}.result-item:hover{background:#f0f8ff;border-color:#007aff}.result-icon{font-size:24px;margin-right:16px;width:32px;text-align:center}.result-content{flex:1;min-width:0}.result-title{font-weight:600;color:#1d1d1f;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-subtitle{font-size:14px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-category{font-size:12px;color:#999;background:#f0f0f0;padding:4px 8px;border-radius:12px;text-transform:capitalize;margin-left:12px}.no-results{text-align:center;padding:60px 20px;color:#666}.no-results-icon{font-size:48px;margin-bottom:16px}.no-results h3{font-size:20px;margin-bottom:8px;color:#1d1d1f}.no-results p{font-size:16px;line-height:1.5}.search-suggestions{max-width:800px;margin:0 auto}.suggestions-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:20px;border:1px solid #e0e0e0}.suggestions-section h3{font-size:18px;font-weight:600;margin:0 0 16px;color:#1d1d1f}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.clear-recents{background:none;border:none;color:#007aff;cursor:pointer;font-size:14px;padding:4px 8px;border-radius:4px;transition:background .2s ease}.clear-recents:hover{background:#f0f8ff}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.action-item{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s ease}.action-item:hover{border-color:#007aff;background:#f0f8ff;transform:translateY(-1px)}.action-icon{font-size:20px;width:24px;text-align:center}.action-text{font-weight:500;color:#1d1d1f}.recent-searches{display:flex;flex-direction:column;gap:4px}.recent-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;cursor:pointer;transition:background .2s ease}.recent-item:hover{background:#f0f8ff}.recent-icon{font-size:16px;color:#666;width:20px;text-align:center}.recent-text{color:#1d1d1f;flex:1}.search-tips{display:flex;flex-direction:column;gap:12px}.tip-item{display:flex;align-items:center;gap:12px;padding:8px 0}.tip-icon{font-size:16px;width:20px;text-align:center}.tip-text{color:#666;line-height:1.4}@media (max-width: 768px){.search-header,.search-content{padding:16px}.quick-actions{grid-template-columns:1fr}.category-filter{padding:12px 16px}.suggestions-section{padding:20px}}@media (max-width: 480px){.search-input{font-size:16px;padding:12px 70px 12px 40px}.search-actions{right:12px;gap:6px}.close-search{font-size:9px;padding:3px 6px}.category-button{padding:6px 12px;font-size:13px}.result-item{padding:12px}.result-icon{margin-right:12px;font-size:20px}}.search-modal-backdrop{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1100;display:flex;align-items:flex-start;justify-content:center;padding:80px 20px 20px;animation:searchModalBackdropFadeIn .2s ease-out}@keyframes searchModalBackdropFadeIn{0%{opacity:0}to{opacity:1}}.search-modal{background:#fff;border-radius:16px;box-shadow:0 24px 48px #0003,0 8px 16px #0000001a;width:100%;max-width:800px;max-height:80vh;display:flex;flex-direction:column;animation:searchModalSlideIn .3s ease-out;overflow:hidden}@keyframes searchModalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.search-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e0e0e0;background:#fff;border-radius:16px 16px 0 0;flex-shrink:0}.search-modal-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#1d1d1f}.search-modal-icon{font-size:18px}.search-modal-close{background:#f0f0f0;border:none;border-radius:50%;width:28px;height:28px;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#666;transition:all .2s ease}.search-modal-close:hover{background:#e0e0e0;color:#333}.search-modal-content{flex:1;overflow:hidden;background:#fafafa}.search-modal-content .search-app{background:transparent;border-radius:0}.search-modal-content .search-header{background:transparent;border:none;padding:0 0 16px!important}.search-modal-content .search-input-container{max-width:none}.search-modal-content .search-input{background:#fff;border:1px solid #e0e0e0;border-radius:8px 8px 0 0!important;box-shadow:0 2px 8px #0000000d}.search-modal-content .search-input:focus{border-color:#007aff;box-shadow:0 2px 8px #0000000d,0 0 0 3px #007aff1a}.search-modal-content .category-filter{background:transparent;border:none;padding:0 20px 16px}.search-modal-content .search-content{padding:0 20px 20px;max-height:400px;position:relative;overflow-y:auto}.search-modal-footer{padding:12px 20px;border-top:1px solid #e0e0e0;background:#f8f8f8;border-radius:0 0 16px 16px;flex-shrink:0}.search-modal-shortcut-hint{font-size:12px;color:#666;text-align:center}.search-modal-shortcut-hint kbd{background:#fff;border:1px solid #d0d0d0;border-radius:4px;padding:2px 6px;font-size:11px;font-family:inherit;margin:0 2px;box-shadow:0 1px 2px #0000001a}@media (max-width: 768px){.search-modal-backdrop{padding:60px 16px 16px}.search-modal{max-height:85vh;border-radius:12px}.search-modal-header{padding:12px 16px;border-radius:12px 12px 0 0}.search-modal-content .search-header{padding:0 0 12px!important}.search-modal-content .category-filter{padding:0 16px 12px}.search-modal-content .search-content{padding:0 16px 16px;max-height:300px}.search-modal-footer{padding:10px 16px;border-radius:0 0 12px 12px}}@media (max-width: 480px){.search-modal-backdrop{padding:40px 12px 12px}.search-modal{max-height:90vh;border-radius:8px}.search-modal-header{border-radius:8px 8px 0 0}.search-modal-footer{border-radius:0 0 8px 8px}.search-modal-content .search-header{padding:0 0 12px!important}}.search-modal-backdrop.closing{animation:searchModalBackdropFadeOut .2s ease-in forwards}.search-modal-backdrop.closing .search-modal{animation:searchModalSlideOut .2s ease-in forwards}@keyframes searchModalBackdropFadeOut{0%{opacity:1}to{opacity:0}}@keyframes searchModalSlideOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-20px) scale(.95)}}.loading-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.loading-screen .loading-spinner{font-size:48px;margin-bottom:20px;animation:spin 1.5s linear infinite}.loading-screen div:last-child{font-size:18px;font-weight:500;opacity:.9}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app{width:100vw;height:100vh;overflow:hidden;position:relative}*{box-sizing:border-box}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{margin:0;padding:0;width:100vw;height:100vh}
