*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg-desktop: #1a1a2e;--bg-taskbar: #16213ed9;--bg-taskbar-hover: rgba(255,255,255,.08);--bg-window: #1e1e3a;--bg-window-header: #0f3460;--bg-start-menu: #16213e;--bg-icon-hover: rgba(255,255,255,.08);--bg-overlay: rgba(0,0,0,.4);--text-primary: #e0e0e0;--text-secondary: #a0a0b0;--text-muted: #606070;--syntax-keyword: #c678dd;--syntax-string: #98c379;--syntax-comment: #7f848e;--syntax-number: #d19a66;--syntax-function: #61afef;--syntax-punct: #e06c75;--border-window: #2a2a4a;--accent: #4fc3f7;--danger: #ef5350;--success: #66bb6a;--warning: #ffa726;--shadow: 0 8px 32px rgba(0,0,0,.4);--shadow-sm: 0 2px 8px rgba(0,0,0,.3);--radius: 8px;--radius-sm: 4px;--taskbar-height: 48px;--font: "Segoe UI", system-ui, -apple-system, sans-serif;--transition: .2s ease;--ui-scale: 1}[data-theme=light]{--bg-desktop: #e8eaf6;--bg-taskbar: #c5cae9d9;--bg-taskbar-hover: rgba(0,0,0,.06);--bg-window: #ffffff;--bg-window-header: #7986cb;--bg-start-menu: #c5cae9;--bg-icon-hover: rgba(0,0,0,.06);--bg-overlay: rgba(0,0,0,.15);--text-primary: #1a1a2e;--text-secondary: #555570;--text-muted: #9090a0;--syntax-keyword: #a626a4;--syntax-string: #50a14f;--syntax-comment: #7a7a8a;--syntax-number: #b76b01;--syntax-function: #4078f2;--syntax-punct: #e45649;--border-window: #b0b0c0;--shadow: 0 8px 32px rgba(0,0,0,.15);--shadow-sm: 0 2px 8px rgba(0,0,0,.1)}html,body{height:100%;font-family:var(--font);background:var(--bg-desktop);color:var(--text-primary);overflow:hidden;user-select:none;-webkit-font-smoothing:antialiased;font-size:calc(14px * var(--ui-scale, 1))}#app{height:100%;display:flex;flex-direction:column;zoom:var(--ui-scale, 1)}.yola-desktop{flex:1;position:relative;overflow:hidden;background:var(--bg-desktop);transition:background .3s ease}.yola-desktop[data-wallpaper=default]{background:var(--bg-desktop);background-image:radial-gradient(ellipse at 20% 50%,rgba(79,195,247,.06) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(102,187,106,.04) 0%,transparent 50%)}[data-taskbar=top] .yola-taskbar{border-top:none;border-bottom:1px solid var(--border-window)}[data-taskbar=top] .yola-desktop{order:1}[data-taskbar=top] .yola-start-menu{top:var(--taskbar-height);bottom:auto;left:0}.yola-desktop-icons{display:grid;grid-template-columns:repeat(auto-fill,80px);gap:8px;padding:16px;justify-content:start;align-content:start}.yola-wallpaper-solid,.yola-wallpaper-gradient{position:absolute;inset:0;z-index:0;pointer-events:none}.yola-wallpaper-solid{background:var(--wp-color, #1a1a2e)}.yola-wallpaper-gradient{background:linear-gradient(135deg,var(--wp-from, #1a1a2e),var(--wp-to, #16213e))}.yola-desktop-icons{position:relative;z-index:1}.yola-window{position:relative}.desktop-icon{display:flex;flex-direction:column;align-items:center;gap:4px;width:80px;padding:8px 4px;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition);text-align:center}.desktop-icon:hover{background:var(--bg-icon-hover)}.desktop-icon:active{transform:scale(.95)}.desktop-icon-icon{font-size:32px;line-height:1}.desktop-icon-label{font-size:11px;color:var(--text-primary);line-height:1.2;word-break:break-word;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-shadow:0 1px 3px rgba(0,0,0,.5)}.desktop-icon.selected{background:color-mix(in srgb,var(--accent) 15%,transparent);outline:1px solid color-mix(in srgb,var(--accent) 50%,transparent);outline-offset:-1px}.desktop-icon.dragging{opacity:.85;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3));transition:none}.context-menu{user-select:none}.context-section{display:flex;flex-direction:column;gap:2px}.context-label{font-size:11px;color:var(--text-muted);padding:4px 8px 2px;font-weight:500;letter-spacing:.3px;text-transform:uppercase}.context-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--text-primary);transition:background .1s;white-space:nowrap}.context-item:hover{background:var(--bg-icon-hover)}.context-divider{height:1px;background:var(--border-window);margin:4px 0}.selection-rectangle{position:absolute;z-index:100;pointer-events:none;background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}.snap-overlay{position:fixed;inset:0;z-index:9999;pointer-events:none}.snap-zone{position:absolute;padding:4px;border-radius:10px;background:#4fc3f70f;border:2px solid rgba(79,195,247,.2);transition:all .08s ease}.snap-zone.active{background:#4fc3f726;border-color:var(--accent, #4fc3f7);box-shadow:inset 0 0 24px #4fc3f714}@keyframes win-open{0%{opacity:0;transform:scale(.92) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.win-open{animation:win-open .2s ease-out forwards}.yola-window{transition:transform var(--anim-duration, .12s) cubic-bezier(.4,0,.2,1),opacity var(--anim-duration, .12s) cubic-bezier(.4,0,.2,1),border-color var(--transition);position:absolute;display:flex;flex-direction:column;background:var(--bg-window);border:1px solid var(--border-window);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;min-width:240px;min-height:120px;outline:none}.yola-window:focus-within{border-color:var(--accent, #4fc3f7)}.yola-window.active{border-color:var(--accent, #4fc3f7);box-shadow:0 0 14px color-mix(in srgb,var(--accent, #4fc3f7) 35%,white),var(--shadow)}.yola-window.maximized{border-radius:0;border:none}.yola-window.minimized{display:none!important}@keyframes windowOpen{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.window-header{display:flex;align-items:center;height:36px;flex-shrink:0;background:var(--bg-window-header);cursor:grab;padding:0 8px}.window-header:active{cursor:grabbing}.window-header-icon{font-size:14px;margin-right:6px}.window-title{flex:1;font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.window-controls{display:flex;gap:4px}.window-control{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-secondary);font-size:12px;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition),color var(--transition)}.window-control:hover{background:var(--bg-icon-hover);color:var(--text-primary)}.window-control.close:hover{background:var(--danger);color:#fff}.win-resize{position:absolute;z-index:10}.win-resize.corner-nw{top:-4px;left:-4px;width:var(--corner, 14px);height:var(--corner, 14px)}.win-resize.corner-ne{top:-4px;right:-4px;width:var(--corner, 14px);height:var(--corner, 14px)}.win-resize.corner-sw{bottom:-4px;left:-4px;width:var(--corner, 14px);height:var(--corner, 14px)}.win-resize.corner-se{bottom:-4px;right:-4px;width:var(--corner, 14px);height:var(--corner, 14px);cursor:se-resize}.win-resize.edge-n{top:-4px;left:var(--corner, 14px);right:var(--corner, 14px);height:14px}.win-resize.edge-s{bottom:-4px;left:var(--corner, 14px);right:var(--corner, 14px);height:14px}.win-resize.edge-e{right:-4px;top:var(--corner, 14px);bottom:var(--corner, 14px);width:14px}.win-resize.edge-w{left:-4px;top:var(--corner, 14px);bottom:var(--corner, 14px);width:14px}.yola-avatar{position:absolute;bottom:8px;right:24px;z-index:35;pointer-events:auto;user-select:none}.yola-avatar-inner{width:96px;height:96px}.yola-avatar-inner svg{width:100%;height:100%;display:block}.download-widget{position:absolute;top:16px;right:16px;display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-window);border:1px solid var(--border-window);border-radius:12px;box-shadow:var(--shadow);z-index:50;animation:widgetSlideIn .5s ease .3s both;overflow:hidden;max-width:240px}@keyframes widgetSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.dw-glow{position:absolute;top:-50%;right:-50%;width:100%;height:200%;background:radial-gradient(circle at 100% 50%,rgba(79,195,247,.08),transparent 60%);pointer-events:none}.dw-icon{font-size:28px;line-height:1;color:var(--accent);flex-shrink:0}.dw-content{display:flex;flex-direction:column;gap:2px}.dw-title{font-size:13px;font-weight:700;color:var(--text-primary)}.dw-sub{font-size:10px;color:var(--text-muted);margin-bottom:4px}.dw-btn{display:inline-flex;align-items:center;padding:4px 10px;background:var(--accent);color:#000;font-weight:700;font-size:11px;border-radius:5px;text-decoration:none;transition:all .2s;font-family:var(--font);align-self:flex-start}.dw-btn:hover{transform:scale(1.05);box-shadow:0 0 16px #4fc3f740}.download-overlay{position:fixed;inset:0;z-index:99999;background:#000000b3;display:flex;align-items:center;justify-content:center;animation:overlayFadeIn .3s ease}.yola-switcher-overlay{position:fixed;inset:0;z-index:50000;display:flex;align-items:center;justify-content:center;background:#0006;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:swFadeIn .1s ease}@keyframes swFadeIn{0%{opacity:0}to{opacity:1}}.yola-switcher{display:flex;gap:12px;padding:16px;background:var(--bg-window);border:1px solid var(--border-window);border-radius:16px;box-shadow:0 16px 48px #00000080;max-width:90vw;overflow-x:auto}.yola-switcher-card{display:flex;flex-direction:column;align-items:center;gap:8px;width:140px;padding:12px;border-radius:var(--radius);border:2px solid transparent;cursor:pointer;transition:border-color var(--transition),transform var(--transition),background var(--transition);background:transparent;flex-shrink:0}.yola-switcher-card:hover{background:var(--bg-icon-hover)}.yola-switcher-card.active{border-color:var(--accent, #4fc3f7);transform:scale(1.05);background:color-mix(in srgb,var(--accent, #4fc3f7) 10%,transparent)}.yola-switcher-card-icon{font-size:32px;line-height:1}.yola-switcher-card-title{font-size:12px;font-weight:600;color:var(--text-primary);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.yola-switcher-card-app{font-size:10px;color:var(--text-muted);text-align:center}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.download-card{position:relative;background:var(--bg-window);border:1px solid var(--border-window);border-radius:20px;padding:40px;max-width:460px;width:90%;text-align:center;overflow:hidden;animation:cardPop .4s cubic-bezier(.34,1.56,.64,1)}@keyframes cardPop{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.download-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 50% 50%,rgba(79,195,247,.06),transparent 60%);pointer-events:none}.download-icon{font-size:48px;line-height:1;margin-bottom:12px;color:var(--accent)}.download-title{font-size:28px;font-weight:800;margin-bottom:8px;color:var(--text-primary);letter-spacing:-.5px}.download-desc{font-size:14px;line-height:1.6;color:var(--text-secondary);margin-bottom:24px}.download-desc strong{color:var(--accent)}.download-features{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:24px;text-align:left}.download-feature{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-icon-hover);border-radius:8px;font-size:12px;color:var(--text-secondary)}.df-icon{font-size:16px;flex-shrink:0}.download-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 32px;background:var(--accent);color:#000;font-weight:700;font-size:15px;border-radius:10px;text-decoration:none;transition:all .2s;font-family:var(--font);margin-bottom:12px}.download-btn:hover{transform:scale(1.05);box-shadow:0 0 30px #4fc3f74d}.download-btn-icon{font-size:18px}.download-skip{display:block;width:100%;padding:8px;border:none;background:transparent;color:var(--text-muted);font-family:var(--font);font-size:12px;cursor:pointer;transition:color .2s}.download-skip:hover{color:var(--text-primary)}.window-body{flex:1;overflow:auto;position:relative}.yola-taskbar{display:flex;align-items:center;height:var(--taskbar-height);flex-shrink:0;background:var(--bg-taskbar);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid var(--border-window);padding:0 8px;z-index:9998;gap:4px}.taskbar-start-btn{display:flex;align-items:center;gap:8px;padding:6px 12px;border:none;background:transparent;color:var(--text-primary);font-family:var(--font);font-size:13px;font-weight:600;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition)}.taskbar-start-btn:hover{background:var(--bg-taskbar-hover)}.taskbar-start-btn.active{background:var(--accent);color:#000}.start-dot{font-size:10px;color:var(--accent)}.taskbar-start-btn.active .start-dot{color:#000}.taskbar-apps{flex:1;display:flex;align-items:center;gap:2px;overflow-x:auto;padding:0 4px;height:100%}.taskbar-apps::-webkit-scrollbar{height:0}.taskbar-app-btn{display:flex;align-items:center;gap:6px;padding:4px 10px;border:none;background:transparent;color:var(--text-primary);font-size:12px;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition);white-space:nowrap;height:36px;max-width:160px;position:relative}.taskbar-app-btn:hover{background:var(--bg-taskbar-hover)}.taskbar-app-btn.active{background:var(--bg-icon-hover)}.taskbar-app-btn.active:after{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:20px;height:2px;background:var(--accent);border-radius:1px}.taskbar-app-btn .app-icon{font-size:16px;flex-shrink:0}.taskbar-app-btn .app-label{overflow:hidden;text-overflow:ellipsis}.taskbar-app-btn.minimized .app-icon{opacity:.6}.taskbar-app-btn.pinned .app-icon{opacity:.7}.taskbar-app-btn.pinned:hover .app-icon{opacity:1}.taskbar-divider{width:1px;height:24px;background:var(--border-window);margin:0 4px;flex-shrink:0}.taskbar-right{display:flex;align-items:center;gap:8px;padding:0 8px;font-size:12px;color:var(--text-primary)}.taskbar-clock{font-variant-numeric:tabular-nums}.yola-start-menu{position:absolute;bottom:var(--taskbar-height);left:0;width:320px;max-height:480px;background:var(--bg-start-menu);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-window);border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden;animation:menuSlideUp .2s ease;z-index:9999}@keyframes menuSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.start-menu-header{padding:16px;font-size:16px;font-weight:700;color:var(--accent);border-bottom:1px solid var(--border-window)}.start-menu-search{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-window);flex-shrink:0}.start-menu-body{flex:1;overflow-y:auto;padding:8px}.start-menu-divider{height:1px;background:var(--border-window);margin:4px 8px}.start-menu-category{margin-bottom:8px}.start-menu-category-title{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);padding:4px 8px;font-weight:600}.start-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:none;background:transparent;color:var(--text-primary);font-family:var(--font);font-size:13px;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition);text-align:left}.start-menu-item:hover{background:var(--bg-icon-hover)}.start-menu-item .item-icon{font-size:20px;width:24px;text-align:center}.start-menu-item .item-info{flex:1}.start-menu-item .item-name{font-weight:500}.start-menu-item .item-desc{font-size:11px;color:var(--text-muted)}.typing-cursor{animation:blink 1s step-end infinite;color:var(--accent)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.yola-notifications{position:fixed;top:12px;right:12px;display:flex;flex-direction:column;gap:8px;z-index:99999;pointer-events:none}.yola-notification{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--bg-window);border:1px solid var(--border-window);border-radius:var(--radius);box-shadow:var(--shadow);font-size:13px;color:var(--text-primary);pointer-events:auto;animation:notifSlideIn .3s ease;max-width:360px}.yola-notification.info{border-left:3px solid var(--accent)}.yola-notification.error{border-left:3px solid var(--danger)}.yola-notification.success{border-left:3px solid var(--success)}.yola-notification.warning{border-left:3px solid var(--warning)}.yola-notification.dnd{border-left:3px solid #ff9800;background:#ff98001a;cursor:pointer;font-size:11px}@keyframes notifSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.msg-bubble table{border-collapse:collapse;width:100%;margin:4px 0;font-size:12px}.msg-bubble th,.msg-bubble td{border:1px solid var(--border-window);padding:4px 8px;text-align:left}.msg-bubble th{background:var(--bg-icon-hover);font-weight:600}.msg-bubble ul,.msg-bubble ol{padding-left:20px;margin:4px 0}.msg-bubble li{margin-bottom:2px}.msg-bubble p{margin:4px 0}@keyframes voice-pulse-red{0%{box-shadow:0 0 #ef53508c}70%{box-shadow:0 0 0 10px #ef535000}to{box-shadow:0 0 #ef535000}}@keyframes voice-pulse-accent{0%{box-shadow:0 0 #4fc3f780}70%{box-shadow:0 0 0 8px #4fc3f700}to{box-shadow:0 0 #4fc3f700}}.voice-recording{animation:voice-pulse-red 1s infinite;background:#ef535038!important;color:#ff8a80!important;border-color:var(--danger)!important}.voice-speaking{animation:voice-pulse-accent .8s infinite;color:var(--accent)!important}.voice-btn-disabled{opacity:.35;pointer-events:none;filter:grayscale(1)}
