:root{font-size:14px;letter-spacing:0;line-height:1.5;-webkit-font-smoothing:antialiased;--font-sans: system-ui, "PingFang SC", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--display: "Space Grotesk", "PingFang SC", system-ui, sans-serif;--mono: "JetBrains Mono", "SF Mono", ui-monospace, "Cascadia Code", monospace;--bg: #0a0e17;--ink: #0b0f17;--surface: #111722;--surface-2: #161d2b;--bg-card: #121a27;--bg-soft: #0f1622;--bg-hover: rgba(148, 163, 184, .08);--bg-input: #0d131e;--bg-code: #0d131e;--font-mono: var(--mono);--border: rgba(148, 163, 184, .12);--slate-800: #0b0f17;--slate-700: #161d2b;--slate-600: #94a3b8;--slate-500: #7c8aa0;--slate-400: #aab4c4;--slate-300: rgba(148, 163, 184, .18);--slate-200: rgba(148, 163, 184, .14);--slate-100: #161d2b;--slate-50: #0a0e17;--text: #e6edf6;--text-muted: #93a1b5;--accent: #3b82f6;--accent-hover: #60a5fa;--accent-soft: rgba(59, 130, 246, .12);--accent-glow: rgba(59, 130, 246, .3);--accent-glow-soft: rgba(59, 130, 246, .15);--accent-glow-strong: rgba(59, 130, 246, .45);--glow: #22d3ee;--glow-2: #a855f7;--gradient-accent: linear-gradient(90deg, var(--accent), var(--glow));--danger: #f87171;--danger-soft: rgba(248, 113, 113, .12);--grid-line: rgba(99, 179, 237, .06);--glass: rgba(17, 23, 34, .62);--glass-border: linear-gradient(135deg, var(--accent-glow), var(--accent) 50%, var(--accent-glow-strong));--ring: 0 0 0 2px rgba(34, 211, 238, .45);--shadow-glow: 0 0 24px rgba(34, 211, 238, .2);--shadow-accent: 0 0 0 1px rgba(59, 130, 246, .4), 0 0 24px rgba(59, 130, 246, .28);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px rgba(0, 0, 0, .45);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .55);--text-xs: 11px;--text-sm: 12px;--text-base: 14px;--text-md: 15px;--text-lg: 17px;--text-xl: 20px;--text-2xl: 24px;--ease: cubic-bezier(.4, 0, .2, 1);--transition-fast: .12s var(--ease);--transition-normal: .16s var(--ease);--line: var(--border);--muted: var(--text-muted);--blue: var(--accent);--blue-soft: var(--accent-soft);--red: var(--danger);--red-soft: var(--danger-soft)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font-sans)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-color:var(--bg);background-image:radial-gradient(60% 40% at 12% 0%,var(--accent-glow-soft),transparent 60%),radial-gradient(55% 45% at 100% 100%,rgba(168,85,247,.08),transparent 60%),linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:auto,auto,34px 34px,34px 34px}h1,h2,h3,.brand strong,.loginBrand h1,.topBar h1,.detailTop h2{font-family:var(--display)}button,input,select,textarea{font:inherit;border:0;outline:0}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--ring),var(--shadow-glow);border-radius:var(--radius-sm)}.loginShell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--surface)}.bootShell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 42%,var(--surface-2),var(--bg) 72%)}.bootShell .bootInner{display:flex;flex-direction:column;align-items:center}.bootShell .bootMark{width:66px;height:66px;border-radius:20px;background:linear-gradient(140deg,var(--accent),color-mix(in srgb,var(--accent) 55%,var(--glow)));display:grid;place-items:center;color:#fff;font-weight:700;font-size:30px;box-shadow:0 0 44px var(--accent-glow-strong);position:relative}.bootShell .bootMark:before{content:"";position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px;border-radius:26px;background:conic-gradient(from 0deg,var(--accent),var(--glow),var(--glow-2),var(--accent));z-index:-1;filter:blur(3px);opacity:.85}.bootShell .bootName{margin-top:var(--space-5);font-family:var(--display);font-size:22px;font-weight:700;letter-spacing:-.01em;background:linear-gradient(90deg,var(--text),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}.bootShell .bootBar{margin-top:var(--space-4);width:168px;height:3px;border-radius:99px;background:var(--surface-2);overflow:hidden}.bootShell .bootBar i{display:block;height:100%;width:40%;background:linear-gradient(90deg,var(--accent),var(--glow));border-radius:99px;animation:bootShellPulse 1.2s ease-in-out infinite}@keyframes bootShellPulse{0%{transform:translate(-100%)}to{transform:translate(350%)}}.guestBanner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:#fef3c7;border-bottom:1px solid #fcd34d;font-size:var(--text-sm);color:#92400e}.guestBannerText{display:flex;align-items:center;gap:6px}.guestBanner .primaryButton{background:var(--ink);color:#fff;border:none;padding:6px 14px;border-radius:8px;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background .15s}.guestBanner .primaryButton:hover{background:var(--accent)}.loginBrand{display:flex;flex-direction:column;justify-content:center;padding:var(--space-10) var(--space-12);background:var(--ink);color:var(--text)}.loginBrandMark{width:52px;height:52px;border-radius:var(--radius-md);background:var(--accent);color:#fff;display:grid;place-items:center;font-size:22px;font-weight:700;margin-bottom:var(--space-8);box-shadow:0 0 22px var(--accent-glow-strong)}.loginBrand h1{font-size:48px;font-weight:700;line-height:1.1;margin:0 0 var(--space-4);letter-spacing:-.025em}.loginBrand p{font-size:var(--text-lg);color:var(--slate-400);margin:0;max-width:38ch;line-height:1.6}.loginFormWrap{display:flex;flex-direction:column;justify-content:center;padding:var(--space-10);max-width:400px;margin:0 auto;width:100%;background:var(--slate-50)}.loginCard{display:grid;grid-template-rows:auto auto auto;gap:var(--space-4);width:100%}.loginCard h2{font-size:var(--text-xl);font-weight:700;margin:0}.loginCard>p{color:var(--slate-500);margin:calc(var(--space-1) * -1) 0 0;font-size:var(--text-sm)}.loginCard label{display:grid;grid-template-rows:auto auto;gap:var(--space-2)}.loginCard label>span{font-size:var(--text-xs);font-weight:700;color:var(--slate-400);text-transform:uppercase;letter-spacing:.04em}.loginCard input{width:100%;height:44px;padding:0 var(--space-3);border:1px solid var(--slate-300);border-radius:var(--radius-md);font-size:var(--text-base);background:var(--surface);color:var(--text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.loginCard input:focus{border-color:var(--accent)}.loginError{color:var(--danger);background:var(--danger-soft);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);text-align:center}.moduleTabs{display:grid;grid-template-columns:1fr;gap:2px;padding:3px;border-radius:var(--radius-lg);background:var(--slate-800)}.moduleTabs button{display:flex;align-items:center;gap:var(--space-2);min-height:34px;padding:0 var(--space-3);border-radius:var(--radius-md);background:transparent;color:var(--slate-400);font-size:var(--text-sm);font-weight:600;text-align:left;transition:background var(--transition-fast),color var(--transition-fast)}.moduleTabs button:hover{background:var(--slate-700);color:var(--text)}.moduleTabs button.active{background:var(--accent);color:#fff}.appShell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:grid;align-content:start;gap:var(--space-4);height:100vh;padding:var(--space-5) var(--space-4);border-right:1px solid var(--border);background:linear-gradient(180deg,var(--surface),var(--ink));box-shadow:1px 0 24px #0006;overflow:auto}.brand{display:grid;grid-template-columns:38px 1fr;gap:var(--space-2);align-items:center;padding:0 var(--space-2)}.brandMark{width:38px;height:38px;border-radius:var(--radius-md);background:var(--accent);color:#fff;display:grid;place-items:center;font-size:18px;font-weight:700;box-shadow:0 0 18px var(--accent-glow)}.brand strong{display:block;font-size:var(--text-md);font-weight:700;color:var(--text)}.brand small{color:var(--slate-500);font-size:var(--text-xs)}.sideNav,.filterBlock{display:grid;gap:var(--space-1)}.sideNav{padding-bottom:var(--space-3);border-bottom:1px solid var(--slate-800)}.sideNav button,.filterBlock button{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:36px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--slate-400);font-weight:600;font-size:var(--text-sm);text-align:left;transition:background var(--transition-fast),color var(--transition-fast)}.sideNav button{justify-content:flex-start}.sideNav button:hover,.filterBlock button:hover{background:var(--slate-800);color:var(--text)}.sideNav button.active,.filterBlock button.active{color:var(--text);background:var(--accent-soft);box-shadow:inset 2px 0 0 0 var(--accent)}.filterTitle{display:flex;align-items:center;justify-content:space-between;height:32px;padding:0 var(--space-2);color:var(--slate-500);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.filterBlock button span:last-child{color:var(--slate-500);font-size:var(--text-xs);font-weight:600}.withIcon{display:inline-flex;align-items:center;gap:6px}.logoutBtn{margin-top:auto;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:transparent;color:var(--text-muted);font-size:var(--text-sm);font-weight:600;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast)}.logoutBtn:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}.workspace{min-width:0;padding:var(--space-4) var(--space-5) var(--space-6)}.topBar{display:flex;justify-content:space-between;gap:var(--space-5);align-items:flex-start;margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--slate-200)}.topBar h1{margin:0;font-size:var(--text-2xl);line-height:1.2;letter-spacing:-.01em}.topBar p{margin:var(--space-1) 0 0;color:var(--slate-500);font-size:var(--text-sm)}.topActions,.toolbar,.viewSwitch,.cardFooter,.skillMeta,.tagRow{display:flex;align-items:center}.topActions,.toolbar{gap:var(--space-3)}.primaryButton,.ghostButton,.viewSwitch button,.cardFooter button,.categoryRow button,.dangerButton,.addTag button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 var(--space-3);border-radius:var(--radius-pill);font-weight:600;font-size:var(--text-sm);transition:transform .08s,box-shadow var(--transition-normal),background var(--transition-normal),border-color var(--transition-normal)}.primaryButton:active,.ghostButton:active,.cardFooter button:active,.categoryRow button:active{transform:translateY(1px)}.primaryButton{background:var(--accent);color:#fff;border:1px solid var(--accent)}.primaryButton:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.primaryButton.full,.ghostButton.full{width:100%}.ghostButton,.viewSwitch,.cardFooter button,.categoryRow button{border:1px solid var(--slate-200);background:var(--surface);color:var(--text-muted)}.ghostButton:hover,.cardFooter button:hover,.categoryRow button:hover:not(:disabled){border-color:var(--accent-glow);background:var(--surface-2)}.categoryRow button:disabled{cursor:not-allowed;opacity:.42}.dangerButton{width:36px;padding:0;background:transparent;color:var(--slate-400);border:1px solid transparent}.dangerButton:hover{background:var(--danger-soft);color:var(--danger);border-color:var(--danger)}.displayPage{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:var(--space-5);align-items:stretch;max-height:calc(100vh - 140px);overflow:hidden}.libraryArea{min-width:0;max-height:calc(100vh - 140px);overflow-y:auto}.detailPanel{overflow-y:auto;max-height:calc(100vh - 140px)}.toolbar{margin-bottom:var(--space-5);flex-wrap:wrap}.searchBox{display:grid;grid-template-columns:18px 1fr;align-items:center;gap:var(--space-2);flex:1 1 240px;max-width:360px;height:40px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--slate-400);transition:border-color .15s,box-shadow .15s}.searchBox:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow-soft)}.searchBox input{width:100%;min-width:0;color:var(--text);background:transparent}.viewSwitch{gap:2px;height:40px;padding:3px;border-radius:var(--radius-md);background:var(--slate-100);border:0}.viewSwitch button{min-height:34px;border:0;border-radius:calc(var(--radius-md) - 3px);background:transparent;color:var(--slate-500)}.viewSwitch button.active{background:var(--surface-2);color:var(--text);box-shadow:var(--shadow-sm)}.resultLine{margin-bottom:var(--space-3);color:var(--slate-500);font-size:var(--text-sm)}.skillGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--space-4)}.skillRows{display:grid;gap:var(--space-2)}.skillCard{display:grid;grid-template-columns:64px minmax(0,1fr);gap:var(--space-3);min-height:200px;padding:var(--space-4);border:1px solid var(--slate-200);border-radius:var(--radius-lg);background:var(--surface);transition:border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal)}.skillCard:hover{border-color:var(--slate-300);box-shadow:var(--shadow-md);transform:translateY(-1px)}.skillCard.selected{border-color:var(--accent);background:var(--accent-soft)}.skillCard.row{grid-template-columns:52px minmax(0,1fr) 280px;align-items:center;min-height:108px}.skillIcon{width:48px;height:48px;display:grid;place-items:center;border-radius:var(--radius-md);background:var(--slate-100);color:var(--slate-600)}.agentIcon,.promptIcon,.articleIcon,.courseIcon{background:var(--slate-100);color:var(--slate-600)}.skillBody{min-width:0}.skillTitle{display:grid;gap:2px;min-width:0}.skillTitle h2{overflow:hidden;margin:0;font-size:var(--text-md);font-weight:600;line-height:1.35;text-overflow:ellipsis;white-space:nowrap;transition:color var(--transition-fast)}.skillTitle span{color:var(--slate-500);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em}.skillBody p{display:-webkit-box;overflow:hidden;min-height:60px;margin:var(--space-2) 0 var(--space-3);color:var(--slate-500);font-size:var(--text-sm);line-height:1.55;-webkit-line-clamp:3;-webkit-box-orient:vertical}.skillCard.row .skillBody p{min-height:0;margin:var(--space-1) 0;-webkit-line-clamp:1}.skillMeta{flex-wrap:wrap;gap:var(--space-1) var(--space-2);color:var(--slate-400);font-size:var(--text-xs)}.skillMeta span{display:inline-flex;align-items:center;gap:3px}.skillMeta em,.skillMeta .assetPill,.tagRow span,.tagRow button{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:var(--radius-pill);background:var(--slate-100);color:var(--slate-600);font-size:var(--text-xs);font-style:normal;font-weight:600}.cardFooter{grid-column:1 / -1;justify-content:space-between;gap:var(--space-2);align-self:end}.cardActions{display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:var(--space-2)}@media(hover:hover){.cardActions{visibility:hidden;opacity:0;transition:opacity var(--transition-fast)}.skillCard:hover .cardActions,.skillCard:focus-within .cardActions,.skillCard.selected .cardActions{visibility:visible;opacity:1}}.skillCard.row .cardFooter{grid-column:auto;flex-direction:column;align-items:flex-end;gap:var(--space-1)}.skillCard.row .tagRow{justify-content:flex-end}.tagRow{flex-wrap:wrap;gap:var(--space-1)}.cardFooter button{min-height:30px;padding:0 var(--space-2);font-size:var(--text-xs);color:var(--slate-600)}.cardFooter button:hover{color:var(--accent);border-color:var(--accent)}.detailPanel,.formPanel,.adminPanel,.exportResult{border:1px solid var(--slate-200);border-radius:var(--radius-lg);background:var(--surface)}.detailPanel{position:sticky;top:var(--space-4);display:grid;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm)}.detailTop{display:flex;justify-content:space-between;gap:var(--space-3)}.detailTop span{color:var(--slate-600);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em}.detailTop h2{margin:var(--space-1) 0 0;font-size:var(--text-xl);font-weight:700;overflow-wrap:anywhere;line-height:1.3}.detailTitleInput{display:block;width:100%;margin:var(--space-1) 0 0 -6px;padding:2px 6px;font-family:var(--display);font-size:var(--text-xl);font-weight:700;line-height:1.3;color:inherit;text-transform:none;letter-spacing:normal;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);transition:background .15s,border-color .15s}.detailTitleInput:hover{background:var(--bg-hover);border-color:var(--border)}.detailTitleInput:focus{background:var(--bg-input);border-color:var(--accent)}.editBlock,.copyTarget label,.metaGrid label,.wideField,.formGrid label{display:grid;gap:var(--space-1)}.editBlock span,.copyTarget span,.metaGrid span,.wideField span,.formGrid span,.tagEditor>span{color:var(--slate-400);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em}input,select,textarea{width:100%;min-width:0;border:1px solid var(--slate-200);border-radius:var(--radius-md);background:var(--surface);color:var(--text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}input:hover,select:hover,textarea:hover{border-color:var(--slate-300)}input:focus,select:focus,textarea:focus{border-color:var(--accent)}input,select{height:40px;padding:0 var(--space-3)}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:30px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5l5-5' stroke='%2394a3b8' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center}textarea{min-height:86px;padding:var(--space-2) var(--space-3);resize:vertical;line-height:1.5}.metaGrid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.tagEditor,.fileListBox{display:grid;gap:var(--space-2);padding:var(--space-3);border:1px dashed var(--slate-300);border-radius:var(--radius-md);background:var(--slate-50)}.tagRow button{gap:3px;border:1px solid rgba(37,99,235,.2)}.tagChip{cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.tagChip:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.tagFilterChip{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-size:var(--text-sm);font-weight:600;transition:background var(--transition-fast)}.tagFilterChip:hover{background:var(--ink)}.tagFilterClear{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:var(--radius-pill);background:#ffffff38;font-size:10px;line-height:1}.progressBar{width:100%;height:6px;margin-top:var(--space-1);border-radius:var(--radius-pill);background:var(--slate-200);overflow:hidden}.progressBar span{display:block;height:100%;border-radius:var(--radius-pill);background:var(--gradient-accent);box-shadow:0 0 12px var(--accent-glow-strong);transition:width var(--transition-normal)}.addTag{display:grid;grid-template-columns:1fr 44px;gap:var(--space-2)}.addTag button{padding:0;background:var(--accent);color:#fff}.addTag button:hover{background:var(--ink)}.copyTarget{display:grid;gap:var(--space-2)}.infoBox{display:grid;grid-template-columns:18px 1fr;gap:var(--space-2);align-items:center;min-height:40px;padding:var(--space-2) var(--space-3);border:1px solid var(--slate-200);border-radius:var(--radius-md);background:var(--slate-50);color:var(--slate-500);font-size:var(--text-sm)}.infoBox span{overflow-wrap:anywhere}.fileListBox div{display:grid;gap:var(--space-1);max-height:160px;overflow:auto;color:var(--slate-500);font-size:var(--text-xs)}.uploadPage,.adminPage{max-width:920px}.formPanel,.adminPanel{padding:var(--space-5);box-shadow:var(--shadow-sm)}.fileDrop{display:grid;place-items:center;min-height:150px;padding:var(--space-4);border:1px dashed var(--slate-300);border-radius:var(--radius-lg);background:var(--slate-50);color:var(--slate-500);text-align:center;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.fileDrop:hover{border-color:var(--accent);background:var(--accent-soft)}.fileDrop input{display:none}.fileDrop strong{margin-top:var(--space-2);color:var(--text);font-weight:600}.fileDrop span{font-size:var(--text-sm);max-width:52ch}.formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-4)}.wideField{margin-top:var(--space-4)}.contentInput{min-height:180px;font-family:SFMono-Regular,Consolas,monospace;font-size:var(--text-sm)}.parseRow{display:flex;gap:var(--space-2)}.parseRow input{flex:1;min-width:0}.parseRow .ghostButton{flex-shrink:0;white-space:nowrap}.parseHint{margin-top:6px;font-size:var(--text-xs);line-height:1.5;color:var(--text-muted)}.parseHint.err{color:var(--danger)}.formPanel .primaryButton{margin-top:var(--space-4);height:44px}.sectionTitle{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);font-size:var(--text-lg);font-weight:700}.categoryForm,.categoryRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2)}.categoryTable{display:grid;gap:var(--space-2);margin-top:var(--space-4)}.categoryRow{grid-template-columns:minmax(220px,1fr) 80px auto auto auto auto auto;align-items:center;padding:var(--space-2) var(--space-3);border:1px solid var(--slate-200);border-radius:var(--radius-md);background:var(--slate-50)}.categoryRow span{color:var(--slate-500);text-align:right;font-size:var(--text-sm)}.dangerText{color:var(--danger)!important}.lessonList{display:grid;gap:var(--space-1);max-height:340px;overflow-y:auto;margin-top:var(--space-2);padding-right:4px}.lessonItem{justify-content:flex-start;text-align:left;gap:var(--space-2);padding:6px 10px;font-size:var(--text-sm)}.lessonTitle{flex:1;text-decoration:none}.categoryRow.done .lessonTitle{text-decoration:line-through;opacity:.6}.empty{display:grid;place-items:center;gap:var(--space-2);width:100%;max-width:480px;margin:var(--space-5) auto 0;padding:var(--space-6) var(--space-5);color:var(--slate-500);text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.empty strong{color:var(--text)}.empty.small{min-height:0;padding:var(--space-3) var(--space-4);font-size:var(--text-sm)}@keyframes skShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skLine,.skBlock,.skIcon{display:block;background:linear-gradient(90deg,var(--slate-200) 25%,var(--slate-100) 37%,var(--slate-200) 63%);background-size:200% 100%;animation:skShimmer 1.4s ease-in-out infinite;border-radius:var(--radius-sm)}.skCard{display:flex;gap:var(--space-4);padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.skIcon{flex:0 0 auto;width:46px;height:46px;border-radius:var(--radius-md)}.skBody{display:flex;flex:1;flex-direction:column;gap:var(--space-2);min-width:0}.skLine{height:10px}.skLine.skTitle{height:15px}.skBlock{height:120px;border-radius:var(--radius-md)}.skLine.w40{width:40%}.skLine.w50{width:50%}.skLine.w60{width:60%}.skLine.w70{width:70%}.skLine.w80{width:80%}.skLine.w90{width:90%}.skeleton-detail{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5)}@media(prefers-reduced-motion:reduce){.skLine,.skBlock,.skIcon{animation:none}}.emptyState{display:grid;place-items:center;gap:var(--space-2);min-height:160px;padding:var(--space-5);color:var(--slate-500);text-align:center;background:var(--slate-100);border:1px dashed var(--slate-300);border-radius:var(--radius-lg)}.emptyState p{margin:0}.emptyState.small{min-height:0;padding:var(--space-3) var(--space-4);font-size:var(--text-sm)}.errorBanner{padding:var(--space-3) var(--space-4);color:var(--danger);font-size:var(--text-sm);background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--radius-md)}.exportResult{display:grid;gap:var(--space-1);max-width:920px;margin-top:var(--space-4);padding:var(--space-3);color:var(--slate-500);font-size:var(--text-sm)}.exportResult strong{color:var(--text)}.toast{position:fixed;right:var(--space-5);bottom:var(--space-5);z-index:20;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--ink);color:var(--text);font-size:var(--text-sm);font-weight:500;box-shadow:var(--shadow-lg)}@media(max-width:1180px){.appShell{grid-template-columns:220px minmax(0,1fr)}.displayPage{grid-template-columns:1fr;max-height:none;overflow:visible}.detailPanel{max-height:none;overflow:visible}.libraryArea{overflow-y:visible}.skillGrid{grid-template-columns:repeat(2,minmax(240px,1fr))}}@media(max-width:760px){.loginShell{grid-template-columns:1fr}.loginBrand{min-height:220px;padding:var(--space-6)}.loginBrand h1{font-size:32px}.loginFormWrap{padding:var(--space-6)}.guestBanner{flex-direction:column;text-align:center;gap:8px}.appShell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.workspace{padding:var(--space-4) var(--space-4) var(--space-8)}.topBar,.toolbar{display:grid}.topActions{justify-content:start}.skillGrid{grid-template-columns:1fr}.skillCard,.skillCard.row{grid-template-columns:52px minmax(0,1fr)}.skillCard.row .cardFooter{grid-column:1 / -1}.formGrid,.metaGrid,.categoryRow{grid-template-columns:1fr}.categoryRow span{text-align:left}}.hubStatBar{display:flex;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--surface-2);border-radius:var(--radius-md);margin-bottom:var(--space-3);flex-wrap:wrap;font-size:var(--text-sm);color:var(--text-muted)}.hubStatBar span{display:flex;align-items:center;gap:4px}.hubPill{display:inline-flex;align-items:center;gap:2px;padding:1px 6px;border-radius:var(--radius-pill);font-size:10px;font-weight:600;letter-spacing:.03em}.hubPill.high{background:var(--danger-soft);color:var(--danger)}.hubPill.inbox{background:var(--accent-soft);color:var(--accent)}.hubPill.fav{background:#fbbf2426;color:#fbbf24}.hubPill.agentR{background:var(--accent-glow-soft);color:var(--glow)}.skillCard.favorited{border-color:#fbbf244d}.searchOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#05080fbf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}.searchOverlayPanel{width:min(640px,92vw);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg),var(--shadow-glow);overflow:hidden}.searchOverlayHeader{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);color:var(--glow)}.searchOverlayInput{flex:1;background:none;border:none;outline:none;color:var(--text);font-size:var(--text-base);font-family:var(--font-sans)}.searchOverlayResults{max-height:400px;overflow-y:auto;padding:var(--space-2)}.searchOverlayItem{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border:none;background:none;color:var(--text);text-align:left;cursor:pointer;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--text-sm);transition:background var(--transition-fast)}.searchOverlayItem:hover{background:var(--surface-2)}.searchOverlayItemIcon{color:var(--slate-600);flex-shrink:0}.searchOverlayItemBody{flex:1;min-width:0}.searchOverlayItemBody strong{display:block;font-size:var(--text-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.searchOverlayItemBody span{font-size:var(--text-xs);color:var(--text-muted)}.searchOverlayModule{font-size:var(--text-xs);color:var(--slate-600);flex-shrink:0}.searchOverlayItem.active{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.searchOverlayItem.active .searchOverlayItemIcon{color:var(--accent)}.searchGroupLabel{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:12px 12px 4px}.searchOverlayFooter{display:flex;gap:18px;padding:10px 16px;border-top:1px solid var(--border);color:var(--text-muted);font-size:12px}.searchOverlayFooter kbd,.searchKbd,.globalSearchTrigger kbd{display:inline-block;min-width:18px;padding:1px 6px;margin:0 1px;background:var(--surface-2);border:1px solid var(--border);border-radius:5px;font-size:11px;font-family:var(--font-sans);color:var(--text-muted);text-align:center}.linkPickerOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#05080fbf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}.linkPickerPanel{width:min(560px,92vw);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg),var(--shadow-glow);overflow:hidden}.linkPickerFilters{display:flex;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);flex-wrap:wrap}.linkPickerFilters button{padding:2px 10px;border-radius:var(--radius-pill);border:1px solid var(--border);background:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-xs);font-family:var(--font-sans);transition:all var(--transition-fast)}.linkPickerFilters button.active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.bulkBar{position:sticky;bottom:0;z-index:50;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--surface);border-top:1px solid var(--accent);box-shadow:0 -4px 20px var(--accent-glow-soft);margin:var(--space-3) 0 0;border-radius:var(--radius-md);flex-wrap:wrap;font-size:var(--text-sm);color:var(--accent);font-weight:500}.bulkActions{display:flex;gap:var(--space-1);flex-wrap:wrap}.bulkActions button{padding:3px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;font-size:var(--text-xs);font-family:var(--font-sans);transition:all var(--transition-fast)}.bulkActions button:hover{border-color:var(--accent);color:var(--accent)}.bulkActions .dangerText{color:var(--danger);border-color:var(--danger-soft)}.bulkActions .dangerText:hover{background:var(--danger-soft);color:var(--danger)}.agentDispatchBar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:linear-gradient(135deg,var(--accent-glow-soft),var(--accent-glow-soft));border:1px solid var(--accent-glow-soft);border-radius:var(--radius-md);margin-top:var(--space-3);font-size:var(--text-sm)}.agentDispatchBar select{flex:1;background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:var(--font-sans);outline:none}.agentDispatchBar .primaryButton.small{padding:4px 12px;font-size:var(--text-xs);height:auto}.linkTag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-sm);border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent);font-size:var(--text-xs);cursor:pointer;font-family:var(--font-sans);transition:all var(--transition-fast)}.linkTag:hover{background:var(--accent);color:#fff}.guestBanner{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:10px var(--space-5);background:linear-gradient(90deg,#fef3c7,#fef9e7);border-bottom:1px solid #fcd34d;font-size:var(--text-sm);color:#92400e}.guestBannerText{font-weight:500}.guestBanner .primaryButton{padding:6px 18px;background:#92400e}.guestBanner .primaryButton:hover{background:#78350f}.loginOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#05080fb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;padding:var(--space-4);overflow-y:auto}.loginOverlay .loginCard,.deployCard,.importCard{width:min(560px,94vw);max-height:90vh;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg),var(--shadow-glow);padding:var(--space-6)}.loginOverlay .loginCard h2,.deployCard h2,.importCard h2{margin:0 0 var(--space-2);font-size:20px}.loginOverlay .loginCard>p,.deployCard>p,.importCard>p{margin:0 0 var(--space-4);color:var(--text-muted);font-size:var(--text-sm)}.deployPromptBox{width:100%;min-height:200px;margin:var(--space-3) 0;padding:var(--space-3);border:1px solid var(--slate-200);border-radius:var(--radius-md);font-family:var(--font-mono, monospace);font-size:var(--text-sm);line-height:1.6;resize:vertical;background:var(--surface-2);color:var(--text)}.deployActions,.importActions{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.importTabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-4)}.importTabs button{flex:1;padding:8px 0;border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:500}.importTabs button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.importCard label{display:block;margin-bottom:var(--space-3);font-size:var(--text-sm)}.importCard label>span{display:block;margin-bottom:4px;color:var(--text-muted);font-weight:500}.importCard label.col textarea{width:100%}.importCard input,.importCard select,.importCard textarea{width:100%;padding:8px 12px;border:1px solid var(--slate-200);border-radius:var(--radius-md);font-size:var(--text-sm);font-family:var(--font-sans);background:var(--surface);color:var(--text)}.importAssetBtn{height:40px;padding:0 var(--space-4);border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;white-space:nowrap;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast)}.importAssetBtn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.deployButton{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-md);padding:12px 16px;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.deployButton.full{width:100%;display:flex;align-items:center;justify-content:center;gap:8px}.deployButton:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.primaryButton.sm,.ghostButton.sm,.dangerButton.sm{height:34px;padding:0 var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-md)}.pipelineGate{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:80px var(--space-4);color:var(--text-muted);text-align:center}.pipelineGate h2{margin:0;color:var(--text)}.pipelinePage{max-width:1100px;margin:0 auto;padding:var(--space-5) var(--space-4)}.pipelineHeader{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap}.pipelineHeader h2{margin:0 0 4px;font-size:24px}.pipelineSub{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.pipelineHeaderActions{display:flex;align-items:center;gap:var(--space-3)}.pipelineTabs{display:inline-flex;background:var(--bg-soft);border-radius:var(--radius-pill);padding:4px}.pipelineTabs button{border:none;background:transparent;padding:8px 16px;border-radius:var(--radius-pill);cursor:pointer;font-size:var(--text-sm);color:var(--text-muted);font-weight:600}.pipelineTabs button.active{background:var(--accent);color:#fff}.pipelineGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-4)}.pipelineEmpty{color:var(--text-muted);padding:40px;text-align:center;grid-column:1 / -1}.pipelineCard{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.pipelineCardTop{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.pipelineCardTop h3{margin:0;font-size:17px}.pipelineDesc{margin:0;color:var(--text-muted);font-size:var(--text-sm);min-height:20px}.pipelineMeta{display:flex;flex-wrap:wrap;gap:6px}.pipeChip{font-size:11px;padding:3px 8px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-weight:600}.pipeChip.cron{background:#fef3c7;color:#b45309}.pipeBadge{font-size:11px;padding:3px 8px;border-radius:var(--radius-pill);font-weight:600;background:var(--bg-soft);color:var(--text-muted)}.pipeBadge.pipe-success{background:#dcfce7;color:#15803d}.pipeBadge.pipe-failed{background:#fee2e2;color:#b91c1c}.pipelineCardActions{display:flex;gap:var(--space-2);margin-top:auto}.runList{display:flex;flex-direction:column;gap:var(--space-3)}.runCard{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4)}.runCard.dlq{border-color:#fca5a5}.runCardTop{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.runName{font-weight:700;font-size:15px}.runStatus{font-size:12px;font-weight:700;padding:2px 8px;border-radius:var(--radius-pill);background:var(--bg-soft);color:var(--text-muted)}.runStatus.success{background:#dcfce7;color:#15803d}.runStatus.failed{background:#fee2e2;color:#b91c1c}.runStatus.running,.runStatus.queued{background:#fef9c3;color:#a16207}.stageRows{display:flex;flex-direction:column;gap:6px}.stageRow{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm)}.stageDot{font-size:12px}.stageName{font-weight:600}.stageAttempts{color:var(--text-muted);font-size:11px}.stageError{color:#b91c1c;font-size:11px;margin-left:auto;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.runFoot{display:flex;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-3);font-size:11px;color:var(--text-muted);flex-wrap:wrap}.runErr{color:#b91c1c}.dlqBox{margin-top:var(--space-4);border-top:1px dashed var(--border);padding-top:var(--space-4)}.dlqBox h4{margin:0 0 var(--space-3);font-size:13px;color:#b91c1c}.pipeStages{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-2)}.pipeStagesLabel{font-size:var(--text-sm);color:var(--text-muted);font-weight:600}.pipeCheck,.pipeCron{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm)}.pipeCron input{width:120px}.pipeAdvanced{margin:var(--space-3) 0;font-size:var(--text-sm)}.pipeAdvanced summary{cursor:pointer;color:var(--accent);font-weight:600}.pipelineEditor{width:520px;max-width:92vw;max-height:88vh;overflow:auto}.pipelineEditor label{display:block;margin-bottom:var(--space-2);font-size:var(--text-sm)}.pipelineEditor label>span{display:block;margin-bottom:4px;color:var(--text-muted);font-weight:500}.pipelineEditor input,.pipelineEditor select,.pipelineEditor textarea{width:100%}:root[data-theme=light]{--bg: #eef1f6;--ink: #ffffff;--surface: #ffffff;--surface-2: #f1f4f9;--bg-soft: #f4f6fb;--bg-hover: rgba(15, 23, 42, .06);--bg-input: #ffffff;--bg-code: #f1f4f9;--border: rgba(15, 23, 42, .1);--slate-800: #f1f4f9;--slate-700: #e2e8f0;--slate-600: #64748b;--slate-500: #94a3b8;--slate-400: #475569;--slate-300: rgba(15, 23, 42, .12);--slate-200: rgba(15, 23, 42, .08);--slate-100: #e2e8f0;--slate-50: #f8fafc;--text: #0f172a;--text-muted: #64748b;--grid-line: rgba(15, 23, 42, .05);--glass: rgba(255, 255, 255, .62);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .08);--shadow-md: 0 4px 16px rgba(15, 23, 42, .1);--shadow-lg: 0 8px 32px rgba(15, 23, 42, .12)}.appearanceBtn{display:flex;align-items:center;gap:8px;width:100%;margin-top:auto;padding:10px 14px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;font-size:var(--text-sm)}.appearanceBtn:hover{color:var(--text);border-color:var(--accent);background:var(--accent-soft)}.modeToggle{display:flex;gap:6px;width:100%;padding:4px;margin-top:8px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md)}.modeToggle button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 6px;border:none;cursor:pointer;font-size:var(--text-sm);background:transparent;color:var(--text-muted);border-radius:var(--radius-sm);transition:background .18s,color .18s,box-shadow .18s}.modeToggle button:hover{color:var(--text);background:var(--accent-soft)}.modeToggle button.active{background:var(--accent);color:#fff;box-shadow:0 0 14px var(--accent-glow-soft)}.modeToggle button.active:hover{color:#fff}.modalHeader{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.modalHeader h3{margin:0;font-size:var(--text-lg)}.iconBtn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:inline-flex}.iconBtn:hover{color:var(--text);background:var(--surface-2)}.appearanceCard{width:440px;max-width:calc(100vw - 32px);background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-5)}.appearanceBody{display:flex;flex-direction:column;gap:var(--space-5)}.appearanceRow{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.appearanceLabel{font-size:var(--text-sm);color:var(--text-muted)}.modeToggle{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:3px;gap:3px}.modeToggle button{border:none;background:transparent;color:var(--text-muted);padding:6px 18px;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm)}.modeToggle button.active{background:var(--accent);color:#fff}.swatchRow{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.themeSwatch{width:26px;height:26px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}.themeSwatch.active{border-color:var(--text);box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--accent-glow-strong)}.themeSwatch.custom{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-2);border:1px dashed var(--border)}.themeSwatch.custom input{width:200%;height:200%;border:none;padding:0;margin:0;cursor:pointer;background:none}.appearanceActions{display:flex;justify-content:flex-end}.sidebar{background:linear-gradient(180deg,#111722cc,#0b0f17eb);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border-right:1px solid var(--border);box-shadow:inset 1px 0 #ffffff0a,1px 0 30px #00000073}:root[data-theme=light] .sidebar{background:linear-gradient(180deg,#ffffffeb,#f4f6fbf5);backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);box-shadow:1px 0 24px #0f172a0f}.brandMark{background:var(--accent);background:linear-gradient(140deg,var(--accent),color-mix(in srgb,var(--accent) 55%,var(--glow)));box-shadow:0 0 22px var(--accent-glow-strong)}.primaryButton{position:relative;overflow:hidden;transition:transform var(--transition-normal),box-shadow var(--transition-normal),background var(--transition-normal),border-color var(--transition-normal)}.primaryButton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(120deg,transparent 32%,rgba(255,255,255,.2) 50%,transparent 68%);transform:translate(-130%);transition:transform .6s var(--ease);pointer-events:none}.primaryButton:hover{transform:translateY(-2px);box-shadow:var(--shadow-accent),0 12px 30px #00000073}.primaryButton:hover:after{transform:translate(130%)}.primaryButton:active{transform:translateY(0) scale(.98)}.ghostButton{transition:transform var(--transition-normal),box-shadow var(--transition-normal),background var(--transition-normal),border-color var(--transition-normal),color var(--transition-normal)}.ghostButton:hover{transform:translateY(-2px);border-color:var(--accent-glow);color:var(--text);box-shadow:0 0 0 1px var(--accent-glow-soft),0 10px 26px #0006}.ghostButton:active{transform:translateY(0) scale(.98)}.skillCard,.pipelineCard,.runCard,.importCard{transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-normal)}.skillCard:hover,.pipelineCard:hover,.runCard:hover,.importCard:hover{transform:translateY(-4px);border-color:var(--accent-glow);box-shadow:var(--shadow-lg),0 0 0 1px var(--accent-glow),0 14px 42px var(--accent-glow-soft)}.loginOverlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#06090f8c}.loginCard{background:var(--glass);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-lg),inset 0 0 0 1px #ffffff0d}.loginCard h2{background:linear-gradient(90deg,var(--text),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}.cursorDot,.cursorRing{position:fixed;top:0;left:0;z-index:10000;border-radius:50%;pointer-events:none;opacity:0;transition:opacity .3s var(--ease);will-change:transform}.cursorDot{width:6px;height:6px;background:var(--accent);transform:translate(-50%,-50%)}.cursorRing{width:34px;height:34px;border:1.5px solid var(--accent-glow-strong);transform:translate(-50%,-50%);transition:width .2s var(--ease),height .2s var(--ease),border-color .2s var(--ease),background .2s var(--ease),opacity .3s var(--ease);mix-blend-mode:screen}.cursorRing.is-hover{width:56px;height:56px;border-color:var(--accent);background:var(--accent-soft)}.cursorVisible{opacity:1}.bootScreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10001;display:grid;place-items:center;background:radial-gradient(circle at 50% 42%,var(--surface-2),var(--bg) 72%);transition:opacity .6s var(--ease),visibility .6s var(--ease)}.bootScreen.hide{opacity:0;visibility:hidden;pointer-events:none}.bootInner{display:flex;flex-direction:column;align-items:center}.bootMark{width:66px;height:66px;border-radius:20px;background:var(--accent);background:linear-gradient(140deg,var(--accent),color-mix(in srgb,var(--accent) 55%,var(--glow)));display:grid;place-items:center;color:#fff;font-weight:700;font-size:30px;box-shadow:0 0 44px var(--accent-glow-strong);position:relative}.bootMark:before{content:"";position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px;border-radius:26px;background:conic-gradient(from 0deg,var(--accent),var(--glow),var(--glow-2),var(--accent));z-index:-1;filter:blur(3px);opacity:.85}.bootName{margin-top:var(--space-5);font-family:var(--display);font-size:22px;font-weight:700;letter-spacing:-.01em;background:linear-gradient(90deg,var(--text),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}.bootBar{margin-top:var(--space-4);width:168px;height:3px;border-radius:99px;background:var(--surface-2);overflow:hidden}.bootBar i{display:block;height:100%;width:40%;border-radius:99px;background:linear-gradient(90deg,var(--accent),var(--glow))}@media(prefers-reduced-motion:no-preference){body:before{animation:auroraDrift 24s ease-in-out infinite alternate}body:after{animation:grainShift 7s steps(5) infinite}.viewStage{animation:viewIn .5s var(--ease) both}.viewStage .skillCard,.viewStage .pipelineCard,.viewStage .runCard,.viewStage .importCard{animation:cardIn .5s var(--ease) both}.viewStage .skillCard:nth-child(1),.viewStage .pipelineCard:nth-child(1),.viewStage .runCard:nth-child(1),.viewStage .importCard:nth-child(1){animation-delay:.04s}.viewStage .skillCard:nth-child(2),.viewStage .pipelineCard:nth-child(2),.viewStage .runCard:nth-child(2),.viewStage .importCard:nth-child(2){animation-delay:.08s}.viewStage .skillCard:nth-child(3),.viewStage .pipelineCard:nth-child(3),.viewStage .runCard:nth-child(3),.viewStage .importCard:nth-child(3){animation-delay:.12s}.viewStage .skillCard:nth-child(4),.viewStage .pipelineCard:nth-child(4),.viewStage .runCard:nth-child(4),.viewStage .importCard:nth-child(4){animation-delay:.16s}.viewStage .skillCard:nth-child(5),.viewStage .pipelineCard:nth-child(5),.viewStage .runCard:nth-child(5),.viewStage .importCard:nth-child(5){animation-delay:.2s}.viewStage .skillCard:nth-child(n+6),.viewStage .pipelineCard:nth-child(n+6),.viewStage .runCard:nth-child(n+6),.viewStage .importCard:nth-child(n+6){animation-delay:.24s}@media(hover:hover)and (pointer:fine){.cursorDot,.cursorRing{display:block}}.bootMark:before{animation:spin 1.4s linear infinite}.bootBar i{animation:bootLoad 1s var(--ease) infinite}}@media(prefers-reduced-motion:reduce){.bootScreen,.cursorDot,.cursorRing{display:none!important}}@keyframes auroraDrift{0%{background-position:0% 0%,0% 0%,0% 0%,0 0,0 0}to{background-position:7% 5%,-6% 4%,5% -5%,0 0,0 0}}@keyframes grainShift{0%{transform:translate(0)}to{transform:translate(-12px,9px)}}@keyframes viewIn{0%{opacity:0;transform:translateY(14px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}@keyframes cardIn{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bootLoad{0%{transform:translate(-120%)}to{transform:translate(360%)}}.globalSearchTrigger{display:flex;align-items:center;gap:8px;width:100%;padding:9px 12px;margin:10px 0 6px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;font-size:var(--text-sm);font-family:var(--font-sans);transition:border-color .18s,color .18s,background .18s}.globalSearchTrigger:hover{color:var(--text);border-color:var(--accent);background:var(--accent-soft)}.globalSearchTrigger>svg{color:var(--slate-600)}.globalSearchTrigger:hover>svg{color:var(--accent)}.globalSearchTrigger span{flex:1;text-align:left}.hubPage{max-width:1080px;max-height:calc(100vh - 140px);overflow-y:auto;padding-right:var(--space-2)}.hubOverview{margin-bottom:var(--space-5)}.hubHello h1{font-size:var(--text-2xl);margin:0 0 4px;font-family:"Space Grotesk",var(--font-sans);font-weight:600;letter-spacing:-.01em}.hubHello p{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.hubModules{display:grid;grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:var(--space-3);margin-top:var(--space-4)}.hubModuleCard{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:var(--space-3) var(--space-4);cursor:pointer;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text);font-family:var(--font-sans);transition:transform .18s,border-color .18s,box-shadow .18s,background .18s}.hubModuleCard:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:var(--shadow-glow);background:var(--accent-soft)}.hubModuleIcon{display:grid;place-items:center;width:34px;height:34px;border-radius:var(--radius-md);color:var(--accent);background:var(--accent-soft)}.hubModuleLabel{font-size:var(--text-sm);font-weight:500}.hubModuleCount{font-size:var(--text-xs);color:var(--text-muted)}.hubColumns{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4);margin-top:var(--space-4)}.hubSection{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:6px}.hubSectionWide{margin-top:var(--space-4)}.hubSectionTitle{display:flex;align-items:center;gap:6px;margin:0 0 6px;font-size:var(--text-sm);font-weight:600;color:var(--text)}.hubSectionTitle .muted{font-weight:400;font-size:var(--text-xs)}.hubGrid{display:flex;flex-direction:column;gap:4px}.hubItem{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;cursor:pointer;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text);font-family:var(--font-sans);text-align:left;transition:background .15s,border-color .15s}.hubItem:hover{background:var(--accent-soft);border-color:var(--border)}.hubItemIcon{display:grid;place-items:center;color:var(--accent);flex-shrink:0}.hubItemBody{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.hubItemTitle{font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hubItemMeta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:var(--text-xs);color:var(--text-muted)}.hubEmpty{margin:4px 0;color:var(--text-muted);font-size:var(--text-xs);line-height:1.6}.hubItemRow{display:flex;align-items:center;gap:6px}.hubItemRow .hubItem{flex:1;min-width:0}.hubItemRow.checked .hubItem{background:var(--accent-soft)}.hubCheck{width:15px;height:15px;flex-shrink:0;margin-left:4px;cursor:pointer;accent-color:var(--accent)}.hubBulkBar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:6px 8px;margin:2px 0 4px;border:1px dashed var(--border);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-muted)}.hubBulkBar .ghostButton.sm{padding:4px 10px}.hubLibHead{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.hubLibHead .hubSectionTitle{margin:0}.hubLibTools{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.segGroup{display:inline-flex;border:1px solid var(--border);border-radius:999px;overflow:hidden;background:var(--surface)}.segGroup button{padding:5px 12px;cursor:pointer;border:none;background:transparent;color:var(--text-muted);font-size:var(--text-xs);font-family:var(--font-sans);transition:background .15s,color .15s}.segGroup button+button{border-left:1px solid var(--border)}.segGroup button:hover{color:var(--text)}.segGroup button.active{background:var(--accent);color:#fff}.hubLibGroups{display:flex;flex-direction:column;gap:8px;margin-top:6px}.hubLibGroup{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.hubLibGroupHead{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;cursor:pointer;background:transparent;border:none;color:var(--text);font-family:var(--font-sans);font-size:var(--text-sm);text-align:left;transition:background .15s}.hubLibGroupHead:hover{background:var(--accent-soft)}.hubLibChevron{display:grid;place-items:center;color:var(--text-muted);transition:transform .18s}.hubLibChevron.open{transform:rotate(90deg)}.hubLibGroupName{flex:1;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hubLibGroupCount{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;background:var(--accent-soft);border-radius:999px;padding:1px 8px}.hubLibGroup .hubGrid{padding:4px 8px 8px;border-top:1px solid var(--border)}.hubEmpty .primaryButton{margin-top:8px}.presetChips{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0 0}.tagChip.scenario{background:var(--accent-soft);color:var(--accent);cursor:default}.entryToolbar{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.entryBtn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text);font-size:var(--text-sm);font-family:var(--font-sans);transition:border-color .18s,background .18s,transform .18s}.entryBtn:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-2px)}.kindFilterRow{display:flex;flex-wrap:wrap;gap:8px;margin:var(--space-3) 0}.kindFilterRow button{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:999px;color:var(--text-muted);font-size:var(--text-xs);font-family:var(--font-sans);transition:all .18s}.kindFilterRow button:hover{border-color:var(--accent);color:var(--text)}.kindFilterRow button.active{background:var(--accent);border-color:var(--accent);color:#fff}.kindFilterRow .kindCount{opacity:.7;font-variant-numeric:tabular-nums}.formStack{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3)}.formStack label{display:flex;flex-direction:column;gap:6px;font-size:var(--text-sm);color:var(--text-muted)}.formStack label.row{flex-direction:row;align-items:center;gap:8px}.formStack input,.formStack select,.formStack textarea{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--text);font-size:var(--text-sm);font-family:var(--font-sans)}.formStack input:focus,.formStack select:focus,.formStack textarea:focus{outline:none;border-color:var(--accent)}.formError{color:#ff6b6b;font-size:var(--text-sm)}.muted{color:var(--text-muted);font-size:var(--text-sm)}.quote{color:var(--text-muted);font-size:var(--text-xs);font-style:italic;border-left:2px solid var(--border);padding-left:8px;margin-top:4px}.candidatePreview{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:6px;background:var(--bg)}.candidateList{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow:auto}.candidateItem{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);cursor:pointer}.candidateItem:hover{border-color:var(--accent)}.graphArea{margin-top:var(--space-4)}.graphWrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);overflow:hidden}.graphHint{margin-bottom:var(--space-3)}.relationGraph{display:block;background:var(--bg);border-radius:var(--radius-md)}.relEdge{stroke:var(--border);stroke-width:1.5}.relNode{cursor:pointer}.relNode:hover .relDot{stroke:var(--accent);stroke-width:2}.relDot{fill:var(--accent);stroke:var(--surface);stroke-width:1.5;transition:fill .15s}.relDot.kind-skill{fill:#38bdf8}.relDot.kind-soul{fill:#a78bfa}.relDot.kind-prompt{fill:#f472b6}.relDot.kind-github{fill:#34d399}.relDot.kind-knowledge{fill:#fbbf24}.relDot.kind-article{fill:#fb923c}.relDot.kind-course{fill:#60a5fa}.relDot.kind-agent-backup{fill:#f87171}.relDot.kind-mcp{fill:#22d3ee}.relDot.kind-model-config{fill:#c084fc}.relLabel{fill:var(--text-muted);font-size:11px;font-family:var(--font-sans);pointer-events:none}.detailCard{width:min(560px,92vw);max-height:86vh;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-4)}.detailBody{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3)}.detailSummary{color:var(--text);font-size:var(--text-sm);line-height:1.6}.detailMeta{display:flex;flex-wrap:wrap;gap:10px;color:var(--text-muted);font-size:var(--text-xs)}.detailContent{display:flex;flex-direction:column;gap:6px}.detailContent pre{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--text-xs);white-space:pre-wrap;word-break:break-word;color:var(--text-muted);margin:0}.detailLabel{font-size:var(--text-xs);color:var(--text-muted);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.detailRelations{display:flex;flex-direction:column;gap:var(--space-2);border-top:1px solid var(--border);padding-top:var(--space-3)}.relList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.relItem{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:6px 10px}.relType{font-size:var(--text-xs);color:#fff;background:var(--accent);border-radius:999px;padding:2px 8px}.relTarget{font-size:var(--text-sm);flex:1}.relNote{font-size:var(--text-xs);color:var(--text-muted)}.relAdd{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.relAdd select,.relAdd input{flex:1;min-width:120px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--text);font-size:var(--text-sm);font-family:var(--font-sans)}.iconBtn.danger{color:#ff6b6b;border:1px solid transparent;background:transparent}.iconBtn.danger:hover{background:#ff6b6b1f}.dupWarn{background:#ffb3401a;border:1px solid rgba(255,179,64,.45);border-radius:var(--radius-md);padding:12px 14px}.dupWarnTitle{font-weight:600;color:#ffb340;font-size:var(--text-sm);margin-bottom:8px}.dupItem{font-size:var(--text-sm);color:var(--text);padding:4px 0;border-top:1px dashed rgba(255,179,64,.3)}.dupWarnHint{font-size:var(--text-xs);color:var(--text-muted);margin:8px 0}.zipTree{display:flex;flex-direction:column;gap:2px;max-height:220px;overflow:auto}.zipFile{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);padding:3px 6px;border-radius:var(--radius-sm)}.zipFile:hover{background:var(--bg-hover, rgba(255,255,255,.04))}.zipName{flex:1;font-family:var(--font-mono, monospace);word-break:break-all}.zipSize{color:var(--text-muted);font-size:var(--text-xs);white-space:nowrap}.presetCenter{padding:20px 24px 32px}.presetTop{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.presetTop h1{font-size:22px;margin:0 0 4px}.presetTop p{margin:0;color:var(--text-muted);font-size:var(--text-sm);max-width:720px;line-height:1.6}.presetTop code{font-family:var(--font-mono, monospace);background:#7f7f7f24;padding:1px 5px;border-radius:4px;font-size:.9em}.presetGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.presetCard{border:1px solid var(--border, rgba(127,127,127,.2));border-radius:var(--radius-lg);padding:16px;background:var(--bg-card, #fff);display:flex;flex-direction:column;gap:8px}.presetCardHead{display:flex;align-items:center;justify-content:space-between}.presetCardHead h3{margin:0;font-size:16px}.presetVer{font-size:var(--text-xs);color:var(--text-muted);border:1px solid var(--border, rgba(127,127,127,.25));border-radius:999px;padding:1px 8px}.presetMeta{display:flex;flex-wrap:wrap;gap:6px;font-size:var(--text-xs);color:var(--text-muted)}.presetNote{font-size:var(--text-sm);color:var(--text);margin:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.presetActions{display:flex;gap:6px;margin-top:auto;padding-top:6px}.presetActions .ghostButton{flex:1;padding:6px 8px;font-size:var(--text-sm)}.presetCmdModal,.presetEditorModal{width:min(640px,94vw);max-height:90vh;overflow:auto}.presetCmdBox{display:flex;gap:8px;align-items:flex-start;background:var(--bg-hover, rgba(127,127,127,.08));border:1px solid var(--border, rgba(127,127,127,.2));border-radius:var(--radius-md);padding:10px 12px;margin:12px 0}.presetCmdBox code{flex:1;font-family:var(--font-mono, monospace);font-size:var(--text-sm);word-break:break-all}.presetInstallTip{margin:8px 0 4px;font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}.presetInstallRow{display:flex;gap:8px;align-items:flex-start;background:var(--bg-hover, rgba(127,127,127,.08));border:1px solid var(--border, rgba(127,127,127,.2));border-radius:var(--radius-md);padding:8px 10px;margin:8px 0}.presetInstallLabel{flex:0 0 auto;font-size:12px;font-weight:700;color:var(--accent-hover);padding-top:2px;width:56px}.presetInstallUrl,.presetInstallToken,.presetInstallCmd{flex:1;font-family:var(--font-mono, monospace);font-size:var(--text-sm);word-break:break-all;line-height:1.5}.presetInstallCmd{color:var(--text)}.presetInstallRow .ghostButton{flex:0 0 auto}.presetValidate{border-top:1px solid var(--border, rgba(127,127,127,.16));padding-top:12px}.presetValidateBadge{display:inline-block;font-weight:600;font-size:var(--text-sm);padding:4px 10px;border-radius:var(--radius-sm)}.presetValidateBadge.ok{color:#2fbf71;background:#2fbf711f}.presetValidateBadge.fail{color:#ff6b6b;background:#ff6b6b1f}.issueList{list-style:none;margin:10px 0;padding:0;display:flex;flex-direction:column;gap:4px}.issueList li{font-size:var(--text-sm);padding:4px 8px;border-radius:var(--radius-sm)}.issueList li.err{color:#ff6b6b;background:#ff6b6b1a}.issueList li.warn{color:#ffb340;background:#ffb3401a}.issueLevel{font-family:var(--font-mono, monospace);margin-right:4px;opacity:.8}.issueOk{font-size:var(--text-sm);color:var(--text-muted)}.forceHint{font-size:var(--text-xs);color:var(--text-muted);margin:8px 0}.presetDiffSection{border-top:1px solid var(--border, rgba(127,127,127,.16));padding-top:12px;margin-top:12px}.presetDiffTitle{font-weight:600;font-size:var(--text-sm);margin-bottom:4px}.presetDiffHint{font-size:var(--text-xs);color:var(--text-muted);margin:0 0 8px;line-height:1.5}.presetDiffInput{width:100%;min-height:84px;font-family:var(--font-mono, monospace);font-size:var(--text-xs);border:1px solid var(--border, rgba(127,127,127,.25));border-radius:var(--radius-sm);padding:8px;background:var(--bg, #fff);color:var(--text);resize:vertical}.uploadStorage{max-width:1100px;margin:0 auto;padding:var(--space-4) 0}.storageUploadCard{background:var(--bg-card, #121a27);border:1px solid var(--border, rgba(127,127,127,.2));border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4);display:flex;flex-direction:column;gap:12px}.storageUploadCard p{margin:0;color:var(--text-muted);font-size:var(--text-sm);line-height:1.6}.storageUploadCard input[type=file]{font-size:var(--text-sm)}.storageGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-3)}.storageCard{background:var(--bg-card, #121a27);border:1px solid var(--border, rgba(127,127,127,.2));border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:8px}.storageCardHead{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.storageKind{font-size:11px;font-weight:700;color:var(--accent-hover);background:var(--accent-soft, rgba(127,127,127,.1));padding:2px 8px;border-radius:var(--radius-sm)}.storageMeta{margin:0;font-size:var(--text-xs);color:var(--text-muted);word-break:break-all}.storageActions{display:flex;gap:6px}.storageLinkBox select{width:100%;padding:6px 8px;font-size:var(--text-sm)}.storageResults,.storageStored{margin-top:var(--space-4)}.storageResults h3,.storageStored h3{font-size:16px;margin:0 0 12px}.diffClean{margin-top:10px;color:#2fbf71;font-size:var(--text-sm);font-weight:600}.diffResult{margin-top:10px;display:flex;flex-direction:column;gap:10px}.diffBlock{border:1px solid var(--border, rgba(127,127,127,.2));border-radius:var(--radius-md);padding:8px 10px}.diffLabel{font-weight:600;font-size:var(--text-sm);margin-bottom:4px}.diffLabel.err{color:#ff6b6b}.diffLabel.warn{color:#ffb340}.diffRow{font-size:var(--text-sm);padding:2px 0}.diffSub{color:var(--text-muted);font-size:var(--text-xs);margin-left:6px}.resPickerHead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;flex-wrap:wrap}.resPickerHead>span{font-weight:600;font-size:var(--text-sm)}.resPickerTools{display:flex;align-items:center;gap:6px}.resSearch{width:170px;padding:5px 9px;font-size:var(--text-sm);border:1px solid var(--border, rgba(127,127,127,.25));border-radius:var(--radius-sm);background:var(--bg, #fff);color:var(--text)}.resSearch:focus{outline:2px solid var(--accent-hover, #5b8cff);outline-offset:1px;border-color:transparent}.resPickerTools .ghostButton.sm{padding:5px 9px;font-size:var(--text-xs)}.resGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;max-height:300px;overflow:auto;padding:2px}.resChip{display:flex;align-items:center;gap:8px;text-align:left;padding:7px 10px;border:1px solid var(--border, rgba(127,127,127,.22));border-radius:var(--radius-md);background:var(--bg-card, #fff);color:var(--text);font-size:var(--text-sm);cursor:pointer;transition:border-color .12s ease,background .12s ease}.resChip:hover{border-color:var(--accent-hover, #5b8cff)}.resChip.on{border-color:var(--accent-hover, #5b8cff);background:var(--accent-soft, rgba(91,140,255,.14))}.resCheck{flex:0 0 auto;width:16px;height:16px;border:1.5px solid var(--border, rgba(127,127,127,.55));border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;line-height:1;color:#fff;background:transparent;box-sizing:border-box}.resChip.on .resCheck{background:var(--accent-hover, #5b8cff);border-color:var(--accent-hover, #5b8cff)}.resTitle{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resKind{flex:0 0 auto;font-size:11px;color:var(--text-muted);background:var(--bg-hover, rgba(127,127,127,.1));padding:1px 7px;border-radius:999px;white-space:nowrap}.promptRow{display:grid;grid-template-columns:120px 1fr auto;gap:6px;margin-bottom:6px;align-items:start}.promptRow textarea{min-height:38px}.aggregateView{display:flex;flex-direction:column;gap:14px;padding:4px 0}.aggWrap{display:flex;flex-direction:column;gap:14px}.aggToolbar{display:flex;gap:8px}.aggGroup{border:1px solid var(--border, rgba(127,127,127,.2));border-radius:var(--radius-md);overflow:hidden}.aggGroupHead{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;background:var(--bg-hover, rgba(127,127,127,.04));font-size:var(--text-sm)}.aggGroupHead strong{font-size:var(--text-sm)}.aggCount{font-size:var(--text-xs);color:var(--text-muted);padding:1px 7px;border-radius:999px;background:#7f7f7f1f}.aggItems{padding:6px 12px 10px;display:flex;flex-direction:column;gap:6px}.aggItem{border-top:1px solid var(--border, rgba(127,127,127,.12));padding-top:6px}.aggItemTitle{font-size:var(--text-sm);font-weight:600}.aggConversions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:4px}.aggCard{border:1px solid var(--border, rgba(127,127,127,.2));border-radius:var(--radius-md);padding:14px;display:flex;flex-direction:column;gap:10px}.aggCard h4{display:flex;align-items:center;gap:6px;margin:0;font-size:var(--text-sm)}.declBox{max-height:220px;overflow:auto;font-size:var(--text-xs);background:var(--bg-code, rgba(127,127,127,.08));border-radius:var(--radius-sm);padding:8px;white-space:pre-wrap;word-break:break-all}.declInput{min-height:120px;width:100%;font-family:var(--font-mono, monospace);font-size:var(--text-xs);border-radius:var(--radius-sm);border:1px solid var(--border, rgba(127,127,127,.25));background:var(--bg-input, #fff);padding:8px;resize:vertical}.planBox{display:flex;gap:10px;flex-wrap:wrap}.planRow{font-size:var(--text-sm);padding:4px 10px;border-radius:var(--radius-sm)}.planRow.add{background:#2e9e5b24;color:#1f7a45}.planRow.upd{background:#3a7bd524;color:#2f6bb0}.planRow.del{background:#ff6b6b24;color:#c0392b}.planRow.conf{background:#e6aa2829;color:#9a6b00}.planRow.keep{background:#7f7f7f24;color:var(--text-muted)}.verItem .relType{font-family:var(--font-mono, monospace)}.graphToolbar{margin:6px 0 2px}.relEdgeWrap.dim{opacity:.12;transition:opacity .12s}.relNode.dim{opacity:.18;transition:opacity .12s}.relEdgeWrap{transition:opacity .12s}.relNode{cursor:pointer;transition:opacity .12s}.relEdgeLabel{font-size:9px;fill:var(--text-muted);pointer-events:none;paint-order:stroke;stroke:var(--bg, #fff);stroke-width:2.5px}.relNode:hover .relDot{stroke:var(--accent, #3b82f6);stroke-width:2.5px}.relLabel{font-size:10px;fill:var(--text, #222);paint-order:stroke;stroke:var(--bg, #fff);stroke-width:3px}.graphLegend{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;font-size:var(--text-xs);color:var(--text-muted)}.graphLegend .legendTitle{font-weight:600;color:var(--text)}.graphLegend .legendItem{display:inline-flex;align-items:center;gap:4px}.graphLegend .legendItem .relDot{width:11px;height:11px;border-radius:50%;display:inline-block}.graphLegend .legendItem.legendRel{padding:1px 6px;border:1px solid var(--border, #ddd);border-radius:6px}.verExpander{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:0 2px;display:inline-flex;align-items:center}.verConfirm{display:inline-flex;align-items:center;gap:6px;margin-left:4px}.verConfirmText{color:#c0392b;font-size:var(--text-xs)}.miniBtn{font-size:var(--text-xs);padding:2px 8px;border-radius:6px;border:1px solid var(--border, #ddd);background:var(--bg-soft, #f3f4f6);cursor:pointer}.miniBtn.danger{background:#c0392b;color:#fff;border-color:#c0392b}.verDiffDetail{width:100%;margin-top:6px;padding:8px 10px;background:var(--bg-soft, #f6f7f9);border-radius:8px;font-size:var(--text-xs);line-height:1.7}.verDiffDetail .diffAdd{color:#1f7a45}.verDiffDetail .diffChg{color:#2f6bb0}.verDiffDetail .diffDel{color:#c0392b}.toastHost{position:fixed;left:50%;bottom:28px;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast{padding:9px 16px;border-radius:10px;font-size:var(--text-sm);box-shadow:0 8px 24px #0000002e;background:#1f2937;color:#fff;animation:toastIn .18s ease;display:flex;align-items:center;gap:12px;pointer-events:auto}.toast-ok{background:#1f7a45}.toast-err{background:#c0392b}.toast-info{background:#1f2937}.toast-warn{background:#b45309}.toastUndo{background:#ffffff26;border:1px solid rgba(255,255,255,.3);color:#fff;font-size:var(--text-xs);padding:4px 10px;border-radius:6px;cursor:pointer;font-weight:600;transition:background .15s}.toastUndo:hover{background:#ffffff40}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.networkBanner{position:fixed;top:0;left:0;right:0;z-index:10000;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;font-size:var(--text-sm);font-weight:500;color:#fff;animation:bannerDown .25s ease}.networkBanner-offline{background:#b45309}.networkBanner-error{background:#c0392b}.networkBannerRetry{display:inline-flex;align-items:center;gap:4px;background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;font-size:var(--text-xs);padding:4px 10px;border-radius:6px;cursor:pointer;font-weight:600;transition:background .15s}.networkBannerRetry:hover{background:#ffffff4d}@keyframes bannerDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.dupItem{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;background:var(--bg-soft, #f6f7f9);border-radius:8px;font-size:var(--text-sm)}.linkBtn{background:transparent;border:none;color:var(--accent, #3b82f6);cursor:pointer;font-size:var(--text-xs);padding:0 4px;text-decoration:underline}.filePick{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--text-muted);cursor:pointer}.filePick input[type=file]{font-size:var(--text-xs)}.convChip{cursor:pointer;border:1px solid var(--border, #ddd)}.convChip.on{background:var(--accent, #3b82f6);color:#fff;border-color:var(--accent, #3b82f6)}.convPreview{margin:6px 0 2px;padding:8px 10px;background:var(--bg-soft, #f6f7f9);border-radius:8px;font-size:var(--text-xs);white-space:pre-wrap;max-height:200px;overflow:auto;font-family:var(--font-mono, monospace)}.productIntro{max-width:1080px;margin:0 auto;padding:40px 24px 64px;display:flex;flex-direction:column;gap:44px}.piHero{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.piBadge{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--accent-hover, #5b8cff);background:var(--accent-soft, rgba(91,140,255,.12));padding:5px 12px;border-radius:999px}.piTitle{font-size:34px;line-height:1.25;margin:0;font-weight:800;letter-spacing:-.01em}.piLead{margin:0;font-size:16px;line-height:1.8;color:var(--text-muted);max-width:720px}.piCta{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}.productIntro .primaryButton{padding:10px 18px;font-size:14px;font-weight:600;border:none;border-radius:var(--radius-md);background:var(--accent-hover, #5b8cff);color:#fff;cursor:pointer;transition:filter .12s ease}.productIntro .primaryButton:hover{filter:brightness(1.07)}.piSection{display:flex;flex-direction:column;gap:18px}.piH2{font-size:22px;margin:0;font-weight:700}.piGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.piCard{background:var(--bg-card, #fff);border:1px solid var(--border, rgba(127,127,127,.2));border-radius:var(--radius-lg);padding:18px;display:flex;flex-direction:column;gap:12px;box-sizing:border-box;transition:border-color .12s ease,transform .12s ease}.piCard:hover{border-color:var(--accent-hover, #5b8cff);transform:translateY(-2px)}.piCardHead{display:flex;align-items:center;gap:12px}.piIco{flex:0 0 auto;width:38px;height:38px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent-hover, #5b8cff);background:var(--accent-soft, rgba(91,140,255,.12))}.piName{font-size:16px;font-weight:700}.piTag{font-size:12.5px;color:var(--text-muted)}.piProblem{font-size:14px;line-height:1.6;background:#ffb3401f;border-left:3px solid #ffb340;padding:8px 12px;border-radius:0 8px 8px 0;color:var(--text)}.piProblem span{font-weight:700;color:#c8870a}.piDesc{margin:auto 0 0;font-size:13.5px;line-height:1.7;color:var(--text-muted)}.piWho{background:var(--bg-hover, rgba(127,127,127,.04));border:1px solid var(--border, rgba(127,127,127,.16));border-radius:var(--radius-lg);padding:22px 24px}.piWhoList{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:10px}.piWhoList li{font-size:14.5px;line-height:1.6}.appList{display:flex;flex-direction:column;gap:10px}.appCard{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--bg-card, #fff);border:1px solid var(--border, rgba(127,127,127,.2));border-radius:var(--radius-lg)}.appInfo{flex:1;display:flex;flex-direction:column;gap:4px}.appInfo strong{font-size:15px;font-weight:700}.appInfo span{font-size:12.5px;color:var(--text-muted)}.appInfo p{margin:4px 0 0;font-size:13.5px;color:var(--text);line-height:1.6}.appInfo a{font-size:12.5px;color:var(--accent-hover, #5b8cff);text-decoration:none}.appInfo a:hover{text-decoration:underline}.appInfo em{font-size:11.5px;color:var(--text-muted)}.appActions{display:flex;gap:8px;flex-shrink:0}
