:root{--bg:#f3f4f6;--bg-elevated:#fff;--bg-muted:#f8f8f9;--bg-soft:#eef1f4;--bg-editor:#fbfbfc;--line:#dde2e8;--line-strong:#cdd4dd;--text:#111827;--text-soft:#5f6978;--text-faint:#8a92a0;--accent:#155eef;--accent-soft:#155eef14;--green:#0d8b61;--green-soft:#0d8b6114;--red:#d13f4a;--shadow-lg:0 24px 60px #0f172a14;--shadow-md:0 12px 28px #0f172a0f;--mono:"SFMono-Regular", "JetBrains Mono", "Menlo", "Monaco", "Consolas", monospace;--sans:"Inter", "SF Pro Display", "Segoe UI", "Helvetica Neue", -apple-system, BlinkMacSystemFont, sans-serif}*,:before,:after{box-sizing:border-box}html,body{min-height:100%}body{background:radial-gradient(circle at top left, #155eef0d, transparent 24%), linear-gradient(180deg, #f8fafc 0%, var(--bg) 42%);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:10px;font-size:14px;line-height:1.5;overflow:hidden auto}button,input{font:inherit}button{cursor:pointer}.page-shell{width:min(100%,1320px);margin:0 auto}.app-frame{min-height:calc(100dvh - 20px);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffc;border:1px solid #cdd4ddcc;border-radius:28px;overflow:clip}.topbar{background:#ffffffe0;border-bottom:1px solid #dde2e8e6;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px 12px;display:flex}.topbar-brand{flex-direction:column;gap:3px;display:flex}.logo{font-family:var(--mono);color:var(--text-soft);letter-spacing:.08em;text-transform:lowercase;margin:0;font-size:12px}.logo-accent{color:var(--text)}.header-sub{color:var(--text-faint);margin:0;font-size:11px}.intro-grid{grid-template-columns:minmax(0,1fr);padding:12px 14px 10px;display:grid}.panel{border:1px solid var(--line);box-shadow:var(--shadow-md);background:#ffffffdb;border-radius:20px}.panel-form,.workspace-panel{padding:14px}.panel-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.panel-head-tight{margin-bottom:14px}.panel-head h1,.panel-head h2{letter-spacing:-.04em;margin:3px 0 0;font-size:18px;font-weight:600}.panel-caption{max-width:30ch;font-family:var(--mono);color:var(--text-faint);text-align:right;margin:0;font-size:10px;line-height:1.5}.panel-caption-left{text-align:left;max-width:none}.mono-kicker{font-family:var(--mono);color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:10px}.mono-kicker-small{font-size:9px}.analyze-form{flex-direction:column;gap:6px;display:flex}.field-label{font-family:var(--mono);color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.input-row{grid-template-columns:1fr auto;gap:10px;display:grid}.text-input{border:1px solid var(--line);width:100%;min-height:48px;color:var(--text);background:#fff;border-radius:14px;padding:0 14px;font-size:13px;transition:border-color .16s,box-shadow .16s,background-color .16s}.text-input::placeholder{color:var(--text-faint)}.text-input:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible,.chip-button:focus-visible,.tree-file-button:focus-visible{border-color:#155eef73;outline:none;box-shadow:0 0 0 3px #155eef1f}.primary-button,.secondary-button,.chip-button,.tree-file-button,.tree-folder-button{border-radius:12px;transition:border-color .14s,background-color .14s,color .14s}.primary-button{background:var(--accent);color:#fff;min-width:156px;min-height:48px;font-family:var(--mono);letter-spacing:.03em;border:1px solid #155eef2e;padding:0 14px;font-size:11px}.primary-button:hover:not(:disabled){background:#0f4ed8}.secondary-button{border:1px solid var(--line);min-height:34px;color:var(--text-soft);font-family:var(--mono);background:#fff;padding:0 12px;font-size:10px}.secondary-button:hover:not(:disabled),.chip-button:hover,.tree-file-button:hover{border-color:var(--line-strong);background:var(--bg-muted);color:var(--text)}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.58}.field-help,.form-message{color:var(--text-faint);margin:0;font-size:11px}.form-message{min-height:18px;margin-top:10px}.form-message.error{color:var(--red)}.sample-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.chip-button{border:1px solid var(--line);min-height:30px;color:var(--text-soft);font-family:var(--mono);background:#fff;padding:0 10px;font-size:10px}.results{height:100dvh;min-height:100dvh;padding:0 14px 14px;overflow:hidden}.hidden{display:none}.workspace-shell{flex-direction:column;height:100%;min-height:0;display:flex}.bundle-panel{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.editor-shell{border:1px solid var(--line);background:var(--bg-elevated);border-radius:18px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.editor-toolbar{border-bottom:1px solid var(--line);background:var(--bg-soft);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:54px;padding:0 14px;display:grid}.editor-window-controls{align-items:center;gap:6px;display:flex}.editor-window-controls span{border:1px solid #11182714;border-radius:999px;width:10px;height:10px}.editor-window-controls span:first-child{background:#ffb1b6}.editor-window-controls span:nth-child(2){background:#ffd788}.editor-window-controls span:nth-child(3){background:#8fddb6}.editor-toolbar-title{min-width:0}.editor-toolbar-label,.editor-pane-label,.editor-pane-meta{font-family:var(--mono);margin:0;font-size:10px}.editor-toolbar-label,.editor-pane-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em}.editor-toolbar-path{text-overflow:ellipsis;white-space:nowrap;color:var(--text);margin:3px 0 0;font-size:12px;overflow:hidden}.editor-toolbar-actions,.editor-tab-actions{align-items:center;gap:8px;display:flex}.editor-layout{flex:1;grid-template-columns:260px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.editor-sidebar{border-right:1px solid var(--line);background:linear-gradient(#fbfbfc 0%,#f4f5f6 100%);min-height:0;overflow:auto}.editor-sidebar-head{border-bottom:1px solid #dde2e8cc;justify-content:space-between;align-items:center;gap:8px;min-height:46px;padding:0 12px;display:flex}.editor-pane-meta{color:var(--text-faint)}.editor-tree-root{padding:8px}.tree-folder{flex-direction:column;gap:6px;display:flex}.tree-folder-button,.tree-file-button{width:100%;min-height:30px;color:var(--text-soft);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:8px;padding:0 10px;display:flex}.tree-folder-button{color:var(--text);font-family:var(--mono);font-size:10px}.tree-folder-caret,.tree-file-icon{flex:none;position:relative}.tree-folder-caret{width:8px;height:8px}.tree-folder-caret:before{content:"";border-top:4px solid #0000;border-bottom:4px solid #0000;border-left:5px solid var(--text-faint);width:0;height:0;position:absolute;top:1px;left:1px;transform:rotate(90deg)}.file-tree{gap:3px;padding-left:14px;display:grid}.tree-entry{flex-direction:column;display:flex}.tree-file-button{color:var(--text-soft);font-size:11px}.tree-file-button.active{color:var(--accent);background:#155eef14;border-color:#155eef24}.tree-file-icon{opacity:.7;border:1px solid;border-radius:2px;width:10px;height:12px}.tree-entry-depth-1 .tree-file-button{padding-left:18px}.tree-entry-depth-2 .tree-file-button{padding-left:30px}.tree-entry-depth-3 .tree-file-button{padding-left:42px}.editor-main{background:var(--bg-editor);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.editor-tabbar{border-bottom:1px solid var(--line);background:#ffffffbf;justify-content:space-between;align-items:center;gap:12px;min-height:46px;padding:0 12px 0 10px;display:flex}.editor-tab{border:1px solid var(--line);background:#fff;border-bottom-color:#155eef33;border-radius:10px 10px 0 0;align-items:center;gap:8px;max-width:100%;min-height:34px;padding:0 10px;display:inline-flex}.editor-tab.active{color:var(--text)}.editor-tab-dot{background:#155eef38;border-radius:999px;width:8px;height:8px}.code-filename{text-overflow:ellipsis;white-space:nowrap;font-family:var(--mono);font-size:11px;overflow:hidden}.code-preview{color:#1f2937;min-height:0;font-family:var(--mono);background:linear-gradient(#ffffff6b,#0000 120px),#f9fafb;flex:1;margin:0;padding:14px 0 18px;font-size:12px;line-height:1.65;overflow:auto}.code-preview code{white-space:normal;display:block}.code-line{grid-template-columns:60px minmax(0,1fr);align-items:baseline;line-height:1.45;display:grid}.code-line:hover{background:#155eef09}.code-line-number,.code-line-content{display:block}.code-line-number{color:#a0a8b5;text-align:right;-webkit-user-select:none;user-select:none;padding:0 12px 0 18px}.code-line-content{white-space:pre;overflow-wrap:normal;word-break:normal;min-width:0;padding-right:20px}.token-comment{color:#8b95a7}.token-string{color:#b54708}.token-keyword{color:#6941c6}.token-type,.token-class{color:#155eef}.token-property{color:#026aa2}.token-number{color:#c4320a}.token-heading{color:#155eef;font-weight:600}.token-inline-code{color:#0d8b61}.token-bullet{color:#475467}.token-punctuation{color:#667085}@media (max-width:1120px){.page-shell{width:100%}}@media (max-width:920px){.editor-layout{grid-template-columns:1fr;min-height:auto}.editor-sidebar{border-right:0;border-bottom:1px solid var(--line)}}@media (max-width:720px){body{padding:0;overflow-y:auto}.app-frame{border-left:0;border-right:0;border-radius:0;min-height:100dvh}.topbar,.intro-grid,.results{padding-left:12px;padding-right:12px}.topbar{align-items:flex-start}.panel-head,.editor-toolbar,.editor-tabbar{flex-direction:column;align-items:flex-start}.editor-toolbar,.editor-tabbar{display:flex}.editor-toolbar-actions,.editor-tab-actions{justify-content:space-between;width:100%}.input-row{grid-template-columns:1fr}.primary-button{width:100%}.metrics-inline{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
