#stackgazer{--bg-primary: #1e1e1e;--bg-secondary: #252526;--bg-tertiary: #2d2d30;--bg-quaternary: #3c3c3c;--bg-overlay: rgba(0, 0, 0, .5);--text-primary: #d4d4d4;--text-secondary: #bbb;--text-muted: #888;--text-link: #007acc;--text-link-hover: #4fc3f7;--border-primary: #3e3e42;--border-secondary: #555;--border-light: #464647;--accent-primary: #007acc;--accent-primary-hover: #0087d4;--header-hover-light: #4a4a4a;--accent-border: #007acc;--accent-danger: #d73a49;--accent-danger-hover: #e03e53;--accent-success: #4caf50;--code-function: #4ec9b0;--code-file: #9cdcfe;--code-line: #b5cea8;--code-keyword: #569cd6;--code-string: #d7ba7d;--code-bg: #2d2d30}#stackgazer[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #f5f7fa;--bg-quaternary: #e9ecef;--bg-overlay: rgba(255, 255, 255, .7);--text-primary: #242a35;--text-secondary: #495057;--text-muted: #6c757d;--text-link: #6933ff;--text-link-hover: #5a2dd9;--border-primary: #d6dbe7;--border-secondary: #ced4da;--border-light: #dee2e6;--accent-primary: #6933ff;--accent-primary-hover: #5a2dd9;--header-hover-light: #e6f3ff;--accent-border: #c1c7d0;--accent-danger: #dc3545;--accent-danger-hover: #c82333;--accent-success: #28a745;--code-function: #0969da;--code-file: #098658;--code-line: #0451a5;--code-keyword: #0969da;--code-string: #032f62;--code-bg: #f8f9fa}#stackgazer *{margin:0;padding:0;box-sizing:border-box}#stackgazer{font-family:Monaco,Menlo,Ubuntu Mono,monospace;background:var(--bg-primary);color:var(--text-primary);height:100vh;width:100%;overflow:hidden;position:relative;margin:0;padding:0;border:none;outline:none;box-sizing:border-box;display:block}#stackgazer .btn{background:var(--accent-primary);border:none;color:#fff;padding:8px 12px;border-radius:4px;cursor:pointer;font-family:inherit;font-size:12px;transition:all .2s ease}#stackgazer .btn:hover{background:var(--accent-primary-hover)}#stackgazer .btn:disabled{background:var(--border-secondary);cursor:not-allowed;opacity:.5}#stackgazer .btn:disabled:hover{background:var(--border-secondary)}#stackgazer .btn-danger{background:var(--accent-danger)}#stackgazer .btn-danger:hover{background:var(--accent-danger-hover)}#stackgazer .modal{display:none;position:absolute;z-index:10000;left:0;top:0;width:100%;height:100%;background-color:var(--bg-overlay)}#stackgazer .modal-content{background-color:var(--bg-tertiary);margin:5% auto;border:1px solid var(--border-primary);border-radius:8px;width:90%;max-width:700px;max-height:80vh;box-shadow:0 4px 20px var(--bg-overlay);display:flex;flex-direction:column;position:relative;z-index:10001;overflow:visible}#stackgazer .modal-header{padding:20px 25px 15px;border-bottom:1px solid var(--border-primary);display:flex;justify-content:space-between;align-items:center;background:var(--bg-secondary);border-radius:8px 8px 0 0}#stackgazer .modal-close{background:none;border:none;color:var(--text-muted);font-size:24px;font-weight:700;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}#stackgazer .modal-close:hover{background:var(--border-primary);color:var(--text-primary)}#stackgazer .modal-body{padding:25px;color:var(--text-primary);line-height:1.6;flex:1;overflow-y:auto;overflow-x:visible}#stackgazer .container{display:flex;height:100vh}#stackgazer .sidebar{width:300px;background:var(--bg-secondary);border-right:1px solid var(--border-primary);padding:20px;overflow-y:auto}#stackgazer .main-content{flex:1;display:flex;flex-direction:column;overflow:hidden}#stackgazer .view-controls-bar{background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);padding:10px 20px;display:flex;align-items:center;gap:15px;flex-wrap:wrap;min-height:50px}#stackgazer .view-controls-bar .view-controls{display:flex;flex-direction:row;gap:10px;flex-wrap:wrap}#stackgazer .view-controls-bar .left-controls{display:flex;align-items:center;gap:15px;flex:1}#stackgazer .view-controls-bar .right-controls{display:flex;align-items:center;gap:10px}#stackgazer .view-controls-bar select{background:var(--bg-quaternary);border:1px solid var(--border-secondary);border-radius:4px;color:var(--text-primary);font-family:inherit;font-size:11px;padding:4px 8px}#stackgazer .view-controls-bar select:focus{outline:none;border-color:var(--accent-primary)}#stackgazer .view-controls-bar .control-btn{padding:6px 12px;font-size:11px;min-width:80px}#stackgazer .view-controls-bar label{display:flex;align-items:center;gap:6px;color:var(--text-primary);font-size:11px;white-space:nowrap}#stackgazer .drop-zone{flex:1;display:flex;align-items:center;justify-content:center;border:2px dashed var(--accent-border);margin:20px;border-radius:8px;transition:all .3s ease;cursor:pointer}#stackgazer .drop-zone.dragover{border-color:var(--text-link-hover);background:color-mix(in srgb,var(--accent-primary) 10%,transparent)}#stackgazer .drop-zone.has-content{align-items:flex-start;justify-content:flex-start;padding:0;border:none;margin:0;border-radius:0;overflow-y:auto}#stackgazer .drop-message{text-align:center;color:var(--accent-primary);font-size:18px}#stackgazer .filter-section{margin-bottom:20px}#stackgazer .filter-section h3{color:var(--accent-primary);margin-bottom:10px;font-size:14px}#stackgazer .filter-input{width:100%;padding:8px;background:var(--bg-quaternary);border:1px solid var(--border-secondary);border-radius:4px;color:var(--text-primary);font-family:inherit;margin-bottom:10px}#stackgazer .filter-input:focus{outline:none;border-color:var(--accent-primary)}#stackgazer .filter-input.error{border-color:var(--accent-danger);background:color-mix(in srgb,var(--accent-danger) 10%,transparent)}#stackgazer .filter-error{font-size:11px;color:var(--accent-danger);margin-top:4px;padding:4px 8px;background:color-mix(in srgb,var(--accent-danger) 10%,transparent);border-radius:4px;border:1px solid var(--accent-danger)}#stackgazer .stack-display{width:100%;height:100%;overflow-y:auto;padding:20px;white-space:pre-wrap;font-size:12px;line-height:1.4;box-sizing:border-box}#stackgazer .stack-group,#stackgazer .stack-section,#stackgazer .section.stack-section{margin-bottom:20px;border:2px solid var(--accent-border);border-radius:8px;cursor:text;-webkit-user-select:text;user-select:text;position:relative}#stackgazer .header{background:var(--accent-primary);color:#fff;padding:12px 15px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:14px;display:flex;justify-content:space-between;align-items:center;gap:8px;position:relative}#stackgazer .header:hover{background:var(--accent-primary-hover)}#stackgazer .file-section .header{background:var(--bg-quaternary);color:var(--text-primary)}#stackgazer .file-section .header:hover{background:var(--header-hover-light)}#stackgazer .file-section.single-group>.header{display:none}#stackgazer .file-section .group-section .header{background:var(--bg-quaternary);color:var(--text-primary)}#stackgazer .file-section .group-section .header:hover{background:var(--header-hover-light)}#stackgazer .group-title,#stackgazer .stack-title,#stackgazer .category-title{cursor:text;-webkit-user-select:text;user-select:text;flex:0 1 auto;display:flex;align-items:center;gap:12px;min-width:0}#stackgazer .stack-title:before{content:"↳";margin-right:-4px;opacity:1;font-size:1.1em;position:relative;top:-3px}#stackgazer .group-title-text{font-weight:700;color:#fff}#stackgazer .group-title-summary{font-weight:400;color:color-mix(in srgb,var(--text-primary) 80%,transparent);font-size:13px;padding-left:12px;border-left:1px solid color-mix(in srgb,var(--text-primary) 30%,transparent)}#stackgazer .group-count,#stackgazer .stack-count{font-weight:400;font-size:13px;text-align:right}#stackgazer .group-controls{display:flex;gap:5px}#stackgazer .group-control-btn{background:color-mix(in srgb,var(--text-primary) 20%,transparent);border:none;color:#fff;padding:4px 8px;border-radius:3px;cursor:pointer;font-family:inherit;font-size:10px}#stackgazer .group-control-btn:hover{background:color-mix(in srgb,var(--text-primary) 30%,transparent)}#stackgazer .pin-button{--pin-size: 28px;--pin-font: 16px;--pin-top: -14px;--pin-right: -14px;--pin-z: 10;--pin-hover-size: 53px;--pin-hover-font: 26px;--pin-hover-offset: -26px;--pin-pinned-size: 36px;--pin-pinned-font: 18px;--pin-pinned-offset: -18px;--pin-target-size: 24px;position:absolute;background:var(--bg-quaternary);border:1px solid var(--border-secondary);color:var(--text-muted);border-radius:50%;cursor:pointer;font-family:inherit;transition:all .2s ease;opacity:0;display:flex;align-items:center;justify-content:center;font-weight:400;width:var(--pin-size);height:var(--pin-size);font-size:var(--pin-font);top:var(--pin-top);right:var(--pin-right);z-index:var(--pin-z)}#stackgazer .pin-button.size-small{--pin-size: 18px;--pin-font: 10px;--pin-top: 3px;--pin-right: -25px;--pin-z: 5;--pin-hover-size: 32px;--pin-hover-font: 16px;--pin-hover-offset: -30px;--pin-hover-top: -4px;--pin-pinned-size: 20px;--pin-pinned-font: 11px;--pin-pinned-top: 2px;--pin-pinned-offset: -27px;--pin-target-size: 16px}#stackgazer .section:hover>.header>.pin-button:not(.pinned),#stackgazer .goroutine-entry:hover>.pin-button:not(.pinned){opacity:.7}#stackgazer .pin-button:before{content:"";position:absolute;top:calc(var(--pin-target-size) * -1);left:calc(var(--pin-target-size) * -1);right:calc(var(--pin-target-size) * -1);bottom:calc(var(--pin-target-size) * -1);border-radius:50%}#stackgazer .pin-button:hover{background:var(--bg-quaternary);border-color:var(--border-primary);color:var(--text-primary);opacity:1!important;width:var(--pin-hover-size);height:var(--pin-hover-size);font-size:var(--pin-hover-font);top:calc(var(--pin-top) - (var(--pin-hover-size) - var(--pin-size)) / 2);right:calc(var(--pin-right) - (var(--pin-hover-size) - var(--pin-size)) / 2)}#stackgazer .pin-button.size-small:hover{top:calc(var(--pin-top) - (var(--pin-hover-size) - var(--pin-size)) / 2);right:calc(var(--pin-right) - (var(--pin-hover-size) - var(--pin-size)) / 2)}#stackgazer .pin-button.pinned{background:var(--bg-quaternary);opacity:1!important;border:2px solid var(--border-primary);color:var(--text-primary);width:var(--pin-pinned-size);height:var(--pin-pinned-size);font-size:var(--pin-pinned-font);top:var(--pin-top);right:var(--pin-right)}#stackgazer .pin-button.size-small.pinned{top:var(--pin-top)}#stackgazer .pin-button.pinned:hover{color:var(--text-primary);border:2px solid var(--text-primary);width:var(--pin-hover-size);height:var(--pin-hover-size);font-size:var(--pin-hover-font);top:calc(var(--pin-top) - (var(--pin-hover-size) - var(--pin-pinned-size)) / 2);right:calc(var(--pin-right) - (var(--pin-hover-size) - var(--pin-pinned-size)) / 2)}#stackgazer .pin-button.size-small.pinned:hover{top:calc(var(--pin-top) - (var(--pin-hover-size) - var(--pin-pinned-size)) / 2);right:calc(var(--pin-right) - (var(--pin-hover-size) - var(--pin-pinned-size)) / 2)}#stackgazer .header .counts{margin-right:36px;cursor:text;-webkit-user-select:text;user-select:text}#stackgazer .header-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px}#stackgazer .category-stats,#stackgazer .stack-stats{font-size:9px;color:color-mix(in srgb,white 60%,transparent);white-space:nowrap;text-align:right;margin-right:36px;cursor:text;-webkit-user-select:text;user-select:text}#stackgazer .category-stats:empty,#stackgazer .stack-stats:empty{display:none}#stackgazer .group-content,#stackgazer .stack-content{background:var(--bg-tertiary);padding-bottom:1px}#stackgazer .group-content.collapsed-container,#stackgazer .stack-content.collapsed-container{display:none}#stackgazer .unique-stack-view{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:6px;margin:10px;cursor:text;-webkit-user-select:text;user-select:text}#stackgazer .unique-stack-header{background:var(--bg-quaternary);color:var(--text-primary);padding:8px 15px;font-size:12px;font-weight:700;border-bottom:1px solid var(--border-primary);border-radius:6px 6px 0 0;cursor:text;-webkit-user-select:text;user-select:text}#stackgazer .unique-stack-content{padding:15px;cursor:text;-webkit-user-select:text;user-select:text}#stackgazer .state-group{background:var(--bg-quaternary);margin:10px;border-radius:4px;overflow:visible}#stackgazer .state-group-header{background:var(--bg-quaternary);color:var(--text-primary);padding:8px 12px;font-weight:700;font-size:11px;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;justify-content:space-between;align-items:center}#stackgazer .state-group-header:hover{background:var(--header-hover-light)}#stackgazer .state-group-content{display:block}#stackgazer .state-group-content.collapsed-section{display:none}#stackgazer .remaining-goroutines{display:block}#stackgazer .remaining-goroutines.collapsed-section{display:none}#stackgazer .show-more-link{padding:6px 12px;margin:0;background:transparent;border:none;cursor:pointer;text-align:center;color:var(--accent-primary);font-size:11px;transition:color .2s;border-bottom:1px dashed var(--border-primary)}#stackgazer .show-more-link:hover{color:var(--text-link-hover)}#stackgazer .show-more-text{-webkit-user-select:none;user-select:none}#stackgazer .goroutine-entry{background:transparent;border-bottom:1px dashed var(--border-primary);overflow:visible;cursor:text;-webkit-user-select:text;user-select:text;position:relative}#stackgazer .goroutine-entry:last-child{border-bottom:none}#stackgazer .goroutine-entry.highlighted{background:color-mix(in srgb,var(--accent-primary) 25%,transparent)!important;transition:background-color .3s ease}#stackgazer .goroutine-header{background:transparent;color:var(--text-primary);padding:6px 12px;font-size:11px;cursor:text;-webkit-user-select:text;user-select:text}#stackgazer .goroutine-header-first-line{display:flex;justify-content:space-between;align-items:center}#stackgazer .goroutine-header-left{display:flex;align-items:center;gap:4px}#stackgazer .group-header-left{display:flex;align-items:center;gap:6px}#stackgazer .goroutine-header-second-line{margin-top:4px;font-size:10px;color:var(--text-secondary);font-style:italic}#stackgazer .created-goroutines-label,#stackgazer .created-goroutines-more{color:var(--text-muted)}#stackgazer .created-goroutines-more.clickable{color:var(--text-link);cursor:pointer;text-decoration:underline}#stackgazer .created-goroutines-more.clickable:hover{color:var(--text-link-hover)}#stackgazer .goroutine-header:hover{background:var(--bg-quaternary)}#stackgazer .goroutine-created-by{font-size:10px;color:var(--text-muted);font-style:italic}#stackgazer .goroutine-created-by .creator-link{color:var(--text-link);cursor:pointer;text-decoration:underline}#stackgazer .goroutine-created-by .creator-link:hover{color:var(--text-link-hover)}#stackgazer .goroutine-created-by .creator-missing{color:var(--text-muted);text-decoration:line-through}#stackgazer .goroutine-stack{padding:10px 15px;display:none}#stackgazer .goroutine-stack.expanded{display:block}#stackgazer .stack-line{margin-bottom:2px}#stackgazer .stack-trace{background:var(--code-bg);margin:10px;padding:10px;border-radius:4px;border:1px solid var(--border-secondary);cursor:text;-webkit-user-select:text;user-select:text}#stackgazer .trace-header{font-weight:700;color:var(--accent-primary);margin-bottom:8px;font-size:12px}#stackgazer .section{background:var(--bg-tertiary);margin:10px;border:1px solid var(--border-primary);border-radius:4px;position:relative}#stackgazer .file-section .group-section{margin:0 0 0 10px;border-radius:0;border-left:none;border-right:none}#stackgazer .file-section.single-group .group-section{margin-left:0}#stackgazer .file-section .group-section:first-child{border-top-left-radius:4px;border-top-right-radius:4px;border-top:1px solid var(--border-primary)}#stackgazer .file-section .group-section:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:1px solid var(--border-primary)}#stackgazer .file-section .group-section:only-child{border:1px solid var(--border-primary);border-radius:4px}#stackgazer .category-section{border-radius:12px}#stackgazer .category-section>.header{position:sticky;top:-23px;z-index:100;border-radius:6px 6px 0 0}#stackgazer .stack-section>.header{position:sticky;top:20px;z-index:90}#stackgazer .category-section>.header .pin-button{--pin-top: 5px;--pin-hover-offset: -21px}#stackgazer .stack-section>.header .pin-button{--pin-top: 5px;--pin-hover-offset: -21px}#stackgazer .section-content{padding:10px;transition:all .2s ease}#stackgazer .file-section>.section-content{padding:0}#stackgazer .expandable.container-collapsed>.section-content{display:none}#stackgazer .expandable.section-collapsed>.section-content{display:none}#stackgazer .group-section .section-content:empty{display:none}#stackgazer .expandable .expand-icon:before{content:"▼";margin-right:6px}#stackgazer .expandable.container-collapsed .expand-icon:before,#stackgazer .expandable.section-collapsed .expand-icon:before{content:"▶"}#stackgazer .custom-rules-section .custom-rules-title h5:before{content:"▼";margin-right:6px;font-size:10px;color:var(--text-muted);transition:transform .2s ease}#stackgazer .custom-rules-section.settings-collapsed .custom-rules-title h5:before{content:"▶"}#stackgazer .group-labels{margin-top:8px;font-size:10px;color:var(--text-muted);font-style:italic}#stackgazer .function-name{color:var(--code-function);word-break:break-all;overflow-wrap:break-word}#stackgazer .file-path{color:var(--code-file);word-break:break-all;overflow-wrap:break-word}#stackgazer .line-number{color:var(--code-line)}#stackgazer .function-args-short{color:var(--text-secondary);font-size:10px;cursor:pointer}#stackgazer .function-args-short:hover{color:var(--text-muted)}#stackgazer .function-args-full{color:var(--text-primary);font-size:10px}#stackgazer .creator-link{color:var(--code-keyword);cursor:pointer;text-decoration:underline;transition:color .2s ease}#stackgazer .creator-link:hover{color:var(--text-link-hover);text-decoration:underline}#stackgazer .goroutine-tooltip{position:absolute;background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:4px;padding:8px 12px;font-size:12px;color:var(--text-primary);box-shadow:0 4px 8px var(--bg-overlay);z-index:1000;pointer-events:none;max-width:800px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#stackgazer .goroutine-tooltip .tooltip-label{font-weight:700;color:var(--code-keyword)}#stackgazer .goroutine-tooltip .tooltip-value{color:var(--code-string)}#stackgazer .goroutine-tooltip .tooltip-stack{margin-top:4px;font-family:Courier New,monospace;font-size:11px;color:var(--code-file)}#stackgazer .creator-missing{text-decoration:line-through}#stackgazer .created-by-line{margin-top:5px;padding-top:5px;border-top:1px solid var(--border-primary)}#stackgazer .created-by-text{color:var(--text-muted)}#stackgazer .stats{background:var(--bg-tertiary);padding:15px;border-bottom:1px solid var(--border-primary);font-size:12px}#stackgazer .stats-item{margin-bottom:5px;display:flex;justify-content:space-between}#stackgazer .state-stats{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-light)}#stackgazer .state-stats div{display:flex;justify-content:space-between;margin-bottom:2px;font-size:11px;color:var(--text-secondary)}#stackgazer .state-stat-item{margin-bottom:3px;font-size:11px;color:var(--text-secondary)}#stackgazer .state-item{cursor:pointer;padding:2px 4px;border-radius:2px;transition:background-color .2s}#stackgazer .state-item:hover{background-color:var(--border-primary)}#stackgazer .state-item.state-only{background-color:color-mix(in srgb,var(--accent-primary) 20%,transparent);color:var(--accent-primary);font-weight:700}#stackgazer .state-item.state-excluded{text-decoration:line-through;color:var(--accent-danger)}#stackgazer .state-item.state-grayed{opacity:.5;color:var(--text-secondary)}#stackgazer .sidebar .view-controls{display:none}#stackgazer .control-btn{background:var(--accent-primary);border:none;color:#fff;padding:8px 12px;border-radius:4px;cursor:pointer;font-family:inherit;font-size:12px;transition:all .2s ease}#stackgazer .control-btn:hover{background:var(--accent-primary-hover)}#stackgazer .control-btn:disabled{background:var(--border-secondary);cursor:not-allowed;opacity:.5}#stackgazer .control-btn:disabled:hover{background:var(--border-secondary)}#stackgazer .clear-btn{padding:8px 16px;width:100%;margin-top:10px}#stackgazer .file-section{margin-bottom:10px}#stackgazer .file-list-container{border:1px solid var(--border-secondary);border-radius:6px;background:var(--bg-tertiary);transition:all .3s ease;min-height:40px}#stackgazer .file-list-container.dragover{border-color:var(--accent-primary);background:color-mix(in srgb,var(--accent-primary) 10%,transparent)}#stackgazer .file-list{max-height:200px;overflow-y:auto;overflow-x:hidden}#stackgazer .file-item{display:flex;align-items:center;background:var(--bg-quaternary);padding:8px 10px;margin:5px 5px 0;border-radius:4px;font-size:12px;gap:8px}#stackgazer .file-item:last-child{margin-bottom:5px}#stackgazer .file-item.file-hidden{opacity:.5;background:var(--bg-secondary)}#stackgazer .file-item.file-hidden .file-name-text{color:var(--text-muted);text-decoration:line-through}#stackgazer .file-item:hover{background:var(--border-primary)}#stackgazer .file-item.file-hidden:hover{background:var(--bg-quaternary)}#stackgazer .file-name-text{flex:1;margin-right:8px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#stackgazer .file-name-text{display:inline-block;cursor:pointer;border-radius:2px;padding:1px 2px;transition:all .2s;position:relative}#stackgazer .file-name-text:hover{background-color:color-mix(in srgb,var(--text-primary) 10%,transparent);transform:translateY(-1px)}#stackgazer .file-name-text:hover:after{content:"✏️";position:absolute;right:-16px;top:50%;transform:translateY(-50%);font-size:10px;opacity:.7}#stackgazer .file-name-text.editing{background-color:var(--accent-primary);color:#fff;outline:2px solid var(--text-link-hover);outline-offset:1px;cursor:text;border-radius:3px;padding:2px 4px;box-shadow:0 0 8px color-mix(in srgb,var(--text-link-hover) 40%,transparent)}#stackgazer .file-name-text.editing:focus{background-color:var(--accent-primary-hover);outline-color:var(--text-link-hover);box-shadow:0 0 12px color-mix(in srgb,var(--text-link-hover) 60%,transparent)}#stackgazer .file-remove-btn{background:var(--accent-danger);border:none;color:#fff;border-radius:50%;width:18px;height:18px;cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1;transition:all .2s ease}#stackgazer .file-remove-btn:hover{background:var(--accent-danger-hover);transform:scale(1.1)}#stackgazer .file-stats{font-size:10px;color:var(--text-muted);white-space:nowrap;flex-shrink:0}#stackgazer .file-drop-area{padding:8px;text-align:center;color:var(--text-muted);font-size:10px;opacity:.7;cursor:pointer;border-top:1px dashed var(--border-secondary);margin-top:5px;display:none}#stackgazer .file-list-container:hover .file-drop-area,#stackgazer .file-list-container.dragover .file-drop-area{opacity:1}#stackgazer .file-list-container.has-files .file-drop-area{display:block}#stackgazer .empty-state{padding:15px;text-align:center;color:var(--text-muted);font-size:11px}#stackgazer .add-file-btn{background:transparent;border:1px solid var(--border-secondary);color:var(--text-muted);border-radius:50%;width:14px;height:14px;font-size:8px;font-weight:400;cursor:pointer;margin-left:2px;vertical-align:middle;display:inline-flex;align-items:center;justify-content:center;line-height:1;opacity:.6}#stackgazer .add-file-btn:hover{background:var(--border-primary);color:var(--text-primary);border-color:var(--text-muted);opacity:1}#stackgazer .clear-all-btn{background:transparent;border:1px solid var(--accent-danger);color:var(--accent-danger);border-radius:50%;width:16px;height:16px;font-size:10px;font-weight:700;cursor:pointer;margin-left:8px;margin-bottom:10px;vertical-align:middle;display:inline-flex;align-items:center;justify-content:center;line-height:1;opacity:.7}#stackgazer .clear-all-btn:hover{background:var(--accent-danger);color:#fff;opacity:1}#stackgazer .files-header,#stackgazer .filter-header{display:flex;align-items:center;justify-content:space-between;width:100%}#stackgazer .files-title{display:flex;align-items:center}#stackgazer .filter-help-btn{background:transparent;border:1px solid var(--border-secondary);color:var(--text-secondary);border-radius:50%;width:14px;height:14px;font-size:8px;font-weight:400;cursor:pointer;margin-left:2px;vertical-align:middle;display:inline-flex;align-items:center;justify-content:center;line-height:1;opacity:.6}#stackgazer .filter-help-btn:hover{background:var(--border-primary);color:var(--text-primary);border-color:var(--text-secondary);opacity:1}#stackgazer .modal-header h3{color:var(--accent-primary);margin:0;font-size:18px}#stackgazer .modal-body h4{color:var(--accent-primary);margin:20px 0 10px;font-size:14px;border-bottom:1px solid var(--border-primary);padding-bottom:5px}#stackgazer .modal-body h4:first-child{margin-top:0}#stackgazer .modal-body ul{margin:10px 0 20px 20px;padding:0}#stackgazer .modal-body li{margin-bottom:8px;list-style-type:disc}#stackgazer .modal-body code{background:var(--bg-quaternary);border:1px solid var(--border-secondary);border-radius:3px;padding:2px 6px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:11px;color:var(--code-function)}#stackgazer .modal-body p{margin:10px 0}#stackgazer .modal-body strong{color:var(--accent-success)}#stackgazer .side-by-side-container{width:100%}#stackgazer .side-by-side-headers{display:flex;gap:20px;margin-bottom:5px}#stackgazer .side-by-side-headers .column-header{flex:1;background:var(--bg-quaternary);color:var(--text-primary);padding:6px 10px;font-weight:700;font-size:11px;border-radius:4px 4px 0 0}#stackgazer .side-by-side-row{display:flex;gap:20px;margin-bottom:1px;align-items:flex-start}#stackgazer .function-side,#stackgazer .location-side{flex:1;padding:2px 10px;border-left:2px solid var(--accent-primary);min-height:20px;display:flex;align-items:flex-start;flex-wrap:wrap;word-break:break-all;overflow-wrap:break-word;min-width:0}#stackgazer .function-side{background:color-mix(in srgb,var(--code-function) 10%,transparent)}#stackgazer .location-side{background:color-mix(in srgb,var(--code-file) 10%,transparent)}#stackgazer .creator-function{color:var(--code-function);font-weight:700}#stackgazer .settings-container{position:absolute;bottom:15px;left:15px;display:flex;gap:10px}#stackgazer .settings-btn{background:transparent;border:1px solid var(--border-secondary);color:var(--text-muted);border-radius:50%;width:32px;height:32px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.6;transition:all .2s ease}#stackgazer .settings-btn:hover{background:var(--border-primary);color:var(--text-primary);border-color:var(--text-muted);opacity:1;transform:rotate(90deg)}#stackgazer .theme-toggle-btn{background:transparent;border:1px solid var(--border-secondary);color:var(--text-muted);border-radius:50%;width:32px;height:32px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.6;transition:all .2s ease}#stackgazer .theme-toggle-btn:hover{background:var(--border-primary);color:var(--text-primary);border-color:var(--text-muted);opacity:1}#stackgazer .github-btn{background:transparent;border:1px solid var(--border-secondary);color:var(--text-secondary);border-radius:50%;width:32px;height:32px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.6;transition:all .2s ease;text-decoration:none;position:relative}#stackgazer .github-btn:after{content:"";width:16px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23bbb'%3E%3Cpath d='M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z'/%3E%3C/svg%3E");background-size:16px 16px;background-repeat:no-repeat;background-position:center}#stackgazer .github-btn:hover{background:var(--border-primary);color:var(--text-primary);border-color:var(--text-muted);opacity:1}#stackgazer .setting-group{margin-bottom:20px;padding:15px;background:var(--bg-quaternary);border-radius:6px;border:1px solid var(--border-secondary)}#stackgazer .setting-title{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-weight:700;color:var(--text-primary);font-size:14px}#stackgazer .setting-help-icon{background:transparent;border:1px solid var(--text-muted);color:var(--text-muted);border-radius:50%;width:16px;height:16px;font-size:10px;font-weight:700;cursor:help;display:flex;align-items:center;justify-content:center;position:relative;opacity:.8;transition:all .2s ease}#stackgazer .setting-help-icon:hover{background:var(--bg-quaternary);color:var(--text-primary);border-color:var(--text-secondary);opacity:1}#stackgazer .setting-help-icon[data-tooltip]:hover:after{content:attr(data-tooltip);position:absolute;left:0;top:24px;background:var(--bg-primary);color:var(--text-primary);padding:8px 12px;border-radius:6px;font-size:11px;font-weight:400;line-height:1.4;white-space:pre-line;width:320px;text-align:left;box-shadow:0 4px 12px color-mix(in srgb,var(--bg-overlay) 80%,transparent);border:1px solid var(--border-secondary);z-index:10002;pointer-events:none}#stackgazer .setting-help-icon[data-tooltip]:hover:before{content:"";position:absolute;left:8px;top:20px;border:4px solid transparent;border-bottom-color:var(--border-secondary);z-index:10003;pointer-events:none}#stackgazer .setting-label{display:block;cursor:pointer;color:var(--text-primary);font-size:13px}#stackgazer .setting-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--text-primary);font-size:13px}#stackgazer .setting-checkbox-text{color:var(--text-primary)}#stackgazer .setting-text{font-weight:700;margin-left:8px}#stackgazer .setting-description{font-size:11px;color:var(--text-muted);margin-top:8px;line-height:1.4}#stackgazer .setting-checkbox{width:16px;height:16px;margin:0;vertical-align:middle}#stackgazer .setting-input{background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:4px;color:var(--text-primary);padding:6px 10px;font-family:inherit;font-size:12px;width:80px;margin-top:4px}#stackgazer .setting-input:focus{outline:none;border-color:var(--accent-primary)}#stackgazer .setting-text-input{background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:4px;color:var(--text-primary);padding:6px 10px;font-family:inherit;font-size:12px;width:100%;margin-top:4px}#stackgazer .setting-text-input:focus{outline:none;border-color:var(--accent-primary)}#stackgazer .setting-text-input::placeholder{color:var(--text-muted);font-style:italic}#stackgazer .setting-textarea{background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:4px;color:var(--text-primary);padding:8px 10px;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:11px;width:100%;margin-top:4px;resize:vertical;min-height:60px}#stackgazer .setting-textarea:focus{outline:none;border-color:var(--accent-primary)}#stackgazer .setting-textarea::placeholder{color:var(--text-muted);font-style:italic}#stackgazer .rules-editor{border:1px solid var(--border-secondary);border-radius:4px;background:var(--bg-secondary);margin-bottom:8px;overflow:hidden;padding:0}#stackgazer .rules-list{border:none;border-radius:0;background:transparent;margin-bottom:0;overflow:hidden}#stackgazer .rule-item{background:transparent;border:none;border-bottom:1px solid var(--border-secondary);border-radius:0;padding:0 4px 0 0;margin-bottom:0;display:flex;align-items:flex-start;gap:8px;min-height:20px}#stackgazer .rule-item:last-child{border-bottom:none}#stackgazer .rule-item:hover{background:var(--bg-quaternary)}#stackgazer .rule-controls{display:flex;align-items:center;gap:8px;width:100%;flex-wrap:nowrap;margin:0;padding:0}#stackgazer .rule-type-select{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px;padding:4px 8px;font-size:12px;min-width:80px}#stackgazer .rule-pattern,#stackgazer .rule-to,#stackgazer .rule-while-custom{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px;padding:4px 8px;font-size:12px;flex:1;min-width:120px}#stackgazer .rule-pattern{min-width:180px}#stackgazer .rule-to{min-width:100px}#stackgazer .rule-while{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px;padding:4px 8px;font-size:12px;min-width:90px}#stackgazer .rule-while-custom{min-width:100px}#stackgazer .remove-rule-btn{background:transparent;color:var(--text-muted);border:none;border-radius:0;width:20px;height:20px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.6}#stackgazer .remove-rule-btn:hover{color:var(--accent-danger);opacity:1}#stackgazer .footer-buttons{display:flex;gap:4px;padding:6px 12px;border-top:1px solid var(--border-secondary)}#stackgazer .rules-editor.collapsed-settings .rules-list,#stackgazer .rules-editor.collapsed-settings .footer-buttons{display:none}#stackgazer .add-rule-btn{background:transparent;color:var(--text-secondary);border:1px solid var(--border-secondary);border-radius:3px;padding:4px 8px;font-size:10px;cursor:pointer;transition:all .2s;flex:1}#stackgazer .add-rule-btn:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}#stackgazer .rule-input-container{position:relative;flex:1;min-width:120px;margin:0;padding:0}#stackgazer .rule-type-prefix{position:absolute;left:0;top:0;bottom:0;color:var(--text-muted);font-size:10px;font-weight:500;pointer-events:none;z-index:0;background:var(--bg-tertiary);border-right:1px solid var(--border-secondary);padding:0;margin:0;line-height:1;display:flex;align-items:center;min-width:48px;justify-content:center}#stackgazer .rule-replacement-line .rule-type-prefix,#stackgazer .rule-while-container .rule-type-prefix{min-width:60px}#stackgazer .rule-input{background:transparent;color:var(--text-primary);border:none;border-radius:0;padding:1px 4px;font-size:12px;width:100%;outline:none;height:18px;line-height:16px}#stackgazer .skip-rule .rule-input,#stackgazer .trim-rule .rule-input,#stackgazer .fold-rule .rule-pattern-input{padding-left:52px}#stackgazer .fold-rule .rule-replacement-input,#stackgazer .fold-rule .rule-while-input{padding-left:64px}#stackgazer .unknown-rule .rule-json-input{width:100%;padding:2px 4px;font-size:11px;font-family:monospace;resize:vertical;min-height:36px}#stackgazer .rule-replacement-line{margin-top:1px;display:flex;gap:8px}#stackgazer .rule-replacement-line .rule-input-container:first-child{flex:1;max-width:250px}#stackgazer .rule-while-container{flex:1;min-width:120px}#stackgazer .rule-category-container{flex:1;min-width:150px}#stackgazer .match-rule .rule-pattern-input{padding-left:64px}#stackgazer .match-rule .rule-category-input{padding-left:32px}#stackgazer .fold-rule-content{flex:1;display:flex;flex-direction:column;gap:0px}#stackgazer .fold-rule .rule-controls{flex-wrap:nowrap;width:100%}#stackgazer .find-rule-content{flex:1;display:flex;flex-direction:column;gap:0px}#stackgazer .ancestry-modal{position:absolute;top:0;left:0;width:100%;height:100%;background:#000c;z-index:1000;padding:20px;box-sizing:border-box}#stackgazer .ancestry-modal-content{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:8px;width:95%;height:90%;max-width:none;margin:2.5% auto;display:flex;flex-direction:column;overflow:visible;box-shadow:0 4px 20px #00000080;position:relative}#stackgazer .ancestry-modal-header{padding:1rem;border-bottom:1px solid var(--border-primary);display:flex;justify-content:space-between;align-items:center}#stackgazer .ancestry-modal-title{margin:0;color:var(--text-primary)}#stackgazer .ancestry-modal-close{position:absolute;top:-18px;right:-18px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:50%;color:var(--text-primary);font-size:24px;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;z-index:20;transition:all .2s ease}#stackgazer .ancestry-modal-close:hover{background:var(--bg-quaternary);border-color:var(--accent-primary);transform:scale(1.1)}#stackgazer .ancestry-tree-container{flex:1;overflow:auto;padding:20px;background:var(--bg-secondary);position:relative;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}#stackgazer .ancestry-zoom-controls{position:absolute;top:20px;right:20px;display:flex;flex-direction:column;gap:5px;z-index:10}#stackgazer .ancestry-zoom-controls button{background:var(--bg-tertiary);border:1px solid var(--border-primary);color:var(--text-primary);padding:8px 12px;cursor:pointer;border-radius:4px;font-size:14px}#stackgazer .ancestry-zoom-controls button:hover{background:var(--bg-quaternary)}#stackgazer .ancestry-tree-svg{display:block;background:var(--bg-secondary, #2a2a2a);cursor:grab;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}#stackgazer .ancestry-tree-svg.grabbing{cursor:grabbing}#stackgazer .ancestry-node{cursor:pointer}#stackgazer .ancestry-node-id{cursor:pointer;text-decoration:underline}#stackgazer .ancestry-node-label{font-size:11px;text-align:center;line-height:1.2;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-height:30px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}#stackgazer .ancestry-node-label.target{color:#000}#stackgazer .ancestry-node-label.normal{color:var(--text-muted, #999)}#stackgazer .ancestry-empty-state{color:var(--text-primary, #fff);text-align:center;padding:2rem;margin:0}#stackgazer .find-rule .rule-controls{flex-wrap:nowrap;width:100%}#stackgazer .skipwhile-rule-content{flex:1;display:flex;flex-direction:column;gap:0px}#stackgazer .skipwhile-rule .rule-controls{flex-wrap:nowrap;width:100%}#stackgazer .collapsible-group{border:1px solid var(--border-secondary);border-radius:4px;margin-bottom:16px}#stackgazer .rules-editor-header.collapsible-header{cursor:pointer;display:flex;align-items:center;gap:6px;padding:4px 8px;background:var(--bg-tertiary);border-radius:0;border-bottom:1px solid var(--border-secondary);-webkit-user-select:none;user-select:none;font-size:11px;font-weight:500;color:var(--text-muted);margin:0}#stackgazer .rules-editor-header.collapsible-header:hover{background:var(--bg-secondary);color:var(--text-secondary)}#stackgazer .expand-icon{font-size:10px;color:var(--text-muted);transition:transform .2s ease}#stackgazer .collapsible-header.collapsed-settings .expand-icon{transform:rotate(-90deg)}#stackgazer .collapsible-content{padding:0}#stackgazer .collapsible-content.collapsed-settings{display:none}#stackgazer .setting-description-prose{margin-bottom:16px}#stackgazer .setting-description-prose p{margin:0;font-size:12px;line-height:1.4;color:var(--text-secondary)}#stackgazer .setting-description-prose strong{color:var(--text-primary);font-weight:600}@media (max-width: 768px){#stackgazer .footer-buttons{flex-direction:column}#stackgazer .rule-controls{flex-direction:column;align-items:stretch;gap:4px}#stackgazer .rule-type-label{min-width:auto}#stackgazer .rule-input{min-width:auto;width:100%}}#stackgazer .settings-actions{padding:20px 25px;border-top:1px solid var(--border-primary);background:var(--bg-secondary);display:flex;gap:10px;justify-content:flex-end;border-radius:0 0 8px 8px;flex-shrink:0}#stackgazer .settings-reset-btn,#stackgazer .settings-save-btn{padding:8px 16px}#stackgazer .demo-link{color:var(--code-keyword);text-decoration:none;cursor:pointer;transition:color .2s ease,text-decoration .2s ease;font-size:14px}#stackgazer .demo-link:hover{color:var(--text-link-hover);text-decoration:underline}#stackgazer .hidden{display:none!important}#stackgazer .cursor-pointer{cursor:pointer}#stackgazer .main-content.filtered .filtered{display:none!important}#stackgazer .modal-visible{display:block!important}#stackgazer .modal-hidden{display:none!important}#stackgazer .file-section .header{cursor:pointer;display:flex;justify-content:space-between}#stackgazer .file-section .header .title{font-weight:700;font-size:14px;display:flex;align-items:center;gap:6px}#stackgazer .group-header-label{-webkit-user-select:text;user-select:text;cursor:text}#stackgazer .group-sub-header{font-size:1em;color:var(--text-primary);font-weight:500;margin-bottom:8px;display:flex;justify-content:space-between;padding:6px 12px;background-color:var(--border-primary);border-radius:3px}#stackgazer .group-sub-header-label{font-weight:700;font-size:1.2em;color:var(--text-primary);margin-top:4px}#stackgazer .group-sub-header-label.unlabeled{font-style:italic;color:var(--text-muted)}#stackgazer .group-sub-header-count{color:var(--text-secondary);font-size:.95em;font-weight:500}#stackgazer .group-sub-section{margin-top:6px}#stackgazer .demo-add-files,#stackgazer .demo-try-demo{font-size:14px;color:var(--text-muted)}#stackgazer .demo-add-files{margin-top:10px}#stackgazer .demo-try-demo{margin:20px 0 10px}#stackgazer .demo-section-divider{margin-top:25px;padding-top:5px;border-top:1px solid var(--border-secondary)}#stackgazer .demo-buttons{text-align:center;margin-top:10px;gap:20px;display:flex;justify-content:center}#stackgazer .custom-rules-section,#stackgazer .default-rules-section{margin:12px 0}#stackgazer .custom-rules-section h5,#stackgazer .default-rules-section h5{font-size:12px;font-weight:600;color:var(--text-primary);margin:0 0 6px}#stackgazer .default-rules-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:2px 0;margin-bottom:6px}#stackgazer .default-rules-title{display:flex;align-items:center;gap:6px}#stackgazer .default-rules-title .expand-icon{font-size:10px;color:var(--text-muted);transition:transform .2s ease}#stackgazer .default-rules-section:has(.default-rules-content.collapsed-settings) .expand-icon{transform:rotate(-90deg)}#stackgazer .default-rules-section.settings-collapsed .expand-icon{transform:rotate(-90deg)}#stackgazer .default-rules-header h5{margin:0;transition:color .2s ease}#stackgazer .default-rules-header.disabled h5{color:var(--text-muted)}#stackgazer .default-rules-content{transition:all .2s ease}#stackgazer .default-rules-content.collapsed-settings,#stackgazer .custom-rules-content.collapsed-settings{display:none}#stackgazer .default-rules-textarea{background:var(--bg-tertiary);color:var(--text-muted);border-color:var(--border-secondary)}#stackgazer .toggle-switch{position:relative;width:34px;height:18px;display:inline-block}#stackgazer .toggle-switch input{opacity:0;width:0;height:0}#stackgazer .toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--border-secondary);transition:.2s;border-radius:18px}#stackgazer .toggle-slider:before{position:absolute;content:"";height:14px;width:14px;left:2px;bottom:2px;background-color:var(--bg-primary);transition:.2s;border-radius:50%}#stackgazer input:checked+.toggle-slider{background-color:var(--accent-primary)}#stackgazer input:checked+.toggle-slider:before{transform:translate(16px)}#stackgazer .copy-button{--copy-size: 28px;--copy-font: 16px;--copy-top: 50px;--copy-right: -14px;--copy-z: 10;--copy-hover-size: 40px;--copy-hover-font: 20px;--copy-hover-top: 44px;--copy-hover-right: -20px;position:absolute;background:var(--bg-quaternary);border:1px solid var(--border-secondary);border-radius:50%;width:var(--copy-size);height:var(--copy-size);font-size:var(--copy-font);color:var(--text-muted);cursor:pointer;opacity:0;transition:all .2s ease;display:flex;align-items:center;justify-content:center;top:var(--copy-top);right:var(--copy-right);z-index:var(--copy-z)}#stackgazer .copy-button.size-small{--copy-size: 18px;--copy-font: 10px;--copy-top: 40px;--copy-right: -25px;--copy-z: 5;--copy-hover-size: 26px;--copy-hover-font: 14px;--copy-hover-top: 36px;--copy-hover-right: -29px}#stackgazer .section.container-collapsed>.header>.copy-button{display:none}#stackgazer .section:hover>.header>.copy-button:not(.pinned),#stackgazer .goroutine-entry:hover>.copy-button:not(.pinned){opacity:.7}#stackgazer .copy-button:hover{background:var(--bg-quaternary);border-color:var(--border-primary);color:var(--text-primary);opacity:1!important;width:var(--copy-hover-size);height:var(--copy-hover-size);font-size:var(--copy-hover-font);top:var(--copy-hover-top);right:var(--copy-hover-right)}#stackgazer .copy-button:before{content:"";position:absolute;inset:-16px;border-radius:50%}#stackgazer .copy-button.size-small:hover{top:var(--copy-hover-top);right:var(--copy-hover-right)}#stackgazer .narrow-menu-btn,#stackgazer .narrow-filter-container,#stackgazer .narrow-controls,#stackgazer .narrow-controls-header,#stackgazer .narrow-close-btn,#stackgazer .narrow-back-btn{display:none!important}@media (max-width: 900px){#stackgazer .narrow-menu-btn,#stackgazer .narrow-filter-container,#stackgazer .narrow-controls,#stackgazer .narrow-controls-header,#stackgazer .narrow-close-btn{display:flex!important}#stackgazer .narrow-controls-header,#stackgazer .narrow-close-btn{display:block!important}#stackgazer .narrow-back-btn:not(:disabled){display:flex!important}#stackgazer .container{position:relative}#stackgazer .sidebar{position:fixed;top:0;left:-300px;height:100vh;z-index:1000;transition:left .3s ease;box-shadow:2px 0 10px #0000004d;overflow-y:auto;padding:20px 20px 80px;box-sizing:border-box}#stackgazer .sidebar.narrow-open{left:0}#stackgazer .sidebar-overlay{position:fixed;inset:0;background:var(--bg-overlay);z-index:999;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}#stackgazer .sidebar-overlay.active{opacity:1;visibility:visible}#stackgazer .main-content{width:100%}#stackgazer .view-controls-bar{flex-direction:column;gap:10px;padding:10px 15px}#stackgazer .narrow-filter-container{width:100%;order:-1;display:flex;gap:8px;align-items:center}#stackgazer .narrow-menu-btn{background:var(--accent-primary);border:none;border-radius:6px;color:#fff;font-size:16px;cursor:pointer;padding:8px 12px;transition:all .2s ease;flex-shrink:0}#stackgazer .narrow-menu-btn:hover{background:var(--accent-primary-hover);transform:scale(1.05)}#stackgazer .narrow-menu-btn.active{background:var(--accent-danger);transform:scale(.95)}#stackgazer .narrow-filter-input{flex:1;padding:8px 12px;background:var(--bg-quaternary);border:1px solid var(--border-secondary);border-radius:4px;color:var(--text-primary);font-family:inherit;font-size:14px}#stackgazer .narrow-filter-input:focus{outline:none;border-color:var(--accent-primary)}#stackgazer .narrow-filter-input::placeholder{color:var(--text-muted)}#stackgazer .narrow-back-btn{position:fixed;bottom:20px;left:20px;width:44px;height:44px;background:var(--accent-primary);border:none;border-radius:50%;color:#fff;font-size:18px;cursor:pointer;box-shadow:0 4px 12px #0000004d;z-index:1002;transition:all .3s ease;display:flex;align-items:center;justify-content:center}#stackgazer .narrow-back-btn:hover:not(:disabled){background:var(--accent-primary-hover);transform:scale(1.1)}#stackgazer .narrow-back-btn:disabled{background:var(--border-secondary);cursor:not-allowed;opacity:.5}#stackgazer .view-controls-bar #expandAllBtn,#stackgazer .view-controls-bar #collapseAllBtn,#stackgazer .view-controls-bar #unpinAllBtn,#stackgazer .view-controls-bar #stackDisplayModeSelect,#stackgazer .view-controls-bar #backBtn{display:none}#stackgazer .view-controls-bar .left-controls,#stackgazer .view-controls-bar .right-controls{flex-wrap:wrap;gap:8px}#stackgazer .view-controls-bar .control-btn{font-size:12px;padding:6px 10px;min-width:auto}#stackgazer .view-controls-bar select{font-size:12px;padding:6px 8px}.narrow-controls{flex-direction:column;gap:10px;padding:15px;background:var(--bg-quaternary);border-radius:6px;margin-bottom:15px}#stackgazer .narrow-controls-row{display:flex;gap:8px;flex-wrap:wrap}#stackgazer .narrow-controls .control-btn{flex:1;min-width:80px;font-size:11px;padding:8px 12px}#stackgazer .narrow-select{width:100%;background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:4px;color:var(--text-primary);font-family:inherit;font-size:11px;padding:8px 12px}#stackgazer .narrow-select:focus{outline:none;border-color:var(--accent-primary)}#stackgazer .narrow-close-btn{position:fixed;top:20px;left:-18px;background:var(--bg-primary);border:2px solid var(--border-secondary);border-radius:50%;color:var(--text-secondary);font-size:20px;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;z-index:1002;transition:left .3s ease,opacity .2s ease;box-shadow:0 2px 8px #00000026;opacity:0;visibility:hidden}#stackgazer .narrow-close-btn.visible{opacity:1;visibility:visible;left:282px}#stackgazer .narrow-close-btn:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--accent-primary);transform:scale(1.1);box-shadow:0 4px 12px #0003}#stackgazer .drop-zone{margin:10px}#stackgazer .drop-zone.has-content{padding:10px}}@media (max-width: 400px){#stackgazer .header{flex-wrap:wrap;align-items:flex-start;gap:4px}#stackgazer .header-right{width:100%;align-items:flex-start;margin-top:4px}#stackgazer .header .counts{margin-right:0;font-size:12px}#stackgazer .state-summary{font-size:11px}}#stackgazer .rule-validation-feedback{margin-top:8px;font-size:12px;line-height:1.4}#stackgazer .rule-errors,#stackgazer .rule-warnings{margin-bottom:4px}#stackgazer .rule-error-item{color:var(--accent-error);margin:2px 0;padding:2px 4px;background-color:var(--accent-error-bg, rgba(220, 53, 69, .1));border-radius:3px}#stackgazer .rule-warning-item{color:var(--accent-warning, #fd7e14);margin:2px 0;padding:2px 4px;background-color:var(--accent-warning-bg, rgba(253, 126, 20, .1));border-radius:3px}#stackgazer textarea.rule-error{border-color:var(--accent-error)!important;box-shadow:0 0 0 2px #dc354533}#stackgazer textarea.rule-warning{border-color:var(--accent-warning, #fd7e14)!important;box-shadow:0 0 0 2px #fd7e1433}#stackgazer .copy-notification{position:absolute;top:20px;right:20px;background:var(--accent-success);color:#fff;padding:8px 16px;border-radius:4px;font-size:12px;z-index:10000;pointer-events:none;opacity:0;transition:opacity .3s ease}#stackgazer .copy-notification.show{opacity:1}#stackgazer .loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10001;pointer-events:auto}#stackgazer .loading-spinner{width:60px;height:60px;border:4px solid var(--bg-tertiary);border-top:4px solid var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}#stackgazer .loading-content{display:flex;flex-direction:column;align-items:center;gap:20px;color:var(--text-primary);background:var(--bg-secondary);padding:30px;border-radius:12px;border:1px solid var(--border-color);min-width:300px;text-align:center}#stackgazer .loading-message{font-size:16px;font-weight:500}#stackgazer .loading-details{font-size:14px;color:var(--text-secondary);opacity:.8}#stackgazer .loading-progress{width:100%;max-width:250px;height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}#stackgazer .loading-progress-bar{height:100%;background:var(--accent-primary);border-radius:4px;width:0%;transition:width .3s ease}#stackgazer .loading-progress-indeterminate{height:100%;background:linear-gradient(90deg,transparent,var(--accent-primary),transparent);border-radius:4px;width:50%;animation:loading-slide 2s ease-in-out infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes loading-slide{0%{transform:translate(-100%)}to{transform:translate(200%)}}
