:root{--gi-accent:#2ea043;--gi-accent-dark:#238636;--gi-accent-soft:#e6f4ea;--gi-terminal-bg:#0d1117;--gi-terminal-bar:#161b22;--gi-terminal-border:#30363d;--gi-terminal-text:#c9d1d9;--gi-terminal-dim:#7d8590;--gi-terminal-comment:#58a6ff;--gi-mono:ui-monospace, "SF Mono", "Cascadia Code", "JetBrains Mono", Menlo, Consolas, monospace}.tool.gitignore-tool{width:min(100%, var(--page-width))}.gitignore-tool .tool-header p code{background:var(--gi-accent-soft);color:var(--gi-accent-dark);font-family:var(--gi-mono);border-radius:6px;padding:.1em .4em;font-size:.9em}.gi-layout{gap:var(--space-lg);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;display:grid}@media (width<=960px){.gi-layout{grid-template-columns:1fr}}.gi-search input{width:100%;font:inherit;border-radius:var(--radius);border:1px solid #ccc;padding:.75rem 1rem;font-size:1rem}.gi-search input:focus-visible{outline:2px solid var(--gi-accent);outline-offset:1px;border-color:var(--gi-accent)}.gi-selected-wrap{margin-top:1rem}.gi-selected-label{letter-spacing:.02em;text-transform:uppercase;color:#666;margin-bottom:.5rem;font-size:.8rem;font-weight:600;display:block}.gi-selected{flex-wrap:wrap;gap:.5rem;min-height:2.25rem;display:flex}.gi-empty-hint{color:#888;padding:.35rem 0;font-size:.9rem}.gi-chip-selected{background:var(--gi-accent);color:#fff;border:1px solid var(--gi-accent-dark);border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .5rem .4rem .85rem;font-size:.9rem;line-height:1;display:inline-flex}.gi-chip-selected button{color:#fff;cursor:pointer;background:#ffffff40;border:none;border-radius:50%;justify-content:center;align-items:center;width:1.15rem;height:1.15rem;padding:0;font-size:.85rem;line-height:1;display:inline-flex}.gi-chip-selected button:hover{background:#fff6}.gi-categories{flex-direction:column;gap:.75rem;margin-top:1.25rem;display:flex}.gi-category{border-radius:var(--radius);border:1px solid #ddd;overflow:hidden}.gi-category-toggle{width:100%;font:inherit;text-align:left;cursor:pointer;background:#fafafa;border:none;justify-content:space-between;align-items:center;padding:.85rem 1rem;font-weight:600;display:flex}.gi-category-toggle:hover{background:#f2f2f2}.gi-category-count{color:#888;margin-left:.5rem;font-size:.85rem;font-weight:400}.gi-category-toggle .chev{color:#999;transition:transform .15s}.gi-category-toggle[aria-expanded=true] .chev{transform:rotate(180deg)}.gi-category-items{flex-wrap:wrap;gap:.5rem;padding:.9rem 1rem 1rem;display:flex}.gi-category-items[hidden]{display:none}.gi-item{font:inherit;cursor:pointer;background:#fff;border:1px solid #d0d0d0;border-radius:999px;align-items:center;gap:.35rem;padding:.45rem .8rem;font-size:.88rem;transition:border-color .12s,background .12s,color .12s;display:inline-flex}.gi-item:hover{border-color:var(--gi-accent)}.gi-item[aria-pressed=true]{background:var(--gi-accent-soft);border-color:var(--gi-accent);color:var(--gi-accent-dark);font-weight:600}.gi-item[hidden]{display:none}.gi-accordion{border-radius:var(--radius);border:1px solid #ddd;margin-top:1rem;overflow:hidden}.gi-accordion-toggle{width:100%;font:inherit;text-align:left;cursor:pointer;background:#fafafa;border:none;justify-content:space-between;align-items:center;padding:.85rem 1rem;font-weight:600;display:flex}.gi-accordion-toggle:hover{background:#f2f2f2}.gi-accordion-toggle .chev{color:#999;transition:transform .15s}.gi-accordion-toggle[aria-expanded=true] .chev{transform:rotate(180deg)}.gi-accordion-body{border-top:1px solid #eee;padding:1rem}.gi-accordion-body[hidden]{display:none}.gi-accordion-hint{color:#777;margin:0 0 .75rem;font-size:.85rem}.gi-extras{flex-direction:column;gap:.6rem;display:flex}.gi-extra-item{cursor:pointer;align-items:baseline;gap:.6rem;font-size:.92rem;display:flex}.gi-extra-item input{accent-color:var(--gi-accent);margin-top:.15rem}.gi-extra-hint{color:#888;font-family:var(--gi-mono);font-size:.8rem}.gi-import-textarea{width:100%;min-height:140px;font-family:var(--gi-mono);border-radius:var(--radius);resize:vertical;border:1px solid #ccc;padding:.75rem;font-size:.85rem;line-height:1.6}.gi-output{position:sticky;top:1rem}.gi-terminal{background:var(--gi-terminal-bg);border:1px solid var(--gi-terminal-border);border-radius:var(--radius);overflow:hidden}.gi-terminal-bar{background:var(--gi-terminal-bar);border-bottom:1px solid var(--gi-terminal-border);align-items:center;gap:.75rem;padding:.65rem .9rem;display:flex}.gi-dots{gap:.4rem;display:flex}.dot{border-radius:50%;width:.65rem;height:.65rem;display:inline-block}.dot-red{background:#ff5f56}.dot-yellow{background:#ffbd2e}.dot-green{background:#27c93f}.gi-filename{font-family:var(--gi-mono);color:var(--gi-terminal-dim);font-size:.8rem}.gi-comments-toggle{color:var(--gi-terminal-dim);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.4rem;margin-left:auto;font-size:.78rem;display:inline-flex}.gi-comments-toggle input{accent-color:var(--gi-accent)}.gi-preview{width:100%;min-height:420px;color:var(--gi-terminal-text);font-family:var(--gi-mono);resize:vertical;caret-color:var(--gi-accent);background:0 0;border:none;padding:1rem;font-size:.85rem;line-height:1.7;display:block}.gi-preview::placeholder{color:var(--gi-terminal-dim)}.gi-preview:focus-visible{outline:none}.gi-meta{color:#888;flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-top:.6rem;font-size:.8rem;display:flex}.gi-meta-note{color:#aaa}.gi-actions{flex-wrap:wrap;gap:.6rem;margin-top:1rem;display:flex}.gi-actions button{font:inherit;border-radius:var(--radius);cursor:pointer;border:1px solid #0000;padding:.65rem 1.1rem;font-size:.9rem;transition:background .15s,border-color .15s,opacity .15s}.gi-actions button:disabled{opacity:.5;cursor:not-allowed}.primary-button{background:var(--gi-accent);border-color:var(--gi-accent-dark);color:#fff}.primary-button:hover:not(:disabled){background:var(--gi-accent-dark)}.secondary-button{background:#fff;border-color:#ccc}.secondary-button:hover:not(:disabled){background:#f0f0f0;border-color:#999}.danger-button{color:#c62828;background:#fff;border-color:#ef9a9a}.danger-button:hover:not(:disabled){background:#ffebee}@media (width<=960px){.gi-output{position:static}}@media (width<=600px){.gi-category-items{gap:.4rem}.gi-preview{min-height:320px}}
