/* themes/aurora.css */
:root {
  /* Backgrounds */
  --bg-primary: #0a0a1a;
  --bg-secondary: #1a0a2e;
  --bg-glass: rgba(30, 30, 30, 0.65);
  --bg-glass-heavy: rgba(40, 40, 40, 0.95);
  --bg-glass-menu: rgba(40, 40, 40, 0.85);
  --bg-input: rgba(255, 255, 255, 0.08);
  --bg-hover: rgba(255, 255, 255, 0.12);
  --bg-active: rgba(0, 122, 255, 0.3);
  --bg-active-hover: rgba(0, 122, 255, 0.6);
  --bg-accent: rgba(0, 122, 255, 0.8);
  
  /* Text */
  --text-primary: rgba(255, 255, 255, 0.85);
  --text-secondary: rgba(255, 255, 255, 0.7);
  --text-muted: rgba(255, 255, 255, 0.4);
  --text-faint: rgba(255, 255, 255, 0.35);
  
  /* Borders */
  --border-color: rgba(255, 255, 255, 0.08);
  --border-hover: rgba(255, 255, 255, 0.12);
  --border-strong: rgba(255, 255, 255, 0.15);
  
  /* Shadows */
  --shadow-window: 0 12px 48px rgba(0, 0, 0, 0.4);
  --shadow-menu: 0 20px 60px rgba(0, 0, 0, 0.5);
  --shadow-notif: 0 8px 32px rgba(0, 0, 0, 0.3);
  --shadow-dock: 0 8px 32px rgba(0, 0, 0, 0.3);
  
  /* Scrollbar */
  --scrollbar-bg: transparent;
  --scrollbar-thumb: rgba(255, 255, 255, 0.15);
  --scrollbar-thumb-hover: rgba(255, 255, 255, 0.25);
  
  /* Window Controls */
  --color-close: #ff5f57;
  --color-minimize: #febc2e;
  --color-maximize: #28c840;
}

* { margin:0; padding:0; box-sizing:border-box; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif; overflow:hidden; height:100vh; width:100vw; user-select:none; background:var(--bg-primary); color:var(--text-primary); }

