:root{color:#193327;font-synthesis:none;text-rendering:optimizelegibility;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;--bg:#f4efe6;--bg-soft:#fffbf4db;--panel:#fffdf8eb;--panel-strong:#fffdf8;--text:#193327;--text-soft:#5f6f67;--line:#375c4824;--line-strong:#375c483d;--accent:#2d7a57;--accent-soft:#2d7a571f;--danger:#a94b43;--danger-soft:#a94b431f;--warning-soft:#d19e351f;--shadow:0 24px 70px #22352d1a;background:#f4efe6;font-family:Segoe UI Variable Text,Segoe UI,Trebuchet MS,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--text);background:radial-gradient(circle at 0 0,#83b89957,#0000 34%),radial-gradient(circle at 100% 0,#ecc78638,#0000 30%),linear-gradient(#f4efe6 0%,#efe6d8 100%);margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}h1,h2,p{margin:0}#root{min-height:100vh}.app-shell{min-height:100vh;position:relative}.app-backdrop{pointer-events:none;background:radial-gradient(circle at 15% 10%,#2d7a571f,#0000 25%),radial-gradient(circle at 85% 18%,#e5b45729,#0000 25%);position:fixed;inset:0}.app-layout{z-index:1;max-width:1180px;margin:0 auto;padding:24px 18px 40px;position:relative}.app-header{grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);gap:18px;margin-bottom:18px;display:grid}.header-copy h1{letter-spacing:-.04em;margin-bottom:14px;font-size:clamp(2rem,5vw,3.7rem);line-height:.96}.header-meta{grid-template-columns:repeat(3,minmax(0,1fr));align-self:start;gap:12px;display:grid}.toolbar-grid,.editor-stack{gap:18px;display:grid}.pipeline-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;display:grid}.panel,.editor-panel{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:28px;padding:22px}.launch-panel{gap:0;display:grid}.launch-panel__cta{margin:18px 0 26px}.launch-panel__cta .primary-button{width:100%;box-shadow:0 8px 18px #2d7a572e}.info-card{min-height:172px}.info-card--accent{background:linear-gradient(140deg, #2d7a571a, #ffffffd9), var(--panel-strong)}.picker-panel{gap:16px;display:grid}.picker-panel__header,.panel-heading,.pipeline-card__header,.pipeline-card__footer,.block-card__header{justify-content:space-between;align-items:center;gap:14px;display:flex}.panel-heading,.block-card__header{align-items:flex-start}.picker-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.picker-button,.primary-button,.secondary-button,.ghost-button,.drag-handle{border:none;border-radius:18px;transition:transform .18s,background-color .18s,border-color .18s,color .18s,box-shadow .18s}.picker-button:hover,.primary-button:hover,.secondary-button:hover,.ghost-button:hover,.drag-handle:hover{transform:translateY(-1px)}.picker-button{background:var(--panel-strong);border:1px solid var(--line);color:var(--text);text-align:left;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;display:flex}.picker-button strong{font-size:1.05rem}.primary-button,.secondary-button,.ghost-button{min-height:46px;padding:0 16px}.primary-button{background:var(--accent);color:#f8fff9;box-shadow:0 12px 30px #2d7a573d}.secondary-button{background:var(--accent-soft);color:var(--accent)}.ghost-button{border:1px solid var(--line);color:var(--text);background:0 0}.ghost-button--danger{color:var(--danger);border-color:#a94b4342}.meta-chip{border:1px solid var(--line);background:#ffffffd1;border-radius:20px;gap:4px;min-height:84px;padding:14px 16px;display:grid}.meta-chip--muted{background:var(--bg-soft)}.status-banner{border-radius:18px;margin-bottom:18px;padding:14px 16px}.status-banner--success{background:var(--accent-soft);color:var(--accent);border:1px solid #2d7a5738}.status-banner--error{background:var(--danger-soft);color:var(--danger);border:1px solid #a94b4338}.eyebrow{color:var(--text-soft);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:700}.eyebrow--tiny{font-size:.68rem}.muted-copy{color:var(--text-soft)}.pipeline-card{gap:16px;display:grid}.step-preview{flex-wrap:wrap;gap:8px;display:flex}.step-badge{border:1px solid var(--line);color:var(--text-soft);background:#ffffffb8;border-radius:999px;padding:7px 12px;font-size:.86rem}.card-actions{flex-wrap:wrap;gap:10px;display:flex}.empty-state{color:var(--text-soft);text-align:center;place-items:center;min-height:140px}.empty-state,.empty-state--compact{display:grid}.empty-state--compact{background:var(--bg-soft);border:1px dashed var(--line-strong);border-radius:18px;min-height:74px;padding:14px 16px}.field-group{gap:8px;display:grid}.field-group--inline{max-width:280px}.field-label{color:var(--text-soft);font-size:.9rem;font-weight:600}.text-input,.text-area,.select-input{border:1px solid var(--line);color:var(--text);background:#ffffffeb;border-radius:16px;outline:none;width:100%;min-height:48px;padding:12px 14px}.text-input:focus,.text-area:focus,.select-input:focus{border-color:#2d7a577a;box-shadow:0 0 0 4px #2d7a571f}.text-area{resize:vertical;min-height:124px}.block-card{gap:16px;display:grid}.block-card[data-dragging=true]{border-color:#2d7a576b;box-shadow:0 18px 40px #2d7a572e}.block-card__title{margin-top:4px}.block-fields{gap:14px;display:grid}.drag-handle{background:var(--bg-soft);border:1px solid var(--line);color:var(--text-soft);justify-content:center;align-items:center;min-width:44px;height:44px;display:inline-flex}@media (width<=920px){.app-header{grid-template-columns:1fr}.header-meta{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.app-layout{padding:16px 12px 28px}.panel,.editor-panel{border-radius:22px;padding:18px}.launch-panel{gap:0}.launch-panel__cta{margin:20px 0 24px}.header-meta,.pipeline-grid,.picker-grid{grid-template-columns:1fr}.panel-heading,.pipeline-card__header,.pipeline-card__footer,.block-card__header,.picker-panel__header{flex-direction:column;align-items:stretch}.card-actions,.card-actions .secondary-button,.card-actions .ghost-button,.card-actions .primary-button,.panel-heading .primary-button,.pipeline-card__footer .primary-button{width:100%}}
