:root,html[data-theme=green]{--term-bg: #080f08;--term-fg: #33ff33;--term-fg-dim: #1f991f;--term-fg-bright: #66ff66;--term-accent: #70ff70;--term-border: #248f24;--term-highlight-bg: #0e300e;--term-glow: 0 0 8px rgba(51, 255, 51, .45);--term-glow-strong: 0 0 14px rgba(51, 255, 51, .75);--term-cursor: #33ff33;--term-selection: rgba(51, 255, 51, .25);--crt-scanline-color: rgba(0, 0, 0, .35);--theme-name: "P1 GREEN"}html[data-theme=amber]{--term-bg: #120b02;--term-fg: #ffb000;--term-fg-dim: #9e6d00;--term-fg-bright: #ffc84d;--term-accent: #ffd270;--term-border: #8c6000;--term-highlight-bg: #382200;--term-glow: 0 0 8px rgba(255, 176, 0, .45);--term-glow-strong: 0 0 14px rgba(255, 176, 0, .75);--term-cursor: #ffb000;--term-selection: rgba(255, 176, 0, .25);--crt-scanline-color: rgba(0, 0, 0, .35);--theme-name: "P3 AMBER"}html[data-theme=cyan]{--term-bg: #030f14;--term-fg: #00e5ff;--term-fg-dim: #008796;--term-fg-bright: #66efff;--term-accent: #80f3ff;--term-border: #00808f;--term-highlight-bg: #042933;--term-glow: 0 0 8px rgba(0, 229, 255, .45);--term-glow-strong: 0 0 14px rgba(0, 229, 255, .75);--term-cursor: #00e5ff;--term-selection: rgba(0, 229, 255, .25);--crt-scanline-color: rgba(0, 0, 0, .35);--theme-name: "P4 CYAN"}html[data-theme=white]{--term-bg: #0d0d0d;--term-fg: #e0e0e0;--term-fg-dim: #888888;--term-fg-bright: #ffffff;--term-accent: #ffffff;--term-border: #666666;--term-highlight-bg: #2a2a2a;--term-glow: 0 0 8px rgba(255, 255, 255, .35);--term-glow-strong: 0 0 14px rgba(255, 255, 255, .65);--term-cursor: #ffffff;--term-selection: rgba(255, 255, 255, .25);--crt-scanline-color: rgba(0, 0, 0, .4);--theme-name: "MONOCHROME"}html[data-theme=matrix]{--term-bg: #020a04;--term-fg: #00ff66;--term-fg-dim: #00993d;--term-fg-bright: #52ff99;--term-accent: #80ffb3;--term-border: #008033;--term-highlight-bg: #062b10;--term-glow: 0 0 10px rgba(0, 255, 102, .55);--term-glow-strong: 0 0 18px rgba(0, 255, 102, .85);--term-cursor: #00ff66;--term-selection: rgba(0, 255, 102, .3);--crt-scanline-color: rgba(0, 0, 0, .38);--theme-name: "MATRIX GLOW"}body.crt-enabled{text-shadow:var(--term-glow)}body.crt-enabled #crt-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9999;background:linear-gradient(rgba(18,16,16,0) 50%,var(--crt-scanline-color) 50%);background-size:100% 4px;animation:scanlineScroll .35s linear infinite;opacity:.72}body.crt-enabled #crt-vignette{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9998;background:radial-gradient(circle at center,transparent 65%,rgba(0,0,0,.35) 88%,rgba(0,0,0,.7) 100%);box-shadow:inset 0 0 90px #000000bf}body.crt-enabled #terminal-container{animation:subtleFlicker .22s infinite alternate}@keyframes scanlineScroll{0%{background-position:0 0}to{background-position:0 4px}}@keyframes subtleFlicker{0%{opacity:.993}50%{opacity:1}to{opacity:.988}}.crt-reboot-flash{animation:crtReboot 1.2s cubic-bezier(.23,1,.32,1) forwards}@keyframes crtReboot{0%{filter:brightness(5) blur(4px);transform:scale(1.02)}20%{filter:brightness(.1);transform:scale(.99,.005)}40%{filter:brightness(2);transform:scaleY(.01)}70%{filter:brightness(1.2);transform:scaleY(.8)}to{filter:brightness(1);transform:scale(1)}}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;min-height:100vh;background-color:var(--term-bg);color:var(--term-fg);font-family:Share Tech Mono,Courier New,Courier,monospace;font-size:15px;line-height:1.4;overflow-x:hidden;letter-spacing:0px;-webkit-user-select:text;user-select:text;transition:background-color .2s ease,color .2s ease}::selection{background-color:var(--term-selection);color:var(--term-fg-bright)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--term-bg);border-left:1px solid var(--term-border)}::-webkit-scrollbar-thumb{background:var(--term-border);border:1px solid var(--term-bg)}::-webkit-scrollbar-thumb:hover{background:var(--term-fg-dim)}#terminal-container{display:flex;flex-direction:column;min-height:100vh;padding:16px 20px 24px;max-width:1400px;margin:0 auto}#system-header{margin-bottom:16px}.ascii-art{white-space:pre;font-family:Share Tech Mono,Courier New,monospace;font-size:clamp(7px,.88vw,13px);line-height:1.12;letter-spacing:0px;color:var(--term-fg-bright);text-shadow:var(--term-glow-strong);overflow-x:hidden;padding-bottom:2px}.ascii-subtitle-box{width:100%;margin:6px 0 10px;display:flex;flex-direction:column;align-items:center;justify-content:center}.ascii-sep-line{width:100%;height:14px;overflow:hidden;white-space:nowrap;color:var(--term-fg-bright);font-family:Share Tech Mono,Courier New,monospace;font-size:14px;line-height:1;letter-spacing:0px;-webkit-user-select:none;user-select:none;opacity:.85}.ascii-sep-line:before{content:"================================================================================================================================================================================================================================================================================================================================================================================================";display:block;width:100%;overflow:hidden;white-space:nowrap}.ascii-subtitle-text{width:100%;text-align:center;color:var(--term-fg-bright);font-size:14px;font-weight:600;padding:4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.5px}.system-statusbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding:6px 12px;background:var(--term-highlight-bg);border:1px solid var(--term-border);margin-top:4px;font-size:14px}.status-left,.status-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.badge{color:var(--term-fg)}.status-online{color:var(--term-accent);font-weight:700}.btn-retro{background:transparent;border:1px solid var(--term-border);color:var(--term-fg);font-family:inherit;font-size:13px;padding:3px 8px;cursor:pointer;outline:none;transition:all .15s ease}.btn-retro:hover,.btn-retro:focus{background:var(--term-fg);color:var(--term-bg);box-shadow:var(--term-glow)}.btn-retro-sm{background:transparent;border:1px solid var(--term-border);color:var(--term-fg-dim);font-family:inherit;font-size:12px;padding:2px 6px;cursor:pointer;transition:all .15s ease}.btn-retro-sm:hover{background:var(--term-fg-dim);color:var(--term-bg)}.motd-bar{margin-top:8px;padding:4px 8px;border-left:3px solid var(--term-accent);color:var(--term-fg-dim);font-size:13px}#terminal-section{margin-bottom:18px}.command-line-wrapper{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--term-highlight-bg);border:1px solid var(--term-border)}.prompt-label{color:var(--term-accent);font-weight:700;white-space:nowrap;-webkit-user-select:none;user-select:none}.input-wrapper{position:relative;flex:1;display:flex;align-items:center}#terminal-input{width:100%;background:transparent;border:none;outline:none;color:var(--term-fg-bright);font-family:Share Tech Mono,Courier New,Courier,monospace;font-size:15px;caret-color:transparent}#terminal-input::placeholder{color:var(--term-fg-dim);opacity:.5}.custom-cursor{position:absolute;top:50%;transform:translateY(-50%);color:var(--term-cursor, var(--term-accent));pointer-events:none;animation:blink 1s step-start infinite;display:inline-block;font-family:inherit;font-size:15px;line-height:1}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.shortcut-hints{display:flex;gap:8px;font-size:12px;color:var(--term-fg-dim);white-space:nowrap}#terminal-output-container{border:1px solid var(--term-border);border-top:none;background:#000000d9;margin-bottom:8px;max-height:380px;display:flex;flex-direction:column}#terminal-output-container.collapsed{display:none}.output-header{display:flex;justify-content:space-between;align-items:center;padding:4px 10px;background:var(--term-highlight-bg);border-bottom:1px solid var(--term-border);font-size:12px;color:var(--term-fg-dim)}.terminal-log{padding:8px 12px;overflow-y:auto;font-size:14px;line-height:1.35;white-space:pre-wrap;word-break:break-word;max-height:340px}.terminal-log .log-cmd{color:var(--term-fg-bright);font-weight:700;margin-top:6px}.terminal-log .log-res{color:var(--term-fg)}.terminal-log .log-err{color:#f55}.terminal-log .log-ok{color:var(--term-accent)}#directory-content{flex:1;margin-bottom:24px;outline:none;transition:opacity .15s ease}body.terminal-typing-mode #directory-content{display:none!important}.category-block{margin-bottom:20px}.ascii-frame{border:1px solid var(--term-border);background:#0003}.category-header{padding:6px 12px;background:var(--term-highlight-bg);border-bottom:1px solid var(--term-border);color:var(--term-fg-bright);font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:space-between}.category-entries{padding:6px 0}.directory-entry{display:grid;grid-template-columns:55px 220px 1fr auto;align-items:center;gap:14px;padding:6px 14px;text-decoration:none;color:var(--term-fg);cursor:pointer;transition:all .1s ease;border-left:3px solid transparent}.directory-entry.no-idx{grid-template-columns:220px 1fr auto}.directory-entry:hover,.directory-entry.selected{background:var(--term-highlight-bg);color:var(--term-fg-bright);border-left:3px solid var(--term-accent);text-shadow:var(--term-glow)}.entry-idx{color:var(--term-fg-dim);font-weight:700}.entry-title{color:var(--term-fg-bright);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-url{color:var(--term-fg-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.entry-desc{color:var(--term-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.entry-tags{display:flex;gap:6px}.tag-badge{font-size:11px;color:var(--term-fg-dim);border:1px solid var(--term-border);padding:1px 4px}.empty-entries-msg{padding:12px 16px;color:var(--term-fg-dim);font-style:italic}#system-footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--term-border)}.footer-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--term-fg-dim)}#tui-modal{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}#tui-modal.hidden{display:none!important}.tui-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000d9}.tui-window{position:relative;width:100%;max-width:1060px;max-height:90vh;background:var(--term-bg);border:2px solid var(--term-border);box-shadow:0 0 30px #000000e6,var(--term-glow);display:flex;flex-direction:column;z-index:10001;overflow:hidden}.tui-header{background:var(--term-highlight-bg);padding:8px 14px;border-bottom:1px solid var(--term-border);color:var(--term-fg-bright);font-weight:700;display:flex;justify-content:space-between;align-items:center}.tui-toolbar{padding:6px 14px;background:#0006;border-bottom:1px solid var(--term-border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px}.tui-toggles{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tui-badge-on{color:var(--term-accent);font-weight:700}.tui-badge-off{color:var(--term-fg-dim);opacity:.6}.tui-body{display:grid;grid-template-columns:320px 1fr;flex:1;min-height:380px;max-height:60vh;overflow:hidden}.tui-panel{display:flex;flex-direction:column;border-right:1px solid var(--term-border);overflow:hidden}.tui-panel:last-child{border-right:none}.tui-panel-header{padding:6px 10px;background:#0006;border-bottom:1px solid var(--term-border);font-size:13px;color:var(--term-fg-dim);font-weight:700;display:flex;justify-content:space-between;align-items:center}.tui-move-btns{display:flex;gap:4px}.tui-panel-list{flex:1;overflow-y:auto;padding:6px 0}.tui-list-item{padding:6px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;color:var(--term-fg);font-size:14px}.tui-list-item:hover,.tui-list-item.active{background:var(--term-highlight-bg);color:var(--term-fg-bright)}.tui-list-item.active:before{content:"► ";color:var(--term-accent)}.tui-footer{padding:8px 14px;background:var(--term-highlight-bg);border-top:1px solid var(--term-border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px}.tui-keys{display:flex;gap:8px;flex-wrap:wrap}.tui-key-badge{color:var(--term-accent);font-weight:700}.tui-dialog-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10005;padding:16px}.tui-dialog-box{width:100%;max-width:620px;max-height:85vh;overflow-y:auto;background:var(--term-bg);border:1px solid var(--term-accent);box-shadow:var(--term-glow);padding:16px}.tui-dialog-title{color:var(--term-fg-bright);font-weight:700;margin-bottom:12px;border-bottom:1px solid var(--term-border);padding-bottom:4px;font-size:14px}.tui-form-group{margin-bottom:12px}.tui-form-group label{display:block;font-size:12px;color:var(--term-fg-dim);margin-bottom:4px}.tui-form-group input,.tui-form-group select{width:100%;background:var(--term-highlight-bg);border:1px solid var(--term-border);color:var(--term-fg-bright);font-family:inherit;font-size:14px;padding:6px 8px;outline:none}.tui-form-group input:focus{border-color:var(--term-accent);box-shadow:var(--term-glow)}.tui-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.tui-tag-picker-container{display:flex;flex-direction:column;gap:8px;background:#0006;border:1px solid var(--term-border);padding:10px;max-height:200px}.tui-tag-chips-wrapper{display:flex;flex-wrap:wrap;gap:6px;max-height:120px;overflow-y:auto;padding-right:4px}.tui-tag-chip{background:transparent;border:1px solid var(--term-border);color:var(--term-fg-dim);font-family:inherit;font-size:12px;padding:3px 8px;cursor:pointer;display:inline-flex;align-items:center;gap:5px;border-radius:2px;transition:all .12s ease;-webkit-user-select:none;user-select:none}.tui-tag-chip:hover{border-color:var(--term-accent);color:var(--term-fg-bright)}.tui-tag-chip.selected{background:var(--term-highlight-bg);border-color:var(--term-accent);color:var(--term-accent);font-weight:700;box-shadow:0 0 6px #00ff664d}.tui-tag-chip-order{font-size:10px;background:var(--term-accent);color:var(--term-bg);padding:0 4px;border-radius:2px;font-weight:700}.tui-tag-quick-add{display:flex;gap:6px;align-items:center;margin-top:4px}.tui-tag-quick-add input{flex:1;padding:4px 8px;font-size:12px;background:var(--term-highlight-bg);border:1px solid var(--term-border);color:var(--term-fg-bright)}.tui-tag-manager-table{width:100%;border-collapse:collapse;margin-top:8px}.tui-tag-manager-table th{text-align:left;padding:6px 8px;background:#00000080;border-bottom:1px solid var(--term-border);color:var(--term-fg-dim);font-size:12px}.tui-tag-manager-table td{padding:6px 8px;border-bottom:1px solid rgba(26,89,46,.4);font-size:13px}.tui-tag-manager-table tr:hover td{background:var(--term-highlight-bg)}@media(max-width:860px){.ascii-art{font-size:calc((100vw - 28px) / 92);line-height:1.08;letter-spacing:-.02em;width:100%;text-align:center;overflow-x:hidden}.ascii-subtitle-text{font-size:12px;letter-spacing:0px}#terminal-container{padding:10px 10px 75px}#terminal-section{position:fixed;bottom:0;left:0;width:100%;z-index:9000;margin-bottom:0;background:var(--term-bg);border-top:2px solid var(--term-border);box-shadow:0 -4px 18px #000000d9}.command-line-wrapper{padding:8px 10px;border:none}.shortcut-hints{display:none}.directory-entry{grid-template-columns:45px 1fr;grid-template-rows:auto auto auto;gap:4px}.directory-entry.no-idx{grid-template-columns:1fr}.entry-url,.entry-desc,.entry-tags{grid-column:2 / -1}.tui-body{grid-template-columns:1fr;grid-template-rows:160px 1fr}.status-left,.status-right{width:100%;justify-content:space-between}body.mobile-terminal-active{overflow:hidden}body.mobile-terminal-active #system-header,body.mobile-terminal-active #directory-content,body.mobile-terminal-active #system-footer{display:none!important}body.mobile-terminal-active #terminal-section{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;z-index:9999;display:flex;flex-direction:column;background:var(--term-bg);padding:8px;border-top:none}body.mobile-terminal-active #terminal-output-container{flex:1;display:flex!important;max-height:calc(100vh - 58px);max-height:calc(100dvh - 58px);border:1px solid var(--term-border);margin-bottom:6px}body.mobile-terminal-active .terminal-log{max-height:100%;flex:1}body.mobile-terminal-active .command-line-wrapper{border:1px solid var(--term-border)}}
