:root{--bg-0: #161619;--bg-1: #202024;--bg-2: #2a2a30;--bg-3: #38383f;--fg-0: #ededf0;--fg-1: #b9b9c0;--fg-2: #7d7d85;--accent: #ff8c42;--accent-dim: #c46a30;--accent-soft: rgba(255, 140, 66, .14);--energy: #22d3ee;--energy-dim: #0e7490;--energy-soft: rgba(34, 211, 238, .14);--run: #fbbf24;--pass: #10b981;--fail: #f43f5e;--qc: #06b6d4;--border: #404048;--bevel-light: #4d4d56;--bevel-dark: #131317;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--radius-1: 3px;--radius-2: 6px;--dur-1: .12s;--dur-2: .22s;--ease-spring: cubic-bezier(.2, .85, .25, 1);--glow-accent: 0 0 0 1px var(--accent-dim), 0 0 14px rgba(255, 140, 66, .22);--glow-energy: 0 0 0 1px rgba(34, 211, 238, .55), 0 0 14px rgba(34, 211, 238, .2);--glow-run: 0 0 0 1px rgba(251, 191, 36, .7), 0 0 12px rgba(251, 191, 36, .18);--grid-line: rgba(255, 255, 255, .028);--grid-size: 22px;--board-grid: linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;background:var(--bg-0);color:var(--fg-0);font-family:var(--font-ui);font-size:14px}button{font-family:inherit;font-size:inherit;background:var(--bg-2);color:var(--fg-0);border:1px solid var(--border);border-top-color:var(--bevel-light);border-left-color:var(--bevel-light);border-right-color:var(--bevel-dark);border-bottom-color:var(--bevel-dark);border-radius:var(--radius-1);padding:var(--space-2) var(--space-3);cursor:pointer;transition:background var(--dur-1) var(--ease-spring),box-shadow var(--dur-1) var(--ease-spring),transform var(--dur-1) var(--ease-spring),color var(--dur-1) var(--ease-spring)}button:hover{background:var(--bg-3);border-color:var(--accent-dim);box-shadow:var(--glow-accent)}button:active{border-top-color:var(--bevel-dark);border-left-color:var(--bevel-dark);border-right-color:var(--bevel-light);border-bottom-color:var(--bevel-light);transform:translateY(1px)}button:focus-visible{outline:none;box-shadow:var(--glow-accent)}input,textarea{font-family:inherit;font-size:inherit;background:var(--bg-0);color:var(--fg-0);border:1px solid var(--border);border-top-color:var(--bevel-dark);border-left-color:var(--bevel-dark);border-right-color:var(--bevel-light);border-bottom-color:var(--bevel-light);border-radius:var(--radius-1);padding:var(--space-2);transition:box-shadow var(--dur-1) var(--ease-spring),border-color var(--dur-1) var(--ease-spring)}input:focus,textarea:focus{outline:none;border-color:var(--energy-dim);box-shadow:var(--glow-energy)}.foundry-root{display:flex;flex-direction:column;height:100%}.foundry-titlebar{height:32px;background:linear-gradient(var(--bg-2),var(--bg-1));border-top:1px solid var(--bevel-light);border-bottom:1px solid var(--bevel-dark);box-shadow:inset 0 -2px 0 -1px var(--accent-soft);display:flex;align-items:center;padding:0 var(--space-3);gap:var(--space-3);user-select:none}.foundry-mark{font-weight:700;letter-spacing:.02em;color:var(--fg-0);text-shadow:0 0 10px rgba(255,140,66,.35)}.apps-back{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--fg-2);text-decoration:none;padding:3px 8px;border:1px solid var(--bevel-dark);border-radius:var(--radius-1)}.apps-back:hover{color:var(--accent);border-color:var(--accent-dim)}.foundry-tag{color:var(--fg-2);font-size:12px;font-family:var(--font-mono)}.foundry-spacer{flex:1}.foundry-titlebar>button{margin-left:var(--space-2)}.help-btn{font-family:var(--font-mono);font-size:13px;font-weight:600;padding:4px 10px;color:var(--fg-2)}.help-btn:hover{color:var(--accent);border-color:var(--accent-dim)}.foundry-main{flex:1;display:grid;grid-template-columns:380px 1fr;min-height:0}.foundry-right{display:grid;grid-template-rows:1fr auto;min-height:0}@media print{html,body,#root{background:#fff!important;color:#000!important}.foundry-titlebar,.chat-pane,.composer,.lens-tabs,.add-palette,.inspector,.preview,.code-lens{display:none!important}.foundry-main{display:block!important}.lens-pane,.lens-body,.node-lens,.job-card{height:auto!important;overflow:visible!important;background:#fff!important}.card-scroll{height:auto!important;overflow:visible!important;max-width:none!important;margin:0!important;padding:12pt!important}.card-header{color:#000!important}.card-name{color:#000!important;font-weight:700}.card-desc,.card-meta{color:#333!important}.step{background:#fff!important;color:#000!important;border:1px solid #333!important;box-shadow:none!important;page-break-inside:avoid;break-inside:avoid;margin-bottom:8pt!important}.step-name,.step-numeric{color:#000!important}.step-kind{color:#555!important}.step-desc,.step-detail{color:#333!important}.step-run{display:none!important}.step-link{color:#06c!important;text-decoration:underline!important;background:transparent!important}.qc-badge{background:#fff!important;color:#000!important;border:1px solid black!important}}.foundry-tag{text-transform:uppercase;letter-spacing:.09em;font-size:11px}.apps-back,.help-btn{transition:color var(--dur-1) var(--ease-spring),border-color var(--dur-1) var(--ease-spring),box-shadow var(--dur-1) var(--ease-spring)}.apps-back:hover,.help-btn:hover{box-shadow:var(--glow-accent)}.card-scroll{position:relative}.card-scroll:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background-image:var(--board-grid);background-size:var(--grid-size) var(--grid-size);-webkit-mask-image:radial-gradient(ellipse 90% 80% at 50% 38%,#000 40%,transparent 100%);mask-image:radial-gradient(ellipse 90% 80% at 50% 38%,#000 40%,transparent 100%)}.card-scroll>*{position:relative;z-index:1}.foundry-main{position:relative}.foundry-main:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:5;box-shadow:inset 0 0 120px 8px #00000073}*{scrollbar-width:thin;scrollbar-color:var(--bg-3) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--bg-3);border:2px solid var(--bg-0);border-radius:var(--radius-2)}*::-webkit-scrollbar-thumb:hover{background:var(--accent-dim)}:focus-visible{outline:none;box-shadow:var(--glow-energy);border-radius:var(--radius-1)}::selection{background:var(--energy-soft);color:var(--fg-0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}button:active{transform:none}}
