:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{height:100vh;width:100vw;margin:0;padding:0;overflow:hidden}@media (max-width: 1100px){html,body,#root{overflow:auto}}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root[data-theme=dark]{color:#ffffffde;background-color:#242424;color-scheme:dark}:root[data-theme=dark] a:hover{color:#535bf2}:root[data-theme=dark] button{background-color:#1a1a1a}:root[data-theme=light]{color:#213547;background-color:#fff;color-scheme:light}:root[data-theme=light] a:hover{color:#747bff}:root[data-theme=light] button{background-color:#f9f9f9}.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}:root{--radius: 10px;--radius-sm: 8px;--radius-lg: 14px;--shadow-1: 0 1px 2px rgba(0,0,0,.05), 0 8px 24px rgba(0,0,0,.06);--shadow-2: 0 2px 8px rgba(0,0,0,.08), 0 12px 28px rgba(0,0,0,.12);--surface-1: color-mix(in oklab, Canvas 96%, transparent);--surface-2: color-mix(in oklab, Canvas 92%, transparent);--border-col: color-mix(in hsl, currentColor 18%, transparent);--ring: #646cff;--primary: #646cff;--primary-contrast: CanvasText}[data-theme=dark]{--surface-1: color-mix(in oklab, Canvas 88%, transparent);--surface-2: color-mix(in oklab, Canvas 84%, transparent);--border-col: color-mix(in hsl, currentColor 26%, transparent);--ring: #a3a6ff;--primary: #a3a6ff}:where(button,[role=button],a,input,select,textarea):focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--radius-sm)}.btn{--_bg: transparent;--_fg: inherit;--_bd: var(--border-col);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem .75rem;border:1px solid var(--_bd);border-radius:var(--radius-sm);background:var(--_bg);color:var(--_fg);cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .05s ease}.btn:hover{background:color-mix(in oklab,currentColor 10%,transparent)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{--_bg: var(--primary);--_fg: var(--primary-contrast);--_bd: color-mix(in oklab, var(--primary) 85%, black)}.btn-ghost{--_bg: transparent;--_bd: var(--border-col)}.btn-icon{padding:.5rem;width:36px;height:36px}.input,.select,.textarea{padding:.4rem .55rem;border-radius:var(--radius-sm);border:1px solid var(--border-col);background:transparent;color:inherit}.select{padding-right:1.75rem}.textarea{resize:vertical}.badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;padding:.2rem .45rem;border:1px solid var(--border-col);border-radius:999px;background:var(--surface-1)}.badge.m{color:#e5c07b;border-color:currentColor}.badge.a{color:#7cc37f;border-color:currentColor}.badge.d{color:#e06c75;border-color:currentColor}.row{display:flex;align-items:center;gap:.5rem}.row-between{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.ml-auto{margin-left:auto}.v-divider{border-left:1px solid var(--border-col);height:22px}.img-rounded{border-radius:8px;display:block}#root{max-width:1440px;margin:0 auto}.container{display:flex;flex-direction:column;gap:1.25rem}.header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;grid-area:header;position:sticky;top:0;z-index:5;backdrop-filter:blur(6px)}.brand{display:flex;align-items:center;gap:.75rem}.header h1{margin:0;font-size:1.75rem;line-height:1.25}.tag{font-size:.85rem;padding:.25rem .5rem;border-radius:6px;border:1px solid color-mix(in hsl,currentColor 20%,transparent);opacity:.85}.path-display{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel{border:1px solid var(--border-col);border-radius:var(--radius);background:var(--surface-1);box-shadow:var(--shadow-1);padding:1rem 1.25rem}.panel h2{margin:0 0 .5rem;font-size:1.15rem}.panel ul{padding-left:1.25rem;margin:.25rem 0 .75rem;display:grid;gap:.25rem}.hint{margin:.25rem 0 0;font-size:.9rem;opacity:.8}a.hint,a.hint:visited,a.hint:hover,a.hint:active{color:inherit}.landing-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:1.25rem;align-items:start}.landing-visual{border:1px solid var(--border-col);border-radius:var(--radius);padding:.75rem;background:var(--surface-1);box-shadow:var(--shadow-1)}.landing-visual-stack{position:relative}.landing-visual-button{display:block;padding:0;margin:0;border:0;background:transparent;width:100%;cursor:pointer}.landing-visual-overlay{position:absolute;inset:.75rem}.landing-visual-button:focus-visible{outline:2px solid #646cff;outline-offset:2px;border-radius:8px}.example-output{max-height:360px;overflow:auto;border-radius:8px;border:1px solid var(--border-col);background:Canvas;color:CanvasText;padding:.75rem}.how-list{list-style:none;padding:0;margin:.5rem 0 0;display:grid;gap:.75rem}.how-item{display:grid;grid-template-columns:24px 1fr;gap:.75rem;align-items:start}@media (max-width: 920px){.landing-grid{grid-template-columns:1fr}}button{display:inline-flex;align-items:center;gap:.5rem}.icon-only{padding:.6em;gap:0}.gc-overlay{position:fixed;inset:0;display:grid;place-items:center;padding:1rem;background:linear-gradient(to bottom,color-mix(in oklab,Canvas 70%,transparent),color-mix(in oklab,Canvas 92%,transparent));backdrop-filter:blur(3px);z-index:1000}.app-container{display:grid;grid-template-areas:"header header header" "left   resizer right";grid-template-columns:clamp(240px,var(--left-col, 40%),55%) 6px 1fr;grid-template-rows:auto 1fr;gap:1.25rem;height:100vh;height:100dvh;padding:2rem 2rem 4.5rem;box-sizing:border-box}.app-container.landing-full{grid-template-areas:"header" "left";grid-template-columns:1fr}.left-panel,.right-panel{display:flex;flex-direction:column;gap:1.25rem;overflow:visible;padding:.25rem;min-height:0}.left-panel .panel-section:last-child,.right-panel .panel-section:last-child{display:flex;flex-direction:column;flex:1;min-height:0}.left-panel{grid-area:left}.right-panel{grid-area:right}.column-resizer{grid-area:resizer;width:6px;cursor:col-resize;align-self:stretch;justify-self:center;background:color-mix(in hsl,currentColor 16%,transparent);border-radius:3px;touch-action:none;-webkit-user-select:none;user-select:none;position:relative}.column-resizer:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:2px;height:48px;border-radius:2px;background:repeating-linear-gradient(to bottom,color-mix(in hsl,currentColor 40%,transparent) 0 6px,transparent 6px 12px);opacity:.85}.column-resizer:focus-visible{outline:2px solid #646cff;outline-offset:2px;border-radius:4px}.column-resizer:hover{background:color-mix(in hsl,currentColor 24%,transparent)}.app-container.resizing,.app-container.resizing *{user-select:none!important}.panel-section{border:1px solid var(--border-col);border-radius:var(--radius);background:var(--surface-2);padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.panel-section h2{margin:0;font-size:.9rem;font-weight:600;text-transform:uppercase;opacity:.9;border-bottom:none;padding-bottom:0;margin-bottom:.5rem}.instructions-textarea{width:100%;min-height:100px;background-color:transparent;border:1px solid var(--border-col);border-radius:6px;padding:.5rem;font-family:inherit;color:inherit}.status-m{color:#e5c07b}.status-a{color:#98c379}.status-d{color:#e06c75}@media (prefers-color-scheme: light){.status-m{color:#b58500}.status-a{color:#2e7d27}.status-d{color:#b82e1f}}.file-tree-view ul{list-style:none;padding-left:20px;position:relative}.file-tree-view ul:before{content:"";position:absolute;top:0;left:10px;width:1px;height:100%;background-color:color-mix(in hsl,currentColor 30%,transparent)}.file-tree-view li{position:relative}.file-tree-view li:before{content:"";position:absolute;top:12px;left:-10px;width:10px;height:1px;background-color:color-mix(in hsl,currentColor 30%,transparent)}.file-tree-view li:last-child>ul:before{height:12px}.tree-row,.selected-file-row{border-radius:var(--radius-sm)}.tree-row:hover,.selected-file-row:hover{background:color-mix(in oklab,currentColor 8%,transparent)}.status-bar{display:flex;flex-direction:column;gap:.5rem}.status-bar-text{font-size:.9rem;opacity:.9}.status-bar-track{width:100%;height:8px;background-color:color-mix(in hsl,currentColor 15%,transparent);border-radius:4px;overflow:hidden}.status-bar-fill{height:100%;background-color:var(--primary);border-radius:4px;transition:width .3s ease-in-out}.status-bar-fill.indeterminate{position:relative;width:40%;animation:statusbar-slide 1.2s ease-in-out infinite}@keyframes statusbar-slide{0%{transform:translate(-40%)}50%{transform:translate(40%)}to{transform:translate(120%)}}.status-footer-fixed{position:fixed;left:0;right:0;bottom:0;padding:.6rem 2rem .8rem;background:linear-gradient(to top,color-mix(in oklab,Canvas 92%,transparent) 65%,transparent);backdrop-filter:blur(3px);border-top:1px solid color-mix(in hsl,currentColor 20%,transparent);z-index:100}.gc-overlay-card{max-width:680px;width:100%;border-radius:12px;border:1px solid color-mix(in hsl,currentColor 20%,transparent);background:Canvas;color:CanvasText;box-shadow:0 10px 30px #00000014,0 2px 10px #0000000a;padding:1.25rem 1.5rem}.gc-overlay-card h2{margin:0 0 .5rem;font-size:1.35rem}.gc-overlay-card p{margin:.25rem 0}.gc-small{font-size:.9rem;opacity:.85}.gc-overlay-card a{color:inherit;text-decoration:underline;text-underline-offset:2px}.gc-modal-backdrop{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:color-mix(in hsl,black 45%,transparent);z-index:1000}.gc-modal{background:Canvas;color:CanvasText;border:1px solid var(--border-col);border-radius:var(--radius);width:min(1200px,96vw);max-height:86vh;display:flex;flex-direction:column;box-shadow:var(--shadow-2)}.gc-modal-header{position:sticky;top:0;display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-col);background:var(--surface-1)}.gc-modal-body{padding:.75rem 1rem;overflow:auto}.header-controls{display:grid;grid-template-columns:minmax(280px,1fr) auto auto;gap:.5rem;align-items:center;min-width:0}.ws-wrap{position:relative;min-width:0}.ws-card{border:1px solid var(--border-col);border-radius:var(--radius-sm);padding:.5rem .75rem;background:var(--surface-2)}.ws-select-overlay{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.selected-files{width:100%;display:flex;flex-direction:column;min-height:0}.selected-files-list{border:1px solid var(--border-col);border-radius:8px;padding:.5rem;flex:1;min-height:0;overflow-y:auto}@media (max-width: 1100px){.app-container{grid-template-areas:"header" "left" "right";grid-template-columns:1fr;grid-template-rows:auto auto 1fr;min-height:100vh;min-height:100dvh;height:auto}.column-resizer{display:none}.left-panel,.right-panel{padding:0}}@media (max-width: 700px){.app-container{padding:1rem 1rem 4.5rem}.header{flex-wrap:wrap;gap:.5rem}.header img[alt=GitContext]{height:40px}}.selected-file-row{display:flex;align-items:center;gap:8px;padding:4px 0;flex-wrap:nowrap}.selected-file-row .tokens{opacity:.8;min-width:64px;text-align:right}@media (max-width: 700px){.selected-file-row{flex-wrap:wrap}.selected-file-row .tokens{order:3;width:100%;min-width:0;text-align:left}}@media (hover: none) and (pointer: coarse){button.icon-only{padding:.75em}.btn-icon{width:40px;height:40px}}code[class*=language-],pre[class*=language-]{color:#000;background:none;text-shadow:0 1px white;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{text-shadow:none;background:#b3d4fc}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#905}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#690}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color:#9a6e3a;background:#ffffff80}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function,.token.class-name{color:#dd4a68}.token.regex,.token.important,.token.variable{color:#e90}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}
