:root{--bg: #0f1014;--bg-soft: #171a22;--surface: #1f2432;--surface-2: #262d40;--surface-3: #141822;--text: #f5f7ff;--muted: #aab3c9;--accent: #79ffd5;--accent-2: #f4c2ff;--danger: #ff7c9d;--danger-soft: rgba(255, 124, 157, .14);--border: #3a4157;--shadow: 0 18px 45px rgba(0, 0, 0, .4);--radius-lg: 16px;--radius-md: 12px;--radius-sm: 10px}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;min-height:100vh;color:var(--text);font-family:LXGW WenKai,Microsoft YaHei,sans-serif;background:radial-gradient(circle at 15% 10%,#2a3148 0%,transparent 32%),radial-gradient(circle at 85% 90%,#272047 0%,transparent 28%),var(--bg)}a{color:inherit}button,input,select,textarea{font:inherit}button:disabled{cursor:not-allowed;opacity:.45}button,input,select,textarea{outline:none}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #79ffd524}#root{min-height:100vh}.noise{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.18;background-image:radial-gradient(rgba(255,255,255,.08) .5px,transparent .5px);background-size:3px 3px}.app-shell{position:relative;z-index:1;max-width:1320px;margin:20px auto;padding:16px;display:grid;gap:14px}.state-shell{min-height:100vh;align-content:center}.state-panel{max-width:720px;margin:0 auto}.state-message{min-height:140px;display:grid;place-items:center}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border:1px solid var(--border);background:linear-gradient(115deg,#79ffd514,#f4c2ff14),#0a0c12d6;border-radius:var(--radius-lg);padding:16px 18px;box-shadow:var(--shadow)}.topbar-copy{display:flex;align-items:center;min-height:38px}.topbar h1{margin:0;font-size:24px;letter-spacing:.04em}.topbar-action{flex-shrink:0;margin-top:2px}.workspace{display:grid;grid-template-columns:380px minmax(0,1fr);gap:16px;min-height:700px;align-items:start}.panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(140deg,#ffffff06,#ffffff03),#0d1018e0;box-shadow:var(--shadow);overflow:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.panel-right{display:grid;grid-template-rows:auto auto;align-content:start}.split{display:grid;grid-template-rows:auto auto;min-height:0}.top-split{border-bottom:1px solid var(--border)}.panel-title{padding:10px 14px;font-size:14px;color:var(--muted);border-bottom:1px solid rgba(255,255,255,.05)}.panel-body{padding:12px;overflow:auto}.panel-right .panel-body{overflow:visible}.feature-panel-body{max-height:78vh;padding-top:14px}.search-input{width:100%;margin-bottom:14px}.tag-block+.tag-block,.match-block+.match-block{margin-top:14px}.tag-name{margin-bottom:8px;font-size:13px;color:var(--accent)}.feature-grid,.task-list,.search-results,.match-list{display:grid;gap:8px}.feature-item,.task-item,.match-tag{width:100%;border:1px solid var(--border);background:linear-gradient(180deg,#262d40eb,#171a22f5);color:var(--text);border-radius:var(--radius-md);padding:11px 12px}.feature-item{text-align:left;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background .12s ease}.feature-item:hover{transform:translate(4px);border-color:var(--accent);background:linear-gradient(180deg,#2e3a52fa,#191f2dfa)}.feature-name,.task-title,.param-label,.dynamic-title{display:block;font-size:15px;font-weight:700}.feature-desc{display:block;margin-top:4px;font-size:12px;color:var(--muted);line-height:1.45}.task-summary{display:block;margin-top:4px;font-size:12px;color:var(--muted);line-height:1.6}.task-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;cursor:pointer;transition:border-color .12s ease,background .12s ease,transform .12s ease}.task-item:hover{transform:translateY(-1px);border-color:#79ffd58c}.task-item.selected{border-color:var(--accent-2);background:linear-gradient(180deg,#3f3a5cfa,#22263cfa);box-shadow:inset 0 0 0 1px #f4c2ff14}.task-tools{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.btn-mini,.btn-primary{border:1px solid var(--border);border-radius:var(--radius-sm);background:#2d3550;color:var(--text);padding:6px 10px;cursor:pointer;transition:border-color .12s ease,transform .12s ease,background .12s ease}.btn-mini:hover,.btn-primary:hover{border-color:var(--accent);transform:translateY(-1px)}.btn-danger{background:#45253a;border-color:#7d3056}.btn-danger:hover{border-color:var(--danger)}.btn-primary{background:linear-gradient(120deg,#2c495cf5,#3a2d5ef5);padding:8px 12px;box-shadow:inset 0 1px #ffffff14}.form-grid{display:grid;gap:12px}.param-item{display:grid;gap:8px;padding-bottom:10px;border-bottom:1px dashed rgba(170,179,201,.28)}.param-item:last-child{border-bottom:none;padding-bottom:0}.param-head{display:flex;align-items:center;justify-content:space-between;gap:8px}input,select,textarea{border:1px solid var(--border);background:linear-gradient(180deg,#141822f5,#0d1018fa);color:var(--text);border-radius:var(--radius-sm);padding:9px 10px}textarea{min-height:90px;resize:vertical}.field-boolean{display:flex;align-items:center;gap:8px}.field-boolean input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.hint,.empty{color:var(--muted);font-size:13px;border:1px dashed var(--border);border-radius:var(--radius-md);padding:12px;background:#ffffff04}.dynamic-block{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.06);display:grid;gap:8px}.error-card{border:1px solid rgba(255,124,157,.45);border-radius:var(--radius-lg);padding:12px;background:linear-gradient(135deg,#4c1f367a,#240f1ec7),var(--danger-soft);box-shadow:var(--shadow)}.error-list{margin:0;padding-left:20px;color:#ffc7d5}.search-mark{background:#79ffd547;color:inherit;padding:0 2px;border-radius:4px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#ffffff0a}::-webkit-scrollbar-thumb{background:#aab3c952;border-radius:999px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#79ffd56b;background-clip:padding-box}@media (max-width: 1024px){.workspace{grid-template-columns:1fr}.panel-right{min-height:560px}}@media (max-width: 720px){.app-shell{padding:12px;margin:12px auto}.topbar{flex-direction:column;align-items:stretch}.task-item{grid-template-columns:1fr}.task-tools,.param-head{justify-content:flex-start}}
