:root{--ide-backdrop:#1e1f22;--ide-bg:#1e1f22;--ide-bg-alt:#2b2d30;--ide-panel:#2b2d30;--ide-panel-2:#313438;--ide-sidebar:#2b2d30;--ide-border:#393b40;--ide-border-soft:#313438;--ide-selection:#2e436e;--ide-line:#26282e;--text:#dfe1e5;--text-soft:#bcbec4;--text-muted:#9da0a8;--text-dim:#6f737a;--accent-blue:#3574f0;--accent-blue-2:#366acf;--ok-green:#5fad65;--ok-green-soft:#8bc34a;--syn-orange:#cf8e6d;--syn-yellow:#b3ae60;--syn-purple:#c77dbb;--syn-green:#6aab73;--syn-blue:#56a8f5;--syn-gray:#7a7e85;--syn-number:#2aacb8;--syn-method:#57aaf7;--gutter-num:#4b5059;--editor-selection:#214283;--font-ui:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", Consolas, monospace;--topbar-h:40px;--statusbar-h:26px}*{box-sizing:border-box}html{background:var(--ide-backdrop);height:100%;overflow:hidden}body.ide-body{height:100dvh;min-height:0;font-family:var(--font-ui);color:var(--text);background:var(--ide-bg);-webkit-font-smoothing:antialiased;margin:0;padding:0;overflow:hidden}body.ide-body[data-theme=light]{--ide-backdrop:#ebecf0;--ide-bg:#fff;--ide-bg-alt:#f7f8fa;--ide-panel:#f7f8fa;--ide-panel-2:#f2f3f5;--ide-sidebar:#f7f8fa;--ide-border:#d3d5db;--ide-border-soft:#ebecf0;--ide-selection:#d4e2ff;--ide-line:#fcfaed;--text:#000;--text-soft:#27282e;--text-muted:#5a5d6b;--text-dim:#818594;--syn-orange:#0033b3;--syn-yellow:#9e880d;--syn-purple:#871094;--syn-green:#067d17;--syn-blue:#0033b3;--syn-gray:#8c8c8c;--syn-number:#1750eb;--syn-method:#00627a;--gutter-num:#adb1b8;--editor-selection:#a6d2ff}body.ide-body ::selection{background:var(--editor-selection)}.skip-link{z-index:1000;background:var(--accent-blue);color:#fff;border-radius:7px;padding:10px 14px;font-size:13px;font-weight:700;text-decoration:none;transition:transform .15s;position:fixed;inset:8px auto auto 8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.ide-window{background:var(--ide-bg);flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.ide-topbar{height:var(--topbar-h);background:var(--ide-bg-alt);border-bottom:1px solid var(--ide-border);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:0 10px;display:flex;position:relative}.topbar-left,.topbar-center,.topbar-right{align-items:center;gap:6px;min-width:0;display:flex}.project-badge{color:#fff;letter-spacing:.02em;background:linear-gradient(135deg,#4f8cff,#7c5cff);border-radius:6px;place-items:center;width:22px;height:22px;font-size:10px;font-weight:700;display:grid}.topbar-item{min-height:28px;color:var(--text-soft);font-family:var(--font-ui);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:5px;align-items:center;gap:6px;padding:5px 8px;font-size:12.5px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.topbar-item:hover{color:var(--text);background:#ffffff0f}.topbar-project{color:var(--text);font-weight:600}.ide-main-menu{padding-left:4px}.jb-mark{object-fit:contain;border-radius:6px;flex:0 0 24px;width:24px;height:24px;display:block}.topbar-title{text-overflow:ellipsis;max-width:180px;overflow:hidden}.topbar-branch{color:var(--text-muted)}.topbar-git{color:var(--accent-blue);font-family:var(--font-mono);font-size:12px}.chev{opacity:.6;width:8px;height:5px}.mini-ic{fill:currentColor;width:13px;height:13px}.run-config{border:1px solid var(--ide-border);background:var(--ide-panel);height:28px;color:var(--text-soft);font-family:var(--font-ui);cursor:pointer;white-space:nowrap;border-radius:5px;align-items:center;gap:7px;padding:5px 12px;font-size:12.5px;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.run-config:hover{background:var(--ide-panel-2);color:var(--text);border-color:#4f8cff73}.run-ic{fill:var(--ok-green)}.tb-icon{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;text-decoration:none;transition:background .15s,color .15s;display:grid}.tb-icon svg{fill:currentColor;width:15px;height:15px}.tb-icon:hover{color:var(--text);background:#ffffff0f}.tb-run{color:var(--ok-green)}.tb-debug{color:var(--text-muted)}.tb-commit{color:var(--ok-green-soft)}.tb-lang{border:1px solid var(--ide-border);height:28px;color:var(--text-muted);font:600 .72rem/1 var(--font-mono,monospace);letter-spacing:.04em;cursor:pointer;background:0 0;border-radius:5px;align-items:center;gap:5px;padding:0 8px;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.tb-lang svg{fill:none;width:14px;height:14px}.tb-lang:hover{color:var(--text);border-color:var(--accent-blue);background:#ffffff0f}.topbar-popover{z-index:240;border:1px solid var(--ide-border);background:var(--ide-bg-alt);border-radius:8px;min-width:260px;max-width:min(360px,100vw - 24px);padding:6px;position:fixed;box-shadow:0 18px 54px #0000007a}.topbar-popover[hidden]{display:none}.popover-item{width:100%;color:var(--text-soft);font-family:var(--font-ui);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 14px;padding:8px 10px;text-decoration:none;display:grid}.popover-item:hover,.popover-item:focus-visible{background:var(--ide-selection);color:var(--text);outline:none}.popover-item span{min-width:0;color:inherit;font-size:13px;font-weight:600}.popover-item small{min-width:0;color:var(--text-muted);font-size:11.5px;line-height:1.35}.popover-item.is-selected span:before{content:"";background:var(--ok-green);vertical-align:1px;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.popover-kbd{border:1px solid var(--ide-border);background:var(--ide-panel);color:var(--text-muted);font-family:var(--font-mono);border-radius:4px;padding:2px 6px}.popover-separator{background:var(--ide-border);height:1px;margin:5px 4px;display:block}.ide-main{flex:auto;min-height:0;display:flex;overflow:hidden}.ide-activity{background:var(--ide-bg-alt);border-right:1px solid var(--ide-border);flex-direction:column;flex:0 0 44px;align-items:center;gap:6px;padding:10px 0;display:flex}.act-icon{width:30px;height:30px;color:var(--text-dim);border-radius:8px;place-items:center;transition:background .15s,color .15s;display:grid}.act-icon svg{fill:currentColor;width:16px;height:16px}.act-icon:hover{color:var(--text-soft);background:#ffffff0f}.act-icon.is-active{color:var(--accent-blue);background:#4f8cff29}.act-bottom{margin-top:auto}.ide-tree{background:var(--ide-sidebar);border-right:1px solid var(--ide-border);flex-direction:column;flex:0 0 268px;min-width:0;display:flex;overflow:hidden}.tree-head{border-bottom:1px solid var(--ide-border-soft);flex:none;justify-content:space-between;align-items:center;padding:9px 12px 8px;display:flex}.tree-title{color:var(--text-soft);align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:inline-flex}.tree-head-icons{color:var(--text-dim);gap:8px;display:inline-flex}.tree-head-icons svg{fill:currentColor;width:14px;height:14px}.tree-list{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex:auto;margin:0;padding:6px 0 14px;font-size:12.5px;list-style:none;overflow-y:auto}.tree-row{padding:3.5px 8px 3.5px calc(14px + var(--depth) * 14px);color:var(--text-soft);white-space:nowrap;cursor:pointer;border-radius:0;align-items:center;gap:5px;transition:background .12s;display:flex}.tree-row[hidden]{display:none}.tree-row:hover{background:#ffffff0b}.tree-row.is-selected{background:var(--ide-selection);color:var(--text)}.tree-chev{width:7px;height:9px;color:var(--text-dim);flex:none;transition:transform .12s}.tree-chev.is-open{transform:rotate(90deg)}.tree-chev-empty{display:inline-block}.tree-ic{flex:none;width:14px;height:14px}.ic-folder{fill:#8a919d}.ic-package{color:#a1887f}.ic-file{color:var(--text-muted)}.ic-md{color:var(--syn-blue)}.ic-gradle{fill:#7bb350}.ic-class{width:14px;height:14px;color:var(--syn-blue);font-family:var(--font-mono);background:#61afef2e;border-radius:4px;place-items:center;font-size:9px;font-weight:600;line-height:1;display:grid}.tree-label{text-overflow:ellipsis;overflow:hidden}.tree-meta{color:var(--text-dim);text-overflow:ellipsis;margin-left:6px;font-size:11px;overflow:hidden}.ide-content{background:var(--ide-bg);flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex;overflow:hidden}.ide-editor-row{flex:auto;align-items:stretch;min-width:0;min-height:0;display:flex;overflow:hidden}.ide-editor{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex;overflow:hidden}.editor-tabs{background:var(--ide-bg);border-bottom:1px solid var(--ide-border);scrollbar-width:none;flex:none;align-items:stretch;height:36px;display:flex;overflow-x:auto}.editor-tab{color:var(--text-muted);font-family:var(--font-ui);white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 10px;font-size:12px;transition:background .15s,color .15s;display:inline-flex;position:relative}.editor-tab:hover{color:var(--text-soft);background:#ffffff0b}.editor-tab.is-active{color:var(--text)}.editor-tab.is-active:after{content:"";background:var(--accent-blue);border-radius:2px 2px 0 0;height:3px;position:absolute;bottom:0;left:0;right:0}.tab-ic{width:13px;height:13px;color:var(--syn-blue);font-family:var(--font-mono);background:#61afef2e;border-radius:4px;place-items:center;font-size:8.5px;font-weight:600;line-height:1;display:grid}.tab-close{opacity:0;width:8px;height:8px;transition:opacity .12s}.editor-tab.is-active .tab-close{opacity:.55}.editor-tab:hover .tab-close{opacity:1}.editor-tabs-fill,.terminal-tabs-fill{flex:auto}.editor-tabs-more,.terminal-tabs-more{color:var(--text-dim);place-items:center;padding:0 10px;display:grid}.editor-tabs-more svg,.terminal-tabs-more svg{fill:currentColor;width:14px;height:14px}.editor-body{min-width:0;display:flex}.editor-gutter{text-align:right;background:var(--ide-bg);border-right:1px solid var(--ide-border-soft);min-width:52px;font-family:var(--font-mono);color:var(--gutter-num);user-select:none;flex-direction:column;flex:none;padding:14px 0 20px;font-size:12px;line-height:1.6;display:flex}.editor-gutter span{padding-right:14px}.editor-content{flex:auto;min-width:0;padding:14px 26px 26px 22px}.code-block{font-family:var(--font-mono);color:var(--text-soft);white-space:pre;margin:0 0 8px;font-size:12.5px;line-height:1.6;overflow-x:auto}.code-block .k{color:var(--syn-orange)}.code-block .t{color:var(--syn-blue)}.code-block .a{color:var(--syn-yellow)}.code-block .s{color:var(--syn-green)}.code-block .c{color:var(--syn-gray)}.code-block .n{color:var(--syn-number)}.code-block .fn{color:var(--syn-method)}.hero{padding:10px 0 26px}.hero-name{letter-spacing:-.02em;color:var(--text);margin:0;font-size:clamp(2.2rem,4.2vw,3.4rem);font-weight:800;line-height:1.08}.hero-role{color:var(--accent-blue);margin:6px 0 0;font-size:clamp(1.25rem,2vw,1.7rem);font-weight:700}.hero-text{max-width:560px;color:var(--text-soft);margin:18px 0 0;font-size:15px;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.btn{min-height:44px;font-family:var(--font-ui);cursor:pointer;border:0;border-radius:9px;align-items:center;gap:9px;padding:11px 22px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;display:inline-flex}.btn svg{fill:currentColor;width:15px;height:15px}.btn-primary{background:linear-gradient(135deg, var(--accent-blue) 0%, var(--accent-blue-2) 100%);color:#fff;box-shadow:0 8px 24px #3b82f647}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 32px #3b82f66b}.btn-secondary{background:var(--ide-panel);color:var(--text);border:1px solid #4f8cff59}.btn-secondary:hover{border-color:var(--accent-blue);transform:translateY(-1px);box-shadow:0 8px 24px #4f8cff29}.tech-band{border:1px solid var(--ide-border);background:var(--ide-panel);border-radius:11px;grid-template-columns:repeat(6,minmax(0,1fr));padding:12px 6px;display:grid}.tech-pill{border-right:1px solid var(--ide-border-soft);white-space:nowrap;align-items:center;gap:9px;min-width:0;padding:4px 12px;display:flex}.tech-pill:last-child{border-right:0}.tech-copy strong,.tech-copy small{text-overflow:ellipsis;overflow:hidden}.tech-ic{background:#ffffff0b;border-radius:8px;flex:none;place-items:center;width:28px;height:28px;display:grid}.tech-ic svg{width:17px;height:17px}.tech-copy{flex-direction:column;gap:1px;min-width:0;display:flex}.tech-copy strong{color:var(--text);font-size:12px;font-weight:600}.tech-copy small{color:var(--text-muted);font-size:10.5px}.services-panel{border:1px solid var(--ide-border);background:linear-gradient(135deg, #4f8cff1a, transparent 48%), var(--ide-panel);border-radius:11px;margin-top:16px;padding:16px}.services-panel__head{max-width:760px}.services-kicker{color:var(--syn-gray);font-family:var(--font-mono);margin:0 0 6px;font-size:12px}.services-panel h2{color:var(--text);margin:0;font-size:20px;line-height:1.2}.services-panel__head p:last-child{color:var(--text-soft);margin:8px 0 0;font-size:13.5px;line-height:1.55}.services-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.service-card{border:1px solid var(--ide-border-soft);background:#ffffff09;border-radius:8px;min-width:0;padding:12px}.service-card strong{color:var(--text);font-size:13px;line-height:1.25;display:block}.service-card p{color:var(--text-muted);margin:6px 0 0;font-size:12px;line-height:1.5}.editor-view[hidden]{display:none}.editor-views{display:contents}.editor-view.is-active{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex:auto;min-height:0;animation:.22s view-in;overflow:hidden auto}@keyframes view-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.view-inner{min-height:100%;padding:18px 26px 30px}.code-block-mini{border-bottom:1px solid var(--ide-border-soft);margin-bottom:18px;padding-bottom:14px}.view-head{align-items:center;gap:12px;margin-bottom:8px;display:flex}.view-head h2{letter-spacing:-.02em;color:var(--text);margin:0;font-size:clamp(1.6rem,2.6vw,2.2rem);font-weight:800}.tag-blue{color:var(--accent-blue);background:#4f8cff29}.tag-green{color:var(--ok-green);background:#22c55e26}.tag-orange{color:var(--syn-orange);background:#d19a6629}.tag-purple{color:var(--syn-purple);background:#c678dd26}.view-lead{max-width:640px;color:var(--text-soft);margin:0 0 20px;font-size:14.5px;line-height:1.65}.view-cols{align-items:flex-start;gap:26px;margin-bottom:20px;display:flex}.view-features{flex-direction:column;flex:auto;gap:9px;margin:0;padding:0;list-style:none;display:flex}.view-features li{color:var(--text-soft);padding-left:20px;font-size:13.5px;position:relative}.view-features li:before{content:"✓";color:var(--ok-green);font-weight:600;position:absolute;left:0}.view-shot{border:1px solid var(--ide-border);border-radius:10px;flex:0 380px;transition:border-color .18s,transform .18s,box-shadow .18s;overflow:hidden}.view-shot img{width:100%;height:auto;display:block}.view-shot:hover{border-color:#4f8cff73;transform:translateY(-2px);box-shadow:0 16px 36px #0006}.view-chips{margin-bottom:22px}.view-features+.view-chips,.editor-view .view-features{margin-bottom:20px}.case-layout{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:14px;margin:0 0 22px;display:grid}.case-panel{border:1px solid var(--ide-border);background:linear-gradient(#ffffff09,#ffffff04);border-radius:11px;min-width:0;padding:16px}.case-panel h3,.gallery-head h3{font-family:var(--font-mono);color:var(--syn-gray);margin:0 0 10px;font-size:12.5px;font-weight:600}.case-panel p{color:var(--text-soft);margin:0 0 14px;font-size:13px;line-height:1.6}.case-panel-compact .view-chips{margin:0 0 14px}.pvp-showcase{grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);align-items:stretch;gap:14px;margin:0 0 22px;display:grid}.pvp-hero-shot{border:1px solid var(--ide-border);background:var(--ide-panel);border-radius:11px;min-width:0;margin:0;overflow:hidden}.pvp-hero-shot img{aspect-ratio:16/9;object-fit:cover;border-bottom:1px solid var(--ide-border-soft);background:#05080d;width:100%;height:auto;display:block}.pvp-hero-shot figcaption{gap:4px;padding:12px 14px 14px;display:grid}.pvp-hero-shot strong{color:var(--text);font-size:13px}.pvp-hero-shot span{color:var(--text-muted);font-size:12px;line-height:1.5}.pvp-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px;display:grid}.pvp-stat-grid div{border:1px solid var(--ide-border-soft);background:#ffffff09;border-radius:8px;min-width:0;padding:10px}.pvp-stat-grid dt{color:var(--text-dim);font-family:var(--font-mono);font-size:10.5px}.pvp-stat-grid dd{color:var(--text);margin:3px 0 0;font-size:20px;font-weight:800}.gallery-head{justify-content:space-between;align-items:baseline;gap:12px;margin:4px 0 12px;display:flex}.gallery-head h3{color:var(--text-soft);margin:0}.gallery-head span{color:var(--text-dim);font-size:11.5px}.progestor-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid}.gallery-shot{border:1px solid var(--ide-border);background:var(--ide-panel);min-width:0;color:inherit;font:inherit;text-align:left;cursor:zoom-in;border-radius:11px;flex-direction:column;padding:0;transition:transform .16s,border-color .16s,box-shadow .16s;display:flex;overflow:hidden}.gallery-shot:hover,.gallery-shot:focus-visible{border-color:#4f8cff7a;outline:none;transform:translateY(-2px);box-shadow:0 14px 30px #00000059}.gallery-shot img{aspect-ratio:16/10;object-fit:cover;border-bottom:1px solid var(--ide-border-soft);background:#0b0d12;width:100%;height:auto}.gallery-shot span{gap:4px;padding:10px 11px 12px;display:grid}.gallery-shot strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.gallery-shot small{min-height:2.9em;color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.shot-lightbox{z-index:260;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.shot-lightbox[hidden]{display:none}.shot-lightbox__backdrop{backdrop-filter:blur(6px);cursor:zoom-out;background:#04060ac7;border:0;position:absolute;inset:0}.shot-lightbox__panel{z-index:1;background:var(--ide-bg-alt);border:1px solid #ffffff24;border-radius:14px;width:min(1180px,100%);max-height:min(860px,100dvh - 56px);margin:0;display:grid;position:relative;overflow:hidden;box-shadow:0 34px 90px #000000a8}.shot-lightbox__panel img{object-fit:contain;background:#07090d;width:100%;max-height:calc(100dvh - 170px);display:block}.shot-lightbox__panel figcaption{border-top:1px solid var(--ide-border);gap:4px;padding:13px 16px 15px;display:grid}.shot-lightbox__panel figcaption strong{color:var(--text);font-size:14px}.shot-lightbox__panel figcaption span{color:var(--text-muted);font-size:12.5px;line-height:1.5}.shot-lightbox__close{z-index:2;width:34px;height:34px;color:var(--text-soft);cursor:pointer;background:#0a0c10d1;border:1px solid #ffffff29;border-radius:9px;place-items:center;display:grid;position:absolute;top:10px;right:10px}.shot-lightbox__close:hover{color:var(--text);border-color:#4f8cff73}.shot-lightbox__close svg{width:16px;height:16px}.shot-lightbox__nav{z-index:2;min-width:82px;height:42px;color:var(--text-soft);font-family:var(--font-ui);cursor:pointer;background:#0a0c10d1;border:1px solid #ffffff29;border-radius:999px;justify-content:center;align-items:center;gap:8px;font-size:12.5px;font-weight:700;transition:border-color .16s,color .16s,background .16s,transform .16s;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 12px 30px #0006}.shot-lightbox__nav span{color:var(--accent-blue);font-family:var(--font-mono);font-size:16px;line-height:1}.shot-lightbox__nav:hover,.shot-lightbox__nav:focus-visible{color:var(--text);background:#0f1117f0;border-color:#4f8cff80;outline:none}.shot-lightbox__nav--prev{left:16px}.shot-lightbox__nav--next{right:16px}.shot-lightbox__nav--prev:hover,.shot-lightbox__nav--prev:focus-visible{transform:translate(-2px,-50%)}.shot-lightbox__nav--next:hover,.shot-lightbox__nav--next:focus-visible{transform:translate(2px,-50%)}.logforge-showcase{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:14px;margin:0 0 18px;display:grid}.logforge-console,.logforge-install{border:1px solid var(--ide-border);background:var(--ide-bg-alt);border-radius:11px;min-width:0;margin:0;overflow:hidden}.logforge-console{color:var(--text-soft);font-family:var(--font-mono);white-space:pre;padding:16px;font-size:12.5px;line-height:1.65;overflow-x:auto}.logforge-install{padding:42px 16px 16px;position:relative}.install-label{color:var(--ok-green);font-family:var(--font-mono);background:#22c55e1a;border:1px solid #22c55e47;border-radius:7px;padding:4px 8px;font-size:11px;font-weight:700;position:absolute;top:12px;left:14px}.logforge-install pre{color:var(--text-soft);font-family:var(--font-mono);margin:0;font-size:12px;line-height:1.6;overflow-x:auto}.project-facts{font-family:var(--font-mono);grid-template-columns:max-content minmax(0,1fr);gap:8px 12px;margin:0 0 14px;font-size:12px;display:grid}.project-facts dt{color:var(--syn-orange)}.project-facts dd{min-width:0;color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.readme-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:14px;margin:0 0 22px;display:grid}.case-panel-wide{grid-column:1/-1}.compact-actions{margin-top:16px}.stack-spotlight{gap:10px;display:grid}.stack-spotlight div{border:1px solid var(--ide-border-soft);background:#ffffff08;border-radius:9px;gap:4px;padding:11px;display:grid}.stack-spotlight strong{color:var(--text);font-size:13px}.stack-spotlight span{color:var(--text-muted);font-size:12.5px;line-height:1.5}.timeline-section,.proof-section{margin-bottom:24px}.timeline-list{gap:12px;margin:0;padding:0;list-style:none;display:grid;position:relative}.timeline-list li{border:1px solid var(--ide-border);background:var(--ide-panel);border-radius:10px;grid-template-columns:74px minmax(140px,180px) minmax(0,1fr);align-items:baseline;gap:12px;padding:13px 14px;display:grid}.timeline-list time{color:var(--syn-orange);font-family:var(--font-mono);font-size:12px;font-weight:700}.timeline-list strong{color:var(--text);font-size:13px}.timeline-list span{color:var(--text-muted);font-size:12.5px;line-height:1.55}.proof-grid,.case-study-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.proof-card{border:1px solid var(--ide-border);background:var(--ide-panel);border-radius:11px;gap:12px;margin:0;padding:16px;display:grid}.proof-card p{color:var(--text-soft);margin:0;font-size:13px;line-height:1.6}.proof-card strong{color:var(--syn-green);font-family:var(--font-mono);font-size:11.5px;font-weight:700}.case-study-card{border:1px solid var(--ide-border);background:var(--ide-panel);border-radius:11px;flex-direction:column;gap:13px;min-width:0;padding:16px;display:flex}.case-study-card header{align-items:center;gap:10px;display:flex}.case-study-card h3{color:var(--text);margin:0;font-size:16px}.case-study-card dl{gap:7px;margin:0;display:grid}.case-study-card dt{color:var(--syn-orange);font-family:var(--font-mono);font-size:11.5px;font-weight:700}.case-study-card dd{color:var(--text-muted);margin:0 0 6px;font-size:12.5px;line-height:1.55}.stack-group{margin-bottom:22px}.stack-group-title{font-family:var(--font-mono);color:var(--syn-gray);margin:0 0 10px;font-size:12.5px;font-weight:500}.stack-grid{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.stack-item{border:1px solid var(--ide-border);background:var(--ide-panel);color:var(--text-soft);border-radius:8px;align-items:center;gap:8px;padding:7px 12px;font-size:12.5px;transition:border-color .15s,transform .15s;display:inline-flex}.stack-item:hover{border-color:#4f8cff66;transform:translateY(-2px)}.stack-item img{width:20px;height:20px}.webs-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.contact-layout{grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);align-items:start;gap:18px;display:grid}.contact-form{border:1px solid var(--ide-border);background:var(--ide-panel);border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px;display:grid;position:relative}.contact-form label{gap:6px;min-width:0;display:grid}.contact-form span{color:var(--syn-gray);font-family:var(--font-mono);font-size:11.5px}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--ide-border);background:var(--ide-bg-alt);width:100%;min-width:0;color:var(--text);font:500 13px var(--font-ui);border-radius:8px}.contact-form input,.contact-form select{height:44px;padding:0 11px}.contact-form textarea{resize:vertical;min-height:126px;padding:10px 11px;line-height:1.5}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-dim)}.contact-form-wide,.contact-form-status,.contact-form .hero-actions{grid-column:1/-1}.contact-form-status{min-height:18px;color:var(--text-muted);font-family:var(--font-mono);margin:0;font-size:12px}.contact-form-status.is-error{color:#f87171}.contact-form-status.is-ok{color:var(--ok-green)}.contact-honeypot{display:none!important}.contact-form[aria-busy=true] input,.contact-form[aria-busy=true] select,.contact-form[aria-busy=true] textarea{opacity:.72}.contact-form button:disabled{cursor:wait;opacity:.72;transform:none}.contact-side{border:1px solid var(--ide-border);background:var(--ide-panel);border-radius:11px;min-width:0;padding:16px}.contact-list{font-family:var(--font-mono);flex-direction:column;gap:12px;margin:0 0 26px;padding:0;font-size:13px;list-style:none;display:flex}.contact-list li{align-items:baseline;gap:14px;display:flex}.contact-label{color:var(--syn-orange);flex:0 0 110px}.contact-label:after{content:":";color:var(--text-dim)}.contact-list a{color:var(--accent-blue);overflow-wrap:anywhere;text-decoration:none}.contact-list a:hover{text-underline-offset:3px;text-decoration:underline}.contact-list span:not(.contact-label){color:var(--text-soft)}.contact-ok{color:var(--ok-green)!important}.terminal-body.is-replaying p{animation:.25s both term-line}.terminal-body.is-replaying p:nth-child(2){animation-delay:.15s}.terminal-body.is-replaying p:nth-child(4){animation-delay:.3s}.terminal-body.is-replaying p:nth-child(5){animation-delay:.45s}.terminal-body.is-replaying p:nth-child(6){animation-delay:.6s}.terminal-body.is-replaying p:nth-child(7){animation-delay:.75s}.terminal-body.is-replaying p:nth-child(9){animation-delay:1s}.terminal-body.is-replaying p:nth-child(10){animation-delay:1.25s}@keyframes term-line{0%{opacity:0}to{opacity:1}}.repo-error{color:var(--text-soft);background:#d19a6614;border:1px solid #d19a6666;border-radius:9px;padding:12px 14px;font-size:13px}.repo-error a{color:var(--accent-blue)}.repo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid}.repo-grid[hidden]{display:none}.repo-card{border:1px solid var(--ide-border);background:var(--ide-panel);color:inherit;font-family:var(--font-ui);text-align:left;cursor:pointer;border-radius:11px;flex-direction:column;gap:8px;padding:14px;transition:transform .16s,border-color .16s,box-shadow .16s;display:flex}.repo-card:hover{border-color:#4f8cff73;transform:translateY(-2px);box-shadow:0 14px 30px #00000059}.repo-head{align-items:center;gap:8px;min-width:0;display:flex}.repo-head svg{width:15px;height:15px;color:var(--text-muted);flex:none}.repo-head strong{color:var(--accent-blue);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;overflow:hidden}.repo-badge{color:var(--syn-orange);background:#d19a6626;border-radius:5px;padding:2px 7px;font-size:10px;font-style:normal}.repo-desc{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:auto;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.repo-meta{color:var(--text-dim);align-items:center;gap:12px;font-size:11px;display:flex}.repo-lang{color:var(--text-soft);align-items:center;gap:5px;display:inline-flex}.repo-lang i{border-radius:50%;width:9px;height:9px}.repo-date{margin-left:auto}.repo-browser{border:1px solid var(--ide-border);background:var(--ide-bg-alt);border-radius:11px;overflow:hidden}.repo-browser[hidden]{display:none}.repo-browser-bar{border-bottom:1px solid var(--ide-border);background:var(--ide-panel);align-items:center;gap:12px;padding:9px 12px;display:flex}.rb-back{border:1px solid var(--ide-border);color:var(--text-soft);font-family:var(--font-mono);cursor:pointer;background:0 0;border-radius:7px;align-items:center;gap:7px;padding:5px 10px;font-size:12px;transition:border-color .15s,color .15s;display:inline-flex}.rb-back:hover{color:var(--text);border-color:#4f8cff73}.rb-back svg{width:12px;height:9px}.rb-path{font-family:var(--font-mono);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:12px;overflow:hidden}.rb-github{color:var(--accent-blue);white-space:nowrap;font-size:12px;font-weight:600;text-decoration:none}.rb-github:hover{text-underline-offset:3px;text-decoration:underline}.repo-browser-body{min-height:320px;max-height:520px;display:flex}.rb-files{border-right:1px solid var(--ide-border);font-family:var(--font-mono);scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex:0 0 240px;margin:0;padding:8px;font-size:12.5px;list-style:none;overflow-y:auto}.rb-entry{color:var(--text-soft);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding:5px 9px;transition:background .12s;overflow:hidden}.rb-entry:hover{background:#ffffff0d}.rb-dir{color:var(--syn-blue)}.rb-loading{color:var(--text-dim);white-space:normal;padding:8px;font-size:12px}.rb-loading a{color:var(--accent-blue)}.rb-code{flex-direction:column;flex:auto;min-width:0;display:flex;overflow:hidden}.rb-hint{color:var(--text-dim);margin:0;padding:20px;font-size:13px}.rb-hint a{color:var(--accent-blue)}.rb-code-head{border-bottom:1px solid var(--ide-border-soft);font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;padding:8px 14px;font-size:11.5px;overflow:hidden}.rb-code-scroll{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex:auto;display:flex;overflow:auto}.rb-gutter,.rb-source{font-family:var(--font-mono);margin:0;padding:12px 0 16px;font-size:12px;line-height:1.65}.rb-gutter{text-align:right;color:var(--text-dim);border-right:1px solid var(--ide-border-soft);user-select:none;background:var(--ide-bg-alt);flex:none;padding-left:14px;padding-right:12px;position:sticky;left:0}.rb-source{color:#d7dae0;white-space:pre;padding-left:14px;padding-right:18px}.rb-source .k{color:var(--syn-orange)}.rb-source .s{color:var(--syn-green)}.rb-source .c{color:var(--syn-gray)}.rb-source .a{color:var(--syn-yellow)}.code-block .code-line{opacity:0;display:inline}.is-typing .code-line{animation:10ms step-end both code-line-in}@keyframes code-line-in{to{opacity:1}}.tl-output p{margin:0}.tl-err{color:#e06c75}.tl-input-line{align-items:center;gap:7px;display:flex;margin-top:6px!important}.tl-input{min-width:0;color:var(--text);font-family:var(--font-mono);caret-color:var(--ok-green);background:0 0;border:0;outline:none;flex:auto;font-size:12px}.tl-input::placeholder{color:var(--text-dim)}.search-overlay{z-index:200;backdrop-filter:blur(3px);background:#05060a99;justify-content:center;padding-top:12vh;display:flex;position:fixed;inset:0}.search-overlay[hidden]{display:none}.search-panel{border:1px solid var(--ide-border);background:var(--ide-panel-2);border-radius:13px;width:min(560px,100% - 32px);height:fit-content;animation:.16s view-in;overflow:hidden;box-shadow:0 30px 80px #0009}.search-input-row{border-bottom:1px solid var(--ide-border);align-items:center;gap:10px;padding:12px 14px;display:flex}.search-input-row svg{width:15px;height:15px;color:var(--text-muted);flex:none}.search-input-row input{min-width:0;color:var(--text);font-family:var(--font-ui);background:0 0;border:0;outline:none;flex:auto;font-size:14px}.search-input-row input::placeholder{color:var(--text-dim)}.search-input-row kbd{border:1px solid var(--ide-border);background:var(--ide-bg-alt);color:var(--text-dim);font-family:var(--font-mono);border-radius:5px;padding:2px 7px;font-size:10.5px}.search-results{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;max-height:320px;margin:0;padding:6px;list-style:none;overflow-y:auto}.search-result{cursor:pointer;border-radius:8px;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.search-result.is-selected{background:var(--ide-selection)}.sr-ic{width:16px;height:16px;color:var(--syn-blue);font-family:var(--font-mono);background:#61afef2e;border-radius:4px;flex:none;place-items:center;font-size:9px;font-weight:600;display:grid}.sr-label{color:var(--text);white-space:nowrap;font-size:13px;font-weight:600}.sr-hint{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;margin-left:auto;font-size:11.5px;overflow:hidden}.search-empty{color:var(--text-dim);padding:14px;font-size:13px}.search-footer{border-top:1px solid var(--ide-border-soft);color:var(--text-dim);margin:0;padding:9px 14px;font-size:11px}.about-link{color:var(--text-soft);text-decoration:none;transition:color .15s}.about-link:hover{color:var(--accent-blue)}.about-panel{background:var(--ide-bg-alt);border-left:1px solid var(--ide-border);scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex:0 0 296px;padding:18px 20px 24px;overflow-y:auto}.about-comment{font-family:var(--font-mono);color:var(--syn-gray);margin:0 0 10px;font-size:12px}.about-name{color:var(--accent-blue);margin:2px 0 0;font-size:19px;font-weight:700}.about-role{color:var(--syn-purple);margin:3px 0 14px;font-size:13px;font-weight:600}.about-facts{flex-direction:column;gap:9px;margin:0 0 14px;padding:0;list-style:none;display:flex}.about-facts li{color:var(--text-soft);align-items:flex-start;gap:9px;font-size:12.5px;line-height:1.5;display:flex}.about-facts svg{width:14px;height:14px;color:var(--text-muted);flex:none;margin-top:2px}.about-text{color:var(--text-soft);margin:0 0 4px;font-size:13px;line-height:1.65}.about-panel>.about-comment:nth-of-type(2){margin-top:18px}.about-passions{flex-direction:column;gap:7px;margin:0 0 20px;padding:0;list-style:none;display:flex}.about-passions li{color:var(--syn-green);padding-left:16px;font-size:13px;position:relative}.about-passions li:before{content:"";background:var(--ok-green);border-radius:50%;width:5px;height:5px;position:absolute;top:7px;left:2px}.about-stats{flex-direction:column;gap:15px;margin:0;padding:0;list-style:none;display:flex}.stat{align-items:flex-start;gap:12px;display:flex}.stat-ic{border:1px solid var(--ide-border);background:var(--ide-panel);width:32px;height:32px;color:var(--text-muted);border-radius:8px;flex:none;place-items:center;display:grid}.stat-ic svg{width:16px;height:16px}.stat-copy{flex-direction:column;gap:1px;display:flex}.stat-copy strong{color:var(--accent-blue);font-size:16px;font-weight:700}.stat-copy small{color:var(--text-muted);font-size:12px}.projects{border-top:1px solid var(--ide-border);flex:none;padding:18px 22px 26px}.projects-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;display:flex}.projects-comment{font-family:var(--font-mono);color:var(--syn-gray);margin:0 0 4px;font-size:12.5px}.projects-subtitle{color:var(--text-muted);margin:0;font-size:12.5px;line-height:1.45}.project-filters{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.project-filter{border:1px solid var(--ide-border);min-height:36px;color:var(--text-muted);font-family:var(--font-ui);cursor:pointer;background:#ffffff09;border-radius:8px;padding:5px 10px;font-size:11.5px;font-weight:700;transition:border-color .16s,color .16s,background .16s}.project-filter:hover,.project-filter.is-active{color:var(--text);background:#4f8cff1f;border-color:#4f8cff73}.projects-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.project-card{border:1px solid var(--ide-border);background:var(--ide-panel);border-radius:12px;flex-direction:column;gap:10px;padding:16px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.project-card[hidden]{display:none}.project-card.is-featured{background:linear-gradient(180deg, #22c55e13, transparent 58%), var(--ide-panel);border-color:#22c55e42}.project-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px #0006}.tone-blue:hover{border-color:#4f8cff73}.tone-green:hover{border-color:#22c55e73}.tone-purple:hover{border-color:#c678dd73}.tone-orange:hover{border-color:#d19a6673}.project-preview{border:1px solid var(--ide-border-soft);background:var(--ide-bg-alt);border-radius:9px;min-height:76px;margin:-4px -4px 2px;overflow:hidden}.project-preview-image{place-items:center;display:grid}.project-preview-image img{object-fit:cover;width:100%;height:86px;display:block}.tone-orange .project-preview-image img[src$=logo\.svg]{object-fit:contain;background:#f8fafc;padding:14px}.project-preview-console{font-family:var(--font-mono);align-content:center;gap:4px;padding:11px 12px;font-size:10.5px;line-height:1.35;display:grid}.project-preview-console span{color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-preview-console span:first-child{color:var(--ok-green)}.project-preview-console span:nth-child(2){color:var(--accent-blue)}.project-preview-console span:last-child{color:#f87171}.card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.card-title{color:var(--text);margin:0;font-size:14.5px;font-weight:700}.card-tag{letter-spacing:.02em;white-space:nowrap;border-radius:6px;padding:3px 8px;font-size:10px;font-weight:600}.tone-blue .card-tag{color:var(--accent-blue);background:#4f8cff29}.tone-green .card-tag{color:var(--ok-green);background:#22c55e26}.tone-purple .card-tag{color:var(--syn-purple);background:#c678dd26}.tone-orange .card-tag{color:var(--syn-orange);background:#d19a6629}.card-status-row{justify-content:space-between;align-items:center;gap:10px;min-width:0;margin-top:-2px;display:flex}.card-status{color:var(--ok-green);font-family:var(--font-mono);flex:none;font-size:10.5px;font-weight:700}.card-status:before{content:"";vertical-align:1px;background:currentColor;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block;box-shadow:0 0 10px}.card-metric{min-width:0;color:var(--text-dim);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.card-desc{color:var(--text-muted);flex:auto;margin:0;font-size:12.5px;line-height:1.55}.card-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.card-chips li{border:1px solid var(--ide-border);background:var(--ide-bg-alt);font-family:var(--font-mono);color:var(--text-soft);border-radius:6px;padding:3px 8px;font-size:10.5px}.card-link{min-height:44px;font-family:var(--font-ui);color:var(--accent-blue);cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:7px;margin-top:2px;padding:0;font-size:12.5px;font-weight:600;text-decoration:none;transition:gap .15s,color .15s;display:inline-flex}.card-link svg{width:13px;height:9px;transition:transform .15s}.card-link:hover{color:#7aa8ff}.card-link:hover svg{transform:translate(3px)}.ide-terminal{background:var(--ide-bg-alt);border-top:1px solid var(--ide-border);flex:0 0 156px;min-height:132px;overflow:hidden}.terminal-tabs{border-bottom:1px solid var(--ide-border-soft);scrollbar-width:none;align-items:stretch;height:34px;display:flex;overflow-x:auto}.terminal-tab{color:var(--text-muted);font-family:var(--font-ui);white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0 14px;font-size:12px;font-weight:500;transition:color .15s,background .15s;display:inline-flex;position:relative}.terminal-tab:hover{color:var(--text-soft);background:#ffffff0a}.terminal-tab.is-active{color:var(--text)}.terminal-tab.is-active:after{content:"";background:var(--accent-blue);height:2px;position:absolute;bottom:0;left:10px;right:10px}.terminal-body{height:calc(100% - 34px);font-family:var(--font-mono);scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;padding:12px 18px 14px;font-size:12px;line-height:1.6;overflow:auto}.terminal-body p{white-space:pre-wrap;margin:0}.tl-gap{height:8px}.tl-banner{color:var(--ok-green);font-size:11px;line-height:1.25;white-space:pre!important}.tl-prompt{color:var(--syn-purple)}.tl-branch{color:var(--syn-blue)}.tl-dollar{color:var(--ok-green)}.tl-task{color:var(--text-muted)}.tl-info{color:var(--syn-blue);font-weight:600}.tl-dim{color:var(--text-dim)}.tl-class{color:var(--syn-green)}.tl-ok{color:var(--ok-green);font-weight:500}.tl-url{color:var(--accent-blue);text-underline-offset:2px;text-decoration:underline}.tl-url:hover{color:#7aa8ff}.ide-statusbar{height:var(--statusbar-h);background:var(--ide-bg-alt);border-top:1px solid var(--ide-border);color:var(--text-muted);flex:none;justify-content:space-between;align-items:center;gap:16px;padding:0 14px;font-size:11.5px;display:flex}.status-left{align-items:center;gap:10px;min-width:0;display:flex}.status-ic{width:13px;height:13px;color:var(--text-dim);flex:none}.breadcrumbs{white-space:nowrap;align-items:center;gap:6px;min-width:0;display:flex;overflow:hidden}.crumb-sep{color:var(--text-dim)}.crumb.is-last{color:var(--text-soft)}.status-right{white-space:nowrap;align-items:center;gap:14px;display:flex}.ide-content::-webkit-scrollbar{width:8px;height:8px}.editor-view.is-active::-webkit-scrollbar{width:8px;height:8px}.about-panel::-webkit-scrollbar{width:8px;height:8px}.tree-list::-webkit-scrollbar{width:8px;height:8px}.tech-band::-webkit-scrollbar{width:8px;height:8px}.terminal-body::-webkit-scrollbar{width:8px;height:8px}.code-block::-webkit-scrollbar{width:8px;height:8px}.ide-content::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.editor-view.is-active::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.about-panel::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.tree-list::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.tech-band::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.terminal-body::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.code-block::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}@media (width<=1500px){.tech-band{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:10px}.tech-pill:nth-child(3n){border-right:0}}@media (width<=1440px){.progestor-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1350px){.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.logforge-showcase,.pvp-showcase{grid-template-columns:1fr}}@media (width<=1280px){.ide-tree{flex-basis:232px}.about-panel{flex-basis:264px}}@media (width<=1100px){body.ide-body{padding:0}.ide-window{height:100dvh;min-height:0;box-shadow:none;border:0;border-radius:0}.ide-activity,.ide-tree{display:none}.ide-main{min-height:0;display:flex;overflow:hidden}.ide-content{overflow:hidden}.ide-editor-row{flex-direction:column;flex:auto;min-height:0;overflow:hidden}.about-panel{display:none}.projects-grid,.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar-center{display:none}.view-cols{flex-direction:column}.case-layout,.readme-grid,.contact-layout,.logforge-showcase{grid-template-columns:1fr}.proof-grid,.case-study-grid,.repo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.view-shot{flex-basis:auto;max-width:480px}.webs-grid,.progestor-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.editor-content>.code-block,.editor-sticky-wrap,.editor-gutter{display:none}.tech-band{grid-template-columns:1fr;row-gap:8px;padding:10px 8px}.tech-pill{border-right:0}.editor-content{padding:18px 16px 22px}.hero{padding-top:0}.hero-name{font-size:clamp(2rem,10vw,2.6rem)}.projects{padding:16px 16px 22px}.services-panel{padding:14px}.services-grid{grid-template-columns:1fr}.projects-head{flex-direction:column;align-items:stretch;gap:12px}.project-filters{justify-content:flex-start}.project-filter{min-height:44px}.projects-grid,.progestor-gallery{grid-template-columns:1fr}.shot-lightbox{padding:12px}.shot-lightbox__panel{max-height:calc(100dvh - 24px)}.shot-lightbox__panel img{max-height:calc(100dvh - 138px)}.shot-lightbox__nav{gap:6px;min-width:68px;height:36px;font-size:11.5px}.shot-lightbox__nav--prev{left:8px}.shot-lightbox__nav--next{right:8px}.hero-actions .btn{flex:auto;justify-content:center}.topbar-right .topbar-item,.topbar-right .tb-icon:not(:last-child){display:none}.terminal-body{padding:9px 12px 11px;font-size:10.5px}.status-right span:not(:last-of-type),.tree-meta{display:none}.view-inner{padding:16px 16px 24px}.webs-grid{grid-template-columns:1fr}.contact-list li{flex-direction:column;gap:2px}.contact-form{grid-template-columns:1fr}.contact-label{flex-basis:auto}.timeline-list li{grid-template-columns:1fr;gap:5px}.proof-grid,.case-study-grid,.repo-grid{grid-template-columns:1fr}.repo-browser-body{flex-direction:column;max-height:none}.rb-files{border-right:0;border-bottom:1px solid var(--ide-border);flex:none;max-height:180px}}.gutter-line{justify-content:flex-end;align-items:center;gap:6px;height:20px;padding-right:10px;display:flex}.gutter-line.is-active{color:var(--text)}.gutter-run{color:#5fad65;cursor:pointer;place-items:center;width:12px;height:12px;display:inline-grid}.gutter-run svg{fill:currentColor;width:10px;height:10px}.gutter-run:hover{color:#73bd79}.code-block .cl{min-height:20px;display:block}.code-block .cl-active{background:var(--ide-line);margin:0 -26px 0 -22px;padding:0 26px 0 22px}.code-block .cl-active:after{content:"";vertical-align:-2px;background:var(--text);width:1.5px;height:13px;margin-left:1px;animation:1.05s step-end infinite caret-blink;display:inline-block}@keyframes caret-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.code-block .cl-active:after{animation:none}}.editor-sticky-wrap{z-index:5;height:0;position:sticky;top:0}.editor-sticky{background:var(--ide-bg);border-bottom:1px solid var(--ide-border);font-family:var(--font-mono);align-items:center;gap:0;padding:3px 26px 3px 0;font-size:12.5px;display:none;box-shadow:0 3px 8px #00000040}.editor-sticky.is-visible{display:flex}.editor-sticky .sticky-gutter{min-width:52px;color:var(--text-dim);text-align:right;user-select:none;flex:none;padding-right:24px;font-size:12px}.editor-sticky .k{color:var(--syn-orange)}.editor-sticky .t{color:var(--syn-blue)}.insp-warn{text-underline-offset:3px;cursor:help;text-decoration:underline 1px wavy #f2c55c}.insp-typo{text-underline-offset:3px;cursor:help;text-decoration:underline 1px wavy #5fad65}.insp-dim{opacity:.62}.doc-target{cursor:help;position:relative}.ide-tooltip{z-index:300;border:1px solid var(--ide-border);background:var(--ide-panel-2);max-width:420px;color:var(--text-soft);font-family:var(--font-ui);pointer-events:none;border-radius:8px;padding:10px 13px;font-size:12.5px;line-height:1.55;animation:.12s view-in;position:fixed;box-shadow:0 14px 40px #00000080}.ide-tooltip code{font-family:var(--font-mono);color:var(--syn-blue);font-size:12px}.ide-tooltip .tt-sig{border-bottom:1px solid var(--ide-border-soft);font-family:var(--font-mono);color:var(--text);white-space:pre-wrap;margin-bottom:6px;padding-bottom:6px;font-size:12px;display:block}.status-widget{color:var(--text-muted);cursor:default;border-radius:6px;align-items:center;gap:5px;padding:2px 7px;transition:background .15s;display:inline-flex}.status-widget:hover{background:#ffffff0f}.status-widget svg{width:12px;height:12px}.status-ok-dot{background:var(--ok-green);border-radius:50%;width:8px;height:8px}.status-branch svg{fill:none;stroke:currentColor;stroke-width:1.4px}.status-indexing{color:var(--text-muted);align-items:center;gap:8px;font-size:11.5px;display:inline-flex}.status-indexing[hidden]{display:none}.indexing-bar{background:#ffffff1a;border-radius:3px;width:110px;height:4px;position:relative;overflow:hidden}.indexing-bar:after{content:"";background:var(--accent-blue);border-radius:3px;width:40%;animation:1.1s ease-in-out infinite indexing-slide;position:absolute;inset:0}@keyframes indexing-slide{0%{transform:translate(-100%)}to{transform:translate(260%)}}.tip-overlay{z-index:280;backdrop-filter:blur(3px);background:#05060a8c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.tip-overlay[hidden]{display:none}.tip-dialog{border:1px solid var(--ide-border);background:var(--ide-panel-2);border-radius:13px;width:min(520px,100%);animation:.16s view-in;overflow:hidden;box-shadow:0 30px 80px #0009}.tip-head{border-bottom:1px solid var(--ide-border);color:var(--text);align-items:center;gap:9px;padding:13px 16px;font-size:13.5px;font-weight:600;display:flex}.tip-head svg{color:#f2c55c;width:16px;height:16px}.tip-body{color:var(--text-soft);padding:16px;font-size:13.5px;line-height:1.65}.tip-body code{background:var(--ide-bg);font-family:var(--font-mono);color:var(--syn-blue);border-radius:5px;padding:1px 6px;font-size:12px}.tip-foot{border-top:1px solid var(--ide-border-soft);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.tip-foot label{color:var(--text-muted);cursor:pointer;align-items:center;gap:7px;font-size:12px;display:inline-flex}.tip-foot .btn{padding:7px 16px;font-size:12.5px}.test-results{border:1px solid var(--ide-border);background:var(--ide-bg-alt);border-radius:11px;grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);gap:0;margin:0 0 22px;display:grid;overflow:hidden}.test-results-head{border-bottom:1px solid var(--ide-border);background:var(--ide-panel);color:var(--text);grid-column:1/-1;align-items:center;gap:10px;padding:9px 13px;font-size:12.5px;font-weight:600;display:flex}.test-results-head .status-ok-dot{box-shadow:0 0 10px var(--ok-green)}.test-results-head small{color:var(--text-dim);font-family:var(--font-mono);margin-left:auto;font-size:11px;font-weight:400}.test-tree{border-right:1px solid var(--ide-border);font-family:var(--font-mono);color:var(--text-soft);margin:0;padding:10px 12px 14px;font-size:12px;list-style:none}.test-tree li{padding:3px 0 3px calc(var(--tdepth,0) * 16px);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:7px;display:flex;overflow:hidden}.test-tree .t-ok{color:var(--ok-green);flex:none}.test-tree .t-ms{color:var(--text-dim);margin-left:auto;font-size:11px}.test-out{font-family:var(--font-mono);color:var(--text-muted);white-space:pre-wrap;margin:0;padding:12px 14px 16px;font-size:11.5px;line-height:1.6;overflow-x:auto}.test-out .t-pass{color:var(--ok-green)}.bp-line{background:#db586024;margin:0 -26px 0 -22px;padding:0 26px 0 22px}.gutter-bp{background:#db5860;border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.debug-panel{border:1px solid var(--ide-border);background:var(--ide-bg-alt);border-radius:11px;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);margin:0 0 22px;display:grid;overflow:hidden}.debug-panel-head{border-bottom:1px solid var(--ide-border);background:var(--ide-panel);color:var(--text);grid-column:1/-1;align-items:center;gap:9px;padding:9px 13px;font-size:12.5px;font-weight:600;display:flex}.debug-panel-head svg{color:#db5860;width:13px;height:13px}.debug-frames{border-right:1px solid var(--ide-border);font-family:var(--font-mono);color:var(--text-muted);margin:0;padding:10px 12px 14px;font-size:11.5px;list-style:none}.debug-frames li{white-space:nowrap;text-overflow:ellipsis;border-radius:5px;padding:3px 6px;overflow:hidden}.debug-frames li.is-current{background:var(--ide-selection);color:var(--text)}.debug-frames .df-loc{color:var(--text-dim)}.debug-vars{font-family:var(--font-mono);color:var(--text-soft);white-space:pre-wrap;margin:0;padding:10px 14px 14px;font-size:12px;line-height:1.7;overflow-x:auto}.debug-vars .dv-name{color:var(--syn-purple)}.debug-vars .dv-type{color:var(--text-dim)}.debug-vars .dv-val{color:var(--syn-green)}.debug-vars .dv-num{color:var(--syn-number)}.ic-class,.tab-ic,.sr-ic{color:#d5e2f2;background:#3b6ea8;border-radius:50%}.ic-test{color:#d3ecd4!important;background:#3d6b40!important}.ic-yml-badge{color:#f1e6c8!important;background:#6e5f3c!important;border-radius:4px!important}.ic-md-badge{color:#d9e2ea!important;background:#46535e!important;border-radius:4px!important}.ic-gradle-badge{color:#c8ecd8!important;background:#204b34!important;border-radius:4px!important}.maven-badge{vertical-align:middle;align-items:center;margin-left:4px;display:inline-flex}.maven-badge img{height:20px;display:block}