/* Loading */
#loading-screen { position:fixed; inset:0; z-index:99999; display:flex; flex-direction:column; align-items:center; justify-content:center; background:var(--bg-primary); transition:opacity .8s ease; }
#loading-screen.hidden { opacity:0; pointer-events:none; }
.loader-ring { width:80px; height:80px; border-radius:50%; border:4px solid transparent; border-top:4px solid #fff; border-right:4px solid rgba(255,255,255,.5); animation:spin 1s linear infinite; }
.loader-text { color:#fff; margin-top:24px; font-size:14px; letter-spacing:3px; text-transform:uppercase; opacity:.7; }
.loader-dots::after { content:''; animation:dots 1.5s steps(4) infinite; }

/* Aurora & Wallpaper */
#aurora-canvas { position:fixed; inset:0; z-index:0; }
.wallpaper-alt { position:fixed; inset:0; z-index:0; background-size:cover; background-position:center; display:none; }

/* Lock Screen */
#lock-screen { position:fixed; inset:0; z-index:9999; display:flex; flex-direction:column; align-items:center; justify-content:center; background:rgba(0,0,0,.4); backdrop-filter:blur(30px); transition:all .6s ease; cursor:pointer; }
#lock-screen.hidden { opacity:0; pointer-events:none; transform:translateY(-100%); }
#lock-time { color:#fff; font-size:80px; font-weight:200; letter-spacing:-2px; }
#lock-date { color:var(--text-secondary); font-size:18px; margin-top:8px; }
#lock-hint { color:var(--text-muted); font-size:13px; margin-top:40px; animation:pulse 2s ease infinite; }
#lock-pass { display:none; flex-direction:column; align-items:center; gap:12px; }
#lock-pass input { background:var(--bg-input); border:1px solid var(--border-color); border-radius:20px; padding:10px 20px; color:#fff; font-size:16px; width:200px; outline:none; backdrop-filter:blur(10px); }
#lock-pass input::placeholder { color:var(--text-faint); }
#lock-pass .pass-dots { display:flex; gap:8px; }
#lock-pass .pass-dot { width:10px; height:10px; border-radius:50%; border:1px solid var(--border-color); transition:all .2s; }
#lock-pass .pass-dot.filled { background:#fff; border-color:#fff; }
#lock-pass .pass-error { color:#ff6b6b; font-size:12px; display:none; }

/* Taskbar */
#taskbar { position:fixed; top:0; left:0; right:0; height:32px; z-index:9000; background:var(--bg-glass); backdrop-filter:blur(30px); display:flex; align-items:center; padding:0 12px; border-bottom:1px solid var(--border-color); }
#taskbar-left { display:flex; align-items:center; gap:16px; flex:1; }
#taskbar-center { display:flex; align-items:center; gap:4px; flex:1; justify-content:center; }
#taskbar-right { display:flex; align-items:center; gap:12px; flex:1; justify-content:flex-end; }
.taskbar-btn { background:none; border:none; color:var(--text-primary); cursor:pointer; font-size:13px; padding:5px 6px; transition:background .2s; display:flex; align-items:center; gap:4px; }
.taskbar-btn:hover { background:var(--bg-hover); }
.taskbar-app-btn { position:relative; }
.taskbar-app-btn.active::after { content: ''; position: absolute; bottom: 0; width: stretch; height: 2px; background: #49834999; margin: 0 2px 0 0; }
#taskbar-clock { font-size:12px; color:var(--text-primary); font-weight:500; }

/* Start Menu */
#start-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9499;display:none;background:rgba(0,0,0,.4);transition:all .25s cubic-bezier(.4,0,.2,1)}
#start-menu { position: fixed; transform: scale(.9); transform-origin: top left; opacity: 0; pointer-events: none; transition: all .25s cubic-bezier(.4,0,.2,1); overflow: hidden; z-index: 9500; background: var(--bg-glass-menu); backdrop-filter: blur(40px); border-radius: 12px; border: 1px solid var(--border-color); box-shadow: var(--shadow-menu); }
#start-menu.open { opacity: 1; pointer-events: auto; transform: scale(1); }
#start-search { width:stretch; padding:9px 14px; background:var(--bg-input); border:none; border-radius:8px; color:var(--text-primary); font-size:13px; outline:none; margin:10px; border:1px solid var(--border-color); }
#start-search::placeholder { color:var(--text-faint); }
#start-apps { padding:0 14px 24px 14px; max-height:380px; overflow-y:auto; display:grid; grid-template-columns:repeat(4,1fr); gap:4px; }
.start-app-item { display:flex; flex-direction:column; align-items:center; gap:6px; padding:12px 8px; border-radius:8px; cursor:pointer; transition:background .15s; }
.start-app-item:hover { background:var(--bg-hover); }
.start-app-icon { width:44px; height:44px; display:flex; align-items:center; justify-content:center; font-size:32px; }
.start-app-name { font-size:11px; color:var(--text-primary); text-align:center; }
.start-app-item.hidden { display:none; }
#start-menu-footer{padding:12px 20px;border-top:1px solid rgba(255,255,255,0.08);
  display:flex;justify-content:space-between;align-items:center}
#start-menu-footer span{font-size:11px;color:rgba(255,255,255,0.5)}
.power-btn{width:32px;height:32px;border-radius:8px;border:none;cursor:pointer;
  background:rgba(255,255,255,0.08);color:rgba(255,255,255,0.6);font-size:14px;transition:0.2s}
.power-btn:hover{background:rgba(255,80,80,0.3);color:white}

/* Dock */
#dock { position:fixed; bottom:8px; left:50%; transform:translateX(-50%); z-index:9000; display:flex; align-items:end; gap:4px; padding:6px 10px; background:var(--bg-glass); backdrop-filter:blur(30px); border-radius:16px; border:1px solid var(--border-hover); box-shadow:var(--shadow-dock); }
.dock-item { width:48px; height:48px; display:flex; align-items:center; justify-content:center; font-size:32px; cursor:pointer; border-radius:10px; transition:all .2s cubic-bezier(.4,0,.2,1); position:relative; }
.dock-item:hover { transform:translateY(-8px) scale(1.3); }
.dock-item:hover .dock-tooltip { opacity:1; transform:translateY(-8px); }
.dock-tooltip { position:absolute; top:-32px; background:var(--bg-glass-heavy); backdrop-filter:blur(10px); color:#fff; padding:4px 10px; border-radius:4px; font-size:11px; white-space:nowrap; opacity:0; transition:all .15s; pointer-events:none; border:1px solid var(--border-color); }
.dock-dot { position:absolute; bottom:-4px; width:4px; height:4px; border-radius:50%; background:rgba(255,255,255,.6); }
.dock-separator { width:1px; height:36px; background:rgba(255,255,255,.15); margin:0 4px; align-self:center; }

/* Windows */
.window { position:fixed; min-width:300px; min-height:200px; background:var(--bg-glass-heavy); backdrop-filter:blur(40px); border-radius:10px; border:1px solid var(--border-color); box-shadow:var(--shadow-window); display:flex; flex-direction:column; overflow:hidden; animation:windowOpen .3s cubic-bezier(.4,0,.2,1); }
.window.closing { animation:windowClose .2s ease forwards; }
.window.dragging { opacity:.9; }
.window.focused { box-shadow:0 16px 64px rgba(0,0,0,.5); border-color:var(--border-hover); }
.window-header { height:36px;background:linear-gradient(to bottom,#2d2d2d,#242424);display:flex;align-items:center;padding:0 10px;cursor:default;border-bottom:1px solid rgba(0,0,0,0.3);}
.window-title { flex:1; text-align:center; color:var(--text-secondary); font-size:13px; font-weight:500; }
.window-controls { display:flex; gap:8px; position:absolute; }
.window-ctrl { width:12px; height:12px; border-radius:50%; cursor:pointer; border:none; transition:opacity .15s; color:transparent; font-size:8px; align-items: center; justify-content: center; display:flex; }
.window-ctrl:hover { opacity:.8; color:rgba(0,0,0,0.6); }
.ctrl-close { background:var(--color-close); }
.ctrl-minimize { background:var(--color-minimize); }
.ctrl-maximize { background:var(--color-maximize); }
.window-body { flex:1; overflow:auto; color:var(--text-primary); position:relative; }
.window-resize { position: absolute; z-index: 10; }
.resize-n { top: -3px; left: 10px; right: 10px; height: 6px; cursor: n-resize; }
.resize-ne { top: -3px; right: -3px; width: 12px; height: 12px; cursor: ne-resize; }
.resize-e { top: 10px; bottom: 10px; right: -3px; width: 6px; cursor: e-resize; }
.resize-se { bottom: -3px; right: -3px; width: 12px; height: 12px; cursor: se-resize; }
.resize-s { bottom: -3px; left: 10px; right: 10px; height: 6px; cursor: s-resize; }
.resize-sw { bottom: -3px; left: -3px; width: 12px; height: 12px; cursor: sw-resize; }
.resize-w { top: 10px; bottom: 10px; left: -3px; width: 6px; cursor: w-resize; }
.resize-nw { top: -3px; left: -3px; width: 12px; height: 12px; cursor: nw-resize; }

/* Context Menu */
.context-menu { position:fixed; z-index:99999; background:var(--bg-glass-heavy); backdrop-filter:blur(30px); border-radius:8px; border:1px solid var(--border-color); box-shadow:var(--shadow-notif); min-width:180px; padding:4px; animation:ctxOpen .12s ease; }
.ctx-item { padding:6px 12px; font-size:13px; color:var(--text-primary); cursor:pointer; border-radius:4px; display:flex; align-items:center; gap:8px; }
.ctx-item:hover { background:var(--bg-active-hover); color:#fff; }
.ctx-separator { height:1px; background:var(--border-color); margin:4px 8px; }

/* Notifications */
#notification-container { position:fixed; top:36px; right:12px; z-index:9999; display:flex; flex-direction:column; gap:8px; }
.notification { background:var(--bg-glass-heavy); backdrop-filter:blur(30px); border-radius:10px; border:1px solid var(--border-color); padding:12px 16px; min-width:280px; max-width:340px; box-shadow:var(--shadow-notif); animation:notifIn .3s ease; }
.notification.removing { animation:notifOut .3s ease forwards; }
.notif-title { font-size:13px; font-weight:600; color:#fff; margin-bottom:2px; }
.notif-body { font-size:12px; color:var(--text-secondary); }
.notif-app { font-size:10px; color:var(--text-faint); margin-top:4px; }

/* File Manager */
.fm-grid { flex: 1; padding: 10px; display: flex; flex-wrap: wrap; align-content: flex-start; gap: 8px; overflow-y: auto; }
.fm-item { display:flex; flex-direction:column; align-items:center; gap:4px; padding:8px; border-radius:8px; cursor:pointer; transition:background .15s; }
.fm-item:hover { background:rgba(255,255,255,.08); }
.fm-item.selected { background:var(--bg-active); }
.fm-icon { font-size:36px; }
.fm-name { font-size:11px; text-align:center; color:var(--text-secondary); word-break:break-all; }
.fm-toolbar { display:flex; align-items:center; gap:8px; padding:8px 12px; border-bottom:1px solid var(--border-color); }
.fm-path { flex:1; background:var(--bg-input); border:none; border-radius:6px; padding:7px 8px; color:#fff; font-size:12px; outline:none; }
.fm-toolbar-btn { background:rgba(255,255,255,.08); border:none; color:var(--text-primary); padding:7px 10px; border-radius:4px; cursor:pointer; font-size:12px; }
.fm-toolbar-btn:hover { background:rgba(255,255,255,.15); }
.fm-sidebar-item { padding: 6px 8px; border-radius: 4px; cursor: pointer; color: rgba(255, 255, 255, .7); display: flex; align-items: center; gap: 8px; font-size: 13px; }
.fm-sidebar-item.selected { background:var(--bg-active); }
.fm-sidebar-title { font-size: 11px; text-transform: uppercase; color: rgba(255, 255, 255, .4); margin-bottom: 8px; }

/* Notepad */
.notepad-container { display: flex; flex-direction: column; height: 100%; }
.notepad-area { flex: 1; min-height: 0; width: 100%; background: transparent; border: none; color: rgba(255, 255, 255, 0.85); padding: 12px; font-size: 14px; font-family: inherit; resize: none; outline: none; line-height: 1.6; }
.notepad-menu { display: flex; gap: 2px; padding: 4px 8px; border-bottom: 1px solid rgba(255, 255, 255, 0.06); flex-shrink: 0; }
.notepad-menu-btn { background: none; border: none; color: rgba(255, 255, 255, 0.6); padding: 4px 8px; font-size: 12px; cursor: pointer; border-radius: 4px; }
.notepad-menu-btn:hover { background: rgba(255, 255, 255, 0.1); color: #fff; }
.notepad-status { padding: 4px 12px; border-top: 1px solid rgba(255, 255, 255, 0.06); font-size: 11px; color: rgba(255, 255, 255, 0.35); display: flex; justify-content: space-between; flex-shrink: 0; background: rgba(0, 0, 0, 0.1); }

/* Terminal */
.terminal { background:rgba(0,0,0,.6); height:100%; padding:8px; font-family:Consolas,monospace; font-size:13px; overflow-y:auto; color:#55ed55; }
.terminal-line { margin-bottom:2px; white-space:pre-wrap; word-break:break-all; }
.terminal-input-line { display:flex; align-items:center; }
.terminal-prompt { color:#0f0; margin-right:4px; white-space:nowrap; }
.terminal-input { background:none; border:none; color:#0f0; font-family:inherit; font-size:inherit; flex:1; outline:none; caret-color:#0f0; }

/* Weather */
.weather-app { padding:20px; text-align:center; }
.weather-search { display:flex; gap:8px; margin-bottom:20px; justify-content:center; }
.weather-search input { background:var(--bg-input); border:1px solid var(--border-color); border-radius:20px; padding:8px 16px; color:#fff; font-size:14px; width:200px; outline:none; }
.weather-search button { background:var(--bg-active-hover); border:none; color:#fff; padding:8px 16px; border-radius:20px; cursor:pointer; font-size:14px; }
.weather-main { margin:20px 0; }
.weather-temp { font-size:64px; font-weight:200; color:#fff; }
.weather-desc { font-size:18px; color:var(--text-secondary); text-transform:capitalize; margin:4px 0; }
.weather-details { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:20px; }
.weather-detail { background:rgba(255,255,255,.05); border-radius:10px; padding:12px; }
.weather-detail-label { font-size:11px; color:var(--text-faint); }
.weather-detail-value { font-size:18px; font-weight:500; color:#fff; margin-top:4px; }

/* Media Player */
.media-player { padding:2px; display:flex; height:stretch; }
.media-main { flex:1; display:flex; flex-direction:column; align-items:center; gap:16px; border-right:1px solid rgba(255,255,255,.06); }
.media-visual { width:100%; height:200px; background:rgba(255,255,255,.03); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.media-controls { display:flex; align-items:center; gap:16px; }
.media-btn { background:rgba(255,255,255,.08); border:none; color:#fff; width:40px; height:40px; border-radius:50%; cursor:pointer; font-size:18px; display:flex; align-items:center; justify-content:center; transition:background .15s; }
.media-btn:hover { background:rgba(255,255,255,.15); }
.media-btn.play-btn { width:50px; height:50px; background:var(--bg-active-hover); font-size:22px; }
.media-progress { width:98%; height:4px; background:rgba(255,255,255,.1); border-radius:2px; cursor:pointer; position:relative; }
.media-progress-fill { height:100%; background:var(--bg-active-hover); border-radius:2px; transition:width .1s; }
.media-file-input { display:none; }
.media-title { color:var(--text-secondary); font-size:14px; }
.media-canvas{ width:100%;height:100% }
.media-playlist{ width:300px; height:100%; background:rgba(0,0,0,.1); overflow-y:auto; display:flex; flex-direction:column; }
.media-playlist-item { padding: 8px 12px; font-size: 12px; color: var(--text-secondary); cursor: pointer; border-bottom: 1px solid rgba(255,255,255,.04); transition: background .15s; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.media-playlist-item:hover { background: rgba(255,255,255,.08); color: var(--text-primary); }
.media-playlist-item.active { background: var(--bg-active); color: #fff; border-left: 2px solid var(--bg-active-hover); }

/* Settings */
.settings-layout { display:flex; height:100%; }
.settings-sidebar { width:180px; border-right:1px solid var(--border-color); padding:8px; }
.settings-sidebar-btn { width:100%; background:none; border:none; color:var(--text-secondary); padding:8px 12px; text-align:left; cursor:pointer; border-radius:6px; font-size:13px; display:flex; align-items:center; gap:8px; }
.settings-sidebar-btn:hover { background:rgba(255,255,255,.08); }
.settings-sidebar-btn.active { background:var(--bg-active); color:#fff; }
.settings-content { flex:1; padding:20px; overflow-y:auto; }
.settings-panel { display:none; }
.settings-panel.active { display:block; }
.wallpaper-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:12px; }
.wallpaper-option { height:100px; border-radius:8px; cursor:pointer; border:2px solid transparent; transition:border-color .15s; position:relative; }
.wallpaper-option:hover, .wallpaper-option.active { border-color:var(--bg-active-hover); }
.wallpaper-option .wp-label { position: absolute; bottom: 4px; left: 4px; font-size: 10px; color: #fff; background: rgba(0, 0, 0, 0.2); padding: 2px 6px; border-radius: 4px; }
.setting-row { display:flex; justify-content:space-between; align-items:center; padding:12px 0; border-bottom:1px solid var(--border-color); }
.setting-label { color:var(--text-secondary); font-size:14px; }
.toggle { width:44px; height:24px; background:rgba(255,255,255,.15); border-radius:12px; cursor:pointer; position:relative; transition:background .2s; }
.toggle.on { background:var(--bg-active-hover); }
.toggle::after { content:''; position:absolute; width:20px; height:20px; border-radius:50%; background:#fff; top:2px; left:2px; transition:transform .2s; }
.toggle.on::after { transform:translateX(20px); }

/* Games */
.game-canvas { width:100%; height:100%; display:block; }
.level-editor { padding:12px; }
.level-editor-toolbar { display:flex; gap:6px; margin-bottom:12px; flex-wrap:wrap; }
.level-editor-btn { background:var(--bg-input); border:1px solid var(--border-color); color:var(--text-secondary); padding:6px 12px; border-radius:6px; cursor:pointer; font-size:12px; }
.level-editor-btn:hover { background:rgba(255,255,255,.15); }
.level-editor-btn.active { background:var(--bg-active); border-color:var(--bg-active-hover); }
.level-canvas { border:1px solid var(--border-color); border-radius:6px; background:rgba(0,0,0,.3); }
.level-list { margin-top:12px; }
.level-item { display:flex; justify-content:space-between; align-items:center; padding:8px 12px; background:rgba(255,255,255,.05); border-radius:6px; margin-bottom:4px; }
.level-item-name { color:var(--text-secondary); font-size:13px; }
.level-item-actions { display:flex; gap:4px; }
.level-item-btn { background:var(--bg-input); border:none; color:var(--text-faint); padding:4px 8px; border-radius:4px; cursor:pointer; font-size:11px; }
.level-item-btn:hover { background:rgba(255,255,255,.15); color:#fff; }
.level-item-btn.delete:hover { background:rgba(255,80,80,.3); color:#ff6b6b; }

/* Scrollbar */
::-webkit-scrollbar { width:8px; }
::-webkit-scrollbar-track { background:var(--scrollbar-bg); }
::-webkit-scrollbar-thumb { background:var(--scrollbar-thumb); border-radius:4px; }
::-webkit-scrollbar-thumb:hover { background:var(--scrollbar-thumb-hover); }

/* Theme Selector UI */
.theme-option { height:100px; border-radius:8px; cursor:pointer; border:2px solid transparent; transition:border-color .15s; position:relative; }
.theme-option:hover { transform:scale(1.05); }
.theme-option.active { border-color:var(--bg-active-hover); }
.theme-preview { width:100%; height:100%; border-radius:6px; }
.theme-name { position: absolute; bottom: 4px; left: 4px; font-size: 10px; color: #fff; background: rgba(0, 0, 0, 0.2); padding: 2px 6px; border-radius: 4px; }

/* ===== SHUTDOWN OVERLAY ===== */
.shutdown-overlay{display:flex;align-items:center;justify-content:center;height:100%;flex-direction:column;gap:16px;background:#111111aa}

/* ===== CUSTOM PROMPT ===== */
#custom-prompt-overlay { display:none; position:fixed; inset:0; z-index:999999; background:rgba(0,0,0,0.3); backdrop-filter:blur(8px); align-items:center; justify-content:center; animation:fadeIn 0.15s ease; }
#custom-prompt-overlay.active { display:flex; }
.custom-prompt-box { width:340px; background:var(--bg-glass-heavy); backdrop-filter:blur(30px); border-radius:12px; border:1px solid var(--border-color); box-shadow:var(--shadow-window); padding:20px; display:flex; flex-direction:column; gap:14px; animation:promptIn 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
.custom-prompt-title { color:#fff; font-size:15px; font-weight:500; text-align:center; letter-spacing:0.3px; white-space: pre-wrap; }
#prompt-input { width:100%; background:var(--bg-input); border:1px solid var(--border-color); border-radius:8px; padding:8px 10px; color:var(--text-primary); font-size:13px; outline:none; transition:border-color 0.2s, background 0.2s; }
#prompt-input:focus { border-color:var(--bg-active-hover); background:rgba(255,255,255,0.05); }
.custom-prompt-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 4px; }
.custom-prompt-btn { padding:8px 20px; border-radius:6px; cursor:pointer; font-size:13px; font-weight:500; transition:all 0.15s; border:none; }
.custom-prompt-btn.cancel { background:transparent; border:1px solid var(--border-color); color:var(--text-secondary); }
.custom-prompt-btn.cancel:hover { background:rgba(255,255,255,0.08); color:var(--text-primary); }
.custom-prompt-btn.ok { background:var(--bg-active-hover); color:#fff; }
.custom-prompt-btn.ok:hover { filter:brightness(1.1); }
@keyframes promptIn { from { opacity:0; transform:scale(0.9) translateY(10px); } to { opacity:1; transform:scale(1) translateY(0); } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
.prompt-input-wrapper { position: relative; width: 100%; }
#prompt-input { padding-right: 40px; }
.prompt-toggle {
  position: absolute; right: 8px; top: 50%; transform: translateY(-50%);
  background: none; border: none; cursor: pointer; font-size: 16px;
  color: var(--text-muted); padding: 4px; border-radius: 4px; transition: all 0.15s;
}
.prompt-toggle:hover { color: var(--text-primary); background: rgba(255,255,255,0.05); }

/* ===== DESKTOP ===== */
#desktop{width:100%;height:100%;position:relative;overflow:hidden;transition:background 0.5s}

.desktop-grid { flex: 1; padding: 10px; display: flex; flex-wrap: wrap; align-content: flex-start; gap: 8px; overflow-y: auto; position:relative;top:26px; flex-direction:column; }
.desktop-item { display:flex; flex-direction:column; align-items:center; gap:4px; padding:8px; border-radius:8px; cursor:pointer; }
.desktop-item:hover { background:rgba(255,255,255,.08); }
.desktop-item.selected { background:var(--bg-active); }
.desktop-icon { font-size:36px; }
.desktop-name { font-size:11px; text-align:center; color:var(--text-secondary); word-break:break-all; }