@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap";:root{--bg-primary: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #21262d;--text-primary: #58a6ff;--text-secondary: #7ee787;--text-muted: #8b949e;--accent-amber: #d29922;--accent-green: #3fb950;--accent-red: #f85149;--accent-purple: #a371f7;--border: #30363d;--cursor: #7ee787;--glow: rgba(126, 231, 135, .15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden;height:100%}body{font-family:JetBrains Mono,monospace;background:var(--bg-primary);color:var(--text-primary);line-height:1.7;font-size:clamp(15px,2.2vw + 14px,17px);overflow-x:hidden;height:100%;min-height:100dvh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.02) 2px,rgba(0,0,0,.02) 4px);pointer-events:none;z-index:9999}.app{display:flex;flex-direction:column;min-height:100dvh;max-width:100%;overflow-x:hidden}.app-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-shrink:0}.header-left{display:flex;align-items:center;gap:.5rem}.dot{width:12px;height:12px;border-radius:50%}.dot.red{background:var(--accent-red)}.dot.amber{background:var(--accent-amber)}.dot.green{background:var(--accent-green)}.header-title{margin-left:.5rem;font-size:.85rem;color:var(--text-muted)}.lang-switcher{display:flex;gap:.25rem}.lang-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-muted);padding:.25rem .5rem;font-family:inherit;font-size:.8rem;cursor:pointer;border-radius:4px;transition:all .2s}.lang-btn:hover{color:var(--text-primary)}.lang-btn.active{background:var(--accent-green);color:var(--bg-primary);border-color:var(--accent-green)}.banner{text-align:center;padding:1rem 1rem 1.25rem;border-bottom:1px dashed var(--border);flex-shrink:0}.banner h1{font-size:1.5rem;color:var(--accent-green);margin-bottom:.25rem}.banner .subtitle{font-size:.9rem;color:var(--text-muted)}.banner .badge{display:inline-block;margin-top:.5rem;padding:.25rem .6rem;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;font-size:.8rem;color:var(--accent-amber)}.tabs{display:flex;flex-wrap:wrap;gap:.25rem;padding:.5rem 1rem;background:var(--bg-tertiary);border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:hidden}.tab{background:transparent;border:none;color:var(--text-muted);padding:.5rem 1rem;font-family:inherit;font-size:.85rem;cursor:pointer;border-radius:6px;transition:all .2s}.tab:hover{color:var(--text-primary);background:#58a6ff1a}.tab.active{background:var(--bg-secondary);color:var(--accent-green);border:1px solid var(--border);border-bottom-color:var(--bg-secondary);margin-bottom:-1px}.content{flex:1;overflow-y:auto;overflow-x:hidden;padding:1.25rem 1.5rem;min-height:0}.content,.scroll-area{scrollbar-width:thin;scrollbar-color:var(--border) var(--bg-primary)}.content::-webkit-scrollbar,.scroll-area::-webkit-scrollbar{width:8px}.content::-webkit-scrollbar-track,.scroll-area::-webkit-scrollbar-track{background:var(--bg-primary);border-radius:4px}.content::-webkit-scrollbar-thumb,.scroll-area::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.content::-webkit-scrollbar-thumb:hover,.scroll-area::-webkit-scrollbar-thumb:hover{background:var(--accent-green)}.section{margin-bottom:1.5rem}.section-title{font-size:1rem;color:var(--accent-amber);margin-bottom:1rem;font-weight:600}.section-title:before{content:"❯ ";color:var(--accent-green)}.cmd-output{color:var(--text-muted);padding-left:1rem;border-left:3px solid var(--border)}.cmd-output p{margin-bottom:.5rem;word-wrap:break-word;overflow-wrap:break-word}.arrow{color:var(--text-secondary)}.link{color:var(--text-primary);text-decoration:none;border-bottom:1px dashed var(--text-primary);transition:all .2s}.link:hover{color:var(--text-secondary);border-bottom-color:var(--text-secondary)}.card-grid{display:grid;gap:1rem}.card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;padding:1rem 1.25rem;transition:all .2s;overflow-wrap:break-word}.card:hover{border-color:var(--accent-green);box-shadow:0 0 20px var(--glow)}.card-link{text-decoration:none;color:inherit;display:block}.card-title,.card-sub,.card-meta,.card-desc,.card-tech{word-wrap:break-word}.card-title{color:var(--text-secondary);font-weight:600;margin-bottom:.25rem}.card-sub{color:var(--accent-amber);font-size:.85rem;margin-bottom:.5rem}.card-meta{color:var(--text-muted);font-size:.8rem;margin-bottom:.75rem}.card-desc{color:var(--text-muted);font-size:.9rem;line-height:1.6}.card-tech{margin-top:.75rem;font-size:.8rem;color:var(--accent-purple)}.section-intro{color:var(--text-muted);font-size:.9rem;line-height:1.6;margin-bottom:1rem;max-width:65ch}.card-grid-apps .card-app{display:flex;flex-direction:column}.card-cta{display:inline-block;margin-top:.75rem;font-size:.85rem;color:var(--accent-green);font-weight:500}.card-link:hover .card-cta{text-decoration:underline}.consola-section{display:flex;flex-direction:column;min-height:40vh}.consola-output{flex:1;min-height:150px;overflow-y:auto;margin-bottom:1rem}.consola-output .cmd-line{padding:.2rem 0;font-size:.9rem;color:var(--text-muted)}.consola-output .cmd-line.out{padding-left:1rem;white-space:pre-wrap;border-left:2px solid var(--border);margin-left:.5rem;margin-bottom:.5rem}.consola-output .cmd-line.muted{opacity:.8}.consola-form{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.consola-form .prompt{color:var(--accent-green);font-weight:600}.consola-form .user{color:var(--accent-purple)}.consola-form .at{color:var(--text-secondary)}.consola-form .path{color:var(--accent-amber)}.consola-form input{flex:1;min-width:120px;background:transparent;border:none;color:var(--text-primary);padding:.25rem .5rem;font-family:inherit;font-size:.95rem;outline:none}.consola-form input:focus~.cursor{opacity:0}.cursor{display:inline-block;width:8px;height:1.1em;background:var(--cursor);animation:blink 1s step-end infinite;vertical-align:text-bottom}@keyframes blink{50%{opacity:0}}.matrix-canvas{position:fixed;inset:0;z-index:100;pointer-events:none}.matrix-hint{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);z-index:101;color:var(--accent-green);font-size:.9rem}.matrix-console{position:fixed;bottom:0;left:0;right:0;background:#0d1117f2;border-top:2px solid var(--accent-green);padding:1rem 1.5rem;z-index:110}.matrix-console .consola-output{max-height:120px}.matrix-console .consola-form input{background:var(--bg-tertiary);border:1px solid var(--border);padding:.4rem .75rem;border-radius:4px}.app-footer{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;padding-bottom:max(.75rem,env(safe-area-inset-bottom));border-top:1px dashed var(--border);background:var(--bg-secondary);font-size:.85rem;flex-shrink:0}.app-footer .footer-link{color:var(--text-muted);text-decoration:none;padding:.25rem .5rem;min-height:44px;display:inline-flex;align-items:center}.app-footer .footer-link:hover{color:var(--accent-green)}.app-footer .footer-sep{color:var(--border);-webkit-user-select:none;user-select:none}.cmd-output p,.card-desc{max-width:65ch}.section-title{letter-spacing:.02em}@media(max-width:768px){.app-header{padding:.6rem 1rem;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.header-title{font-size:.8rem;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.banner{padding:1rem 1rem 1.25rem;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.banner h1{font-size:1.35rem;line-height:1.3}.banner .subtitle{font-size:.88rem}.tabs{padding:.5rem;padding-left:max(.5rem,env(safe-area-inset-left));gap:.35rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{padding:.5rem .85rem;font-size:.82rem;white-space:nowrap;min-height:44px;flex-shrink:0}.content{padding:1rem 1rem 1.5rem;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));padding-bottom:max(1.5rem,env(safe-area-inset-bottom))}.section-title{font-size:.95rem}.card{padding:1rem 1.1rem}.card-desc{font-size:.9rem;line-height:1.65}.lang-btn{min-width:36px;min-height:36px;padding:.35rem .5rem}}@media(max-width:600px){.app-header{padding:.5rem .75rem}.banner h1{font-size:1.25rem}.content{padding:.85rem .75rem}.tab{padding:.45rem .7rem;font-size:.78rem;min-height:44px}}
