*{margin:0;padding:0;box-sizing:border-box}:root{--bg-color: #0a0a0a;--terminal-bg: #1a1a1a;--text-color: #00ff00;--text-secondary: #ffffff;--text-muted: #888888;--accent-color: #00ff41;--error-color: #ff4444;--warning-color: #ffaa00;--info-color: #44aaff;--border-color: #333333;--cursor-color: #00ff00}body{font-family:JetBrains Mono,Fira Code,Consolas,Monaco,Courier New,monospace;background-color:var(--bg-color);color:var(--text-color);overflow:hidden;height:100vh;font-size:16px;line-height:1.5}#root{height:100vh;width:100vw}.terminal{height:100vh;background-color:var(--terminal-bg);padding:20px;overflow-y:auto;position:relative;display:flex;flex-direction:column}.terminal::-webkit-scrollbar-track{background:var(--bg-color)}.terminal::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.terminal::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.terminal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid var(--border-color)}.terminal-title{color:var(--accent-color);font-weight:700;font-size:16px}.terminal-controls{display:flex;gap:8px}.control-btn{width:12px;height:12px;border-radius:50%;border:none;cursor:pointer}.close{background-color:#ff5f56}.minimize{background-color:#ffbd2e}.maximize{background-color:#27ca3f}.terminal-content{flex:1;overflow-y:auto;padding-bottom:20px}.output-line{margin-bottom:4px;word-wrap:break-word;white-space:pre-wrap}.output-line.command{color:var(--text-secondary)}.output-line.success{color:var(--accent-color)}.output-line.error{color:var(--error-color)}.output-line.warning{color:var(--warning-color)}.output-line.info{color:var(--info-color)}.output-line.muted{color:var(--text-muted)}.prompt{color:var(--accent-color);font-weight:700}.user{color:var(--info-color)}.host{color:var(--accent-color)}.path{color:var(--warning-color)}.input-line{display:flex;align-items:center;margin-top:10px}.terminal-input{background:transparent;border:none;outline:none;color:var(--text-secondary);font-family:inherit;font-size:inherit;flex:1;margin-left:8px;caret-color:var(--cursor-color)}.terminal-input::placeholder{color:var(--text-muted)}.cursor{display:inline-block;background-color:var(--cursor-color);width:8px;height:18px;animation:blink 1s infinite;margin-left:2px}.command-output{margin:10px 0;padding-left:20px}.ascii-art{color:var(--accent-color);font-family:monospace;font-size:14px;line-height:1.2;white-space:pre-wrap;word-break:break-all;overflow-x:auto;margin:10px 0}.file-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin:10px 0}.file-item{color:var(--text-secondary);padding:4px 0}.file-item.directory{color:var(--info-color)}.file-item.executable{color:var(--accent-color)}.file-item.hidden{color:var(--text-muted)}.help-section{margin:15px 0}.help-title{color:var(--accent-color);font-weight:700;margin-bottom:8px;border-bottom:1px solid var(--border-color);padding-bottom:4px}.help-command{display:flex;margin:4px 0}.help-command-name{color:var(--info-color);width:150px;font-weight:700}.help-command-desc{color:var(--text-secondary);flex:1}.table{width:100%;border-collapse:collapse;margin:10px 0}.table th,.table td{text-align:left;padding:8px 12px;border-bottom:1px solid var(--border-color)}.table th{color:var(--accent-color);font-weight:700;background-color:#00ff411a}.table td{color:var(--text-secondary)}.link{color:var(--info-color);text-decoration:underline;cursor:pointer}.link:hover{color:var(--accent-color)}.badge{display:inline-block;padding:2px 6px;border-radius:3px;font-size:11px;font-weight:700;margin:0 4px}.badge.tech{background-color:#00ff4133;color:var(--accent-color)}.badge.year{background-color:#4af3;color:var(--info-color)}.badge.status{background-color:#fa03;color:var(--warning-color)}.progress-bar{width:100%;height:20px;background-color:var(--border-color);border-radius:10px;overflow:hidden;margin:8px 0}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-color),var(--info-color));transition:width .3s ease}.typewriter{overflow:hidden;white-space:nowrap;border-right:2px solid var(--cursor-color);animation:typing 2s steps(30,end),blink-caret .75s step-end infinite}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:var(--cursor-color)}}.matrix-bg{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1;opacity:.05}@media(max-width:768px){body{font-size:18px}.terminal{padding:12px;font-size:16px}.ascii-art{font-size:12px;white-space:pre-wrap;word-break:break-all;overflow-x:auto}.file-list{grid-template-columns:1fr}.help-command{flex-direction:column}.help-command-name{width:auto;margin-bottom:4px}.table{font-size:14px;overflow-x:auto;display:block;white-space:nowrap}.table th,.table td{padding:8px 10px}}@media(max-width:480px){body{font-size:20px}.terminal{padding:10px;font-size:18px}.ascii-art{font-size:10px;line-height:1.1}.terminal-header{flex-direction:column;gap:10px}.table{font-size:16px}}.fade-in{animation:fadeIn .3s ease-in}.slide-up{animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.typewriter-cursor{animation:blink 1s infinite;color:var(--cursor-color);font-weight:700}.tab-completions{margin-top:10px;padding:10px;background-color:#00ff411a;border:1px solid var(--border-color);border-radius:4px}.completions-title{color:var(--accent-color);font-size:12px;margin-bottom:5px}.completions-list{display:flex;flex-wrap:wrap;gap:8px}.completion-item{color:var(--text-secondary);background-color:#4af3;padding:2px 6px;border-radius:3px;font-size:12px;cursor:pointer;transition:background-color .2s ease}.completion-item.active{background-color:var(--accent-color);color:var(--bg-color)}.completion-item:hover{background-color:#44aaff4d}.branding{position:fixed;z-index:1000;pointer-events:auto;user-select:none;font-family:SF Pro Text,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px;line-height:1.4;opacity:.7;transition:all .3s ease}.branding:hover{opacity:1;transform:translateY(-2px)}.branding-bottom-right{bottom:16px;right:16px}.branding-bottom-left{bottom:16px;left:16px}.branding-top-right{top:16px;right:16px}.branding-top-left{top:16px;left:16px}.branding-content{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);background:#0000004d;box-shadow:0 4px 12px #00000026}.branding-dark .branding-content{background:#0006;border-color:#ffffff1a;color:#fffc}.branding-light .branding-content{background:#fff6;border-color:#0000001a;color:#000c}.branding-text{font-weight:500;white-space:nowrap}.branding-link{color:inherit;text-decoration:none;transition:all .2s ease;border-radius:4px;padding:2px 4px;margin:-2px -4px}.branding-link:hover{text-decoration:none;background:#ffffff1a}.personal-link{font-weight:600;color:#0f8}.personal-link:hover{color:#0f8;background:#00ff881a}.branding-links{display:flex;align-items:center;gap:4px}.github-link{display:flex;align-items:center;justify-content:center;padding:4px;margin:-4px;border-radius:4px;transition:all .2s ease}.github-link:hover{background:#ffffff1a;transform:scale(1.1)}.github-link svg{width:14px;height:14px;opacity:.8;transition:opacity .2s ease}.github-link:hover svg{opacity:1}@media(max-width:768px){.branding{font-size:11px}.branding-content{padding:6px 10px;gap:6px}.branding-bottom-right{bottom:12px;right:12px}.branding-bottom-left{bottom:12px;left:12px}.github-link svg{width:12px;height:12px}}@media(max-width:480px){.branding{font-size:10px}.branding-content{padding:4px 8px;gap:4px}.branding-bottom-right{bottom:8px;right:8px}.branding-bottom-left{bottom:8px;left:8px}}@keyframes brandingFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:.7;transform:translateY(0)}}.branding{animation:brandingFadeIn .8s ease-out 2s both}@media(prefers-contrast:high){.branding-content{background:#000c;border-color:#ffffff4d}.branding-dark .branding-content{color:#fff}.personal-link{color:#0f0}}@media(prefers-reduced-motion:reduce){.branding{animation:none;transition:none}.branding:hover,.github-link:hover{transform:none}}.desktop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:linear-gradient(135deg,#1e3c72,#2a5298);z-index:1;overflow:hidden;animation:desktopFadeIn .3s ease-out}.desktop-wallpaper{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 30% 70%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(0,255,65,.1) 0%,transparent 50%),linear-gradient(135deg,#0f2027,#203a43,#2c5364);opacity:.9;background-size:cover;background-position:center;background-repeat:no-repeat}.desktop-icons{position:absolute;top:20px;left:20px;display:flex;flex-direction:column;gap:16px;animation:iconsSlideIn .5s ease-out;z-index:2;min-height:calc(100vh - 40px);flex-wrap:wrap;max-width:160px}.desktop-hint{position:absolute;bottom:20px;left:50%;transform:translate(-50%);color:#fffc;font-size:14px;text-align:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;text-shadow:0 2px 4px rgba(0,0,0,.5);animation:fadeIn 1s ease-out .5s both;z-index:10}.desktop-hint kbd{background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:4px;padding:2px 6px;font-family:inherit;font-size:12px;margin:0 2px;box-shadow:0 1px 2px #0003}.desktop-icon{display:flex;flex-direction:column;align-items:center;cursor:pointer;user-select:none;transition:all .2s ease;padding:8px;border-radius:8px;background:#0000001a;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);outline:none;width:80px;margin-bottom:4px}.desktop-icon:hover{background:#fff3;transform:translateY(-2px);box-shadow:0 4px 16px #0003}.desktop-icon:focus-visible{background:#ffffff26;box-shadow:0 0 0 2px #ffffff80}.desktop-icon:active{transform:translateY(0) scale(.98);transition:transform .1s ease}.icon-image{width:60px;height:60px;margin-bottom:6px;position:relative;display:flex;align-items:center;justify-content:center}.icon-label{color:#fff;font-size:12px;font-weight:500;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.5);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.2;max-width:80px;word-wrap:break-word}.terminal-icon{width:100%;height:100%;background:linear-gradient(135deg,#2a2a2a,#1a1a1a);border:2px solid #333;border-radius:8px;position:relative;box-shadow:0 4px 16px #0000004d;display:flex;align-items:center;justify-content:center;transition:all .3s ease;overflow:hidden}.desktop-icon:hover .terminal-icon{box-shadow:0 8px 24px #0006;transform:scale(1.05)}.icon-screen{position:absolute;inset:8px;background:#0a0a0a;border-radius:4px;border:1px solid #333;overflow:hidden}.icon-scanlines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,65,.05) 2px,rgba(0,255,65,.05) 4px);animation:scanlines 2s linear infinite}.icon-cursor{position:absolute;bottom:4px;left:4px;width:8px;height:2px;background:#00ff41;animation:blink 1s infinite}.icon-text{color:#00ff41;font-family:Fira Code,Courier New,monospace;font-size:24px;font-weight:700;z-index:1;text-shadow:0 0 8px rgba(0,255,65,.5);transition:text-shadow .3s ease}.desktop-icon:hover .icon-text{text-shadow:0 0 12px rgba(0,255,65,.8)}@keyframes iconsSlideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes desktopFadeIn{0%{opacity:0;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes scanlines{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@media(max-width:768px){.desktop-icons{top:16px;left:16px;flex-direction:row;flex-wrap:wrap;gap:20px;max-width:calc(100vw - 32px);min-height:auto}.desktop-icon{width:96px;padding:12px}.icon-image{width:68px;height:68px;margin-bottom:8px}.icon-text{font-size:22px}.icon-label{font-size:13px;max-width:96px}.desktop-hint{bottom:16px;font-size:12px;padding:0 16px}}@media(max-width:480px){.desktop-icons{top:12px;left:12px;right:12px;justify-content:center}.desktop-icon{width:88px}.icon-image{width:60px;height:60px}.icon-text{font-size:20px}.icon-label{font-size:12px;max-width:88px}}@media(prefers-reduced-motion:reduce){.desktop,.desktop-icons,.desktop-hint,.desktop-icon,.terminal-icon,.icon-text{animation:none;transition:none}.icon-scanlines{animation:none}.icon-cursor{animation:none;opacity:1}}@media(prefers-contrast:high){.desktop,.desktop-wallpaper{background:#000}.desktop-icon{background:#ffffff1a;border:2px solid #ffffff}.desktop-icon:hover{background:#fff3}.icon-label{color:#fff;text-shadow:none}.terminal-icon{background:#000;border:2px solid #ffffff}.icon-text{color:#fff;text-shadow:none}}@media(prefers-color-scheme:dark){.desktop-wallpaper{opacity:.95}.desktop-icon{background:#0003;border:1px solid rgba(255,255,255,.15)}.desktop-icon:hover{background:#ffffff26}}.window{position:fixed;background:#1e1e1e;border-radius:8px;box-shadow:0 20px 40px #0000004d,0 8px 16px #0003;display:flex;flex-direction:column;min-width:320px;min-height:200px;transition:all .2s ease-out;overflow:hidden;border:1px solid #333;backdrop-filter:blur(10px);z-index:1000}.window.dragging{transition:none;box-shadow:0 30px 60px #0006,0 12px 24px #0000004d}.window.minimized{opacity:0;transform:scale(.8);pointer-events:none}.window.maximized{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;transform:none!important;border-radius:0;max-width:none!important;max-height:none!important}.window.resizing{transition:none!important;box-shadow:0 30px 60px #00000080,0 12px 24px #0006;border:2px solid rgba(255,255,255,.2)}.window-titlebar{background:linear-gradient(135deg,#2d2d2d,#1a1a1a);color:#fff;height:40px;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid #333;user-select:none;flex-shrink:0}.titlebar-buttons{display:flex;gap:8px;margin-right:12px}.titlebar-button{width:12px;height:12px;border-radius:50%;border:none;cursor:pointer;position:relative;transition:all .2s ease;outline:none}.titlebar-button:hover{transform:scale(1.1)}.titlebar-button:active{transform:scale(.95)}.titlebar-button:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;transition:opacity .2s ease}.titlebar-button:hover:after{opacity:1}.titlebar-button.close{background:#ff5f57}.titlebar-button.close:after{width:6px;height:1px;background:#4a0000;transform:translate(-50%,-50%) rotate(45deg);box-shadow:0 0 0 1px #4a0000}.titlebar-button.close:hover:after{background:#1a0000;box-shadow:none}.titlebar-button.minimize{background:#ffbd2e}.titlebar-button.minimize:after{width:6px;height:1px;background:#4a2b00}.titlebar-button.minimize:hover:after{background:#1a0f00}.titlebar-button.maximize{background:#28ca42}.titlebar-button.maximize:after{width:4px;height:4px;border:1px solid #0a3d14;background:transparent}.titlebar-button.maximize:hover:after{border-color:#051a0b}.titlebar-button.maximize.active{background:#28ca42}.titlebar-button.maximize.active:after{content:"";position:absolute;top:50%;left:50%;width:4px;height:4px;border:1px solid #0a3d14;background:transparent;transform:translate(-60%,-60%);box-shadow:1px 1px #0a3d14}.titlebar-button.maximize.active:hover{background:#28ca42;transform:scale(1.1)}.titlebar-button.maximize.active:hover:after{border-color:#051a0b;box-shadow:1px 1px #051a0b}.titlebar-content{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.titlebar-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.titlebar-title{font-size:13px;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.titlebar-spacer{width:80px;flex-shrink:0}.window-content{flex:1;overflow:hidden;display:flex;flex-direction:column;background:#1e1e1e;position:relative}.window.resizable .resize-handle{position:absolute;background:transparent;z-index:10;transition:background-color .2s ease}.window.resizable .resize-handle:hover{background-color:#ffffff1a}.resize-handle.resize-n{top:-2px;left:8px;right:8px;height:6px;cursor:ns-resize}.resize-handle.resize-s{bottom:-2px;left:8px;right:8px;height:6px;cursor:ns-resize}.resize-handle.resize-e{top:8px;right:-2px;bottom:8px;width:6px;cursor:ew-resize}.resize-handle.resize-w{top:8px;left:-2px;bottom:8px;width:6px;cursor:ew-resize}.resize-handle.resize-ne{top:-2px;right:-2px;width:10px;height:10px;cursor:ne-resize}.resize-handle.resize-nw{top:-2px;left:-2px;width:10px;height:10px;cursor:nw-resize}.resize-handle.resize-se{bottom:-2px;right:-2px;width:10px;height:10px;cursor:se-resize}.resize-handle.resize-sw{bottom:-2px;left:-2px;width:10px;height:10px;cursor:sw-resize}.window.resizing .resize-handle{background-color:#fff3;border:1px solid rgba(255,255,255,.3)}body.resizing *{cursor:inherit!important}.window.mobile{position:fixed;top:60px;left:10px;right:10px;width:calc(100vw - 20px);max-width:none;border-radius:12px 12px 0 0;box-shadow:0 -4px 20px #0006,0 2px 10px #0000004d}.window.mobile.maximized{top:0;left:0;right:0;width:100vw;height:100vh;border-radius:0}.window.mobile .resize-handle{display:none}.window.mobile .window-titlebar{height:48px;padding:0 16px;background:linear-gradient(135deg,#2d2d2d,#1a1a1a);border-bottom:1px solid #444;touch-action:manipulation}.window.mobile .titlebar-buttons{gap:16px;margin-right:16px}.window.mobile .titlebar-button{width:16px;height:16px;touch-action:manipulation}.window.mobile .titlebar-title{font-size:16px;font-weight:600}.window.touch .titlebar-button{min-width:24px;min-height:24px;border-radius:4px;display:flex;align-items:center;justify-content:center}.window.touch .titlebar-button:after{width:12px;height:12px}@media(min-width:768px)and (max-width:1023px){.window.tablet{min-width:400px;max-width:calc(100vw - 40px)}.window.tablet .window-titlebar{height:46px}}@media(max-width:767px){.window{position:fixed!important;top:60px!important;left:8px!important;right:8px!important;width:calc(100vw - 16px)!important;height:calc(100vh - 68px)!important;min-width:auto!important;max-width:none!important;border-radius:12px 12px 0 0;transform:none!important}.window.maximized{top:0!important;left:0!important;right:0!important;width:100vw!important;height:100vh!important;border-radius:0}.window-titlebar{height:52px;padding:0 20px;touch-action:manipulation;-webkit-user-select:none;user-select:none}.titlebar-buttons{gap:16px;margin-right:20px}.titlebar-button{width:12px;height:12px;min-width:24px;min-height:24px;border-radius:4px;display:flex;align-items:center;justify-content:center;touch-action:manipulation}.titlebar-title{font-size:16px;font-weight:600}.resize-handle{display:none!important}.window input,.window textarea,.window select{font-size:16px;touch-action:manipulation}}@media(max-width:480px){.window{top:40px!important;left:4px!important;right:4px!important;width:calc(100vw - 8px)!important;height:calc(100vh - 44px)!important}.window-titlebar{height:48px;padding:0 16px}.titlebar-buttons{gap:12px;margin-right:16px}.titlebar-button{width:10px;height:10px;min-width:20px;min-height:20px}.titlebar-title{font-size:14px}}@media(max-width:896px)and (orientation:landscape)and (max-height:414px){.window{top:20px!important;height:calc(100vh - 24px)!important}.window-titlebar{height:44px}.titlebar-title{font-size:14px}}.window:focus-within{box-shadow:0 20px 40px #0006,0 8px 16px #0000004d,0 0 0 1px #ffffff1a}@media(prefers-reduced-motion:reduce){.window,.window.minimized,.window.maximized,.window.closing,.titlebar-button{transition:none}.window.closing{animation:none;opacity:0}}@media(prefers-contrast:high){.window{border:2px solid #ffffff;background:#000}.window-titlebar{background:#000;border-bottom:2px solid #ffffff}.titlebar-title{color:#fff}.titlebar-button.close{background:red}.titlebar-button.minimize{background:#ff0}.titlebar-button.maximize{background:#0f0}}@media(prefers-color-scheme:dark){.window{background:#1a1a1a;border-color:#2a2a2a}.window-titlebar{background:linear-gradient(135deg,#2a2a2a,#1a1a1a);border-bottom-color:#2a2a2a}}.dialog-overlay{position:fixed;inset:0;z-index:9999;background:#00000080;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px}@media(max-width:768px){.dialog-overlay{padding:16px;align-items:flex-end}}.dialog-overlay-local{position:absolute;inset:0;z-index:10000;background:#00000080;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center}.macos-dialog{background:#2d2d2d;border-radius:12px;box-shadow:0 20px 40px #0006;min-width:320px;max-width:400px;border:1px solid #555;animation:slideInFromBottom .3s ease-out}@media(max-width:768px){.macos-dialog{width:100%;max-width:none;margin:0;border-radius:16px 16px 0 0;animation:slideInFromBottom .4s ease-out}}.dialog-content{padding:20px;display:flex;gap:16px;align-items:flex-start}.dialog-icon{font-size:20px;flex-shrink:0}.dialog-text h3{color:#fff;font-size:16px;font-weight:600;margin:0 0 8px}.dialog-text p{color:#ccc;font-size:14px;margin:0;line-height:1.4}.dialog-buttons{padding:0 20px 20px;display:flex;gap:12px;justify-content:flex-end}.dialog-button{padding:8px 16px;border-radius:6px;border:none;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:80px;touch-action:manipulation}@media(max-width:768px){.dialog-button{padding:12px 20px;font-size:16px;min-width:100px;min-height:48px}}.dialog-button.secondary{background:#4a4a4a;color:#fff;border:1px solid #666}.dialog-button.secondary:hover{background:#555;border-color:#777}.dialog-button.primary{background:#ff5f57;color:#fff;font-weight:600;box-shadow:0 2px 4px #ff5f574d}.dialog-button.primary:hover{background:#ff4d44;box-shadow:0 4px 8px #ff5f5766}.dialog-button:active{transform:translateY(1px)}.terminal-window{background:#1e1e1e}.terminal-window .window-content{background:#0a0a0a;position:relative;overflow:auto}.terminal{position:relative;background:#0a0a0a;color:#00ff41;font-family:Fira Code,Courier New,monospace;font-size:16px;line-height:1.5;padding:16px;overflow:visible;height:auto;box-sizing:border-box}.terminal:focus-within{outline:none}.terminal-content{display:flex;flex-direction:column;gap:4px}.terminal-line{margin-bottom:8px;word-wrap:break-word}.command-line{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}.prompt{color:#00ff41;font-weight:700;white-space:nowrap;text-shadow:0 0 8px rgba(0,255,65,.5);flex-shrink:0}.command{color:#fff;font-weight:400}.output{margin-left:0;color:#ccc;white-space:pre-wrap;word-break:break-word}.output.command{color:#00ff41}.output.error{color:#f44}.output.output{color:#ccc}.output-line{margin:2px 0;line-height:1.4}.input-line{display:flex;align-items:center;gap:8px;padding-top:8px}.command-input{background:transparent;border:none;color:#fff;font-family:inherit;font-size:inherit;outline:none;flex:1;min-width:0}.command-input::selection{background:#00ff414d}.terminal::-webkit-scrollbar{width:8px}.terminal::-webkit-scrollbar-track{background:#1a1a1a;border-radius:4px}.terminal::-webkit-scrollbar-thumb{background:#333;border-radius:4px;border:1px solid #1a1a1a}.terminal::-webkit-scrollbar-thumb:hover{background:#444}.terminal{scrollbar-width:thin;scrollbar-color:#333 #1a1a1a}.terminal-window .matrix-background{position:absolute;inset:40px 0 0;z-index:0;pointer-events:none}.terminal{position:relative;z-index:1}.terminal-window{min-width:480px;min-height:360px}.output-line a{color:#4a9eff;text-decoration:underline}.output-line a:hover{color:#66b3ff;text-decoration:none}.output-line:contains("█"){font-weight:700;text-shadow:0 0 4px currentColor}.output-line:contains("🌤️"),.output-line:contains("☕"),.output-line:contains("🎵"),.output-line:contains("🔴"),.output-line:contains("📚"),.output-line:contains("👤"),.output-line:contains("🗂️"),.output-line:contains("⚙️"),.output-line:contains("🎮"),.output-line:contains("🔧"){padding:2px 0;line-height:1.6}.output.error .output-line:nth-child(3){font-style:italic;opacity:.8}@media(max-width:768px){.terminal-window{min-width:320px}.terminal{font-size:18px;padding:16px;min-height:250px}.prompt{font-size:16px}.command-line,.input-line{gap:8px}.output{font-size:16px;line-height:1.6}.output-line{line-height:1.6;margin:4px 0}.output pre,.ascii-art{font-size:12px;line-height:1.2;white-space:pre-wrap;word-break:break-all;overflow-x:auto}}@media(max-width:480px){.terminal{font-size:20px;padding:14px;min-height:200px}.prompt{font-size:18px}.terminal-window{min-width:100%}.output{font-size:18px;line-height:1.7}.output-line{line-height:1.7;margin:6px 0}.output pre,.ascii-art{font-size:10px;line-height:1.1;white-space:pre-wrap;word-break:break-all;overflow-x:auto;transform:scale(.85);transform-origin:left top}.command-line{flex-wrap:wrap;gap:6px}}.command-input:focus{outline:none}@media(prefers-contrast:high){.terminal{background:#000;color:#fff}.prompt{color:#fff;text-shadow:none}.output.command{color:#fff}.output.error{color:red}}@media(prefers-reduced-motion:reduce){.terminal-window,.terminal,.command-input{transition:none}.prompt{text-shadow:none}}.output pre,.ascii-art,.output-line:has(█),.output-line:contains(██){font-family:monospace;white-space:pre;overflow-x:auto;word-break:normal}@media(max-width:768px){.output pre,.ascii-art,.output-line:has(█),.output-line:contains(██){font-size:10px;line-height:1.1;transform:scale(.9);transform-origin:left top;white-space:pre-wrap;word-break:break-all}}@media(max-width:480px){.output pre,.ascii-art,.output-line:has(█),.output-line:contains(██){font-size:8px;line-height:1;transform:scale(.7);transform-origin:left top;white-space:pre-wrap;word-break:break-all;overflow-x:hidden}}@media(prefers-color-scheme:dark){.terminal-window .window-titlebar{background:linear-gradient(135deg,#2a2a2a,#1a1a1a)}.terminal{background:#0f0f0f}}.pdf-viewer-window{background:#f5f5f5}.pdf-viewer-window .window-content{background:#fff;position:relative;overflow:hidden;display:flex;flex-direction:column;padding:0}.pdf-viewer-container{position:absolute;inset:0;width:100%;height:100%}@media(prefers-color-scheme:dark){.pdf-viewer-window{background:#2d3748}.pdf-viewer-window .window-content{background:#1a202c}}@media(prefers-contrast:high){.pdf-viewer-window .window-content{background:#fff}}.ai-chat-container{display:flex;flex:1;flex-direction:column;min-height:0;width:100%;background:#000;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden;position:relative}.ai-status-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#000000f2;border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(20px);font-size:13px;font-weight:500;position:sticky;top:0;z-index:10;flex-shrink:0}.status-indicator{display:flex;align-items:center;gap:8px}.status-dot{width:6px;height:6px;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pdf-indicator{display:flex;align-items:center;gap:4px;background:#3b82f633;padding:4px 10px;border-radius:8px;font-size:11px;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.loading-indicator{display:flex;align-items:center;gap:4px;background:#f59e0b33;padding:4px 10px;border-radius:8px;font-size:11px;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.messages-container{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px 16px;display:flex;flex-direction:column;gap:16px;min-height:0;scroll-behavior:smooth}.messages-container::-webkit-scrollbar{width:4px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.messages-container::-webkit-scrollbar-thumb:hover{background:#fff3}.message{display:flex;flex-direction:column;max-width:75%;animation:messageSlide .3s ease-out}@keyframes messageSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{align-self:flex-end}.message.assistant,.message.system{align-self:flex-start}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:11px;opacity:.6}.message-role{font-weight:500;display:flex;align-items:center;gap:6px;font-size:12px}.message-time{font-size:10px;opacity:.5}.message-content{padding:14px 18px;border-radius:12px;line-height:1.5;font-size:14px;word-wrap:break-word;white-space:pre-wrap;border:1px solid transparent}.message.user .message-content{background:#1f2937;border:1px solid rgba(255,255,255,.2);border-bottom-right-radius:4px}.message.assistant .message-content{background:#111827;border:1px solid rgba(255,255,255,.1);border-bottom-left-radius:4px}.message.system .message-content{background:#10b98126;border:1px solid rgba(16,185,129,.3);border-radius:8px;color:#34d399}.message.loading .message-content{background:#0f172a;border:1px dashed rgba(255,255,255,.2)}.loading-dots{display:flex;gap:4px;align-items:center}.loading-dots span{animation:loadingBounce 1.4s infinite;font-size:18px}.loading-dots span:nth-child(1){animation-delay:0s}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes loadingBounce{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.bullet-point{margin-left:16px;position:relative}.bullet-point:before{content:"";position:absolute;left:-12px;top:8px;width:4px;height:4px;background:currentColor;border-radius:50%}.bold-line{font-weight:600;color:#93c5fd;margin:8px 0 4px}.header{font-size:15px;font-weight:600;color:#fff;margin:12px 0 8px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:4px}.input-container{display:flex;gap:12px;padding:18px 16px;background:#000000f2;border-top:1px solid rgba(255,255,255,.12);backdrop-filter:blur(20px);position:sticky;bottom:0;z-index:10;flex-shrink:0}.message-input{flex:1;padding:12px 18px;border:1px solid rgba(255,255,255,.15);border-radius:20px;background:#0f172a;color:#fff;font-size:14px;outline:none;transition:all .2s ease}.message-input::placeholder{color:#ffffff80}.message-input:focus{border-color:#3b82f6;background:#111827;box-shadow:0 0 0 2px #3b82f64d}.message-input:disabled{opacity:.5;cursor:not-allowed}.send-button{padding:12px;border:none;border-radius:50%;background:#1f2937;color:#fff;font-size:16px;cursor:pointer;transition:all .2s ease;min-width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2)}.send-button:hover:not(:disabled){transform:scale(1.05);background:#374151;border-color:#ffffff4d;box-shadow:0 4px 16px #0000004d}.send-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.send-button:active:not(:disabled){transform:scale(.95);background:#111827}.ai-chat-window{min-width:300px;min-height:400px}.ai-chat-window .window-content{height:100%!important;display:flex!important;flex-direction:column!important}.window-content>div{height:100%;display:flex;flex-direction:column;min-height:0}.ai-chat-container.mobile{font-size:16px;height:100%;max-height:100vh}.ai-chat-container.mobile .ai-status-bar{padding:16px 20px;font-size:14px;position:sticky;top:0;z-index:20}.ai-chat-container.mobile .messages-container{padding:16px 20px;gap:20px;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.ai-chat-container.mobile .message{max-width:85%}.ai-chat-container.mobile .message-content{padding:16px 20px;font-size:16px;line-height:1.6;border-radius:16px}.ai-chat-container.mobile .input-container{padding:20px;gap:16px;background:#000000fa;backdrop-filter:blur(20px);position:sticky;bottom:0}.ai-chat-container.mobile .message-input{padding:16px 20px;font-size:16px;border-radius:24px;min-height:48px;touch-action:manipulation}.ai-chat-container.mobile .send-button{min-width:48px;height:48px;padding:12px;touch-action:manipulation}@media(min-width:768px)and (max-width:1023px){.ai-chat-container{font-size:15px}.message-content{padding:12px 16px;font-size:14px}.message{max-width:80%}.input-container{padding:16px}.message-input{padding:12px 16px;font-size:14px}.send-button{min-width:46px;height:46px}}@media(max-width:767px){.ai-chat-container{font-size:16px;height:100%;max-height:calc(100vh - 52px)}.ai-status-bar{padding:16px 20px;font-size:14px;border-bottom:1px solid rgba(255,255,255,.15)}.status-indicator{gap:10px}.status-dot{width:8px;height:8px}.pdf-indicator,.loading-indicator{padding:6px 12px;font-size:12px;border-radius:12px}.messages-container{padding:16px 20px;gap:20px;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.message{max-width:85%}.message-header{margin-bottom:8px;font-size:12px}.message-role{font-size:13px;gap:8px}.message-time{font-size:11px}.message-content{padding:16px 20px;font-size:16px;line-height:1.6;border-radius:16px;border-width:1px}.message.user .message-content{border-bottom-right-radius:6px}.message.assistant .message-content{border-bottom-left-radius:6px}.message.system .message-content{border-radius:12px}.loading-dots{gap:6px}.loading-dots span{font-size:20px}.input-container{padding:20px;gap:16px;background:#000000fa;backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.15);position:sticky;bottom:0}.message-input{padding:16px 20px;font-size:16px;border-radius:24px;min-height:48px;border:1px solid rgba(255,255,255,.2);background:#0f172a;touch-action:manipulation;-webkit-appearance:none;-webkit-border-radius:24px}.message-input:focus{border-color:#3b82f6;background:#111827;box-shadow:0 0 0 3px #3b82f64d}.send-button{min-width:48px;height:48px;padding:12px;border-radius:24px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.send-button:active{transform:scale(.95)}}@media(max-width:480px){.ai-chat-container{font-size:15px}.ai-status-bar{padding:12px 16px;font-size:13px}.messages-container{padding:12px 16px;gap:16px}.message{max-width:90%}.message-content{padding:14px 16px;font-size:15px;border-radius:14px}.input-container{padding:16px;gap:12px}.message-input{padding:14px 18px;font-size:15px;border-radius:22px;min-height:44px}.send-button{min-width:44px;height:44px;border-radius:22px}}@media(max-width:896px)and (orientation:landscape)and (max-height:414px){.ai-chat-container{height:calc(100vh - 44px)}.ai-status-bar{padding:8px 16px;font-size:12px}.messages-container{padding:8px 16px;gap:12px}.message-content{padding:12px 16px;font-size:14px}.input-container{padding:12px 16px}.message-input{padding:10px 16px;font-size:14px;min-height:40px}.send-button{min-width:40px;height:40px}}@media(hover:none)and (pointer:coarse){.send-button:hover{transform:none}.send-button:active{transform:scale(.95);background:#374151}.message-input{-webkit-tap-highlight-color:transparent}.status-indicator,.pdf-indicator,.loading-indicator{min-height:44px;display:flex;align-items:center}}@media(prefers-contrast:high){.ai-chat-container{background:#000;color:#fff}.message-content{border:2px solid #ffffff}.message-input{border:2px solid #ffffff;background:#000}}@media(prefers-reduced-motion:reduce){.message,.loading-dots span,.status-dot,.send-button{animation:none}.send-button:hover{transform:none}}.app{margin:0;padding:0;width:100vw;height:100vh;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#000}.app-container{position:relative;width:100vw;height:100vh;overflow:hidden}*{box-sizing:border-box}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}button,input{font-family:inherit}.app:focus-within{outline:none}.titlebar-button,.desktop-icon,.window-titlebar{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInFromBottom{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInFromLeft{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}.app.mobile{font-size:16px;-webkit-text-size-adjust:100%}.app-container{-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.app-container.mobile{touch-action:manipulation;overscroll-behavior:contain}@media(min-width:768px)and (max-width:1023px){.app-container{padding:8px}}@media(max-width:767px){.app{font-size:16px}.app-container{padding:0;overflow:visible;height:100vh;width:100vw;touch-action:manipulation;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}@media(max-width:480px){.app{font-size:14px}.app-container{padding:0}}@media(max-width:896px)and (orientation:landscape)and (max-height:414px){.app-container{height:100vh;overflow:hidden}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-contrast:high){.app{background:#000}}.loading-mobile{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000e6;color:#0f8;padding:20px;border-radius:16px;border:1px solid rgba(0,255,136,.3);font-family:monospace;text-align:center;z-index:10000;backdrop-filter:blur(10px)}@media(hover:none)and (pointer:coarse){.app-container *{-webkit-tap-highlight-color:rgba(0,255,136,.2)}button,.desktop-icon,.taskbar-item,.titlebar-button{transition:transform .1s ease}button:active,.desktop-icon:active,.taskbar-item:active,.titlebar-button:active{transform:scale(.95)}}@media(hover:none){.app-container{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}input,textarea,[contenteditable]{-webkit-user-select:auto;-moz-user-select:auto;-ms-user-select:auto;user-select:auto}}@supports (padding: max(0px)){.app-container{padding-top:max(0px,env(safe-area-inset-top));padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right));padding-bottom:max(0px,env(safe-area-inset-bottom))}}@media print{.app-container{overflow:visible;height:auto}.desktop,.window{position:relative!important;transform:none!important}.taskbar{display:none!important}}.app-container{will-change:transform;transform:translateZ(0)}.window{will-change:transform,opacity}.dialog-overlay{position:fixed;inset:0;z-index:9999}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.taskbar{position:fixed;top:50%;right:20px;transform:translateY(-50%);z-index:500;display:flex;flex-direction:column;gap:8px;pointer-events:none}.taskbar-item{background:#000c;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:8px;min-width:60px;max-width:120px;display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:all .3s ease;backdrop-filter:blur(10px);pointer-events:auto;box-shadow:0 4px 16px #0000004d;animation:slideInFromRight .3s ease-out}.taskbar-item:hover{background:#ffffff1a;border-color:#fff6;transform:translate(-4px) scale(1.05);box-shadow:0 6px 20px #0006}.taskbar-item:active{transform:translate(-2px) scale(1.02)}.taskbar-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.taskbar-icon .terminal-icon{width:24px;height:24px}.taskbar-icon .icon-text{font-size:12px}.taskbar-label{color:#fff;font-size:10px;font-weight:500;text-align:center;line-height:1.2;text-shadow:0 1px 2px rgba(0,0,0,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}@keyframes slideInFromRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.taskbar.mobile{position:fixed;inset:auto auto 20px 50%;transform:translate(-50%);flex-direction:row;gap:12px;background:#000000f2;backdrop-filter:blur(20px);padding:12px 20px;border-radius:24px;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0006;z-index:1000}@media(min-width:768px)and (max-width:1023px){.taskbar{right:16px;gap:8px}.taskbar-item{min-width:60px;max-width:100px;padding:8px}}@media(max-width:767px){.taskbar:not(.mobile){position:fixed;inset:auto auto 20px 50%;transform:translate(-50%);flex-direction:row;gap:12px;background:#000000f2;backdrop-filter:blur(20px);padding:12px 20px;border-radius:24px;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0006}.taskbar-item{min-width:56px;max-width:72px;padding:10px;border-radius:12px;background:#ffffff1a}.taskbar-item:hover{background:#fff3;transform:scale(1.05)}.taskbar-icon{width:28px;height:28px;margin-bottom:3px}.taskbar-icon .terminal-icon{width:24px;height:24px}.taskbar-icon .icon-text{font-size:12px}.taskbar-label{font-size:10px;font-weight:600;color:#fff}}@media(max-width:480px){.taskbar,.taskbar:not(.mobile){bottom:16px;padding:10px 16px;border-radius:20px;gap:10px}.taskbar-item{min-width:48px;max-width:64px;padding:8px}.taskbar-icon{width:24px;height:24px}.taskbar-label{font-size:9px}}@media(prefers-reduced-motion:reduce){.taskbar-item{animation:none;transition:none}.taskbar-item:hover{transform:none}}@media(prefers-contrast:high){.taskbar-item{background:#000;border:2px solid #ffffff}.taskbar-item:hover{background:#333}.taskbar-label{color:#fff;text-shadow:none}}
