@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+KR:wght@400;500;600;700&family=JetBrains+Mono:wght@400;600&display=swap";:root{color:#142033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f8ff;font-family:IBM Plex Sans KR,sans-serif;font-weight:400;line-height:1.5}html[data-theme=dark]{color:#f7fbff;background:#05070c}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100vh;margin:0}body{background:inherit}button,input,textarea{font:inherit}button,a{color:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-root{min-height:100vh;position:relative}.theme-toggle{z-index:80;color:#0f172a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer;background:#ffffffe0;border:1px solid #94a3b83d;border-radius:999px;align-items:center;gap:8px;height:42px;padding:0 14px;transition:transform .16s,background .16s,box-shadow .16s;display:inline-flex;position:fixed;top:20px;right:24px;box-shadow:0 18px 48px #0f172a1a}.theme-toggle:hover{background:#fff;transform:translateY(-1px);box-shadow:0 22px 52px #0f172a24}.theme-toggle span{font-size:.82rem;font-weight:700}.upload-screen,.loading-screen{background:radial-gradient(circle at 0 0,#75a7ff38,#0000 34%),radial-gradient(circle at 100% 100%,#ffba9138,#0000 30%),linear-gradient(#fffdf8 0%,#f5f8ff 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.upload-aurora,.loading-aurora{filter:blur(96px);opacity:.5;pointer-events:none;border-radius:999px;width:24rem;height:24rem;position:absolute}.upload-aurora-left,.loading-aurora-left{background:#6999ff4d;top:18%;left:12%}.upload-aurora-right,.loading-aurora-right{background:#ffaa7e42;bottom:16%;right:10%}.upload-content,.loading-card{z-index:1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#ffffffeb 0%,#f8fafffa 100%);border:1px solid #b2c5e680;border-radius:36px;width:min(100%,980px);position:relative;box-shadow:0 36px 120px #3e5b8e24,inset 0 1px #ffffffe6}.upload-content{color:#142033;text-align:left;flex-direction:column;align-items:stretch;width:min(100%,1120px);padding:56px;display:flex}.upload-brand{align-items:center;gap:22px;display:flex}.upload-logo{color:#2251d1;background:linear-gradient(135deg,#fffffff5,#eef3ffeb);border:1px solid #89a7e761;border-radius:28px;flex:none;place-items:center;width:84px;height:84px;display:grid;box-shadow:0 22px 44px #4363a024}.upload-brand-copy{min-width:0}.upload-kicker{color:#5b79a8;letter-spacing:.16em;text-transform:uppercase;font-size:.76rem;font-weight:700;display:inline-flex}.upload-content h1{color:#152238;letter-spacing:-.06em;margin:10px 0 8px;font-size:clamp(3.1rem,5vw,5rem);line-height:.92}.upload-content>p{color:#64748b;max-width:32rem;margin:0;font-size:1rem}.upload-actions{min-width:0;display:flex}.upload-entry-grid{grid-template-columns:minmax(280px,320px) minmax(0,1fr);align-items:stretch;gap:24px;margin-top:40px;display:grid}.quick-guide{background:linear-gradient(#ffffffeb 0%,#f5f8fff0 100%);border:1px solid #bdcdeab8;border-radius:30px;margin-top:28px;padding:30px;box-shadow:0 24px 60px #4a65961a,inset 0 1px #ffffffd1}.quick-guide-header{gap:10px;display:grid}.quick-guide-kicker{color:#5b79a8;letter-spacing:.16em;text-transform:uppercase;font-size:.74rem;font-weight:700;display:inline-flex}.quick-guide-header h2{color:#152238;letter-spacing:-.04em;margin:10px 0 0;font-size:clamp(1.3rem,2vw,1.8rem);line-height:1.2}.quick-guide-list{gap:8px;margin-top:18px;display:grid}.quick-guide-line{color:#5f6f87;background:#ffffffa3;border-radius:16px;align-items:baseline;gap:10px;margin:0;padding:12px 14px;font-size:.92rem;line-height:1.5;display:flex}.quick-guide-line strong{color:#152238;flex:0 0 180px;font-size:.92rem}.quick-guide-line span{color:inherit}.tutorial-overlay{z-index:40;pointer-events:none;position:absolute;inset:0}.tutorial-scrim{background:radial-gradient(circle,#05070c1f,#05070c94),#05070c29;position:absolute;inset:0}.tutorial-header{z-index:2;color:#eff5ff;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);pointer-events:auto;background:#070b12db;border:1px solid #ffffff1f;border-radius:28px;justify-content:space-between;align-items:flex-start;gap:20px;width:min(100% - 48px,920px);padding:22px 24px;display:flex;position:absolute;top:108px;left:50%;transform:translate(-50%);box-shadow:0 24px 60px #00000059}.tutorial-eyebrow{color:#9ec7ff;letter-spacing:.08em;text-transform:uppercase;background:#287dff1a;border:1px solid #78b8ff47;border-radius:999px;margin-bottom:10px;padding:6px 10px;font-size:.75rem;display:inline-flex}.tutorial-header h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.45rem,2vw,1.9rem);line-height:1.15}.tutorial-header p{color:#e0e8f6b8;max-width:40rem;margin:12px 0 0;line-height:1.65}.tutorial-close{color:#eef5ff;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:999px;flex:none;height:42px;padding:0 16px}.tutorial-focus{z-index:1;border:1px solid #8fb9ff59;border-radius:26px;position:absolute;box-shadow:0 0 0 1px #8fb9ff2e,0 0 44px #8fb9ff1f,inset 0 0 0 999px #ffffff05}.tutorial-focus-search{width:min(100% - 24px,772px);height:72px;top:18px;left:50%;transform:translate(-50%)}.tutorial-focus-tree{width:300px;top:92px;bottom:24px;left:24px}.tutorial-focus-graph{inset:92px 448px 24px 348px}.tutorial-focus-detail{width:420px;top:92px;bottom:24px;right:24px}.tutorial-arrows{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.tutorial-arrows path{fill:none;stroke:#8fb9ffeb;stroke-width:2.4px;stroke-linecap:round;marker-end:url(#tutorial-arrow)}.tutorial-callout{z-index:3;color:#f5f9ff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#070b12e6;border:1px solid #ffffff1f;border-radius:24px;width:min(320px,100% - 32px);padding:18px;position:absolute;box-shadow:0 20px 48px #0000004d}.tutorial-callout-search{top:210px;left:36px}.tutorial-callout-graph{bottom:34px;left:50%;transform:translate(-50%)}.tutorial-callout-detail{bottom:40px;right:36px}.tutorial-callout-index{color:#9ec7ff;letter-spacing:.1em;margin-bottom:10px;font-size:.9rem;font-weight:700;display:inline-flex}.tutorial-callout strong{font-size:.98rem;display:block}.tutorial-callout p{color:#d8e0eea8;margin-top:10px;font-size:.84rem;line-height:1.6}.tutorial-node-badge{z-index:3;color:#eef5ff;background:#070b12e0;border:1px solid #78b8ff3d;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;display:flex;position:absolute;top:330px;left:50%;transform:translate(-50%)}.tutorial-node-badge span{color:#d8e0ee9e;font-size:.76rem}.tutorial-node-badge strong{font-size:.82rem}.github-entry{text-align:left;background:#ffffffc7;border:1px solid #bdcdeab8;border-radius:30px;width:100%;min-width:0;padding:28px;box-shadow:inset 0 1px #fffc}.github-entry-header{display:block}.github-entry-header strong{color:#152238;letter-spacing:-.02em;font-size:1.05rem;display:block}.github-entry-grid{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:20px;display:grid}.experiment-field+.experiment-field{margin-top:18px}.experiment-field label,.experiment-field-label{color:#5c6d86;margin-bottom:10px;font-size:.84rem;font-weight:700;display:inline-flex}.github-input-wrap{flex:1;position:relative}.github-input-icon{color:#8ca0bf;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.github-input{color:#152238;background:#fff;border:1px solid #d6dfef;border-radius:16px;width:100%;height:48px;padding:0 16px 0 42px}.github-input::placeholder{color:#9aacbf}.github-input:focus{border-color:#84a9ff;outline:none;box-shadow:0 0 0 4px #84a9ff26}.github-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1d4ed8,#4f8cff);border:1px solid #2453c224;border-radius:999px;min-width:164px;height:48px;padding:0 22px;transition:transform .18s,filter .18s,opacity .18s;box-shadow:0 20px 32px #3361c53d}.github-submit:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.github-submit:disabled{opacity:.65;cursor:wait}.purpose-options{flex-wrap:wrap;gap:10px;display:flex}.purpose-option{color:#50627d;cursor:pointer;background:#fff;border:1px solid #d7e0ef;border-radius:999px;padding:10px 14px;transition:transform .18s,border-color .18s,background .18s,color .18s}.purpose-option:hover:not(:disabled){color:#1c3158;border-color:#9db7f3;transform:translateY(-1px)}.purpose-option.is-active{color:#2047b8;background:#eef4ff;border-color:#adc4ff}.github-entry-footer{justify-content:flex-end;margin-top:22px;display:flex}.upload-card{color:#18263b;cursor:pointer;background:#ffffffeb;border:1px solid #b7c7e7c7;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;min-height:220px;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:flex;box-shadow:0 22px 50px #4a65961f}.upload-card svg{color:#3466e8;transition:transform .18s}.upload-card strong{font-size:1.1rem}.upload-card span{color:#6b7b92;font-size:.86rem}.upload-card:hover{background:#fff;border-color:#a8bff8;transform:translateY(-4px);box-shadow:0 28px 54px #375aa42e}.upload-card:hover svg{transform:scale(1.08)}.upload-card.is-disabled{opacity:.56;cursor:wait}.upload-spinner,.loading-spinner{border:4px solid #7d95c229;border-top-color:#3d6fff;border-radius:999px;width:42px;height:42px;animation:.9s linear infinite spin}.loading-card{flex-direction:column;align-items:center;width:min(100%,420px);padding:34px;display:flex}.loading-card h2{color:#152238;margin:20px 0 8px;font-size:1.3rem}.loading-card p{color:#5e7dc0;min-height:1.25rem;margin:0 0 20px;font-size:.95rem}.loading-bar{background:#6078a624;border-radius:999px;width:100%;height:6px;overflow:hidden}.loading-bar-fill{background:linear-gradient(90deg,#2f67ea,#89abff);height:100%;transition:width .5s}.app-shell{background:radial-gradient(circle at 14% 12%,#4361ee29,#0000 28%),radial-gradient(circle at 86% 18%,#ff92b524,#0000 24%),radial-gradient(circle at 82% 82%,#5fd3b924,#0000 22%),linear-gradient(#fbfdff 0%,#f4f7fb 52%,#eef3f8 100%);min-height:100vh;position:relative;overflow:hidden}.app-grid{opacity:.45;pointer-events:none;background-image:radial-gradient(#94a3b838 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.top-search{z-index:30;width:min(100% - 32px,760px);position:absolute;top:24px;left:50%;transform:translate(-50%)}.top-search-row{align-items:center;gap:12px;display:flex}.search-form{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe6;border:1px solid #94a3b847;border-radius:999px;flex:auto;align-items:center;display:flex;position:relative;box-shadow:0 24px 56px #0f172a14}.search-icon{color:#94a3b8;position:absolute;left:18px}.search-input{color:#0f172a;width:100%;font:inherit;background:0 0;border:0;border-radius:999px;padding:15px 52px 15px 48px}.search-input::placeholder{color:#94a3b8}.search-input:focus{outline:none}.icon-button{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;width:32px;height:32px;transition:background .16s,color .16s;display:grid}.icon-button:hover{color:#0f172a;background:#eef2f7}.clear-search{position:absolute;right:12px}.survey-link-button{color:#17367d;white-space:nowrap;background:linear-gradient(135deg,#fffffffa,#edf3fff5);border:1px solid #3966d62e;border-radius:999px;flex:none;align-items:center;gap:8px;min-height:50px;padding:0 18px 0 16px;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s,filter .16s;animation:2.1s ease-in-out infinite survey-pulse;display:inline-flex;position:relative;box-shadow:0 20px 38px #294c9424,inset 0 1px #ffffffeb}.survey-link-button:hover{filter:brightness(1.02);border-color:#3966d64d;transform:translateY(-1px);box-shadow:0 24px 44px #294c942e,inset 0 1px #ffffffeb}.survey-link-button span:last-of-type{letter-spacing:-.01em;font-size:.86rem;font-weight:800}.survey-link-stars{place-items:center;width:18px;height:18px;display:grid;position:relative}.survey-star{color:#4f7fff;position:absolute}.survey-star-main{animation:1.5s ease-in-out infinite survey-twinkle}.survey-star-small{color:#89abff;animation:1.5s ease-in-out .45s infinite survey-twinkle;top:-2px;right:-4px}.search-helper{color:#475467;margin:10px 14px 0;font-size:.8rem;line-height:1.5}.side-panel{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffdb;border:1px solid #94a3b838;border-radius:28px;flex-direction:column;display:flex;position:absolute;top:92px;bottom:24px;overflow:hidden;box-shadow:0 24px 72px #0f172a14}.side-panel-left{width:300px;left:24px}.side-panel-right{width:min(420px,100vw - 48px);right:24px}.panel-title{align-items:center;gap:10px;min-width:0;display:flex}.panel-header{background:#f8fafcf5;border-bottom:1px solid #e2e8f0e6;justify-content:space-between;align-items:center;gap:10px;padding:18px 20px;display:flex}.panel-header h2{color:#0f172a;letter-spacing:.04em;margin:0;font-size:.95rem}.panel-accent,.tree-folder-icon{color:#3767ff}.panel-body{flex:1;padding:12px;overflow:auto}.tree-group{width:100%}.tree-row{color:#475569;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:8px;width:100%;padding-top:8px;padding-bottom:8px;transition:background .15s,color .15s;display:flex}.tree-row span{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.tree-row:hover{color:#0f172a;background:#3767ff14}.tree-file{color:#64748b}.tree-file.is-selected{color:#2350d6;background:#3767ff24}.graph-canvas{z-index:10;cursor:grab;background:linear-gradient(#ffffff8f,#f8fafcd1);position:absolute;inset:0}.graph-canvas:active{cursor:grabbing}.panel-toggle-button{flex:none}.explorer-fab{z-index:22;color:#0f172a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);font:inherit;cursor:pointer;background:#ffffffeb;border:1px solid #94a3b83d;border-radius:999px;align-items:center;gap:8px;padding:11px 14px;font-size:.84rem;font-weight:600;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex;position:absolute;top:110px;left:24px;box-shadow:0 18px 48px #0f172a14}.explorer-fab:hover{background:#fff;transform:translateY(-1px);box-shadow:0 22px 54px #0f172a1f}.graph-stage,.graph-edges{width:100%;height:100%;position:absolute;inset:0}.graph-edges{pointer-events:none;overflow:visible}.edge-label{font-family:JetBrains Mono,SFMono-Regular,monospace;font-weight:600}.graph-node{-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;transition:opacity .22s,filter .22s,transform .22s;display:flex;position:absolute;transform:translate(-50%,-50%)}.graph-node.is-muted{opacity:.24;filter:grayscale(.15)}.node-circle{border:1px solid;border-radius:999px;place-items:center;width:52px;height:52px;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s;display:grid;position:relative}.graph-node:hover .node-circle{transform:scale(1.05)}.node-circle.is-selected{transform:scale(1.12)}.node-icon{place-items:center;display:grid}.node-caption{pointer-events:none;white-space:nowrap;flex-direction:column;align-items:center;display:flex;position:absolute;top:calc(100% + 8px)}.node-label{color:#1e293b;background:#fffffff5;border:1px solid #94a3b847;border-radius:10px;padding:5px 10px;font-size:.76rem;font-weight:700;box-shadow:0 10px 24px #0f172a14}.node-label.is-selected{color:#0f172a}.node-role{letter-spacing:.16em;text-transform:uppercase;opacity:0;background:#ffffffeb;border:1px solid;border-radius:999px;margin-top:6px;padding:4px 8px;font-size:.58rem;transition:opacity .16s;box-shadow:0 10px 18px #0f172a0f}.graph-node:hover .node-role{opacity:1}.panel-header-detail{justify-content:space-between}.detail-heading{align-items:center;gap:12px;min-width:0;display:flex}.detail-type-badge{background:#fff;border:1px solid;border-radius:16px;flex:none;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 12px 28px #0f172a0f}.detail-heading-text{min-width:0}.detail-heading-main{align-items:center;gap:8px;display:flex}.detail-heading-main h2{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.2rem;overflow:hidden}.detail-heading-text p{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;font-family:JetBrains Mono,SFMono-Regular,monospace;font-size:.72rem;overflow:hidden}.detail-body{background:linear-gradient(#ffffffb3,#f8fafcf0);padding:20px}.detail-section+.detail-section{margin-top:24px}.detail-section-title{color:#475467;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:8px;margin:0 0 12px;font-size:.72rem;display:flex}.detail-highlight-stack{gap:12px;display:grid}.detail-highlight-card{background:#fff;border:1px solid #e2e8f0f5;border-radius:20px;padding:16px;box-shadow:0 12px 30px #0f172a0d}.detail-highlight-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.detail-highlight-eyebrow{color:#3767ff;letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px;font-size:.68rem;font-weight:700}.detail-highlight-title{color:#0f172a;font-size:.94rem;line-height:1.4;display:block}.detail-highlight-path{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;font-family:JetBrains Mono,SFMono-Regular,monospace;font-size:.72rem;overflow:hidden}.detail-highlight-sections{gap:14px;margin-top:14px;display:grid}.detail-highlight-block{gap:8px;display:grid}.detail-highlight-block-title{color:#3767ff;letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:700}.detail-highlight-code{background:#f8fafc;border:1px solid #e2e8f0f5;border-radius:16px;overflow:auto}.detail-highlight-line{color:#334155;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:10px 14px;font-family:JetBrains Mono,SFMono-Regular,monospace;font-size:.73rem;line-height:1.55;display:grid}.detail-highlight-line+.detail-highlight-line{border-top:1px solid #e2e8f0e6}.detail-highlight-line.is-active{background:#3767ff14}.detail-highlight-number{color:#94a3b8;text-align:right;-webkit-user-select:none;user-select:none}.detail-highlight-text{color:inherit;text-overflow:ellipsis;white-space:pre;overflow:hidden}.detail-empty-copy{color:#64748b;background:#f8fafceb;border:1px dashed #94a3b866;border-radius:18px;margin:0;padding:16px 18px;line-height:1.6}.code-viewer-overlay{z-index:90;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.code-viewer-backdrop{cursor:pointer;background:#0f172a70;border:0;position:absolute;inset:0}.code-viewer-modal{z-index:1;background:#f8fafc;border:1px solid #94a3b83d;border-radius:28px;flex-direction:column;width:min(1120px,100vw - 48px);max-height:min(88vh,960px);display:flex;position:relative;overflow:hidden;box-shadow:0 28px 80px #0f172a33}.code-viewer-header{background:#fffffff5;border-bottom:1px solid #e2e8f0e6;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.code-viewer-title-wrap{align-items:center;gap:12px;min-width:0;display:flex}.code-viewer-icon{color:#3767ff;background:#fff;border:1px solid #94a3b838;border-radius:14px;place-items:center;width:42px;height:42px;display:grid}.code-viewer-title-copy{min-width:0}.code-viewer-title-copy strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.code-viewer-title-copy p{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-family:JetBrains Mono,SFMono-Regular,monospace;font-size:.76rem;overflow:hidden}.code-viewer-toolbar{color:#64748b;letter-spacing:.04em;text-transform:uppercase;background:#eef3f8;border-bottom:1px solid #e2e8f0e6;justify-content:space-between;align-items:center;gap:12px;padding:10px 20px;font-size:.78rem;font-weight:600;display:flex}.code-viewer-body{background:#f8fafc;flex:1;grid-template-columns:auto minmax(0,1fr);min-height:0;display:grid;overflow:auto}.code-viewer-gutter{color:#94a3b8;text-align:right;-webkit-user-select:none;user-select:none;background:#eef3f8;border-right:1px solid #e2e8f0f5;flex-direction:column;padding:18px 0 18px 18px;font-family:JetBrains Mono,SFMono-Regular,monospace;font-size:.78rem;line-height:1.75;display:flex}.code-viewer-gutter span{padding-right:12px}.code-viewer-gutter span.is-connected{color:#3767ff;font-weight:700}.code-viewer-pre{color:#1e293b;background:#f8fafc;margin:0;padding:18px 20px;font-family:JetBrains Mono,SFMono-Regular,monospace;font-size:.82rem;line-height:1.75}.code-viewer-line{white-space:pre;display:block}.code-viewer-line.is-connected{background:#3767ff14;border-left:3px solid #3767ff;margin:0 -12px;padding:0 12px}.code-viewer-line-text{display:inline}.code-viewer-line-badges{vertical-align:middle;flex-wrap:wrap;gap:6px;margin-left:14px;display:inline-flex}.code-viewer-line-badge{color:#1d4ed8;white-space:nowrap;background:#ffffffeb;border:1px solid #3767ff2e;border-radius:999px;align-items:center;padding:2px 8px;font-size:.7rem;font-weight:700;line-height:1.5;display:inline-flex}.code-viewer-close{flex:none}.theme-dark .theme-toggle{color:#eef5ff;background:#070b12d1;border-color:#ffffff1f;box-shadow:0 18px 52px #00000057}.theme-dark .theme-toggle:hover{background:#0c111bf5;box-shadow:0 22px 56px #0000006b}.theme-dark .upload-screen,.theme-dark .loading-screen{background:radial-gradient(circle at 0 0,#5684e638,#0000 34%),radial-gradient(circle at 100% 100%,#ff9a6629,#0000 30%),linear-gradient(#05070c 0%,#0b1020 100%)}.theme-dark .upload-content,.theme-dark .loading-card{background:linear-gradient(#090d16e0 0%,#0d121ff5 100%);border-color:#ffffff1a;box-shadow:0 36px 120px #00000061,inset 0 1px #ffffff0f}.theme-dark .upload-content,.theme-dark .loading-card,.theme-dark .upload-content h1,.theme-dark .loading-card h2{color:#eef5ff}.theme-dark .upload-logo{color:#89b6ff;background:linear-gradient(135deg,#131a2bf5,#0d1320e6);border-color:#78b8ff47;box-shadow:0 22px 44px #00000047}.theme-dark .upload-kicker,.theme-dark .quick-guide-kicker{color:#9ab5e1}.theme-dark .upload-brand-copy p,.theme-dark .loading-card p{color:#e0e8f6b3}.theme-dark .quick-guide{background:linear-gradient(#0a0f1ad6 0%,#0c121ef0 100%);border-color:#ffffff1a;box-shadow:0 28px 60px #0000003d,inset 0 1px #ffffff0a}.theme-dark .quick-guide-header h2,.theme-dark .quick-guide-line strong{color:#eef5ff}.theme-dark .quick-guide-line{color:#d8e0eead;background:#121927eb}.theme-dark .upload-card,.theme-dark .github-entry{color:#eef5ff;background:#0b101cc7;border-color:#ffffff1a;box-shadow:0 24px 54px #0000003d}.theme-dark .upload-card span,.theme-dark .experiment-field label,.theme-dark .experiment-field-label,.theme-dark .github-input::placeholder{color:#d8e0ee94}.theme-dark .github-entry-header strong{color:#eef5ff}.theme-dark .github-input{color:#eef5ff;background:#060a12eb;border-color:#ffffff1a}.theme-dark .github-input:focus{border-color:#84a9ff99;box-shadow:0 0 0 4px #84a9ff29}.theme-dark .upload-card:hover{background:#0e1422f0;border-color:#78b8ff61;box-shadow:0 28px 54px #00000052}.theme-dark .loading-bar{background:#78b8ff1f}.theme-dark .app-shell{background:radial-gradient(circle at 20% 15%,#287dff1f,#0000 30%),radial-gradient(circle at 80% 80%,#f16db814,#0000 28%),#05070c}.theme-dark .app-grid{opacity:.08;background-image:radial-gradient(#ffffff2e 1px,#0000 1px)}.theme-dark .search-form{background:#ffffff0f;border-color:#ffffff1a;box-shadow:0 24px 48px #00000059}.theme-dark .survey-link-button{color:#d9e6ff;background:linear-gradient(135deg,#0f1626f5,#131f3aeb);border-color:#78b8ff2e;box-shadow:0 22px 42px #0000004d,inset 0 1px #ffffff0d}.theme-dark .survey-link-button:hover{border-color:#78b8ff57;box-shadow:0 24px 48px #0000005c,inset 0 1px #ffffff0f}.theme-dark .survey-star{color:#9ec7ff}.theme-dark .search-icon,.theme-dark .search-input::placeholder,.theme-dark .search-helper,.theme-dark .icon-button,.theme-dark .detail-heading-text p,.theme-dark .detail-highlight-path,.theme-dark .detail-empty-copy,.theme-dark .tree-file,.theme-dark .tree-row,.theme-dark .detail-section-title,.theme-dark .detail-highlight-number{color:#d8e0ee94}.theme-dark .search-input,.theme-dark .panel-header h2,.theme-dark .tree-row:hover,.theme-dark .detail-heading-main h2,.theme-dark .detail-highlight-title,.theme-dark .node-label.is-selected,.theme-dark .explorer-fab,.theme-dark .search-helper strong{color:#eef5ff}.theme-dark .icon-button:hover{color:#fff;background:#ffffff14}.theme-dark .side-panel{-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);background:#080a109e;border-color:#ffffff1a;box-shadow:0 20px 60px #00000073}.theme-dark .panel-header{background:#ffffff08;border-bottom-color:#ffffff14}.theme-dark .tree-row:hover{background:#ffffff14}.theme-dark .tree-file.is-selected{color:#9ec7ff;background:#287dff2e}.theme-dark .graph-canvas{background:linear-gradient(#04060a1a,#04060a2e)}.theme-dark .node-label{color:#d8e0ee;box-shadow:none;background:#0000009e;border-color:#ffffff14}.theme-dark .node-role{box-shadow:none;background:#000000d1}.theme-dark .detail-type-badge{box-shadow:none;background:#ffffff0a}.theme-dark .detail-body{background:linear-gradient(#080a101f,#080a102e)}.theme-dark .detail-highlight-card{box-shadow:none;background:#ffffff0a;border-color:#ffffff14}.theme-dark .detail-highlight-code{background:#030508;border-color:#ffffff14}.theme-dark .detail-highlight-line{color:#d8e0ee}.theme-dark .detail-highlight-line+.detail-highlight-line{border-top-color:#ffffff0f}.theme-dark .detail-highlight-line.is-active{background:#287dff29}.theme-dark .detail-empty-copy{background:#ffffff0a;border-color:#ffffff24}.theme-dark .code-viewer-backdrop{background:#00000094}.theme-dark .code-viewer-modal{background:#0b1020;border-color:#ffffff1f;box-shadow:0 28px 84px #00000080}.theme-dark .code-viewer-header{background:#080a10f5;border-bottom-color:#ffffff14}.theme-dark .code-viewer-icon{color:#9ec7ff;background:#ffffff0a;border-color:#78b8ff33}.theme-dark .code-viewer-title-copy strong{color:#eef5ff}.theme-dark .code-viewer-title-copy p,.theme-dark .code-viewer-toolbar,.theme-dark .code-viewer-gutter{color:#d8e0ee94}.theme-dark .code-viewer-gutter span.is-connected{color:#9ec7ff}.theme-dark .code-viewer-toolbar,.theme-dark .code-viewer-gutter{background:#111827;border-color:#ffffff14}.theme-dark .code-viewer-body,.theme-dark .code-viewer-pre{color:#d8e0ee;background:#030508}.theme-dark .code-viewer-line.is-connected{background:#287dff29;border-left-color:#78b8ff}.theme-dark .code-viewer-line-badge{color:#b9d6ff;background:#080a10e0;border-color:#78b8ff3d}.theme-dark .custom-scrollbar::-webkit-scrollbar-thumb{background:#ffffff1f}.theme-dark .custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#fff3}.theme-dark .explorer-fab{background:#070b12e0;border-color:#ffffff1f;box-shadow:0 18px 48px #00000052}.theme-dark .explorer-fab:hover{background:#0c111bf5;box-shadow:0 22px 54px #00000061}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:0 0}.custom-scrollbar::-webkit-scrollbar-thumb{background:#94a3b86b;border-radius:999px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#94a3b894}.animate-slide-in{animation:.24s cubic-bezier(.16,1,.3,1) slide-in}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slide-in{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes survey-twinkle{0%,to{opacity:.6;transform:scale(.86)rotate(-6deg)}50%{opacity:1;transform:scale(1.16)rotate(6deg)}}@keyframes survey-pulse{0%,to{box-shadow:0 20px 38px #294c9424,inset 0 1px #ffffffeb}50%{box-shadow:0 24px 44px #4f7fff33,0 0 0 6px #4f7fff14,inset 0 1px #ffffffeb}}@media (width<=1180px){.side-panel-left{width:260px}.side-panel-right{width:360px}}@media (width<=980px){.upload-content{padding:36px 24px}.upload-brand{flex-direction:column;align-items:flex-start;gap:18px}.tutorial-header{width:calc(100% - 24px);padding:18px}.tutorial-arrows{display:none}.tutorial-callout{width:auto;margin:12px 16px 0;position:static}.tutorial-callout-graph,.tutorial-callout-detail{transform:none}.tutorial-node-badge{top:auto;bottom:220px}.upload-entry-grid{grid-template-columns:1fr}.quick-guide-header{gap:8px}.github-entry-grid{grid-template-columns:1fr}.github-entry-footer{flex-direction:column;align-items:flex-end}.top-search{width:calc(100% - 24px)}.top-search-row{flex-direction:column;align-items:stretch}.survey-link-button{justify-content:center}.side-panel-left{width:240px}.side-panel-right{width:min(340px,100vw - 32px)}}@media (width<=820px){.theme-toggle{top:16px;right:16px}.upload-screen,.loading-screen{padding:16px}.quick-guide{padding:22px 18px}.quick-guide-line{flex-direction:column;gap:4px}.quick-guide-line strong{flex-basis:auto}.code-viewer-overlay{padding:16px}.code-viewer-modal{width:100%;max-height:92vh}.app-shell{padding-top:92px}.top-search{top:16px}.survey-link-button{min-height:46px;padding-right:16px}.side-panel{width:auto;margin:0 16px 16px;position:static}.explorer-fab{margin:0 16px 16px;position:static}.graph-canvas{background:#ffffffb8;border:1px solid #94a3b838;border-radius:24px;height:62vh;min-height:420px;margin:0 16px 16px;position:relative;overflow:hidden}.tutorial-focus,.tutorial-node-badge{display:none}.tutorial-overlay{margin-bottom:8px;position:static}.tutorial-scrim{display:none}.tutorial-header{width:auto;margin:0 16px 16px;position:static;transform:none}.detail-heading-main{flex-direction:column;align-items:flex-start}.purpose-options{gap:8px}.purpose-option{justify-content:center;width:100%}}
