:root{--bg: #e4f2f6;--surface: #ffffff;--surface-hi: #eef8fb;--border: #b5d7e2;--border-hi: #4db8ce;--text: #0a2a36;--muted: #3d6a7a;--accent: #007a96;--accent-hover: #00a8c8;--chip: #e8a200;--chip-dark: #b87c00;--success: #159a4a;--warning: #d97706;--error: #dc2626;--font: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--radius: 10px}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:var(--font);background:radial-gradient(ellipse 80% 50% at 50% -10%,rgba(0,168,200,.14),transparent 55%),linear-gradient(180deg,#d8eef4 0%,var(--bg) 40%,#eaf6f9 100%);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased}.app{max-width:34rem;margin:0 auto;padding:0 1.5rem 4rem}header{margin-bottom:1.75rem;padding-top:2.75rem}header h1{margin:0 0 .4rem;font-size:1.75rem;font-weight:900;font-style:normal;letter-spacing:-.03em;line-height:1.15;color:var(--text)}header h1 em{font-style:italic;color:var(--accent);background:linear-gradient(120deg,var(--accent) 0%,var(--accent-hover) 55%,#5ad4ea 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.subtitle{margin:0;color:var(--muted);font-size:.88rem;letter-spacing:.01em}.supported-games{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.7rem}.supported-games-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}.supported-games ul{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none}.supported-games li{display:flex;align-items:center;gap:.4rem;padding:.2rem .6rem;background:var(--surface-hi);border:1px solid var(--border);border-radius:999px;font-size:.72rem;font-weight:600;color:var(--muted)}.region-tag{padding:.05rem .4rem;background:var(--surface);border:1px solid var(--border);border-radius:999px;font-size:.62rem;font-weight:700;letter-spacing:.03em;color:var(--accent)}.panel{margin-top:1rem;padding:1rem 1.25rem;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:0 1px 4px #007a9612}.panel label{display:block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:.6rem}.field-hint{margin:.55rem 0 0;font-size:.78rem;color:var(--muted);line-height:1.45}.field-hint code,.game-guide-note code,#gate-meta code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86em;padding:.05em .3em;background:var(--surface-hi);border:1px solid var(--border);border-radius:4px}.region-inline{font-weight:700;color:var(--accent)}#game-select,#chip-id{width:100%;padding:.6rem .75rem;font-size:.92rem;font-family:inherit;color:var(--text);background:var(--surface-hi);border:1.5px solid var(--border);border-radius:7px;outline:none;transition:border-color .15s,box-shadow .15s}#game-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%233d6a7a' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}#game-select:focus,#chip-id:focus{border-color:var(--accent);box-shadow:0 0 0 3px #007a9624}#game-select:disabled,#chip-id:disabled{opacity:.5}.chip-row{display:flex;gap:.5rem;align-items:stretch}.chip-row #chip-id{flex:1;min-width:0}.chip-row button{flex:0 0 auto;padding-left:.9rem;padding-right:.9rem}.chips-panel-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.chips-panel-header-start{display:flex;align-items:center;gap:.3rem;min-width:0}.chips-panel-header label{margin-bottom:0}.chips-folder-tools{display:inline-flex;align-items:center;gap:.05rem}.chips-header-icon-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.55rem;height:1.55rem;padding:0;border:0;border-radius:.3rem;background:transparent;color:color-mix(in srgb,var(--muted) 72%,transparent);cursor:pointer;transition:color .14s ease,background .14s ease}.chips-header-icon-btn svg{width:.95rem;height:.95rem;display:block}.chips-header-icon-btn:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.chips-header-icon-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:1px}.chips-panel-header-end{display:flex;align-items:center;gap:.55rem;min-width:0}.chips-panel .chip-status{margin:0;text-align:right;font-size:.75rem;font-weight:600;color:var(--muted)}.chips-expand-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1.5px solid var(--border);border-radius:.45rem;background:var(--surface-hi);color:var(--muted);cursor:pointer;transition:color .14s ease,border-color .14s ease,background .14s ease}.chips-expand-btn:hover{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.chips-expand-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.chips-expand-icon{width:1.05rem;height:1.05rem;display:block}.chips-expand-icon--exit{display:none}body.chips-focus{overflow:hidden}body.chips-focus .app{max-width:none;margin:0;padding:0;min-height:100vh;min-height:100dvh}body.chips-focus .app>:not(.chips-panel),body.chips-focus #gblink-launcher-return{display:none!important}body.chips-focus .chips-panel{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;margin:0;padding:1rem 1.15rem 1.25rem;border:none;border-radius:0;box-shadow:none;background:var(--surface);overflow:hidden}body.chips-focus .chips-panel .chip-grid{flex:1 1 auto;max-height:none;min-height:0;grid-template-columns:repeat(auto-fill,minmax(min(100%,5.75rem),1fr))}body.chips-focus .chips-expand-icon--enter{display:none}body.chips-focus .chips-expand-icon--exit{display:block}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chip-search{margin-bottom:.75rem}.chip-search input{width:100%;box-sizing:border-box;padding:.65rem .85rem;font-size:.95rem;font-weight:600;color:var(--text);background:var(--surface-hi);border:1.5px solid var(--border);border-radius:.55rem;outline:none;transition:border-color .15s,box-shadow .15s}.chip-search input::placeholder{color:var(--muted);font-weight:500}.chip-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.chip-search input:disabled{opacity:.65}.chip-categories{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.85rem}.folder-tools-status{margin:-.35rem 0 .65rem;font-size:.72rem;font-weight:600;color:var(--muted);opacity:1;transition:opacity .45s ease}.folder-tools-status.is-fading{opacity:0}.folder-tools-status.is-error{color:var(--danger, #b91c1c)}.folder-tools-status[hidden]{display:none}.chip-categories-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.chip-categories-row--filters{padding-top:.1rem}.chip-filter-label{font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.chip-filter-pill{--cat-accent: var(--accent);--cat-border: var(--border-hi);--cat-bg: var(--surface);--cat-fg: var(--muted);text-transform:none;letter-spacing:.02em}.chip-category-pill:disabled{opacity:.45;cursor:default}.chip-grid-empty{grid-column:1 / -1;margin:.5rem 0 0;padding:1.1rem .75rem;text-align:center;font-size:.85rem;font-weight:600;color:var(--muted)}.chip-category-pill{flex:0 0 auto;padding:.35rem .75rem;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--cat-fg, var(--muted));background:var(--cat-bg, var(--surface-hi));border:1.5px solid var(--cat-border, var(--border));border-radius:999px;cursor:pointer;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.chip-category-pill:hover{border-color:var(--cat-accent, var(--accent));color:var(--cat-accent, var(--accent));background:color-mix(in srgb,var(--cat-accent, var(--accent)) 10%,var(--surface))}.chip-category-pill.is-active{color:#fff;background:var(--cat-accent, var(--accent));border-color:var(--cat-accent, var(--accent));box-shadow:0 2px 8px color-mix(in srgb,var(--cat-accent, var(--accent)) 40%,transparent)}.chip-category-pill[data-category=favorites],.chip-grid[data-category=favorites],.chip-cell[data-category=favorites]{--cat-accent: #d4a000;--cat-border: #e8c45a;--cat-bg: #fff8e0;--cat-fg: #8a6200}.chip-category-pill--favorites{display:inline-flex;align-items:center;justify-content:center;padding:.35rem .55rem;min-width:2.1rem}.chip-category-pill--favorites .chip-star-icon{width:.95rem;height:.95rem;display:block;fill:currentColor;stroke:none}.chip-folder-pill-wrap{position:relative;display:inline-flex;align-items:center;--cat-border: color-mix(in srgb, var(--cat-accent) 55%, #fff);--cat-bg: color-mix(in srgb, var(--cat-accent) 14%, #fff);--cat-fg: color-mix(in srgb, var(--cat-accent) 72%, #000)}.chip-category-pill--folder{display:inline-flex;align-items:center;gap:.3rem;max-width:9.5rem;padding-left:.55rem;padding-right:1.55rem}.chip-category-pill--folder .chip-folder-icon{flex:0 0 auto;width:.85rem;height:.85rem;display:block}.chip-category-pill--folder .chip-folder-pill-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-category-pill--add-folder{display:inline-flex;align-items:center;justify-content:center;min-width:2.1rem;padding:.35rem .55rem;font-size:1rem;font-weight:700;line-height:1;color:var(--muted);background:transparent;border-style:dashed;border-color:var(--border)}.chip-category-pill--add-folder:hover:not(:disabled){color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.chip-category-pill--add-folder.is-active{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:var(--accent);box-shadow:none}.chip-pill-edit-btn{position:absolute;top:50%;right:.2rem;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;padding:0;margin:0;border:none;border-radius:999px;transform:translateY(-50%);background:color-mix(in srgb,#fff 78%,transparent);color:var(--cat-fg, var(--muted));cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:opacity .14s ease,background .14s ease,color .14s ease}.chip-pill-edit-btn .chip-pill-edit-icon{width:.7rem;height:.7rem;display:block}.chip-pill-edit-btn:hover:not(:disabled){background:#fff;color:var(--cat-accent, var(--accent))}.chip-pill-edit-btn:disabled{opacity:.4;cursor:default}@media(hover:hover)and (pointer:fine){.chip-pill-edit-btn{opacity:0;pointer-events:none}.chip-folder-pill-wrap:hover .chip-pill-edit-btn,.chip-folder-pill-wrap:focus-within .chip-pill-edit-btn{opacity:1;pointer-events:auto}}.chip-category-pill[data-category=navi],.chip-grid[data-category=navi],.chip-cell[data-category=navi]{--cat-accent: #7b4fc4;--cat-border: #b89ae0;--cat-bg: #f3ecfb;--cat-fg: #55358a}.chip-category-pill[data-category=standard],.chip-grid[data-category=standard],.chip-cell[data-category=standard]{--cat-accent: #d4b000;--cat-border: #e8d04a;--cat-bg: #fffce6;--cat-fg: #7a6800}.chip-category-pill[data-category=mega],.chip-grid[data-category=mega],.chip-cell[data-category=mega]{--cat-accent: #2b6fd4;--cat-border: #7aabe8;--cat-bg: #e8f1fc;--cat-fg: #1a4a96}.chip-category-pill[data-category=secret],.chip-grid[data-category=secret],.chip-cell[data-category=secret]{--cat-accent: #0b4f5c;--cat-border: #7aa3ac;--cat-bg: #e2eef1;--cat-fg: #083d48}.chip-category-pill[data-category=giga],.chip-grid[data-category=giga],.chip-cell[data-category=giga]{--cat-accent: #c62828;--cat-border: #e08080;--cat-bg: #fceaea;--cat-fg: #8a1a1a}.chip-category-pill[data-category=pa],.chip-grid[data-category=pa],.chip-cell[data-category=pa]{--cat-accent: #c0267a;--cat-border: #e879b0;--cat-bg: #fdf2f8;--cat-fg: #9d174d}.chip-category-pill[data-category=dark],.chip-grid[data-category=dark],.chip-cell[data-category=dark]{--cat-accent: #1a3340;--cat-border: #6b8490;--cat-bg: #e8eef1;--cat-fg: #142830}.chip-category-pill[data-category=mod],.chip-grid[data-category=mod],.chip-cell[data-category=mod]{--cat-accent: #4a6b7c;--cat-border: #a3b8c4;--cat-bg: #eaf1f4;--cat-fg: #34505c}.chip-category-pill[data-category=support],.chip-grid[data-category=support],.chip-cell[data-category=support]{--cat-accent: #2a9aab;--cat-border: #8fd0db;--cat-bg: #e6f7f9;--cat-fg: #1a6f7c}.chip-category-pill[data-category=minigames],.chip-grid[data-category=minigames],.chip-cell[data-category=minigames]{--cat-accent: #00a8c8;--cat-border: #7ad4e6;--cat-bg: #e5f7fb;--cat-fg: #007a96}.chip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,5.35rem),1fr));gap:.55rem .45rem;align-content:start;justify-items:stretch;max-height:min(28rem,55vh);overflow-x:hidden;overflow-y:auto;padding:.45rem .3rem .65rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 45%,transparent) transparent}.chip-grid::-webkit-scrollbar{width:6px;height:0}.chip-grid::-webkit-scrollbar-track{background:transparent}.chip-grid::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 45%,transparent);border-radius:99px}.chip-grid::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent) 70%,transparent)}.chip-grid::-webkit-scrollbar-corner{background:transparent}.chip-cell-wrap{position:relative;min-width:0;width:100%;aspect-ratio:10 / 14;align-self:start}.chip-fav-btn{position:absolute;top:.12rem;right:.08rem;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:1.85rem;height:1.85rem;padding:0;border:none;border-radius:999px;background:color-mix(in srgb,#fff 82%,transparent);box-shadow:0 1px 3px #14284638;color:#9a8a5a;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:color .14s ease,background .14s ease,transform .14s ease,opacity .14s ease}.chip-fav-btn .chip-star-icon{width:.95rem;height:.95rem;display:block;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linejoin:round}.chip-fav-btn:hover{color:#c99200;background:#fff;transform:scale(1.06)}.chip-fav-btn.is-favorited{color:#c99200;background:#fff8e0}.chip-fav-btn.is-favorited .chip-star-icon{fill:currentColor;stroke:currentColor}.chip-fav-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.chip-folder-btn{position:absolute;top:.12rem;left:.08rem;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:1.85rem;height:1.85rem;padding:0;border:none;border-radius:999px;background:color-mix(in srgb,#fff 82%,transparent);box-shadow:0 1px 3px #14284638;color:#6a7a90;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:color .14s ease,background .14s ease,transform .14s ease,opacity .14s ease}.chip-folder-btn .chip-folder-icon{width:.95rem;height:.95rem;display:block}.chip-folder-btn:hover{color:var(--accent);background:#fff;transform:scale(1.06)}.chip-folder-btn.is-in-folder{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,#fff)}.chip-folder-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.chip-remove-btn{position:absolute;top:.12rem;right:.08rem;z-index:2;display:inline-flex;align-items:center;justify-content:center;min-width:1.85rem;height:1.85rem;padding:0 .35rem;border:none;border-radius:999px;background:color-mix(in srgb,#fff 82%,transparent);box-shadow:0 1px 3px #14284638;color:#8a5a5a;font:inherit;font-size:.62rem;font-weight:800;letter-spacing:.01em;line-height:1;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:color .14s ease,background .14s ease,transform .14s ease}.chip-remove-btn .chip-remove-icon{width:.9rem;height:.9rem;display:block}.chip-remove-btn:hover{color:#c62828;background:#fff;transform:scale(1.06)}.chip-remove-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media(hover:hover)and (pointer:fine){.chip-grid:not([data-category=favorites]) .chip-fav-btn,.chip-grid:not([data-category=favorites]) .chip-folder-btn{opacity:0;pointer-events:none}.chip-grid:not([data-category=favorites]) .chip-cell-wrap:hover .chip-fav-btn,.chip-grid:not([data-category=favorites]) .chip-cell-wrap:focus-within .chip-fav-btn,.chip-grid:not([data-category=favorites]) .chip-cell-wrap:hover .chip-folder-btn,.chip-grid:not([data-category=favorites]) .chip-cell-wrap:focus-within .chip-folder-btn{opacity:1;pointer-events:auto}}.folder-popover{position:fixed;z-index:80;box-sizing:border-box;padding:.75rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 10px 28px #1428462e;color:var(--text)}.folder-popover--has-close{padding-top:.85rem;padding-right:2rem}.folder-popover-close{position:absolute;top:.35rem;right:.35rem;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:1.55rem;height:1.55rem;padding:0;border:none;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:color .12s ease,background .12s ease}.folder-popover-close:hover{color:var(--text);background:color-mix(in srgb,var(--muted) 14%,transparent)}.folder-popover-close:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.folder-popover-close-icon{width:.85rem;height:.85rem;display:block}.folder-editor--inline{position:relative;padding-right:1.5rem}.folder-popover-close--inline{top:0;right:0}.folder-popover-title{margin:0 0 .55rem;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.folder-editor{display:flex;flex-direction:column;gap:.45rem}.folder-field-label{display:flex;flex-direction:column;gap:.3rem;margin:0;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.folder-name-input{width:100%;box-sizing:border-box;padding:.45rem .55rem;border:1.5px solid var(--border);border-radius:8px;background:var(--surface-hi, var(--surface));color:var(--text);font:inherit;font-size:.9rem}.folder-name-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.folder-name-input.is-invalid{border-color:#c62828}.folder-color-picker{display:flex;flex-direction:column;gap:.55rem}.folder-color-swatches{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.folder-color-swatch{width:1.45rem;height:1.45rem;padding:0;border:2px solid color-mix(in srgb,var(--swatch-color) 35%,#fff);border-radius:999px;background:var(--swatch-color);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.folder-color-swatch.is-selected,.folder-color-swatch:hover{transform:scale(1.08);box-shadow:0 0 0 2px color-mix(in srgb,var(--swatch-color) 55%,transparent)}.folder-color-custom-row{display:flex;align-items:center;gap:.5rem;padding:.4rem .45rem;border:1.5px solid var(--border);border-radius:10px;background:var(--surface-hi, var(--surface))}.folder-color-custom-row.is-selected{border-color:color-mix(in srgb,var(--swatch-color, var(--accent)) 55%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--swatch-color, var(--accent)) 22%,transparent)}.folder-color-custom-preview{position:relative;flex:0 0 auto;width:2rem;height:2rem;padding:0;border:2px solid color-mix(in srgb,var(--swatch-color) 40%,#fff);border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,#fff 35%,transparent),transparent 45%),var(--swatch-color);color:#fff;cursor:pointer;box-shadow:inset 0 0 0 1px color-mix(in srgb,#000 12%,transparent)}.folder-color-custom-preview:hover{transform:scale(1.05)}.folder-color-custom-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}.folder-color-custom-icon svg{width:.95rem;height:.95rem;display:block}.folder-color-native{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:0;pointer-events:none}.folder-color-hex-label{display:flex;flex:1 1 auto;flex-direction:column;gap:.15rem;min-width:0;margin:0;font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.folder-color-hex-input{width:100%;box-sizing:border-box;padding:.3rem .45rem;border:1.5px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text);font:inherit;font-size:.85rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.folder-color-hex-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.folder-editor-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.25rem}.folder-editor-actions .folder-save-btn,.folder-editor-actions .folder-delete-btn{flex:1 1 auto;min-height:2.1rem;padding:.4rem .7rem;font-size:.8rem}.folder-delete-btn.is-confirm{color:#fff;background:#c62828;border-color:#c62828}.folder-delete-btn.is-confirm:hover:not(:disabled){color:#fff;background:#b71c1c;border-color:#b71c1c}.folder-delete-btn.is-confirm:focus-visible{outline-color:#c62828}.folder-assign-list{display:flex;flex-direction:column;gap:.25rem;max-height:12rem;overflow-y:auto;margin-bottom:.55rem}.folder-assign-empty{margin:.15rem 0 .35rem;font-size:.82rem;color:var(--muted)}.folder-notice{margin:0 0 .55rem;padding:.55rem .7rem;border:1.5px solid color-mix(in srgb,#c62828 35%,var(--border));border-radius:10px;background:color-mix(in srgb,#c62828 8%,var(--surface));color:#8a1a1a;font-size:.82rem;font-weight:600}.folder-meta,.pa-meta,.navi-meta{margin:0 0 .55rem;font-size:.78rem;font-weight:600;color:var(--muted)}.pa-detail[data-category=pa],.pa-detail{--cat-accent: #c0267a;--cat-border: #e879b0;--cat-bg: #fdf2f8;--cat-fg: #9d174d;margin:0 0 .75rem;padding:.7rem .8rem;border:1.5px solid var(--cat-border, #e879b0);border-radius:12px;background:linear-gradient(160deg,color-mix(in srgb,var(--cat-accent, #c0267a) 8%,var(--surface)) 0%,var(--surface) 100%)}.pa-detail-head{display:flex;flex-direction:column;gap:.2rem;margin-bottom:.55rem}.pa-detail-title{font-size:1rem;font-weight:800;letter-spacing:-.02em;color:var(--cat-fg, #9d174d)}.pa-detail-hint{margin:0;font-size:.76rem;font-weight:600;color:var(--muted);line-height:1.35}.pa-detail-variants{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.55rem}.pa-variant-btn{padding:.28rem .55rem;border:1.5px solid var(--cat-border, #e879b0);border-radius:999px;background:color-mix(in srgb,var(--cat-accent, #c0267a) 8%,#fff);color:var(--cat-fg, #9d174d);font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}.pa-variant-btn.is-active,.pa-variant-btn[aria-pressed=true]{background:var(--cat-accent, #c0267a);border-color:var(--cat-accent, #c0267a);color:#fff}.pa-detail-steps{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .25rem;list-style:none;margin:0;padding:0}.pa-detail-step{display:inline-flex;align-items:center;gap:.25rem}.pa-step-chip{display:inline-flex;align-items:center;gap:.45rem;min-width:0;padding:.4rem .55rem .4rem .4rem;border:1.5px solid var(--cat-border, #e879b0);border-radius:10px;background:#fff;color:inherit;font:inherit;text-align:left;pointer-events:none;-webkit-user-select:none;user-select:none;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease,opacity .14s ease}.pa-step-chip.is-active{border-color:var(--cat-accent, #c0267a);background:color-mix(in srgb,var(--cat-accent, #c0267a) 14%,#fff);animation:pa-step-blink .7s ease-in-out infinite}.pa-step-chip.is-done{border-color:color-mix(in srgb,var(--cat-accent, #c0267a) 35%,#bbb);background:color-mix(in srgb,var(--cat-accent, #c0267a) 6%,#f5f5f5);opacity:.55}.pa-step-chip.is-done .pa-step-num{background:color-mix(in srgb,var(--cat-accent, #c0267a) 45%,#888)}@keyframes pa-step-blink{0%,to{box-shadow:0 0 color-mix(in srgb,var(--cat-accent, #c0267a) 0%,transparent);background:color-mix(in srgb,var(--cat-accent, #c0267a) 10%,#fff)}50%{box-shadow:0 0 0 3px color-mix(in srgb,var(--cat-accent, #c0267a) 35%,transparent);background:color-mix(in srgb,var(--cat-accent, #c0267a) 22%,#fff)}}.pa-step-num{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;border-radius:999px;background:var(--cat-accent, #c0267a);color:#fff;font-size:.72rem;font-weight:800;flex:0 0 auto}.pa-step-body{display:flex;flex-direction:column;gap:.05rem;min-width:0}.pa-step-name{font-size:.82rem;font-weight:700;line-height:1.15}.pa-step-id{font-size:.68rem;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}.pa-step-arrow{color:var(--cat-accent, #c0267a);font-weight:800;padding:0 .1rem}.pa-cell.is-selected{filter:drop-shadow(0 0 0 2px var(--cat-accent, #c0267a)) drop-shadow(0 0 12px color-mix(in srgb,var(--cat-accent, #c0267a) 55%,transparent)) drop-shadow(0 4px 8px rgba(20,40,70,.2))}.pa-cell .chip-cell-name{font-size:clamp(.82rem,3.4vw,.98rem);line-height:1.15;padding:0 .15rem}.pa-cell .chip-cell-face{justify-content:center}.folder-assign-row{display:flex;align-items:center;gap:.45rem;padding:.35rem .3rem;border-radius:8px;cursor:pointer}.folder-assign-row.is-full{opacity:.55;cursor:not-allowed}.chip-reorder{position:absolute;left:50%;bottom:.2rem;z-index:2;display:inline-flex;align-items:center;gap:.12rem;transform:translate(-50%);padding:.1rem;border-radius:999px;background:color-mix(in srgb,#fff 88%,transparent);box-shadow:0 1px 3px #14284633}.chip-reorder-btn,.chip-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:1.45rem;height:1.35rem;padding:0;border:none;border-radius:999px;background:transparent;color:#5a6a80;font:inherit;font-size:.95rem;font-weight:700;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.chip-drag-handle{cursor:grab;font-size:.78rem;letter-spacing:-.05em;touch-action:none}.chip-drag-handle:active{cursor:grabbing}.chip-reorder-btn:hover:not(:disabled),.chip-drag-handle:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,#fff)}.chip-reorder-btn:disabled{opacity:.35;cursor:default}.chip-cell-wrap.is-folder-sortable{touch-action:none;cursor:grab}.chip-cell-wrap.is-folder-sortable.is-dragging{cursor:grabbing;opacity:.45;z-index:3}.chip-cell-wrap.is-drop-target{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}.folder-assign-row:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.folder-assign-swatch{width:.85rem;height:.85rem;border-radius:999px;background:var(--swatch-color);box-shadow:inset 0 0 0 1px color-mix(in srgb,#000 15%,transparent);flex:0 0 auto}.folder-assign-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:600}.folder-assign-new-btn{width:100%;padding:.45rem .55rem;border:1.5px dashed var(--border);border-radius:8px;background:transparent;color:var(--accent);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.folder-assign-new-btn:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.folder-assign-create .folder-editor{margin-top:.15rem;padding-top:.45rem;border-top:1px solid var(--border)}.chip-cell{--chip-shell: color-mix(in srgb, var(--cat-accent, #5a8bbf) 42%, #6e9fc8 58%);--chip-shell-deep: color-mix(in srgb, var(--cat-accent, #3d6a94) 55%, #3a6288);--chip-pin: #c08a5c;--chip-pin-hi: #e0b07a;--chip-pin-lo: #8a5a38;position:relative;display:block;width:100%;height:100%;min-height:0;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none;letter-spacing:normal;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;filter:drop-shadow(0 2px 3px rgba(20,40,70,.18));transition:transform .14s ease,filter .14s ease}.chip-cell-body{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto;width:100%;height:100%;min-height:0;padding:.32rem .26rem 0;box-sizing:border-box;overflow:hidden;clip-path:polygon(0 .58rem,.58rem 0,100% 0,100% 100%,0 100%);border-radius:0 .38rem .3rem .3rem;background:linear-gradient(180deg,rgba(255,255,255,.22) 0%,transparent 28%),linear-gradient(145deg,var(--chip-shell) 0%,var(--chip-shell-deep) 100%);box-shadow:inset 0 1px #ffffff59,inset 0 -1px #0000001f}.chip-cell-body:before{content:"";position:absolute;top:.22rem;left:.62rem;width:.26rem;height:.26rem;border-radius:50%;background:color-mix(in srgb,var(--chip-shell-deep) 70%,#1a3048);box-shadow:inset 0 .5px 1px #00000059;pointer-events:none}.chip-cell-label{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;width:100%;min-height:0;margin-top:.15rem;overflow:hidden;background:#0c0e12;border:1px solid rgba(210,220,235,.75);border-radius:.2rem;box-shadow:inset 0 0 0 1px #00000059}.chip-cell-banner{flex:0 0 auto;padding:.2rem .15rem .14rem;font-size:clamp(.48rem,2vw,.52rem);font-weight:800;font-style:italic;letter-spacing:.05em;line-height:1;text-align:center;color:#ffe94a;background:#050608}.chip-cell-face{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.18rem;flex:1 1 auto;min-height:0;overflow:hidden;padding:.28rem .18rem;text-align:center;background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.2),transparent 55%),linear-gradient(160deg,color-mix(in srgb,var(--cat-accent, #5a8bbf) 42%,#2a3d58),color-mix(in srgb,var(--cat-accent, #3d6a94) 32%,#121c2c))}.chip-cell-id{display:block;font-size:clamp(.9rem,4vw,1.05rem);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.55)}.chip-cell-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;font-size:clamp(.62rem,2.8vw,.7rem);font-weight:700;font-style:normal;line-height:1.15;letter-spacing:.01em;word-break:break-word;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.45)}.chip-cell-footer{flex:0 0 auto;height:.32rem;background:#050608}.chip-cell-pins{display:grid;grid-template-columns:repeat(8,1fr);gap:.06rem;align-items:end;width:calc(100% - .28rem);height:.65rem;margin:.2rem auto 0;padding:.08rem .08rem 0;box-sizing:border-box;background:color-mix(in srgb,var(--chip-shell-deep) 85%,#000);border-radius:.08rem .08rem 0 0}.chip-cell-pins i{display:block;height:100%;min-height:.42rem;border-radius:.04rem .04rem 0 0;background:linear-gradient(90deg,var(--chip-pin-lo) 0%,var(--chip-pin-hi) 35%,var(--chip-pin) 55%,var(--chip-pin-lo) 100%);box-shadow:inset 0 0 0 .5px #00000040}.chip-cell:hover{transform:translateY(-3px);filter:drop-shadow(0 8px 12px color-mix(in srgb,var(--cat-accent, #3d6a94) 28%,rgba(20,40,70,.22)))}.chip-cell:active{transform:translateY(-1px)}.chip-grid:has(.chip-cell.is-active) .chip-cell:not(.is-active){opacity:.48;filter:grayscale(.15)}.chip-grid:has(.chip-cell.is-active) .chip-cell:not(.is-active):hover{opacity:.85;filter:none}.chip-cell.is-active{z-index:2;transform:translateY(-2px) scale(1.03);outline:3px solid #ffffff;outline-offset:2px;border-radius:.45rem;filter:drop-shadow(0 0 0 2px var(--cat-accent, var(--accent))) drop-shadow(0 0 12px color-mix(in srgb,var(--cat-accent, var(--accent)) 60%,transparent)) drop-shadow(0 8px 14px rgba(20,40,70,.28))}.chip-cell.is-active .chip-cell-body{background:linear-gradient(180deg,rgba(255,255,255,.32) 0%,transparent 28%),linear-gradient(145deg,color-mix(in srgb,var(--cat-accent, #5a8bbf) 70%,#fff) 0%,var(--chip-shell-deep) 100%)}.chip-cell.is-active .chip-cell-label{border-color:#fff;box-shadow:inset 0 0 0 1px #00000073,0 0 0 2px #111318}.chip-cell.is-active .chip-cell-banner{position:relative;color:transparent;background:#050608}.chip-cell.is-active .chip-cell-banner:before{content:"ACTIVE";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:clamp(.52rem,2.4vw,.6rem);font-weight:800;font-style:italic;letter-spacing:.12em;color:#ffe94a;text-shadow:none}.chip-cell.is-active .chip-cell-face{background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.28),transparent 55%),linear-gradient(160deg,color-mix(in srgb,var(--cat-accent, #5a8bbf) 75%,#1a2434),color-mix(in srgb,var(--cat-accent, #3d6a94) 65%,#0a1018))}.chip-cell.is-active .chip-cell-footer{background:#ffe94a}.chip-cell.is-active .chip-cell-pins i{background:linear-gradient(90deg,#f0d090,#fff3c8 35%,#e8c070 55%,#c09050)}@media(max-width:480px){.chip-grid{grid-template-columns:repeat(auto-fill,minmax(4.75rem,1fr));gap:.45rem .38rem;max-height:min(32rem,58vh)}.chip-fav-btn{width:1.7rem;height:1.7rem}.chip-fav-btn .chip-star-icon{width:.85rem;height:.85rem}.chip-folder-btn{width:1.7rem;height:1.7rem}.chip-folder-btn .chip-folder-icon{width:.85rem;height:.85rem}.chip-remove-btn{min-width:1.7rem;height:1.7rem;font-size:.58rem}.chip-remove-btn .chip-remove-icon{width:.8rem;height:.8rem}.chip-cell-face{gap:.14rem;padding:.22rem .14rem}.chip-cell-name{-webkit-line-clamp:2}}.chips-panel.is-disconnected .chip-cell{opacity:.72}.chip-advanced{margin-top:.9rem;border-top:1px solid var(--border);padding-top:.65rem}.chip-advanced summary{cursor:pointer;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);list-style:none;-webkit-user-select:none;user-select:none}.chip-advanced summary::-webkit-details-marker{display:none}.chip-advanced summary:after{content:"";display:inline-block;width:.35rem;height:.35rem;margin-left:.45rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-1px);vertical-align:middle}.chip-advanced[open] summary:after{transform:rotate(-135deg) translateY(-1px)}.chip-advanced .chip-row{margin-top:.65rem}.chip-status{margin:.65rem 0 0;font-size:.8rem;font-weight:600;color:var(--accent)}.game-guide{margin-top:.85rem;border:1.5px solid color-mix(in srgb,var(--chip-dark) 18%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--chip) 7%,var(--surface));overflow:hidden;transition:border-color .15s,background .15s}.game-guide[hidden]{display:none}.game-guide[open]{border-color:color-mix(in srgb,var(--chip-dark) 28%,var(--border));background:color-mix(in srgb,var(--chip) 11%,var(--surface))}.game-guide-summary{display:flex;align-items:center;gap:.7rem;padding:.7rem .85rem;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.game-guide-summary::-webkit-details-marker{display:none}.game-guide-summary-icon{display:flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;flex-shrink:0;border-radius:50%;background:color-mix(in srgb,var(--chip) 22%,transparent);color:color-mix(in srgb,var(--chip-dark) 70%,var(--muted))}.game-guide-summary-icon svg{width:.95rem;height:.95rem}.game-guide-summary-text{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.game-guide-summary-title{font-size:.88rem;font-weight:700;color:var(--text);line-height:1.25}.game-guide-summary-hint{font-size:.75rem;font-weight:500;color:var(--muted);line-height:1.35}.game-guide-summary:after{content:"";width:.45rem;height:.45rem;margin-right:.15rem;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(45deg);transition:transform .15s ease,border-color .15s;flex-shrink:0}.game-guide[open] .game-guide-summary:after{transform:rotate(-135deg);margin-top:.2rem;border-color:color-mix(in srgb,var(--chip-dark) 55%,var(--muted))}.game-guide-body{padding:0 .95rem .95rem;display:flex;flex-direction:column;gap:.85rem}.game-guide-section{display:flex;flex-direction:column;gap:.4rem}.game-guide-title{margin:0;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}.game-guide-note{margin:0;font-size:.84rem;line-height:1.5;color:var(--muted)}.game-guide-note strong{font-weight:700;color:var(--text)}.game-guide-steps{margin:0;padding:0 0 0 1.15rem;display:flex;flex-direction:column;gap:.35rem}.game-guide-steps li{font-size:.84rem;line-height:1.5;color:var(--text)}.game-guide-steps li strong{font-weight:700;color:var(--text)}.status-panel{margin-top:1rem;padding:1.25rem 1.25rem 1.1rem;background:var(--surface);border:1.5px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius);box-shadow:0 1px 4px #007a9612}.stepper{display:flex;align-items:center;margin-bottom:1.35rem}.stepper-step{display:flex;flex-direction:column;align-items:center;gap:.35rem;flex-shrink:0}.stepper-step span{font-size:.64rem;font-weight:600;color:var(--muted);white-space:nowrap;letter-spacing:.03em;transition:color .2s}.step-node{width:20px;height:20px;border-radius:50%;background:var(--bg);border:2px solid var(--border);position:relative;transition:background .2s,border-color .2s}.stepper-step[data-state=done] .step-node{border-color:var(--success)}.stepper-step[data-state=done] .step-node:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;background:var(--success);border-radius:50%}.stepper-step[data-state=done] span{color:var(--success)}.stepper-step[data-state=active] .step-node{border-color:var(--accent);background:var(--accent);animation:step-pulse 1.6s ease-in-out infinite}.stepper-step[data-state=active] span{color:var(--accent);font-weight:700}.stepper-step[data-state=complete] .step-node{background:var(--success);border-color:var(--success)}.stepper-step[data-state=complete] .step-node:after{content:"✓";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:#fff;font-weight:800}.stepper-step[data-state=complete] span{color:var(--success);font-weight:700}@keyframes step-pulse{0%,to{box-shadow:0 0 #007a9673}50%{box-shadow:0 0 0 6px #007a9600}}.stepper-line{flex:1;height:2px;background:var(--border);margin-bottom:1.35rem;transition:background .2s}.stepper-line[data-state=done]{background:var(--success)}.status-row{display:flex;align-items:center;gap:.55rem;margin-bottom:.2rem}.indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--border-hi);transition:background .2s}.indicator[data-type=active]{background:var(--accent);animation:ind-pulse 1.2s ease-in-out infinite}.indicator[data-type=success]{background:var(--success)}.indicator[data-type=error]{background:var(--error)}.indicator[data-type=warning]{background:var(--warning)}.indicator[data-type=idle]{background:var(--border-hi)}@keyframes ind-pulse{0%,to{opacity:1}50%{opacity:.35}}.status{margin:0;font-size:.95rem;font-weight:700}.status[data-type=success]{color:var(--success)}.status[data-type=error]{color:var(--error)}.status[data-type=warning]{color:var(--warning)}.detail{margin:.15rem 0 0 1.4rem;font-size:.78rem;color:var(--muted)}.instruction-box{margin-top:1rem;padding:.8rem 1rem;background:color-mix(in srgb,var(--accent) 7%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:8px;font-size:.875rem;display:flex;flex-direction:column;gap:.3rem}.instruction-box.hidden{display:none}.instruction-label{font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--accent)}#instruction-text{color:var(--text);line-height:1.5;white-space:pre-line}.instruction-box[data-type=success]{background:color-mix(in srgb,var(--success) 8%,var(--surface));border-color:color-mix(in srgb,var(--success) 28%,transparent)}.instruction-box[data-type=success] .instruction-label{color:var(--success)}.actions{display:flex;gap:.65rem;margin-top:1.25rem;margin-bottom:1.5rem}button{flex:1;padding:.8rem 1rem;font-size:.92rem;font-family:inherit;font-weight:700;border:none;border-radius:8px;cursor:pointer;transition:background .15s,opacity .15s,box-shadow .15s;letter-spacing:.01em}button:disabled{opacity:.35;cursor:not-allowed}button.primary{background:var(--accent);color:#fff;box-shadow:0 2px 8px #007a9647}button.primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 4px 14px #00a8c859}button.secondary{background:var(--surface);color:var(--muted);border:1.5px solid var(--border);flex:0 0 auto;padding-left:1.25rem;padding-right:1.25rem}button.secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.log-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.log-header .log-label{margin-bottom:0}.log-copy-btn{flex:0 0 auto;padding:.35rem .65rem;font-size:.72rem}.log-panel{margin-top:.5rem;padding:1rem 1.1rem;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:0 1px 4px #007a9612}.log-label{display:block;font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--accent)}#log{margin:.65rem 0 0;padding:.75rem .85rem;max-height:16rem;overflow:auto;background:#0a2a36;border:1px solid #1a4a5a;border-radius:7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;line-height:1.6;color:#9ad4e4;white-space:pre-wrap}#log::-webkit-scrollbar{width:5px}#log::-webkit-scrollbar-track{background:transparent}#log::-webkit-scrollbar-thumb{background:#2a6a7a;border-radius:99px}footer{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border);font-size:.78rem;color:var(--muted);text-align:center}footer p{margin:.3rem 0}footer a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;transition:color .15s}footer a:hover{color:var(--accent-hover)}.footer-brand{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:.75rem!important;font-weight:600}.footer-brand img{border-radius:3px}.footer-brand a{text-decoration:none}.footer-brand a:hover{text-decoration:underline}.hidden{display:none}@media(max-width:420px){.chip-row{flex-wrap:wrap}.chip-row #chip-id{flex:1 1 100%}.chip-row button{flex:1}}
