:root{--text:#3d3a45;--text-muted:#6b6575;--text-h:#14121a;--bg:#f6f4f1;--surface:#fff;--border:#e2dde8;--accent:#2d6a4f;--accent-soft:#2d6a4f1f;--danger:#b42318;--danger-bg:#b4231814;--validation-warn:#b45309;--validation-ok:#166534;--edge-stream:#0f766e;--edge-product:#c2410c;--edge-feed:#15803d;--pfd-unit-border:#1e3a5f;--pfd-unit-bar:#1e3a5f;--pfd-stream-bg:#ecfeff;--pfd-stream-border:#0d9488;--pfd-sink-bg:#fff7ed;--pfd-sink-border:#ea580c;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "Cascadia Code", Consolas, monospace;font-family:var(--sans);color:var(--text);background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:15px;line-height:1.45}:root[data-theme=dark]{--text:#c4c0cc;--text-muted:#9b95a8;--text-h:#f2eff7;--bg:#121014;--surface:#1c1a22;--border:#35323f;--accent:#52b788;--accent-soft:#52b78826;--danger:#f97066;--danger-bg:#f970661f;--validation-warn:#fdba74;--validation-ok:#86efac;--edge-stream:#2dd4bf;--edge-product:#fb923c;--edge-feed:#4ade80;--pfd-unit-border:#60a5fa;--pfd-unit-bar:#3b82f6;--pfd-stream-bg:#2dd4bf1a;--pfd-stream-border:#2dd4bf;--pfd-sink-bg:#fb923c1f;--pfd-sink-border:#fb923c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}body{margin:0}#root{min-height:100svh}@media (width>=901px){#root{flex-direction:column;height:100svh;max-height:100svh;display:flex;overflow:hidden}}.app{box-sizing:border-box;width:100%;max-width:1680px;margin:0 auto;padding:1rem 1.25rem}@media (width>=901px){.app{flex-direction:column;flex:1;min-height:0;padding-bottom:1.75rem;display:flex;overflow:hidden}}.app-layout-split{flex-direction:column;flex:1;gap:1rem;width:100%;min-height:0;display:flex}.app-layout-split__left{flex-direction:column;gap:1rem;min-width:0;display:flex}.app-layout-split__right{flex-direction:column;min-width:0;min-height:0;display:flex}@media (width>=901px){.app-layout-split--wide{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:0 1rem;display:grid}.app-layout-split--wide .app-layout-split__left{min-height:0;margin-right:-.15rem;padding-right:.35rem;overflow-y:auto}.app-layout-split--wide .app-layout-split__right{height:100%;min-height:0;max-height:100%}.app-layout-split--wide .app-layout-split__right .app-canvas{flex:1;min-height:0}}.app-header{flex-shrink:0;margin-bottom:.35rem}.app-header__top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.65rem 1rem;margin-bottom:.25rem;display:flex}.app-header__top .app-title{margin-bottom:0}.app-theme-segment{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-shrink:0;display:inline-flex;overflow:hidden}.app-theme-segment__btn{font:inherit;letter-spacing:.06em;color:var(--text-muted);cursor:pointer;border:none;border-right:1px solid var(--border);background:0 0;margin:0;padding:.35rem .65rem;font-size:.68rem;font-weight:700}.app-theme-segment__btn:last-child{border-right:none}.app-theme-segment__btn:hover{background:var(--accent-soft);color:var(--text-h)}.app-theme-segment__btn--active{background:color-mix(in srgb, var(--accent) 18%, var(--surface));color:var(--accent)}.app-title{color:var(--text-h);letter-spacing:-.02em;align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.75rem;font-weight:600;display:inline-flex}.app-title__icon{width:1.05em;height:1.05em;image-rendering:pixelated;image-rendering:crisp-edges;flex-shrink:0}.app-title__subtitle{letter-spacing:0;color:var(--text-muted);font-size:.55em;font-weight:500}.app-tagline-group{max-width:52rem;margin:0 0 .08rem}.app-tagline-group .app-tagline{margin:0}.app-tagline-group .app-tagline--lead{color:color-mix(in srgb, var(--text-h) 88%, var(--text-muted));margin-bottom:.02rem;font-weight:600}.app-tagline{max-width:52rem;color:var(--text-muted);margin:0 0 .1rem;font-size:.92rem;line-height:1.42}.app-tagline abbr{text-underline-offset:2px;cursor:help;color:var(--text);font-weight:600;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.app-tagline strong{color:color-mix(in srgb, var(--accent) 55%, var(--text-h));font-weight:700}.app-subtitle{color:var(--text-muted);max-width:42rem;margin:0;font-size:.95rem}.app-meta{margin-top:.12rem}.app-meta__head{flex-wrap:wrap;align-items:center;gap:.5rem .65rem;display:flex}.app-recipe-name{background:var(--accent-soft);color:var(--text-h);border-radius:6px;padding:.35rem .65rem;font-size:.9rem;font-weight:500;display:inline-block}.app-meta-chips{flex-wrap:wrap;align-items:center;gap:.35rem .45rem;margin:0;padding:0;list-style:none;display:flex}.app-meta-chip{border:1px solid color-mix(in srgb, var(--border) 70%, var(--text-muted));background:color-mix(in srgb, var(--text-muted) 16%, var(--surface));max-width:min(100%,24rem);color:var(--text-h);box-shadow:none;border-radius:6px;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.9rem;font-weight:500;line-height:1.35;display:inline-flex}.app-meta-chip__key{font-size:inherit;color:var(--text-muted);text-transform:none;font-weight:500}.app-meta-chip__sep{font-size:inherit;color:var(--text-muted);opacity:.55;-webkit-user-select:none;user-select:none}.app-meta-chip__value{font-size:inherit;color:var(--text-h);word-break:break-word;font-weight:500}.app-toolbar{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;margin-bottom:.3rem;display:flex;overflow:visible}.app-toolbar__cluster{flex-wrap:wrap;align-items:center;gap:.35rem;display:inline-flex}.app-toolbar__examples-box{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 88%, var(--border));box-shadow:inset 0 1px 0 color-mix(in srgb, var(--text-h) 8%, transparent);border-radius:8px;align-items:center;gap:.45rem;padding:.12rem .45rem .12rem .55rem;display:inline-flex;overflow:visible}.app-toolbar__examples-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:.72rem;font-weight:600}.app-toolbar__examples{flex-wrap:wrap;align-items:center;gap:.2rem;display:inline-flex;overflow:visible}.app-toolbar [data-toolbar-tooltip]{position:relative}.app-toolbar [data-toolbar-tooltip]:after{content:attr(data-toolbar-tooltip);z-index:3000;white-space:nowrap;color:var(--text-h);background:var(--surface);border:1px solid var(--border);box-shadow:0 4px 14px #0000001f, 0 0 0 1px color-mix(in srgb, var(--text-h) 6%, transparent);pointer-events:none;opacity:0;visibility:hidden;border-radius:6px;padding:.35rem .55rem;font-size:.78rem;font-weight:600;line-height:1.2;transition:opacity 80ms,visibility 80ms;position:absolute;top:calc(100% + 5px);left:50%;transform:translate(-50%)}.app-toolbar [data-toolbar-tooltip]:focus-visible:after{opacity:1;visibility:visible}@media (hover:hover){.app-toolbar [data-toolbar-tooltip]:hover:after{opacity:1;visibility:visible}}@media print{.app-toolbar [data-toolbar-tooltip]:after{content:none!important}}.app-toolbar__more-actions{flex-wrap:wrap;align-items:center;gap:.35rem;display:inline-flex}.app-toolbar-conversion-group{align-items:center;gap:.3rem;display:inline-flex}.app-toolbar__claude-agent-box{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 88%, var(--border));box-shadow:inset 0 1px 0 color-mix(in srgb, var(--text-h) 8%, transparent);border-radius:8px;align-items:center;gap:.45rem;padding:.12rem .45rem .12rem .55rem;display:inline-flex}.app-toolbar__claude-agent-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:.72rem;font-weight:600}.app-toolbar-conversion-select{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:8px;max-width:12rem;padding:.45rem .55rem}.app-toolbar-conversion-run{border-color:color-mix(in srgb, var(--accent) 36%, var(--border));background:color-mix(in srgb, var(--accent-soft) 52%, var(--surface));border-radius:999px;width:2.2rem;min-width:2.2rem;height:2.2rem;padding:0}.app-toolbar-conversion-run:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 76%, var(--surface))}.app-toolbar-conversion-run__icon{font-size:1rem;line-height:1;transform:translate(.02rem)}.btn--icon-only{justify-content:center;align-items:center;min-width:2.35rem;padding:.32rem .42rem;display:inline-flex}.btn--icon-only .btn__icon{font-size:1.18em;line-height:1}.app-theme-toggle-wrap{align-items:center;gap:.45rem;display:inline-flex}.app-theme-toggle__text{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:600}.app-theme-toggle{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:999px;flex-shrink:0;width:2.75rem;height:1.5rem;padding:0;transition:background .2s,border-color .2s;position:relative;box-shadow:inset 0 1px 2px #0000000f}.app-theme-toggle:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.app-theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-theme-toggle--on{background:color-mix(in srgb, var(--accent) 28%, var(--surface));border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}.app-theme-toggle__thumb{background:var(--text-h);pointer-events:none;border-radius:50%;width:1.1rem;height:1.1rem;transition:left .2s;position:absolute;top:50%;left:.2rem;transform:translateY(-50%);box-shadow:0 1px 3px #0003}.app-theme-toggle--on .app-theme-toggle__thumb{background:var(--accent);left:calc(100% - 1.3rem)}.btn{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:8px;padding:.45rem .85rem}.btn-secondary:hover{border-color:var(--accent);background:var(--accent-soft)}.btn-primary{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 22%, var(--surface));color:var(--accent);font-weight:600}.btn-primary:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn--with-icon{align-items:center;gap:.4rem;display:inline-flex}.btn__icon{font-size:1.05em;line-height:1}.app-toolbar-print-icon{flex-shrink:0;width:1.15em;height:1.15em;display:block}.app-toolbar-rgb-venn-icon{filter:contrast(1.08)saturate(1.12);flex-shrink:0;width:1.28em;height:1.28em;display:block}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-banner{border-radius:8px;flex-shrink:0;margin-bottom:.75rem;padding:.65rem .85rem;font-size:.9rem}.app-banner--error{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger)}.app-banner--notice{background:var(--surface);color:var(--text);border:1px solid var(--border)}.app-banner--share{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.app-report{max-height:min(180px,22vh);font-family:var(--mono);background:var(--surface);border:1px solid var(--border);white-space:pre-wrap;word-break:break-word;border-radius:8px;flex-shrink:0;margin:0 0 .75rem;padding:.75rem 1rem;font-size:.8rem;overflow:auto}.app-report--validation{flex-direction:column;display:flex}@media screen{.app-report.app-report--validation.app-report--validation-collapsed{display:none}}.app-report__validation-body{min-height:0;font-family:inherit;font-size:inherit;line-height:inherit;white-space:pre-wrap;word-break:break-word;flex:1;margin:0;overflow:auto}.app-report__validation-status{border-top:1px solid var(--border);flex-shrink:0;margin-top:.4rem;padding-top:.5rem;font-size:.82rem;font-weight:600}.app-report__validation-completeness{color:var(--text-muted);margin-bottom:.2rem;font-weight:500}.app-report__validation-result{font-weight:600}.app-report__validation-status--invalid .app-report__validation-result{color:var(--danger)}.app-report__validation-status--valid_with_warnings .app-report__validation-result{color:var(--validation-warn)}.app-report__validation-status--valid_clean .app-report__validation-result{color:var(--validation-ok)}.app-body{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(300px,480px) minmax(200px,260px);align-items:stretch;gap:1rem;min-height:0;display:grid}@media (width>=901px){.app-body{flex:1;min-height:0;overflow:hidden}}.app-source,.app-side-rail-wrap,.app-canvas{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-direction:column;align-self:stretch;min-width:0;min-height:0;display:flex;overflow:hidden}.app-body--resizable .app-source,.app-body--resizable .app-side-rail-wrap{min-width:0}.app-resize-handle{z-index:3;cursor:col-resize;touch-action:none;border:1px solid var(--border);background:color-mix(in srgb, var(--border) 55%, var(--surface));width:10px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--surface) 70%, transparent);border-radius:5px;flex-shrink:0;align-self:stretch;margin:0 -5px;position:relative}.app-resize-handle:after{content:"";background:repeating-linear-gradient(to bottom, var(--text-muted) 0 2px, transparent 2px 5px);opacity:.55;pointer-events:none;border-radius:2px;width:3px;height:2rem;max-height:70%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.app-resize-handle:hover,.app-resize-handle:focus-visible{background:color-mix(in srgb, var(--accent) 14%, var(--surface));border-color:color-mix(in srgb, var(--accent) 40%, var(--border));outline:none}.app-resize-handle:hover:after,.app-resize-handle:focus-visible:after{opacity:.85}.app-resize-handle:focus-visible{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--surface) 70%, transparent), 0 0 0 2px var(--accent-soft)}.app-body--feeds-collapsed{grid-template-columns:minmax(300px,480px)}@media (width<=1100px) and (width>=901px){.app-body:not(.app-body--feeds-collapsed){grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(280px,1fr) minmax(180px,240px)}.app-body.app-body--feeds-collapsed{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(300px,440px)}}@media (width<=900px){#root{height:auto;max-height:none;display:block;overflow:visible}.app{min-height:0;padding-top:.65rem;padding-right:max(.75rem, env(safe-area-inset-right,0px));padding-bottom:max(1.25rem, env(safe-area-inset-bottom,0px));padding-left:max(.75rem, env(safe-area-inset-left,0px));flex:none;max-width:100%;overflow:visible}.app-header{margin-bottom:.65rem}.app-title{font-size:1.35rem}.app-tagline-group{margin-bottom:.5rem}.app-tagline{font-size:.84rem}.app-meta{margin-top:.45rem}.app-recipe-name{word-break:break-word;max-width:100%;font-size:.82rem}.app-meta-chip{font-size:.82rem}.app-toolbar{flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem}.app-toolbar>*{flex-shrink:0}.app-toolbar>.app-toolbar__more-actions{flex-wrap:wrap;flex:100%;gap:.35rem;min-width:0;display:flex}.app-toolbar .btn,.app-toolbar label.btn{touch-action:manipulation;min-height:44px;padding:.45rem .7rem}.app-theme-toggle-wrap{flex-shrink:0;padding-right:.15rem}.app-theme-toggle{touch-action:manipulation}.app-layout-split:not(.app-layout-split--wide){flex:none;gap:.75rem;min-height:auto}.app-body,.app-body:not(.app-body--feeds-collapsed),.app-body.app-body--feeds-collapsed{flex-direction:column;flex:none;gap:.75rem;min-height:auto;overflow:visible;grid-template-columns:unset!important;grid-template-rows:unset!important;grid-template-areas:unset!important;display:flex!important}.app-body--resizable{gap:.75rem}.app-source,.app-side-rail-wrap,.app-layout-split__right .app-canvas{width:100%;min-width:0;grid-area:unset!important}.app-source{order:0;min-height:min(48vh,380px)}.app-side-rail-wrap{order:1;min-height:0;max-height:min(58vh,560px);overflow:hidden}.app-layout-split__right{order:2}.app-layout-split__right .app-canvas{min-height:min(48vh,380px)}.app-side-rail-wrap .app-side-rail{flex:1;min-height:0;max-height:none}.app-side-rail__section{flex:none;min-height:0}.app-markup-editor{min-height:180px;max-height:min(42vh,360px)}.app-markup-editor .cm-editor{max-height:min(42vh,360px)}.flow-canvas-wrap{height:min(48vh,380px);min-height:min(48vh,300px)}.flow-workspace{min-height:min(48vh,300px)}.app-empty{min-height:min(40vh,260px);padding:1rem;font-size:.88rem}.app-banner,.app-report{font-size:.85rem}}.app-source-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.35rem;font-size:.8rem;font-weight:600;display:block}.app-source-head__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;display:flex}.app-source-head__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem .55rem;display:flex}.app-info-panel-head__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem .65rem;display:flex}.app-info-panel-head__row .app-source-label,.app-source-head__label{margin-bottom:0}.app-source-head__suggest{white-space:nowrap;letter-spacing:.02em;border-width:1.5px;border-color:color-mix(in srgb, var(--accent) 50%, var(--border));box-shadow:0 1px 4px color-mix(in srgb, var(--text-h) 12%, transparent);flex-shrink:0;padding:.5rem 1rem;font-size:.875rem;font-weight:600;line-height:1.2}.app-source-head__suggest:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-source__body{flex-direction:column;flex:1;min-height:0;padding:.5rem .6rem .55rem;display:flex}.app-source__body .app-markup-editor{flex-direction:column;flex:1;min-height:0;display:flex}.app-markup-editor{flex:1;height:100%;min-height:0}.app-markup-editor>div{flex-direction:column;flex:1;max-height:100%;height:auto!important;min-height:0!important;display:flex!important}.app-markup-editor .cm-editor{flex:1;width:100%;min-height:0}.app-markup-editor .cm-scroller{min-height:0;overflow:auto!important}.app-markup-editor .cm-markup-graph-highlight{background:#dc262624;box-shadow:inset 3px 0 #dc2626}:root[data-theme=dark] .app-markup-editor .cm-markup-graph-highlight{background:#f871711f;box-shadow:inset 3px 0 #f87171}.app-side-rail-wrap .app-side-rail{flex:1;min-height:0}.app-side-rail{-webkit-overflow-scrolling:touch;background:0 0;flex-direction:column;flex:1;gap:.2rem;min-width:0;min-height:0;padding:.5rem .6rem;display:flex;overflow:hidden auto}.app-side-rail__summary{background:0 0;border:none;border-radius:0;flex-shrink:0;margin-bottom:.25rem;padding:0 0 .5rem}.app-side-rail__summary-list{grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:.2rem .55rem;margin:0;font-size:.76rem;line-height:1.35;display:grid}.app-side-rail__summary-list dt{color:var(--text-muted);margin:0;font-weight:500}.app-side-rail__summary-list dd{color:var(--text-h);word-break:break-word;margin:0}.app-side-rail__summary-list+.app-side-rail__summary-list--time{border-top:1px dashed color-mix(in srgb, var(--border) 75%, transparent);margin-top:.35rem;padding-top:.4rem}.app-recipe-meta{flex-direction:column;gap:.75rem;display:flex}.app-recipe-meta__list{grid-template-columns:max-content minmax(0,1fr);gap:.5rem;margin:0;font-size:.86rem;line-height:1.45;display:grid}.app-recipe-meta__list dt{color:var(--text-muted);margin:0;font-weight:600}.app-recipe-meta__list dt:after{content:":"}.app-recipe-meta__list dd{color:var(--text-h);word-break:break-word;margin:0;font-weight:500}.app-recipe-meta__time{align-items:flex-start;gap:.45rem;font-size:.86rem;line-height:1.45;display:flex}.app-recipe-meta__time-icon{color:var(--text-muted);flex-shrink:0;margin-top:.12rem;display:flex}.app-recipe-meta__time-text{min-width:0}.app-recipe-meta__time-label{color:var(--text-muted);font-weight:600}.app-recipe-meta__time-value{color:var(--text-h);font-weight:600}.app-side-rail__section{flex-direction:column;flex:none;gap:.2rem;min-height:0;display:flex}.app-side-rail__section+.app-side-rail__section{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);margin-top:.35rem;padding-top:.35rem}.app-side-rail__head{width:100%;font:inherit;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;margin:0;padding:.35rem .4rem;font-size:.8rem;font-weight:600;display:flex}.app-side-rail__head:hover{background:var(--accent-soft);border-color:var(--border);color:var(--text-h)}.app-side-rail__chevron{opacity:.85;flex-shrink:0;margin-left:.35rem;font-size:.65rem}.app-side-rail__body{flex-direction:column;flex:0 auto;min-height:0;display:flex;overflow:visible}.app-side-rail__list{flex-direction:column;flex:0 auto;gap:.35rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:visible}.app-side-rail__item-btn{width:100%;font:inherit;background:var(--bg);border:1px solid var(--border);color:var(--text-h);word-break:break-word;text-align:left;cursor:pointer;border-radius:6px;margin:0;padding:.35rem .45rem;font-size:.78rem;line-height:1.35;display:block}.app-side-rail__item-btn:hover{border-color:var(--accent);background:var(--accent-soft)}.app-side-rail__item-btn--active{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent)}.app-spec-detail{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 88%, var(--surface));border-radius:8px;flex-shrink:0;margin-top:.45rem;padding:.5rem .55rem}.app-spec-detail__title{color:var(--text-muted);margin-bottom:.35rem;font-size:.72rem;font-weight:600;line-height:1.25}.app-spec-detail__empty{color:var(--text-muted);margin:0;font-size:.72rem;line-height:1.35}.app-spec-detail__list{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:.25rem .65rem;margin:0;font-size:.74rem;line-height:1.3;display:grid}.app-spec-detail__list dt{color:var(--text-muted);margin:0;font-weight:500}.app-spec-detail__list dd{color:var(--text-h);margin:0}.app-spec-detail__link{color:var(--accent);text-underline-offset:2px;word-break:break-all;text-decoration:underline}.app-spec-detail__link:hover{color:color-mix(in srgb, var(--accent) 85%, var(--text-h))}.app-side-rail__empty{color:var(--text-muted);margin:0;font-size:.78rem;line-height:1.4}.app-side-rail__print-spec-list{flex-direction:column;gap:.65rem;min-width:0;display:flex}.app-side-rail__print-spec-item{min-width:0}.app-canvas{position:relative}.app-panel-head{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 55%, var(--surface));flex-shrink:0;margin:0;padding:.5rem .75rem .4rem}.app-panel-head.app-source-label{margin-bottom:0}.app-canvas-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;display:flex}.app-canvas-panel-head__title{margin-bottom:0}.app-canvas-panel-head__actions{flex-wrap:wrap;align-items:center;gap:.5rem .65rem;display:flex}.app-view-toggle{border:1px solid var(--border);background:var(--surface);border-radius:8px;display:inline-flex;overflow:hidden}.app-view-toggle__btn{font:inherit;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);cursor:pointer;border:none;border-right:1px solid var(--border);background:0 0;margin:0;padding:.4rem .75rem;font-size:.72rem;font-weight:600}.app-view-toggle__btn:last-child{border-right:none}.app-view-toggle__btn:hover:not(:disabled){background:var(--accent-soft);color:var(--text-h)}.app-view-toggle__btn--active{background:color-mix(in srgb, var(--accent) 18%, var(--surface));color:var(--accent)}.app-view-toggle__btn:disabled{opacity:.45;cursor:not-allowed}.app-canvas__body{flex-direction:column;flex:1;min-height:0;display:flex}.app-canvas__body .flow-canvas-wrap{flex:1;width:100%;height:100%;min-height:0}.app-canvas__body .app-empty{flex:1;width:100%;min-height:0}.app-canvas__body .app-card-mode{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.app-canvas__body .app-timeline-mode{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:.75rem;width:100%;min-height:0;padding:.65rem .85rem .85rem;display:flex;overflow:hidden auto}.app-timeline-mode__toolbar{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-wrap:wrap;align-self:flex-start;align-items:center;gap:0;display:inline-flex;overflow:hidden}.app-timeline-mode__toggle{font:inherit;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border:none;border-right:1px solid var(--border);cursor:pointer;background:0 0;margin:0;padding:.4rem .65rem;font-size:.68rem;font-weight:600}.app-timeline-mode__toggle:last-child{border-right:none}.app-timeline-mode__toggle:hover{background:var(--accent-soft);color:var(--text-h)}.app-timeline-mode__toggle--active{background:color-mix(in srgb, var(--accent) 18%, var(--surface));color:var(--accent)}.app-timeline-mode__hint{color:var(--text-muted);max-width:42rem;margin:0;font-size:.78rem;line-height:1.35}.app-timeline-mode__list{flex-direction:column;gap:1rem;width:100%;display:flex}.app-timeline-process__title{color:var(--text-h);letter-spacing:.02em;margin:0 0 .45rem;font-size:1.05rem;font-weight:700}.app-timeline-process__frame{border:2px dashed var(--border);background:color-mix(in srgb, var(--bg) 55%, transparent);box-sizing:border-box;border-radius:14px;padding:.65rem .75rem .85rem;overflow:visible}.app-timeline-process__meta{flex-wrap:wrap;align-items:baseline;gap:.35rem .85rem;margin-bottom:.55rem;font-size:.78rem;display:flex}.app-timeline-process__meta-primary{color:var(--text-h);font-weight:600}.app-timeline-process__meta-secondary{color:var(--text-muted)}.app-timeline-bar-shell{width:100%;padding-bottom:.25rem;position:relative;overflow:visible}.app-timeline-bar-track{background:color-mix(in srgb, var(--border) 22%, transparent);border-radius:8px;width:100%;min-height:2.85rem;position:relative;overflow:visible}.app-timeline-parallel-stack{flex-direction:column;gap:.45rem;width:100%;display:flex}.app-timeline-parallel-row,.app-timeline-visual-row{width:100%}.app-timeline-bar-track--parallel{min-height:2.75rem}.app-timeline-seg-hoverwrap{box-sizing:border-box;pointer-events:auto;position:absolute;top:2px;bottom:2px}.app-timeline-seg-hoverwrap:hover{z-index:50!important}.app-timeline-seg{box-sizing:border-box;--tl-h:215;--tl-s:60%;--tl-l1:50%;--tl-l2:38%;background:linear-gradient(145deg, hsl(var(--tl-h) var(--tl-s) var(--tl-l1)) 0%, hsl(var(--tl-h) var(--tl-s) var(--tl-l2)) 100%);border:1px solid #0000002e;border-radius:7px;justify-content:center;align-items:center;min-width:3px;padding:2px 4px;display:flex;position:absolute;left:0;right:0;overflow:hidden;box-shadow:inset 0 1px #ffffff1f,0 2px 6px #0000001f}.app-timeline-seg--narrow{min-width:2px;padding:0}.app-timeline-seg--min-box{min-width:100%}.app-timeline-seg__label-wrap{flex-direction:column;justify-content:center;align-items:center;gap:.1rem;max-width:100%;display:flex}.app-timeline-seg__label-wrap--parallel-lane-first{align-items:flex-start;width:100%;padding-right:.15rem}.app-timeline-seg__label-wrap--parallel-lane-first .app-timeline-seg__label,.app-timeline-seg__label-wrap--parallel-lane-first .app-timeline-seg__time{text-align:left}.app-timeline-seg__label-wrap--parallel-lane-last{align-items:flex-end;width:100%;padding-left:.15rem}.app-timeline-seg__label-wrap--parallel-lane-last .app-timeline-seg__label,.app-timeline-seg__label-wrap--parallel-lane-last .app-timeline-seg__time{text-align:right}.app-timeline-seg__label-wrap--parallel-lane-mid{align-items:center;width:100%}.app-timeline-seg__label{letter-spacing:.02em;text-align:center;word-break:break-all;color:#fff;text-shadow:0 0 2px #0000008c,0 1px 2px #00000059;font-size:.58rem;font-weight:700;line-height:1.12}.app-timeline-seg__time{text-align:center;color:#ffffffeb;text-shadow:0 0 2px #00000080,0 1px 1px #00000059;font-size:.52rem;font-weight:600;line-height:1.1}.app-timeline-unit-tooltip{border:1px solid var(--border);background:var(--surface);min-width:min(260px,72vw);max-width:min(300px,88vw);max-height:min(65vh,400px);color:var(--text-h);-webkit-overflow-scrolling:touch;border-radius:10px;padding:.55rem .65rem .6rem;font-size:.72rem;line-height:1.35;overflow:hidden auto;box-shadow:0 4px 8px #00000014,0 14px 36px #00000029}.app-timeline-unit-tooltip__task{border-bottom:1px solid var(--border);color:var(--text-h);margin-bottom:.45rem;padding-bottom:.4rem;font-size:.74rem;font-weight:600}.app-timeline-unit-tooltip__dl{grid-template-columns:minmax(4.5rem,34%) 1fr;align-items:start;gap:.25rem .5rem;margin:0;display:grid}.app-timeline-unit-tooltip__dl dt{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0;font-size:.65rem;font-weight:600}.app-timeline-unit-tooltip__dl dd{color:var(--text-h);word-break:break-word;margin:0;font-size:.72rem}.app-timeline-unit-tooltip__list{margin:0;padding-left:1rem}.app-timeline-unit-tooltip__list li{margin:.1rem 0}.app-timeline-seg--task-0{--tl-h:215;--tl-s:72%}.app-timeline-seg--task-1{--tl-h:263;--tl-s:70%}.app-timeline-seg--task-2{--tl-h:175;--tl-s:72%}.app-timeline-seg--task-3{--tl-h:32;--tl-s:88%}.app-timeline-seg--task-4{--tl-h:343;--tl-s:75%}.app-timeline-seg--task-5{--tl-h:215;--tl-s:32%}.app-timeline-seg--shade-0{--tl-l1:58%;--tl-l2:46%}.app-timeline-seg--shade-1{--tl-l1:52%;--tl-l2:40%}.app-timeline-seg--shade-2{--tl-l1:47%;--tl-l2:35%}.app-timeline-seg--shade-3{--tl-l1:42%;--tl-l2:31%}.app-timeline-seg--shade-4{--tl-l1:38%;--tl-l2:28%}.app-timeline-seg--shade-5{--tl-l1:34%;--tl-l2:25%}:root[data-theme=dark] .app-timeline-seg--task-0{--tl-h:215;--tl-s:62%}:root[data-theme=dark] .app-timeline-seg--task-1{--tl-h:263;--tl-s:58%}:root[data-theme=dark] .app-timeline-seg--task-2{--tl-h:175;--tl-s:58%}:root[data-theme=dark] .app-timeline-seg--task-3{--tl-h:38;--tl-s:78%}:root[data-theme=dark] .app-timeline-seg--task-4{--tl-h:343;--tl-s:62%}:root[data-theme=dark] .app-timeline-seg--task-5{--tl-h:215;--tl-s:28%}:root[data-theme=dark] .app-timeline-seg--shade-0{--tl-l1:62%;--tl-l2:52%}:root[data-theme=dark] .app-timeline-seg--shade-1{--tl-l1:56%;--tl-l2:46%}:root[data-theme=dark] .app-timeline-seg--shade-2{--tl-l1:51%;--tl-l2:42%}:root[data-theme=dark] .app-timeline-seg--shade-3{--tl-l1:47%;--tl-l2:38%}:root[data-theme=dark] .app-timeline-seg--shade-4{--tl-l1:43%;--tl-l2:35%}:root[data-theme=dark] .app-timeline-seg--shade-5{--tl-l1:40%;--tl-l2:32%}.app-timeline-callouts{min-height:1.5rem;margin-top:.35rem;position:relative}.app-timeline-callouts--row{margin-top:.25rem}.app-timeline-callout{flex-direction:column;align-items:center;max-width:min(140px,40vw);display:flex;position:absolute}.app-timeline-callout__connector{flex-direction:column;flex-shrink:0;align-items:center;margin-bottom:3px;display:flex}.app-timeline-callout__tail{border-left:1.5px dashed color-mix(in srgb, var(--text-muted) 50%, var(--border));flex-shrink:0;align-self:center;width:0}.app-timeline-callout__head{border-left:5px solid #0000;border-right:5px solid #0000;border-bottom:6px solid color-mix(in srgb, var(--text-muted) 55%, var(--border));flex-shrink:0;width:0;height:0;display:block}.app-timeline-callout__label{text-align:center;color:var(--text-h);font-size:.65rem;font-weight:600;line-height:1.2}.app-timeline-callout__time{color:var(--text-muted);text-align:center;margin-top:.1rem;font-size:.58rem;font-weight:600}.app-card-mode__body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;min-height:0;padding:.65rem .85rem .85rem;display:flex;overflow:hidden auto}.app-card-mode__body>.app-card-flash{flex:auto;min-height:0}.app-card-mode__overview{width:100%;max-width:none}.app-card-mode__overview-card{border:1px solid var(--border);background:var(--surface);border-radius:12px;max-width:44rem;margin:0 auto;padding:1rem 1.05rem 1.15rem;box-shadow:0 1px 2px #0000000a,0 10px 28px #00000012}.app-card-mode__overview-hero{border-bottom:1px solid var(--border);margin:0 0 1rem;padding-bottom:.9rem}.app-card-mode__overview-title{color:var(--text-h);letter-spacing:-.02em;margin:0 0 .4rem;font-size:1.32rem;font-weight:800;line-height:1.22}.app-card-mode__overview-meta{color:var(--accent);letter-spacing:.04em;margin:0;font-size:.8rem;font-weight:700}.app-card-mode__overview-meta--solo{border-bottom:1px solid var(--border);margin:0 0 1rem;padding-bottom:.85rem}.app-card-mode__summary{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 82%, var(--surface));border-radius:8px;margin-bottom:1rem;padding:.45rem .5rem .55rem}.app-card-mode__summary .app-recipe-meta{gap:0}.app-card-mode__summary .app-recipe-meta__list+.app-recipe-meta__time{border-top:1px dashed color-mix(in srgb, var(--border) 75%, transparent);margin-top:.35rem;padding-top:.4rem}.app-card-mode__outline-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem;font-size:.72rem;font-weight:700}.app-card-outline{margin:0;padding:0;list-style:none}.app-card-outline__process{margin-bottom:.85rem}.app-card-outline__process-btn{width:100%;font:inherit;text-align:left;color:var(--text-h);background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface));border:1px solid var(--border);cursor:pointer;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.35rem .75rem;margin:0 0 .35rem;padding:.5rem .65rem;font-size:.88rem;font-weight:700;display:flex}.app-card-outline__process-label{flex:1;min-width:0}.app-card-outline__process-count{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);flex-shrink:0;font-size:.68rem;font-weight:700}.app-card-outline__process-btn:hover{border-color:var(--accent)}.app-card-outline__tasks{margin:0;padding:0 0 0 .5rem;list-style:none}.app-card-outline__task{margin-bottom:.45rem}.app-card-outline__task-btn{width:100%;font:inherit;text-align:left;color:var(--text-h);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;margin:0 0 .2rem;padding:.3rem .45rem;font-size:.8rem;font-weight:600;display:block}.app-card-outline__task-btn:before{content:"• ";color:var(--text-muted);font-weight:600}.app-card-outline__task-btn:hover{background:var(--accent-soft);border-color:var(--border)}.app-card-outline__steps{margin:0;padding:0 0 0 .65rem;list-style:none}.app-card-outline__step-btn{width:100%;font:inherit;text-align:left;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;margin:0 0 .15rem;padding:.28rem .4rem;font-size:.76rem;line-height:1.35;display:block}.app-card-outline__step-btn:before{content:"◦ ";color:var(--text-muted);font-weight:500}.app-card-outline__step-btn:hover{color:var(--text-h);background:var(--accent-soft)}.app-card-mode__missing-unit{border:1px solid var(--border);color:var(--text-h);background:color-mix(in srgb, var(--accent-soft) 40%, var(--surface));border-radius:8px;margin:.5rem 0;padding:.75rem}.app-card-flash{flex-direction:column;flex:auto;width:100%;max-width:58rem;min-height:0;margin:0 auto;display:flex}.app-card-flash__strip{flex:auto;grid-template-rows:minmax(0,1fr);grid-template-columns:2.45rem minmax(0,1fr) 2.45rem;align-items:stretch;gap:0;min-height:0;display:grid;position:relative}.app-card-tabs{z-index:0;flex-direction:column;flex:auto;align-self:stretch;min-width:0;min-height:100%;display:flex;position:relative}.app-card-tabs--prev{margin-right:-14px;padding-right:12px}.app-card-tabs--next{margin-left:-14px;padding-left:12px}.app-card-tab{width:100%;min-height:12rem;font:inherit;cursor:pointer;border:1px solid color-mix(in srgb, var(--border) 90%, var(--text-muted));background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 88%, var(--bg)) 0%, color-mix(in srgb, var(--bg) 55%, var(--surface)) 100%);flex:auto;justify-content:center;align-self:stretch;align-items:center;margin:0;padding:.4rem .12rem;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.app-card-tab--prev{border-width:1px 0 1px 1px;border-radius:16px 6px 6px 16px;box-shadow:inset 0 1px #ffffff59,inset -4px 0 8px #0000000f,3px 0 10px #0000000f}.app-card-tab--next{border-width:1px 1px 1px 0;border-radius:6px 16px 16px 6px;box-shadow:inset 0 1px #ffffff59,inset 4px 0 8px #0000000f,-3px 0 10px #0000000f}.app-card-tab:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface))}.app-card-tab:active{box-shadow:inset 0 2px 4px #0000000f}.app-card-tab__lines{writing-mode:vertical-rl;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;max-height:100%;display:flex;transform:rotate(180deg)}.app-card-tab__primary{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);text-align:center;font-size:.5rem;font-weight:800;line-height:1.2}.app-card-tab:hover .app-card-tab__primary{color:var(--text-h)}.app-card-tabs__filler{border:1px dashed color-mix(in srgb, var(--border) 75%, transparent);background:color-mix(in srgb, var(--bg) 90%, var(--surface));pointer-events:none;flex:auto;min-height:4rem}.app-card-tabs--prev .app-card-tabs__filler{border-left:none;border-radius:16px 6px 6px 16px;margin-right:-18px}.app-card-tabs--next .app-card-tabs__filler{border-right:none;border-radius:6px 16px 16px 6px;margin-left:-18px}:root[data-theme=dark] .app-card-tab--prev{box-shadow:inset 0 1px #ffffff0f,inset -5px 0 12px #00000040,4px 0 16px #00000059}:root[data-theme=dark] .app-card-tab--next{box-shadow:inset 0 1px #ffffff0f,inset 5px 0 12px #00000040,-4px 0 16px #00000059}.app-card-flash__card{z-index:2;isolation:isolate;border:1px solid var(--border);background:var(--surface);-webkit-overflow-scrolling:touch;border-radius:12px;flex-direction:column;align-self:stretch;height:100%;min-height:0;max-height:100%;animation:.38s cubic-bezier(.22,1,.36,1) app-card-flip-in;display:flex;position:relative;overflow:hidden auto;box-shadow:0 1px 2px #0000000d,0 10px 28px #00000014,-14px 0 24px -10px #0000000d,14px 0 24px -10px #0000000d}.app-card-progress{background:color-mix(in srgb, var(--border) 65%, var(--surface));height:5px;overflow:hidden}.app-card-progress__fill{background:var(--accent);border-radius:0 3px 3px 0;width:0;height:100%;transition:width .38s cubic-bezier(.22,1,.36,1)}@keyframes app-card-flip-in{0%{opacity:0;transform:perspective(880px)rotateY(-8deg)translate(12px)}to{opacity:1;transform:perspective(880px)rotateY(0)translate(0)}}.app-card-flash__card-head{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 50%, var(--surface));flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem .75rem;padding:.6rem .75rem .5rem;display:flex}.app-card-flash__card-head-text{flex:1;min-width:0}.app-card-flash__process{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 .25rem;font-size:.7rem;font-weight:600}.app-card-flash__task-full{color:var(--text-h);word-break:break-word;margin:0 0 .35rem;font-size:.95rem;font-weight:700;line-height:1.35}.app-card-flash__step-meta{color:var(--text-muted);margin:0;font-size:.74rem;line-height:1.4}.app-card-flash__step-tag{color:var(--text-h);font-weight:600}.app-card-flash__counter{color:var(--text-muted);letter-spacing:.04em;flex-shrink:0;margin:0;font-size:.72rem;font-weight:700}.app-card-flash__instruction-lead{color:var(--text-h);border-bottom:1px solid var(--border);background:var(--surface);margin:0;padding:.75rem .75rem .65rem;font-size:1.08rem;font-weight:500;line-height:1.6}.app-usml-tok--plain{color:#3d3a45;font-weight:500}.app-usml-tok--keyword{color:#5b21b6;font-weight:600}.app-usml-tok--actionSigil{color:#5b21b6;font-weight:500}.app-usml-tok--name{color:#0f766e;font-weight:600}.app-usml-tok--comment{color:#737373;font-style:italic}.app-usml-tok--meta{color:#b45309}.app-usml-tok--string{color:#b91c1c}.app-usml-tok--attributeName{color:#166534;font-weight:500}.app-usml-tok--atom{color:#1d4ed8;font-weight:500}.app-usml-tok--propertyName{color:#6b21a8}.app-usml-tok--number{color:#4338ca}:root[data-theme=dark] .app-usml-tok--plain{color:#c4c0cc}:root[data-theme=dark] .app-usml-tok--keyword,:root[data-theme=dark] .app-usml-tok--actionSigil{color:#c4b5fd}:root[data-theme=dark] .app-usml-tok--name{color:#5eead4}:root[data-theme=dark] .app-usml-tok--comment{color:#78716c}:root[data-theme=dark] .app-usml-tok--meta{color:#fcd34d}:root[data-theme=dark] .app-usml-tok--string{color:#fca5a5}:root[data-theme=dark] .app-usml-tok--attributeName{color:#86efac}:root[data-theme=dark] .app-usml-tok--atom{color:#93c5fd}:root[data-theme=dark] .app-usml-tok--propertyName{color:#d8b4fe}:root[data-theme=dark] .app-usml-tok--number{color:#a5b4fc}.app-card-flash__kicker{color:var(--text-muted);flex:1;min-width:0;margin:0;font-size:.74rem;line-height:1.4}.app-card-flash__card-grid{flex:auto;grid-template-rows:minmax(0,1fr);grid-template-columns:auto 1fr;align-items:stretch;gap:0;min-height:0;display:grid}.app-card-time{border-right:1px solid var(--border);background:color-mix(in srgb, var(--accent-soft) 35%, var(--surface));width:4.35rem;color:var(--text-h);flex-direction:column;flex-shrink:0;align-items:center;gap:.45rem;padding:.65rem .5rem;display:flex}.app-card-time--empty{border-right:1px solid var(--border);background:color-mix(in srgb, var(--bg) 55%, var(--surface));width:4.35rem;min-height:4rem}.app-card-rail{border-right:1px solid var(--border);background:color-mix(in srgb, var(--accent-soft) 35%, var(--surface));width:4.85rem;color:var(--text-h);box-sizing:border-box;flex-direction:column;flex-shrink:0;justify-content:flex-start;align-self:stretch;align-items:stretch;gap:.82rem;height:100%;min-height:100%;padding:.65rem .48rem;display:flex}.app-card-rail:after{content:"";pointer-events:none;flex:auto;width:100%;min-height:0}.app-card-rail__block--param+.app-card-rail__block--param{border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent);margin-top:.35rem;padding-top:.55rem}.app-card-rail--empty{border-right:1px solid var(--border);background:color-mix(in srgb, var(--bg) 55%, var(--surface));box-sizing:border-box;flex-direction:column;align-self:stretch;width:4.6rem;height:100%;min-height:100%;display:flex}.app-card-rail--empty:after{content:"";pointer-events:none;flex:auto;width:100%;min-height:0}.app-card-rail__block{flex-direction:column;align-items:center;gap:.35rem;display:flex}.app-card-rail__block--time .app-card-time__list{width:100%}.app-card-param__key{letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);text-align:center;font-size:.58rem;font-weight:800;line-height:1.2}.app-card-param__key--plain{min-height:1.15rem;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.app-card-param__plain-icon{opacity:.88;flex-shrink:0;display:block}.app-card-param__val{text-align:center;color:var(--text-h);word-break:break-word;width:100%;font-size:.63rem;font-weight:600;line-height:1.3}.app-card-time__icon{opacity:.85;flex-shrink:0}.app-card-time__list{text-align:center;color:var(--text-h);margin:0;padding:0;font-size:.65rem;font-weight:600;line-height:1.35;list-style:none}.app-card-time__list li+li{margin-top:.35rem}.app-card-flash__main{box-sizing:border-box;min-width:0;padding:.65rem .75rem .85rem}.app-card-flash__diagram-panel{margin:.9rem 0 .85rem;padding:0}.app-card-flash__diagram-toggle{width:100%;font:inherit;text-align:center;color:var(--text-muted);background:color-mix(in srgb, var(--bg) 75%, var(--surface));border:1px dashed var(--border);cursor:pointer;border-radius:8px;margin:0 0 .45rem;padding:.45rem .65rem;font-size:.78rem;font-weight:600;transition:border-color .15s,color .15s,background .15s;display:block}.app-card-flash__diagram-toggle:hover{color:var(--text-h);border-color:color-mix(in srgb, var(--accent) 40%, var(--border));background:var(--accent-soft)}.app-card-flash__diagram-wrap{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 40%, var(--surface));box-sizing:border-box;border-radius:8px;max-width:100%;padding:.5rem;overflow-x:hidden}.app-card-flash__diagram-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0 0 .35rem;font-size:.65rem;font-weight:700}.pfd-unit--card-preview{box-sizing:border-box;max-width:100%}.app-card-diagram-context{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.app-card-diagram-context__sources{text-align:center;margin-bottom:.45rem}.app-card-diagram-context__sources-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .3rem;font-size:.6rem;font-weight:800}.app-card-diagram-context__sources-chips{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:.35rem .45rem;max-width:100%;display:flex}.pfd-feed--diagram-chip{box-sizing:border-box;flex:0 auto;min-width:0;max-width:min(100%,9.5rem);padding:.28rem .4rem .32rem}.pfd-feed--diagram-chip .pfd-feed__tag{font-size:.5rem}.pfd-feed--diagram-chip .pfd-feed__label{word-break:break-word;overflow-wrap:anywhere;font-size:.65rem}.app-card-diagram-stream-chip{border:2px solid var(--edge-stream,#0d9488);background:linear-gradient(135deg, color-mix(in srgb, var(--edge-stream,#0d9488) 18%, var(--surface)) 0%, var(--surface) 100%);box-sizing:border-box;border-radius:999px;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;max-width:min(100%,9.5rem);padding:.28rem .45rem .32rem;display:flex;box-shadow:0 1px 6px #0d94881f}.app-card-diagram-stream-chip__tag{letter-spacing:.08em;text-transform:uppercase;color:var(--edge-stream,#0d9488);font-size:.5rem;font-weight:800}.app-card-diagram-stream-chip__label{color:var(--text-h);text-align:left;word-break:break-word;font-size:.62rem;font-weight:600;line-height:1.25}.app-card-diagram-context__sources-arrow{color:var(--text-muted);opacity:.65;margin-top:.2rem;font-size:1rem;line-height:1}.app-card-diagram-context__sinks-arrow{color:var(--text-muted);opacity:.65;text-align:center;margin-top:.35rem;margin-bottom:.15rem;font-size:1rem;line-height:1}.app-card-diagram-context__sinks{text-align:center;margin-top:0;margin-bottom:.15rem}.app-card-diagram-context__sinks-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .3rem;font-size:.6rem;font-weight:800}.app-card-diagram-context__sinks-chips{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:.35rem .45rem;max-width:100%;display:flex}.app-card-diagram-stream-chip--out{text-align:center;align-items:center}.app-card-diagram-stream-chip--out .app-card-diagram-stream-chip__label{text-align:center;width:100%}.app-card-diagram-context__triptych{grid-template-columns:minmax(0,.95fr) minmax(0,2.1fr) minmax(0,.95fr);align-items:start;gap:.35rem .4rem;width:100%;min-width:0;max-width:100%;display:grid}.app-card-diagram-context__col{min-width:0;max-width:100%}.app-card-diagram-context__col--center{min-width:0}.app-card-diagram-peek{box-sizing:border-box;opacity:.48;border-radius:6px;width:100%;max-width:100%;padding:.3rem .35rem .38rem;font-size:.58rem;line-height:1.3;box-shadow:none!important;border-width:2px!important}.app-card-diagram-peek--prev{transform-origin:0 0}.app-card-diagram-peek--next{transform-origin:100% 0}.app-card-diagram-peek__role{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.2rem;font-size:.52rem;font-weight:800;display:block}.app-card-diagram-peek__tag{margin-bottom:.12rem;font-size:.58rem;font-weight:800;display:block}.app-card-diagram-peek__text{color:var(--text-h);word-break:break-word;overflow-wrap:anywhere;margin:0;font-weight:500}.app-card-diagram-peek--empty{border:1px dashed color-mix(in srgb, var(--border) 80%, transparent);background:color-mix(in srgb, var(--bg) 70%, var(--surface));opacity:.42}.app-card-diagram-peek--empty .app-card-diagram-peek__muted{color:var(--text-muted);margin-top:.15rem;font-size:.75rem;display:block}@media (width<=480px){.app-card-diagram-context__triptych{grid-template-columns:1fr}}.pfd-unit--card-preview .pfd-unit__header--static{cursor:default;width:100%}.pfd-unit--card-preview .pfd-unit__header--static .pfd-unit__chevron{display:none}.pfd-unit--card-preview .pfd-unit__body--card-inline{border-top:1px solid var(--border);word-break:break-word;overflow-wrap:anywhere;max-height:min(28vh,220px);padding:.45rem .55rem .55rem;overflow:hidden auto}.pfd-unit--card-preview .pfd-list,.pfd-unit--card-preview .pfd-unit__slot-value{overflow-wrap:anywhere;word-break:break-word}.app-card-flash__do{color:var(--text-h);margin:0 0 .45rem;font-size:.95rem;font-weight:700}.app-card-flash__prose{color:var(--text-h);margin:0 0 .85rem;font-size:1.05rem;line-height:1.55}.app-card-flash__refs{grid-template-columns:1fr 1fr;gap:.65rem .75rem;margin-bottom:.85rem;display:grid}.app-card-flash__ref-heading{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);align-items:center;gap:.4rem;margin:0 0 .4rem;font-size:.68rem;font-weight:800;display:flex}.app-card-flash__ref-heading--word{letter-spacing:.12em;color:var(--text-h);font-size:.62rem}.app-card-inline-spec-list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.app-card-inline-spec-head{color:var(--text-h);font-size:.72rem;font-weight:700;line-height:1.3}.app-card-inline-spec-list .app-spec-detail{margin-top:.25rem;padding:.4rem .5rem}.app-card-inline-spec-list .app-spec-detail__title{display:none}.app-card-inline-spec-miss{color:var(--text-muted);margin:.15rem 0 0;font-size:.7rem;line-height:1.35}.app-card-chip__glyph{opacity:.88;flex-shrink:0}.app-card-flash__ref-empty{color:var(--text-muted);margin:0;font-size:.76rem}.app-card-chip-list{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.app-card-chip{font:inherit;text-align:left;color:var(--text-h);background:color-mix(in srgb, var(--bg) 65%, var(--surface));border:1px solid var(--border);cursor:pointer;border-radius:999px;margin:0;padding:.32rem .55rem;font-size:.76rem;font-weight:600;line-height:1.3;transition:border-color .15s,background .15s}.app-card-chip:disabled{opacity:.55;cursor:not-allowed}.app-card-chip--feed:not(:disabled):hover{border-color:color-mix(in srgb, var(--edge-feed) 55%, var(--border));background:color-mix(in srgb, var(--edge-feed) 12%, var(--surface))}.app-card-chip--tool:not(:disabled):hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));background:var(--accent-soft)}.app-card-chip--on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-soft)}.app-card-flash__spec-pop{margin-bottom:.85rem}.app-card-flash__raw-heading{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 .35rem;font-size:.68rem;font-weight:700}.app-card-flash__markup-row{flex-direction:row;align-items:stretch;gap:.45rem;margin:0 0 .85rem;display:flex}.app-card-flash__markup-textarea{resize:vertical;box-sizing:border-box;min-width:0;font-family:var(--mono);flex:1}.app-card-flash__markup-textarea:disabled{opacity:.55;cursor:not-allowed}.app-card-flash__markup-apply{flex:none;align-self:stretch;min-width:2.25rem;padding-left:.5rem;padding-right:.5rem;font-size:1.1rem;font-weight:700;line-height:1}@media (width<=720px){.app-canvas__body .app-card-mode__body{padding-left:.5rem;padding-right:.5rem}.app-card-flash{width:100%;max-width:none}.app-card-mode__overview-card{max-width:none;padding:.85rem .75rem 1rem}.app-card-flash__strip{flex-direction:column;gap:.35rem;display:flex}.app-card-tabs--prev{order:1;width:100%;min-height:2.85rem}.app-card-flash__card{order:2}.app-card-tabs--next{order:3;width:100%;min-height:2.85rem}.app-card-tab{border-width:1px;border-radius:10px;width:100%;min-height:2.85rem;box-shadow:inset 0 1px #ffffff59,0 1px 3px #0000000f}.app-card-tab__lines{writing-mode:horizontal-tb;flex-direction:column;gap:.25rem;max-height:none;transform:none}.app-card-tab__primary{letter-spacing:.06em;font-size:.62rem}.app-card-tabs--prev{margin-right:0;padding-right:0}.app-card-tabs--next{margin-left:0;padding-left:0}.app-card-tab--prev,.app-card-tab--next{border-width:1px;border-radius:10px}.app-card-tabs__filler{border:1px dashed color-mix(in srgb, var(--border) 75%, transparent);border-radius:10px;min-height:2.5rem}.app-card-tabs--prev .app-card-tabs__filler,.app-card-tabs--next .app-card-tabs__filler{border-left-width:1px;border-right-width:1px;border-radius:10px;margin:0}.app-card-flash__card-grid{grid-template-columns:1fr}.app-card-rail,.app-card-rail--empty{border-right:none;border-bottom:1px solid var(--border);flex-flow:wrap;justify-content:flex-start;align-items:flex-start;gap:.65rem 1.1rem;width:100%;height:auto;min-height:0;padding:.5rem .65rem}.app-card-rail:after,.app-card-rail--empty:after{display:none}.app-card-rail__block--param{flex:none;align-items:flex-start;min-width:4.25rem;max-width:42%}.app-card-rail__block--time{flex-flow:wrap;align-items:center;gap:.4rem .65rem}.app-card-rail__block--time .app-card-time__list{text-align:left;flex-wrap:wrap;gap:.35rem .65rem;display:flex}.app-card-rail__block--time .app-card-time__list li+li{margin-top:0}.app-card-param__key,.app-card-param__val{text-align:left}.app-card-time,.app-card-time--empty{border-right:none;border-bottom:1px solid var(--border);flex-direction:row;justify-content:flex-start;align-items:center;width:100%}.app-card-time__list{text-align:left;flex-wrap:wrap;gap:.35rem .65rem;display:flex}.app-card-time__list li+li{margin-top:0}.app-card-flash__refs{grid-template-columns:1fr}}.app-card-mode__step-card{max-width:36rem}.app-card-mode__step-kicker{color:var(--text-muted);margin:0 0 .5rem;font-size:.76rem;line-height:1.4}.app-card-mode__step-heading{color:var(--text-h);margin:0 0 .65rem;font-size:1rem;font-weight:700}.app-card-mode__step-text{color:var(--text-h);margin:0 0 .85rem;font-size:1.05rem;line-height:1.5}.app-card-mode__step-raw{font-family:var(--mono);color:var(--text-muted);background:color-mix(in srgb, var(--bg) 88%, var(--surface));border:1px solid var(--border);white-space:pre-wrap;word-break:break-word;border-radius:8px;margin:0;padding:.65rem .75rem;font-size:.78rem;line-height:1.45}.app-card-mode__step-raw--tokens{color:#3d3a45}:root[data-theme=dark] .app-card-mode__step-raw--tokens{color:#c4c0cc}.app-card-mode__spec-card{border:1px solid var(--border);background:var(--surface);box-sizing:border-box;border-radius:12px;width:100%;max-width:44rem;margin:0 auto;padding:1rem 1.05rem 1.15rem;box-shadow:0 1px 2px #0000000a,0 10px 28px #00000012}.app-card-mode__spec-title{color:var(--text-h);margin:0 0 .65rem;font-size:.85rem;font-weight:700}.app-card-mode__spec-expand-list{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.app-card-mode__spec-expand-item{margin:0;padding:0}.app-card-mode__spec-expand-head{color:var(--text-h);margin-bottom:.25rem;font-size:.78rem;font-weight:700;line-height:1.35}.app-card-mode__spec-expand-item .app-spec-detail{margin-top:0;padding:.4rem .5rem}.app-card-mode__spec-expand-item .app-spec-detail__title{display:none}.app-card-mode__spec-list{flex-direction:column;gap:.35rem;margin:0 0 .65rem;padding:0;list-style:none;display:flex}.app-card-bar{border-top:1px solid var(--border);background:color-mix(in srgb, var(--bg) 65%, var(--surface));flex-direction:column;flex-shrink:0;align-items:stretch;gap:.35rem;padding:.45rem .5rem .5rem;display:flex}.app-card-bar__row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .45rem;display:flex}.app-card-bar__btn{min-width:44px;min-height:44px;color:var(--text-h);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;margin:0;padding:.35rem;transition:border-color .15s,background .15s,color .15s;display:flex}.app-card-bar__btn:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.app-card-bar__btn:disabled{opacity:.38;cursor:not-allowed}.app-card-bar__btn--active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--surface));color:var(--accent)}.app-card-bar__btn--stroke{color:var(--text-h)}.app-card-bar__btn--text{letter-spacing:.06em;min-width:3.35rem;color:var(--text-muted);padding-left:.4rem;padding-right:.4rem;font-size:.62rem;font-weight:800}.app-card-bar__btn--text.app-card-bar__btn--active{color:var(--accent)}.app-card-bar__label-text{line-height:1.2;display:block}.app-card-bar__icon{flex-shrink:0;display:block}.app-card-bar__icon--stroke{overflow:visible}@media (width<=900px){.app-canvas__body .flow-canvas-wrap{height:min(48vh,380px);min-height:min(48vh,300px);max-height:none}}.flow-canvas-wrap{flex-direction:column;flex:1;width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.flow-canvas-wrap__inner{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.flow-canvas-wrap__inner .flow-workspace{flex:1;min-width:0;min-height:0}.flow-workspace{flex-direction:row;align-items:stretch;width:100%;height:100%;min-height:0;display:flex}.flow-feed-rail{background:linear-gradient(180deg, var(--bg) 0%, var(--surface) 45%, var(--bg) 100%);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;align-items:center;width:48px;padding:.85rem .35rem;display:flex}.flow-feed-rail--graph-tools{gap:.35rem;padding-top:.7rem;padding-bottom:.7rem}.flow-feed-rail__toggle{border:1px solid var(--border);background:var(--surface);color:var(--text-h);cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:.5rem;margin:0;padding:.55rem .3rem;transition:border-color .15s,box-shadow .15s,background .15s;display:flex;box-shadow:0 1px 3px #0000000f}.flow-feed-rail__toggle:hover{border-color:var(--accent);box-shadow:0 2px 8px var(--accent-soft)}.flow-feed-rail__toggle--on{border-color:var(--edge-feed);background:linear-gradient(180deg, #15803d1a 0%, var(--surface) 100%)}.flow-feed-rail__mark{border:2px solid var(--border);background:var(--bg);border-radius:50%;flex-shrink:0;width:11px;height:11px;transition:border-color .15s,background .15s}.flow-feed-rail__toggle--on .flow-feed-rail__mark{border-color:var(--edge-feed);background:var(--edge-feed);box-shadow:0 0 0 3px #15803d33}.flow-feed-rail__label{letter-spacing:.14em;text-transform:uppercase;writing-mode:vertical-rl;color:var(--text-muted);-webkit-user-select:none;user-select:none;font-size:.62rem;font-weight:800;transform:rotate(180deg)}.flow-feed-rail__toggle--on .flow-feed-rail__label{color:var(--text-h)}.flow-feed-rail__toggle--reset:hover{border-color:var(--accent)}.flow-canvas-inner{flex-direction:column;flex:1;min-width:0;height:100%;min-height:0;display:flex;position:relative}.flow-canvas-inner__screen{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.flow-canvas-inner__screen .react-flow{width:100%;height:100%}.app-print-graph-sheets{pointer-events:none;opacity:0;z-index:-1;width:0;height:0;position:absolute;top:0;left:0;overflow:hidden}.app-print-graph-sheet{box-sizing:border-box;width:100%;height:var(--app-print-graph-pane-h)}.flow-canvas-inner--empty{flex-direction:column;min-height:0;display:flex;overflow:auto}.flow-canvas-inner--empty .app-empty{flex:1;min-height:0}.process-group-node{box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex}.process-group-node__title{min-height:2rem;color:var(--text-h);letter-spacing:.03em;flex-shrink:0;margin:0 6px 8px;font-size:1.08rem;font-weight:700;line-height:1.25}.process-group-node__title--placeholder{opacity:0;pointer-events:none;min-height:1.75rem;margin-bottom:6px}.process-group-node__frame{border:2px dashed var(--border);background:color-mix(in srgb, var(--bg) 55%, transparent);box-sizing:border-box;cursor:grab;border-radius:14px;flex:1;min-height:48px}.process-group-node__frame:active{cursor:grabbing}.flow-canvas-inner .react-flow__node-processGroup{box-shadow:none;background:0 0;border:none}.flow-canvas-inner .react-flow__node-processGroup.selected .process-group-node__frame{border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 35%, transparent)}.app-empty{width:100%;min-height:12rem;color:var(--text-muted);text-align:center;flex:1;justify-content:center;align-items:center;padding:2rem;display:flex}.pfd-handle{border:2px solid var(--surface);width:9px;height:9px}.pfd-handle--stream{background:var(--edge-stream)}.pfd-handle--feed{background:var(--edge-feed)}.pfd-handle--product{background:var(--edge-product)}.pfd-feed{text-align:left;background:linear-gradient(135deg, #15803d1f 0%, var(--surface) 100%);border:2px solid var(--edge-feed);border-radius:8px;flex-direction:column;justify-content:center;align-items:flex-start;padding:.35rem .5rem .4rem;font-size:.72rem;display:flex;box-shadow:0 2px 10px #15803d1f}.pfd-feed__tag{letter-spacing:.1em;text-transform:uppercase;color:var(--edge-feed);margin-bottom:.15rem;font-size:.55rem;font-weight:800}.pfd-feed__label{color:var(--text-h);word-break:break-word;font-weight:600;line-height:1.25}.pfd-feed--multi{justify-content:flex-start}.pfd-feed__list{flex-direction:column;gap:.2rem;width:100%;margin:0;padding:0;list-style:none;display:flex}.pfd-feed__list-item{color:var(--text-h);word-break:break-word;border-left:2px solid color-mix(in srgb, var(--edge-feed) 55%, transparent);padding-left:.4rem;font-size:.7rem;font-weight:600;line-height:1.3}.pfd-unit{background:var(--surface);border:3px solid var(--pfd-unit-border);box-shadow:0 0 0 1px #0000000f, 0 4px 16px color-mix(in srgb, var(--pfd-unit-border) 32%, transparent);text-align:left;border-radius:2px;font-size:.78rem;position:relative}.pfd-unit--expanded{min-height:140px}.pfd-unit__hazard-marker{z-index:6;color:#713f12;cursor:default;-webkit-user-select:none;user-select:none;background:linear-gradient(160deg,#fef08a 0%,#facc15 45%,#eab308 100%);border:2px solid #a16207;border-radius:50%;justify-content:center;align-items:center;width:1.45rem;height:1.45rem;font-size:.82rem;line-height:1;display:flex;position:absolute;top:-11px;left:-11px;box-shadow:0 2px 6px #00000038,inset 0 0 0 1px #ffffff73}:root[data-theme=dark] .pfd-unit__hazard-marker{color:#422006;background:linear-gradient(160deg,#fde047 0%,#eab308 55%,#ca8a04 100%);border-color:#854d0e;box-shadow:0 2px 10px #00000073,inset 0 0 0 1px #fff3}.pfd-unit__clue-marker{z-index:6;color:#9a3412;cursor:default;-webkit-user-select:none;user-select:none;background:linear-gradient(165deg,#fff7ed 0%,#ffedd5 40%,#fed7aa 100%);border:2px solid #ea580c;border-radius:50%;justify-content:center;align-items:center;width:1.45rem;height:1.45rem;font-size:.78rem;line-height:1;display:flex;position:absolute;top:-11px;right:-11px;box-shadow:0 2px 6px #ea580c47,inset 0 0 0 1px #ffffff8c}:root[data-theme=dark] .pfd-unit__clue-marker{color:#ffedd5;background:linear-gradient(165deg,#431407 0%,#7c2d12 45%,#9a3412 100%);border-color:#fb923c;box-shadow:0 2px 10px #00000080,inset 0 0 0 1px #ffffff1f}.pfd-unit--theme-0{--pfd-unit-border:#1e3a5f;--pfd-unit-bar:#1e3a5f;--task-accent:#1e3a5f}.pfd-unit--theme-1{--pfd-unit-border:#5b21b6;--pfd-unit-bar:#6d28d9;--task-accent:#5b21b6}.pfd-unit--theme-2{--pfd-unit-border:#0f766e;--pfd-unit-bar:#0d9488;--task-accent:#0f766e}.pfd-unit--theme-3{--pfd-unit-border:#b45309;--pfd-unit-bar:#d97706;--task-accent:#b45309}.pfd-unit--theme-4{--pfd-unit-border:#9f1239;--pfd-unit-bar:#be123c;--task-accent:#9f1239}.pfd-unit--theme-5{--pfd-unit-border:#475569;--pfd-unit-bar:#64748b;--task-accent:#475569}:root[data-theme=dark] .pfd-unit--theme-0{--pfd-unit-border:#60a5fa;--pfd-unit-bar:#3b82f6;--task-accent:#60a5fa}:root[data-theme=dark] .pfd-unit--theme-1{--pfd-unit-border:#a78bfa;--pfd-unit-bar:#8b5cf6;--task-accent:#a78bfa}:root[data-theme=dark] .pfd-unit--theme-2{--pfd-unit-border:#2dd4bf;--pfd-unit-bar:#14b8a6;--task-accent:#2dd4bf}:root[data-theme=dark] .pfd-unit--theme-3{--pfd-unit-border:#fbbf24;--pfd-unit-bar:#f59e0b;--task-accent:#fbbf24}:root[data-theme=dark] .pfd-unit--theme-4{--pfd-unit-border:#fb7185;--pfd-unit-bar:#f43f5e;--task-accent:#fb7185}:root[data-theme=dark] .pfd-unit--theme-5{--pfd-unit-border:#94a3b8;--pfd-unit-bar:#cbd5e1;--task-accent:#94a3b8}.pfd-feed--theme-0{--task-accent:#1e3a5f}.pfd-feed--theme-1{--task-accent:#5b21b6}.pfd-feed--theme-2{--task-accent:#0f766e}.pfd-feed--theme-3{--task-accent:#b45309}.pfd-feed--theme-4{--task-accent:#9f1239}.pfd-feed--theme-5{--task-accent:#475569}.pfd-feed--theme-0,.pfd-feed--theme-1,.pfd-feed--theme-2,.pfd-feed--theme-3,.pfd-feed--theme-4,.pfd-feed--theme-5{border-color:color-mix(in srgb, var(--task-accent) 72%, var(--edge-feed));background:linear-gradient(135deg, color-mix(in srgb, var(--task-accent) 22%, transparent) 0%, var(--surface) 100%);box-shadow:0 2px 10px color-mix(in srgb, var(--task-accent) 18%, transparent)}.pfd-feed--theme-0 .pfd-feed__tag,.pfd-feed--theme-1 .pfd-feed__tag,.pfd-feed--theme-2 .pfd-feed__tag,.pfd-feed--theme-3 .pfd-feed__tag,.pfd-feed--theme-4 .pfd-feed__tag,.pfd-feed--theme-5 .pfd-feed__tag{color:color-mix(in srgb, var(--task-accent) 55%, var(--edge-feed))}:root[data-theme=dark] .pfd-feed--theme-0{--task-accent:#60a5fa}:root[data-theme=dark] .pfd-feed--theme-1{--task-accent:#a78bfa}:root[data-theme=dark] .pfd-feed--theme-2{--task-accent:#2dd4bf}:root[data-theme=dark] .pfd-feed--theme-3{--task-accent:#fbbf24}:root[data-theme=dark] .pfd-feed--theme-4{--task-accent:#fb7185}:root[data-theme=dark] .pfd-feed--theme-5{--task-accent:#94a3b8}.pfd-unit__header{all:unset;cursor:pointer;box-sizing:border-box;background:var(--pfd-unit-bar);color:#fff;border-radius:0;flex-direction:column;align-items:stretch;gap:.4rem;width:100%;padding:.4rem .5rem .45rem;display:flex}.pfd-unit--graph-compact-collapsed{height:auto;min-height:0}.pfd-unit--graph-compact-collapsed .pfd-unit__header{gap:.22rem;padding:.35rem .48rem .32rem}.pfd-unit--graph-compact-collapsed .pfd-unit__slots-stack{margin-top:.06rem}.pfd-unit--graph-compact-collapsed .pfd-unit__slot-block--action{padding:.22rem .38rem .25rem}.pfd-unit__header-top{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.pfd-unit__title-row{flex-direction:row;flex:1;align-items:flex-start;gap:.35rem;min-width:0;display:flex}.pfd-unit__titles{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.pfd-unit__tag{letter-spacing:.12em;opacity:.85;font-size:.58rem;font-weight:800}.pfd-unit__parallel-pill{letter-spacing:.05em;text-transform:uppercase;background:color-mix(in srgb, var(--accent) 20%, var(--surface));color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 32%, var(--border));border-radius:6px;margin-top:.2rem;padding:.1rem .4rem;font-size:.52rem;font-weight:700;display:inline-block}.app-card-flash__simultaneous{color:var(--text-h);background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface));border-bottom:1px solid var(--border);margin:0;padding:.45rem .75rem;font-size:.76rem;line-height:1.35}.app-card-flash__simultaneous-kicker{color:var(--accent);text-transform:uppercase;letter-spacing:.04em;font-size:.65rem;font-weight:700}.pfd-unit__equipment,.pfd-unit__cookware{word-break:break-word;font-size:.88rem;font-weight:700;line-height:1.2}.pfd-unit__facility{opacity:.9;font-size:.62rem;font-weight:600}.pfd-unit__task{opacity:.82;font-size:.62rem;font-weight:600}.pfd-unit__section{opacity:.88;font-size:.65rem}.pfd-unit__source-lamp{all:unset;cursor:pointer;box-sizing:border-box;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.15rem;height:1.15rem;margin-top:.05rem;display:flex}.pfd-unit__source-lamp:focus-visible{outline-offset:2px;outline:2px solid #fff}.pfd-unit__source-lamp-dot{opacity:.55;background:#c16161;border:2px solid #d77c7c;border-radius:50%;width:9px;height:9px;transition:opacity .15s,box-shadow .15s,background .15s,border-color .15s;display:block;box-shadow:0 0 0 1px #0003}.pfd-unit__source-lamp:hover .pfd-unit__source-lamp-dot{opacity:.95}.pfd-unit__source-lamp--on .pfd-unit__source-lamp-dot{opacity:1;background:#ef4444;border-color:#fecaca;box-shadow:0 0 0 2px #ef444459,0 0 10px #ef44448c}.pfd-unit__chevron{opacity:.9;flex-shrink:0;padding-top:.15rem;font-size:.65rem}.pfd-unit__slots-stack{flex-direction:column;gap:.28rem;width:100%;margin-top:.1rem;display:flex}.pfd-unit__slot-block{border:1px solid #fff3;border-radius:4px;flex-direction:column;align-items:flex-start;gap:.1rem;margin:0 -.15rem;padding:.3rem .42rem;display:flex}.pfd-unit__slot-block--action{background:#ffffff24}.pfd-unit__slot-block--vessel{background:#0f766e1f;border-color:#0f766e47}.pfd-unit__slot-block--equipment{background:#0000001f;border-color:#ffffff24}.pfd-unit__slot-label{letter-spacing:.14em;text-transform:uppercase;opacity:.75;font-size:.52rem;font-weight:800}.pfd-unit__slot-value{word-break:break-word;font-size:.82rem;font-weight:700;line-height:1.2}.pfd-unit__slot-value--action{letter-spacing:-.02em;font-size:1rem;font-weight:800}.pfd-unit__slot-value--missing{opacity:.72;font-style:italic;font-weight:600}.pfd-unit__action-secondary{opacity:.9;font-size:.68rem;font-weight:500;line-height:1.25}.pfd-unit__badges{background:var(--surface);flex-wrap:wrap;gap:.3rem;padding:.35rem .5rem .45rem;display:flex}.pfd-unit__badges--hidden{display:none}.pfd-badge{text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--border);border-radius:3px;padding:.15rem .4rem;font-size:.58rem;font-weight:700}.pfd-badge--feed{color:var(--text-h);border-color:var(--edge-stream);background:#0f766e1a}.pfd-badge--param{color:var(--text-h);border-color:var(--pfd-unit-border);background:#1e3a5f14}.pfd-badge--obs{color:var(--text-h);border-color:var(--edge-product);background:#c2410c1a}.pfd-badge--hazard{color:var(--text-h);background:#b4530924;border-color:#d977068c}.pfd-unit__body{border-top:1px solid var(--border);max-height:220px;padding:.35rem .45rem .55rem;overflow-y:auto}.pfd-params-wrap{border:1px solid var(--border);background:var(--bg);border-radius:6px;margin-bottom:.35rem;padding:.35rem .45rem}.pfd-params-heading{color:var(--text-h);margin:0 0 .25rem;font-size:.68rem;font-weight:600}.pfd-details{border:1px solid var(--border);background:var(--bg);border-radius:6px;margin-bottom:.35rem;padding:.15rem .35rem}.pfd-details--obs{border-style:dashed;border-color:var(--edge-product);background:var(--pfd-sink-bg)}.pfd-hazard-wrap{background:#fbbf241f;border:1px solid #d9770673;border-radius:6px;margin-top:.35rem;padding:.35rem .45rem}.pfd-hazard-heading{color:var(--text-h);margin:0 0 .25rem;font-size:.68rem;font-weight:600}.pfd-obs-wrap{border:1px dashed var(--edge-product);background:var(--pfd-sink-bg);border-radius:6px;margin-top:.35rem;padding:.35rem .45rem}.pfd-obs-heading{color:var(--text-h);margin:0 0 .25rem;font-size:.68rem;font-weight:600}.pfd-obs-empty{background:#fbbf2438;border:1px dashed #c2410c59;border-radius:4px;min-height:2rem}.pfd-obs-list{margin-bottom:0}.pfd-details__summary{cursor:pointer;color:var(--text-h);font-size:.68rem;font-weight:600;list-style:none}.pfd-details__summary::-webkit-details-marker{display:none}.pfd-details__summary:before{content:"▸ ";opacity:.6}.pfd-details[open] .pfd-details__summary:before{content:"▾ "}.pfd-list{color:var(--text);margin:.25rem 0 .35rem;padding-left:1rem;font-size:.7rem;line-height:1.35}.pfd-list--param li,.pfd-list--hazard li,.pfd-list--obs li{list-style-type:disc}.pfd-stream{text-align:center;background:var(--pfd-stream-bg);border:2px solid var(--pfd-stream-border);color:var(--text-h);border-radius:999px;flex-direction:column;justify-content:center;align-items:center;max-width:15rem;padding:.35rem .5rem;font-size:.68rem;font-weight:700;display:flex;box-shadow:0 2px 8px #0d948826}.pfd-stream__label{white-space:normal;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;line-height:1.2}.pfd-stream__sub{color:var(--text-muted);margin-top:.1rem;font-size:.58rem;font-weight:600}.pfd-sink{background:var(--pfd-sink-bg);border:2px dashed var(--pfd-sink-border);text-transform:uppercase;letter-spacing:.08em;color:var(--text-h);border-radius:6px;justify-content:center;align-items:center;font-size:.68rem;font-weight:800;display:flex}.pfd-merge{background:linear-gradient(145deg, #7c3aed1f 0%, var(--surface) 100%);border:2px solid #7c3aed;border-radius:6px;justify-content:center;align-items:center;display:flex;transform:rotate(45deg);box-shadow:0 2px 10px #7c3aed26}.pfd-merge__label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-h);text-align:center;max-width:4.5rem;font-size:.58rem;font-weight:800;line-height:1.15;transform:rotate(-45deg)}.pfd-handle--merge{background:#7c3aed}.react-flow__node.selected .pfd-unit,.react-flow__node.selected .pfd-stream,.react-flow__node.selected .pfd-sink,.react-flow__node.selected .pfd-feed,.react-flow__node.selected .pfd-merge{box-shadow:0 0 0 3px var(--accent-soft), 0 6px 20px #0000001f}.flow-minimap{border-radius:8px;border:1px solid var(--border)!important}.app-canvas-print-btn{font:inherit;color:var(--text-h);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;margin:0;padding:.38rem .55rem;transition:border-color .15s,background .15s;display:inline-flex}.app-canvas-print-btn[data-toolbar-tooltip]{position:relative}.app-canvas-print-btn[data-toolbar-tooltip]:after{content:attr(data-toolbar-tooltip);z-index:3000;white-space:normal;max-width:min(300px,70vw);color:var(--text-h);background:var(--surface);border:1px solid var(--border);box-shadow:0 4px 14px #0000001f, 0 0 0 1px color-mix(in srgb, var(--text-h) 6%, transparent);pointer-events:none;opacity:0;visibility:hidden;border-radius:6px;padding:.35rem .55rem;font-size:.76rem;font-weight:600;line-height:1.25;transition:opacity 80ms,visibility 80ms;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.app-source-head__actions .app-canvas-print-btn[data-toolbar-tooltip]:after{text-align:left;left:auto;right:0;transform:none}.app-canvas-print-btn[data-toolbar-tooltip]:focus-visible:after{opacity:1;visibility:visible}@media (hover:hover){.app-canvas-print-btn[data-toolbar-tooltip]:hover:after{opacity:1;visibility:visible}}.app-canvas-print-btn__icon{flex-shrink:0;width:1.15rem;height:1.15rem;display:block}.app-canvas-print-btn:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.app-canvas-print-btn:disabled{opacity:.45;cursor:not-allowed}.app-canvas-print-btn--ghost{padding-inline:.4rem}.app-canvas-print-btn--ghost-inner{letter-spacing:.03em;text-transform:uppercase;background:var(--accent-soft);min-width:2.4rem;color:var(--text-h);border:1px solid color-mix(in srgb, var(--accent) 42%, var(--border));border-radius:999px;justify-content:center;align-items:center;padding:.1rem .3rem;font-size:.68rem;font-weight:600;display:inline-flex}.app-canvas-print-btn--ghost.app-canvas-print-btn--active .app-canvas-print-btn--ghost-inner,:root[data-theme=dark] .app-canvas-print-btn--ghost .app-canvas-print-btn--ghost-inner{background:var(--text-h);color:var(--surface);border-color:var(--text-h)}:root[data-theme=dark] .app-canvas-print-btn--ghost.app-canvas-print-btn--active .app-canvas-print-btn--ghost-inner{background:var(--surface);color:var(--text-h);border-color:color-mix(in srgb, var(--text-h) 42%, var(--border))}.app-print-card-pages{clip:rect(0, 0, 0, 0);white-space:nowrap;pointer-events:none;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-card-chip--print{cursor:default;-webkit-user-select:none;user-select:none;display:inline-block}.app-print-outline-static{cursor:default;pointer-events:none}.app-print-card__markup{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 55%, var(--surface));white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;border-radius:6px;margin:0 0 .5rem;padding:.45rem .55rem;font-size:.72rem;line-height:1.45}@media print{.app-canvas-print-btn[data-toolbar-tooltip]:after{content:none!important}@page{margin:8mm}@page alchefmy-graph-print{margin:6mm;size:landscape}body.app-print--cards{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff!important}body.app-print--graph{page:alchefmy-graph-print;-webkit-print-color-adjust:exact;print-color-adjust:exact;--app-print-graph-pane-h:calc(100vh - 12mm);--text:#3d3a45;--text-muted:#6b6575;--text-h:#14121a;--bg:#f6f4f1;--surface:#fff;--border:#e2dde8;--accent:#2d6a4f;--accent-soft:#2d6a4f1f;--edge-stream:#0f766e;--edge-product:#c2410c;--edge-feed:#15803d;--pfd-unit-border:#1e3a5f;--pfd-unit-bar:#1e3a5f;--pfd-stream-bg:#ecfeff;--pfd-stream-border:#0d9488;--pfd-sink-bg:#fff7ed;--pfd-sink-border:#ea580c;min-height:100vh;color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:14px;background:#fff!important;margin:0!important}@supports (height:100dvh){body.app-print--graph{--app-print-graph-pane-h:calc(100dvh - 12mm);min-height:100dvh}}body.app-print--cards .app{width:100%!important;max-width:none!important;margin:0!important;padding:.2rem 0!important}body.app-print--cards .app>:not(.app-print-card-pages){display:none!important}body.app-print--cards .app-print-card-pages{--text:#3d3a45;--text-muted:#6b6575;--text-h:#14121a;--bg:#f6f4f1;--surface:#fff;--border:#e2dde8;--accent:#2d6a4f;--accent-soft:#2d6a4f1f;--edge-stream:#0f766e;--edge-product:#c2410c;--edge-feed:#15803d;--pfd-unit-border:#1e3a5f;--pfd-unit-bar:#1e3a5f;--pfd-stream-bg:#ecfeff;--pfd-stream-border:#0d9488;--pfd-sink-bg:#fff7ed;--pfd-sink-border:#ea580c;color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:14px;clip:auto!important;white-space:normal!important;pointer-events:auto!important;width:100%!important;max-width:100%!important;height:auto!important;margin:0!important;padding:0!important;position:static!important;overflow:visible!important}body.app-print--cards .app-print-card-sheet{break-inside:avoid;page-break-inside:avoid;margin-bottom:.5rem;max-width:100%!important}body.app-print--cards .app-card-mode__overview-card{break-inside:avoid;page-break-inside:avoid;border:1px solid var(--border);background:var(--surface);border-radius:12px;margin-bottom:.5rem;box-shadow:0 1px 2px #0000000a,0 6px 18px #0000000f;max-width:100%!important}body.app-print--cards .app-card-mode__spec-card.app-print-card-sheet{break-inside:auto;page-break-inside:auto;border:1px solid var(--border);background:var(--surface);border-radius:12px;margin-bottom:.5rem;margin-left:auto;margin-right:auto;box-shadow:0 1px 2px #0000000a,0 6px 18px #0000000f;width:100%!important;max-width:100%!important}body.app-print--cards .app-card-flash__card{max-width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important;box-shadow:0 1px 2px #0000000d,0 8px 22px #00000012!important}body.app-print--cards .app-card-flash__card-grid{min-height:0!important}body.app-print--cards .app-card-flash__main{max-height:none!important;overflow:visible!important}body.app-print--cards .app-card-rail{height:auto!important;min-height:auto!important}body.app-print--cards .app-card-rail:after,body.app-print--graph .app-print-card-pages{display:none!important}body.app-print--graph .app{flex-direction:column!important;width:100%!important;max-width:none!important;min-height:100vh!important;margin:0!important;padding:0!important;display:flex!important}body.app-print--graph .app-header,body.app-print--graph .app-toolbar,body.app-print--graph .app-banner,body.app-print--graph .app-report,body.app-print--graph .app-source,body.app-print--graph .app-resize-handle,body.app-print--graph .app-side-rail-wrap,body.app-print--graph .app-canvas-panel-head,body.app-print--graph .flow-feed-rail,body.app-print--graph .react-flow__controls,body.app-print--graph .react-flow__panel,body.app-print--graph .flow-minimap,body.app-print--graph .react-flow__background,body.app-print--graph .react-flow__attribution,body.app-print--graph .app-layout-split__left{display:none!important}body.app-print--graph .app-layout-split{flex-direction:column!important;flex:1!important;gap:0!important;width:100%!important;min-height:0!important;display:flex!important}body.app-print--graph .app-layout-split__right{flex:1!important;width:100%!important;min-height:0!important;max-height:none!important}body.app-print--graph .app-canvas{box-shadow:none!important;border:none!important;border-radius:0!important;flex:1!important;width:100%!important;max-width:100%!important;min-height:0!important;overflow:visible!important}body.app-print--graph .app-canvas__body{flex-direction:column!important;flex:1!important;width:100%!important;max-width:100%!important;min-height:0!important;display:flex!important;overflow:visible!important}body.app-print--graph .flow-canvas-wrap,body.app-print--graph .flow-canvas-wrap__inner,body.app-print--graph .flow-workspace,body.app-print--graph .flow-canvas-inner{flex:1!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}body.app-print--graph:not(.app-print-graph-multi) .flow-canvas-inner__screen .react-flow{box-sizing:border-box!important;width:100%!important;height:var(--app-print-graph-pane-h)!important;min-height:0!important;max-height:var(--app-print-graph-pane-h)!important;overflow:hidden!important}body.app-print--graph:not(.app-print-graph-multi) .flow-canvas-inner__screen .react-flow__renderer{width:100%!important;height:100%!important}body.app-print--graph.app-print-graph-multi .flow-canvas-inner__screen{display:none!important}body.app-print--graph.app-print-graph-multi .app-print-graph-sheets{opacity:1!important;z-index:auto!important;pointer-events:auto!important;width:100%!important;height:auto!important;position:static!important;top:auto!important;left:auto!important;overflow:visible!important}body.app-print--graph.app-print-graph-multi .app-print-graph-sheet{break-after:page;page-break-after:always;box-sizing:border-box!important;width:100%!important;height:var(--app-print-graph-pane-h)!important;max-height:var(--app-print-graph-pane-h)!important;overflow:hidden!important}body.app-print--graph.app-print-graph-multi .app-print-graph-sheet:last-child{break-after:auto;page-break-after:auto}body.app-print--graph.app-print-graph-multi .app-print-graph-sheet .react-flow{box-sizing:border-box!important;width:100%!important;height:var(--app-print-graph-pane-h)!important;min-height:0!important;max-height:var(--app-print-graph-pane-h)!important;overflow:hidden!important}body.app-print--graph.app-print-graph-multi .app-print-graph-sheet .react-flow__renderer{width:100%!important;height:100%!important}body.app-print--timeline{-webkit-print-color-adjust:exact;print-color-adjust:exact;--text:#3d3a45;--text-muted:#6b6575;--text-h:#14121a;--bg:#f6f4f1;--surface:#fff;--border:#e2dde8;--accent:#2d6a4f;--accent-soft:#2d6a4f1f;color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:14px;background:#fff!important;margin:0!important}body.app-print--timeline .app-print-card-pages{display:none!important}body.app-print--timeline .app{flex-direction:column!important;width:100%!important;max-width:none!important;min-height:auto!important;margin:0!important;padding:0!important;display:flex!important}body.app-print--timeline .app-layout-split__left{display:none!important}body.app-print--timeline .app-layout-split{flex-direction:column!important;flex:1!important;gap:0!important;width:100%!important;min-height:0!important;display:flex!important}body.app-print--timeline .app-layout-split__right{flex:1!important;width:100%!important;min-height:0!important;max-height:none!important}body.app-print--timeline .app-canvas-panel-head{display:none!important}body.app-print--timeline .app-canvas{box-shadow:none!important;border:none!important;border-radius:0!important;width:100%!important;max-width:100%!important;overflow:visible!important}body.app-print--timeline .app-canvas__body{width:100%!important;max-width:100%!important;overflow:visible!important}body.app-print--timeline .app-timeline-mode{width:100%!important;max-width:100%!important;padding:.25rem 0 .5rem!important}body.app-print--timeline .app-timeline-mode__toolbar,body.app-print--timeline .app-timeline-mode__hint{display:none!important}body.app-print--timeline .app-timeline-process{break-inside:avoid;page-break-inside:avoid}body.app-print--markup{-webkit-print-color-adjust:exact;print-color-adjust:exact;--text:#3d3a45;--text-muted:#6b6575;--text-h:#14121a;--bg:#f6f4f1;--surface:#fff;--border:#e2dde8;color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff!important;margin:0!important}body.app-print--markup .app{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}body.app-print--markup .app>:not(.app-layout-split),body.app-print--markup .app-layout-split__right,body.app-print--markup .app-layout-split__left>:not(.app-body){display:none!important}body.app-print--markup .app-layout-split{display:block!important}body.app-print--markup .app-body>:not(.app-source){display:none!important}body.app-print--markup .app-source{width:100%!important;max-width:100%!important;box-shadow:none!important;background:var(--surface)!important;border:none!important;border-radius:0!important;flex-direction:column!important;display:flex!important;overflow:visible!important}body.app-print--markup .app-panel-head.app-source-head{box-shadow:none!important;background:0 0!important;border-bottom:none!important}body.app-print--markup .app-source__body{flex:none!important;padding:0!important;overflow:visible!important}body.app-print--markup .app-markup-editor{height:auto!important;min-height:0!important}body.app-print--markup .app-markup-editor>div{flex:none!important;height:auto!important;min-height:0!important;max-height:none!important;display:block!important;overflow:visible!important}body.app-print--markup .cm-editor{height:auto!important;min-height:0!important;max-height:none!important;box-shadow:none!important;border:none!important;border-radius:0!important;outline:none!important;overflow:visible!important}body.app-print--markup .cm-editor.cm-focused{outline:none!important}body.app-print--markup .cm-scroller{flex:none!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}body.app-print--markup .cm-gutters{border-right:none!important}body.app-print--markup .cm-content{padding-bottom:.75rem!important}body.app-print--info{-webkit-print-color-adjust:exact;print-color-adjust:exact;--text:#3d3a45;--text-muted:#6b6575;--text-h:#14121a;--bg:#f6f4f1;--surface:#fff;--border:#e2dde8;--accent:#2d6a4f;--accent-soft:#2d6a4f1f;color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff!important;margin:0!important}body.app-print--info .app{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}body.app-print--info .app>:not(.app-layout-split),body.app-print--info .app-layout-split__right,body.app-print--info .app-layout-split__left>:not(.app-body){display:none!important}body.app-print--info .app-layout-split{display:block!important}body.app-print--info .app-body>:not(.app-side-rail-wrap){display:none!important}body.app-print--info .app-side-rail-wrap{width:100%!important;max-width:100%!important;box-shadow:none!important;background:var(--surface)!important;border:none!important;border-radius:0!important;flex-direction:column!important;display:flex!important;overflow:visible!important}body.app-print--info .app-side-rail{max-height:none!important;overflow:visible!important}body.app-print--info .app-side-rail__body{overflow:visible!important}body.app-print--info .app-side-rail__print-spec-item{break-inside:avoid;page-break-inside:avoid}body.app-print--info .app-spec-detail{border:none!important;border-bottom:1px solid color-mix(in srgb, var(--border) 75%, transparent)!important;background:0 0!important;border-radius:0!important;margin-top:0!important;padding:0 0 .85rem!important}body.app-print--info .app-side-rail__section:last-of-type .app-side-rail__print-spec-list .app-side-rail__print-spec-item:last-child .app-spec-detail{border-bottom:none!important;padding-bottom:0!important}body:not(.app-print--validation) .app-report--validation-collapsed{display:none!important}body.app-print--validation{-webkit-print-color-adjust:exact;print-color-adjust:exact;--text:#3d3a45;--text-muted:#6b6575;--text-h:#14121a;--bg:#f6f4f1;--surface:#fff;--border:#e2dde8;color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff!important;margin:0!important}body.app-print--validation .app{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}body.app-print--validation .app>:not(.app-layout-split),body.app-print--validation .app-layout-split__right,body.app-print--validation .app-layout-split__left>:not(.app-report--validation){display:none!important}body.app-print--validation .app-layout-split{width:100%!important;display:block!important}body.app-print--validation .app-report--validation{max-height:none!important;box-shadow:none!important;background:var(--surface)!important;border:none!important;border-radius:0!important;flex-direction:column!important;margin:0!important;padding:.75rem 1rem!important;font-size:.82rem!important;line-height:1.45!important;display:flex!important;overflow:visible!important}body.app-print--validation .app-report__validation-body{white-space:pre-wrap!important;flex:none!important;overflow:visible!important}body.app-print--validation .app-report__validation-status{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.recipe-ai-modal-backdrop{z-index:1200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f0c1673;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.recipe-ai-modal{border:1px solid var(--border);background:var(--surface);width:min(100%,40rem);max-height:min(90vh,36rem);color:var(--text);border-radius:12px;flex-direction:column;gap:.5rem;padding:1.15rem 1.25rem 1.25rem;display:flex;position:relative;box-shadow:0 12px 40px #0000002e}.recipe-ai-modal--busy{overflow:visible}.recipe-ai-modal__loading{z-index:3;border-radius:inherit;background:color-mix(in srgb, var(--surface) 86%, transparent);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);flex-direction:column;justify-content:center;align-items:center;gap:.65rem;padding:2rem 1.25rem 1.5rem;display:flex;position:absolute;inset:0;overflow:visible}.recipe-ai-modal__loading-text{max-width:16rem;color:var(--text-h);text-align:center;margin:0;font-size:.92rem;font-weight:600;line-height:1.35}.recipe-ai-cooking{image-rendering:pixelated;image-rendering:crisp-edges;padding-top:.35rem;line-height:0;overflow:visible}.recipe-ai-cooking__svg{transform-origin:50% 78%;animation:2.4s steps(6,end) infinite recipe-ai-pot-nudge;display:block}.recipe-ai-cooking__lid{transform-origin:22px 11px;animation:1.1s steps(2,jump-none) infinite recipe-ai-lid-pop}.recipe-ai-cooking__steam{opacity:.55;animation:2.1s steps(5,jump-none) infinite recipe-ai-steam-rise}.recipe-ai-cooking__steam--2{animation-delay:.35s}.recipe-ai-cooking__steam--3{animation-delay:.7s}@keyframes recipe-ai-lid-pop{0%,to{transform:translate(0)}50%{transform:translateY(-12px)}}@keyframes recipe-ai-steam-rise{0%,to{opacity:.35;transform:translateY(4px)}50%{opacity:1;transform:translateY(-28px)}}@keyframes recipe-ai-pot-nudge{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}@media (prefers-reduced-motion:reduce){.recipe-ai-cooking__svg,.recipe-ai-cooking__lid,.recipe-ai-cooking__steam{animation:none}.recipe-ai-cooking__steam{opacity:.8;transform:translateY(-8px)}}.recipe-ai-modal__title{color:var(--text-h);margin:0;font-size:1.15rem;font-weight:600}.recipe-ai-modal__desc{color:var(--text-muted);margin:0;font-size:.88rem;line-height:1.45}.recipe-ai-modal__dataset-notice{border:1px solid color-mix(in srgb, var(--danger) 28%, var(--border));background:color-mix(in srgb, var(--danger) 8%, var(--surface));border-radius:8px;padding:.65rem .75rem}.recipe-ai-modal__dataset-notice-text{color:var(--text-muted);margin:0 0 .5rem;font-size:.82rem;line-height:1.45}.recipe-ai-modal__dataset-check{color:var(--text-h);cursor:pointer;align-items:flex-start;gap:.5rem;font-size:.86rem;line-height:1.4;display:flex}.recipe-ai-modal__dataset-check input{accent-color:var(--accent);flex-shrink:0;margin-top:.2rem}.recipe-ai-modal__dataset-check input:disabled{cursor:not-allowed;opacity:.65}.recipe-ai-modal__label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-size:.78rem;font-weight:700}.recipe-ai-modal__optional{text-transform:none;letter-spacing:normal;color:var(--text-muted);font-weight:500}.recipe-ai-modal__textarea{resize:vertical;min-height:12rem;font-family:var(--sans);border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;flex:1;padding:.65rem .75rem;font-size:.9rem;line-height:1.45}.recipe-ai-modal__textarea:focus{outline:2px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:1px}.recipe-ai-modal__textarea:disabled{opacity:.65}.recipe-ai-modal__error{color:var(--danger);margin:0;font-size:.88rem}.recipe-ai-modal__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.25rem;display:flex}.opentrons-export-modal{gap:.7rem;width:min(100%,52rem);max-height:min(92vh,52rem);overflow:auto}.opentrons-export-modal__block{flex-direction:column;gap:.35rem;display:flex}.opentrons-export-modal__textarea{flex:none;min-height:10rem;max-height:14.5rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.opentrons-assistant-chat{z-index:1300;border:1px solid var(--border);background:var(--surface);resize:both;border-radius:10px;flex-direction:column;gap:.5rem;width:min(26rem,100vw - 2rem);min-width:20rem;height:min(64vh,32rem);min-height:18rem;max-height:min(70vh,36rem);padding:.75rem;display:flex;position:fixed;bottom:1rem;right:1rem;overflow:auto;box-shadow:0 10px 30px #0003}.opentrons-assistant-chat__title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.82rem;font-weight:700}.opentrons-assistant-chat__transcript,.opentrons-assistant-chat__input{resize:vertical;width:100%;font-family:var(--sans);color:var(--text-h);background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.55rem .65rem;font-size:.88rem;line-height:1.4}.opentrons-assistant-chat__transcript{min-height:11rem}.opentrons-assistant-chat__input{min-height:7.2rem}.opentrons-assistant-chat__actions{justify-content:flex-end;display:flex}@media print{.opentrons-assistant-chat{display:none!important}}.color-mixing-modal{width:min(100%,28rem);max-height:min(90vh,42rem)}.color-mixing-modal__main{flex-wrap:wrap;align-items:flex-start;gap:1rem;display:flex}.color-mixing-modal__swatch{border:1px solid var(--border);width:5rem;height:5rem;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--text-h) 10%, transparent), 0 2px 8px #00000014;border-radius:12px;flex-shrink:0}.color-mixing-modal__controls{flex-direction:column;flex:1;gap:.4rem;min-width:12rem;display:flex}.color-mixing-modal__label{flex-direction:column;gap:.35rem;margin:0;display:flex}.color-mixing-modal__color-input{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:8px;width:3.35rem;height:2.35rem;padding:.12rem}.color-mixing-modal__color-input:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:2px}.color-mixing-modal__rgb{flex-wrap:wrap;gap:.5rem;display:flex}.color-mixing-modal__rgb-field{flex-direction:column;gap:.2rem;min-width:4.25rem;display:flex}.color-mixing-modal__rgb-key{color:var(--text-muted);font-size:.72rem;font-weight:700}.color-mixing-modal__number{box-sizing:border-box;width:100%;font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;padding:.45rem .5rem;font-size:.9rem}.color-mixing-modal__number:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:1px}.color-mixing-modal__hex{box-sizing:border-box;width:100%;font-family:var(--mono);border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;padding:.45rem .55rem;font-size:.88rem}.color-mixing-modal__hex:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:1px}.color-mixing-modal__presets-label{margin:.25rem 0 0}.color-mixing-modal__presets{flex-wrap:wrap;gap:.4rem;display:flex}.color-mixing-modal__preset{border:1px solid color-mix(in srgb, var(--text-h) 18%, var(--border));cursor:pointer;border-radius:7px;flex-shrink:0;width:1.85rem;height:1.85rem;padding:0;box-shadow:0 1px 2px #0000000f}.color-mixing-modal__preset:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.suggest-edits-modal__email{box-sizing:border-box;width:100%;font-family:var(--sans);border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;padding:.65rem .75rem;font-size:.9rem;line-height:1.45}.suggest-edits-modal__email:focus{outline:2px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:1px}.suggest-edits-modal__email:disabled{opacity:.65}.suggest-edits-modal__feedback{box-sizing:border-box;resize:vertical;width:100%;min-height:5rem;font-family:var(--sans);border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;padding:.6rem .75rem;font-size:.88rem;line-height:1.45}.suggest-edits-modal__feedback:focus{outline:2px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:1px}.suggest-edits-modal__feedback:disabled{opacity:.65}.app-sim{--sim-gb-darkest:#162015;--sim-gb-dark:#2e4a34;--sim-gb-mid:#7f9a73;--sim-gb-light:#d8e6cb;--sim-gb-bg:#f5faef;background:linear-gradient(0deg, color-mix(in srgb, var(--sim-gb-dark) 8%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--sim-gb-dark) 8%, transparent) 1px, transparent 1px), linear-gradient(180deg, color-mix(in srgb, var(--sim-gb-bg) 78%, #f3f9dc), color-mix(in srgb, var(--sim-gb-light) 72%, #edf6cd));height:100%;image-rendering:pixelated;background-size:6px 6px,6px 6px,100% 100%;align-content:start;gap:.75rem;padding:.85rem;font-family:VT323,Courier New,monospace;display:grid;overflow:auto}.app-sim-stage{min-height:540px;display:block}.app-sim-map{border:2px solid var(--sim-gb-darkest);background:linear-gradient(180deg, color-mix(in srgb, var(--sim-gb-bg) 85%, #f0f8d6), color-mix(in srgb, var(--sim-gb-light) 70%, #d6e8a6));box-shadow:inset 0 0 0 2px var(--sim-gb-mid), inset 0 0 0 3px var(--sim-gb-darkest), 4px 4px 0 color-mix(in srgb, var(--sim-gb-darkest) 22%, transparent);border-radius:0;min-height:540px;position:relative;overflow:hidden}.app-sim-track{display:none}.app-sim-zone h4{letter-spacing:.02em;text-transform:uppercase;color:var(--sim-gb-darkest);text-shadow:1px 1px 0 color-mix(in srgb, var(--sim-gb-bg) 80%, transparent);margin:0 0 .45rem;font-size:.86rem}.app-sim-zone__items{flex-wrap:wrap;align-content:flex-start;gap:.4rem;max-height:calc(100% - 1.8rem);padding-right:.2rem;display:flex;overflow:auto}.app-sim-bench-cell{align-content:start;gap:.25rem;display:grid}.app-sim-hosted-vessels{flex-wrap:wrap;gap:.25rem;padding-left:.2rem;display:flex}.app-sim-hosted-feeds{flex-wrap:wrap;gap:.2rem;padding-left:.15rem;display:flex}.app-sim-vessel-stack{align-content:start;gap:.28rem;width:100%;min-width:0;display:grid}.app-sim-zone--table .app-sim-vessel-stack{width:100%}.app-sim-hosted-vessels .app-sim-vessel-stack--hosted{flex:none;width:auto;min-width:fit-content;max-width:100%;display:grid}.app-sim-vessel-stack__label{color:var(--sim-gb-darkest);text-align:center;max-width:100%;font-size:.8rem;font-weight:700;line-height:1.15}.app-sim-item.app-sim-vessel-stack__frame{box-sizing:border-box;flex-wrap:wrap;place-content:center;align-items:center;gap:.28rem;width:100%;min-width:0;padding:.38rem .42rem;display:flex}.app-sim-hosted-feeds--vessel-frame{flex-wrap:wrap;justify-content:center;align-items:center;gap:.28rem;width:100%;min-width:0;padding:0;display:flex}.app-sim-vessel-stack--hosted .app-sim-vessel-stack__frame{width:auto;min-width:100%;max-width:100%;min-height:34px;padding:.2rem .24rem}.app-sim-vessel-stack--hosted .app-sim-vessel-stack__label{text-align:center}.app-sim-vessel-stack--hosted .app-sim-item--vessel-shell.app-sim-vessel-stack__frame{min-height:34px}.app-sim-vessel-stack--hosted .app-sim-hosted-feeds--vessel-frame{flex-wrap:wrap;justify-content:center;width:auto;max-width:100%}.app-sim-zone{border:2px solid var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-bg) 82%, #f7fbe8);min-height:145px;box-shadow:inset 0 0 0 2px var(--sim-gb-mid), 4px 4px 0 color-mix(in srgb, var(--sim-gb-darkest) 25%, transparent);border-radius:0;padding:.55rem;position:absolute}.app-sim-bench-toolbar{justify-content:space-between;align-items:center;gap:.4rem;min-width:0;margin:0 0 .45rem;display:flex}.app-sim-zone--bench .app-sim-bench-toolbar h4{flex:1;min-width:0;margin:0}.app-sim-zone--bench .app-sim-bench-label-toggle{flex-shrink:0;padding:.22rem .55rem;font-size:.68rem;line-height:1.25}.app-sim-zone--shelf{background:linear-gradient(180deg, color-mix(in srgb, var(--sim-gb-bg) 90%, #f9fce8), color-mix(in srgb, var(--sim-gb-light) 76%, #dcecb5));width:18%;min-height:0;box-shadow:inset 0 0 0 2px var(--sim-gb-mid), inset 0 -62px 0 color-mix(in srgb, var(--sim-gb-mid) 28%, transparent), inset 0 -132px 0 color-mix(in srgb, var(--sim-gb-mid) 22%, transparent), inset 0 -202px 0 color-mix(in srgb, var(--sim-gb-mid) 18%, transparent);border-radius:0;top:10%;bottom:92px;left:.8%}.app-sim-zone--shelf .app-sim-zone__items{flex-flow:column;align-items:stretch;gap:.55rem;max-height:360px;padding-right:.2rem;overflow:auto}.app-sim-zone--shelf .app-sim-item{width:100%;min-width:0}.app-sim-zone--shelf .app-sim-item--circle{border-radius:0;min-height:56px}.app-sim-zone--table{background:linear-gradient(180deg, color-mix(in srgb, var(--sim-gb-bg) 90%, #f8fce5), color-mix(in srgb, var(--sim-gb-light) 74%, #d8eaa8));width:18%;min-height:0;box-shadow:inset 0 0 0 2px var(--sim-gb-mid), inset 0 -62px 0 color-mix(in srgb, var(--sim-gb-mid) 26%, transparent), inset 0 -132px 0 color-mix(in srgb, var(--sim-gb-mid) 20%, transparent), inset 0 -202px 0 color-mix(in srgb, var(--sim-gb-mid) 16%, transparent);border-radius:0;top:12%;bottom:92px;right:.8%}.app-sim-zone--table .app-sim-zone__items{flex-flow:column;align-items:stretch;gap:.55rem;max-height:360px;padding-right:.2rem;overflow:auto}.app-sim-zone--table>.app-sim-zone__items>.app-sim-bench-cell>.app-sim-item{width:100%;min-width:0}.app-sim-zone--table .app-sim-item--hosted-feed,.app-sim-zone--bench .app-sim-item--hosted-feed{width:auto}.app-sim-zone--bench .app-sim-item--hosted-feed{width:fit-content;min-width:0;max-width:100%}.app-sim-zone--bench{width:auto;min-height:0;inset:2% 20% 64px}.app-sim-zone--cleaning{z-index:3;background:linear-gradient(180deg, color-mix(in srgb, var(--sim-gb-bg) 88%, #f5fae1), color-mix(in srgb, var(--sim-gb-light) 74%, #d8eba9));width:auto;min-height:58px;max-height:86px;padding:.45rem .55rem;inset:auto 18% 1.2%}.app-sim-zone--cleaning-active{border-color:var(--sim-gb-darkest);box-shadow:inset 0 0 0 2px var(--sim-gb-dark), 0 0 0 3px color-mix(in srgb, var(--sim-gb-dark) 36%, transparent)}.app-sim-zone--cleaning .app-sim-zone__items{flex-flow:row;align-items:center;gap:.45rem;max-height:52px;padding-bottom:.1rem;overflow:auto hidden}.app-sim-zone--bench .app-sim-zone__items{flex-flow:wrap;align-content:flex-start;align-items:flex-start;gap:.4rem .5rem;max-height:250px;overflow:hidden auto}.app-sim-zone--bench .app-sim-bench-cell{flex:0 0 calc(50% - .3rem);min-width:0}.app-sim-item{min-width:78px;min-height:50px;color:var(--sim-gb-darkest);background:linear-gradient(180deg, color-mix(in srgb, var(--sim-gb-bg) 88%, #f9fce8), color-mix(in srgb, var(--sim-gb-light) 74%, #d2e49a));border:2px solid var(--sim-gb-darkest);text-align:center;box-shadow:inset 0 0 0 1px var(--sim-gb-mid), 2px 2px 0 color-mix(in srgb, var(--sim-gb-darkest) 25%, transparent);text-transform:none;letter-spacing:.01em;border-radius:0;justify-content:center;align-items:center;padding:.25rem;font-size:.9rem;display:inline-flex;position:relative}.app-sim-item span{z-index:1;overflow-wrap:anywhere;max-width:100%;font-weight:700;position:relative}.app-sim-item__caption-stack{flex-direction:column;justify-content:center;align-items:center;gap:.12rem;max-width:100%;line-height:1.12;display:inline-flex}.app-sim-item__caption-stack .app-sim-item__text-primary{font-weight:700}.app-sim-item span.app-sim-item__text-units,.app-sim-item__caption-stack .app-sim-item__text-units{max-width:100%;font-size:.8em;font-weight:400;line-height:1.15;display:block}.app-sim-item--active-move{background:linear-gradient(180deg, var(--sim-gb-dark), color-mix(in srgb, var(--sim-gb-darkest) 88%, #000));color:var(--sim-gb-bg);border-color:var(--sim-gb-darkest);box-shadow:inset 0 0 0 1px var(--sim-gb-mid), 0 0 0 3px color-mix(in srgb, var(--sim-gb-dark) 35%, transparent)}.app-sim-item--active-target{background:linear-gradient(180deg, var(--sim-gb-dark), color-mix(in srgb, var(--sim-gb-darkest) 85%, #050806));color:var(--sim-gb-bg);border-color:var(--sim-gb-darkest);box-shadow:inset 0 0 0 1px var(--sim-gb-mid), 0 0 0 3px color-mix(in srgb, var(--sim-gb-darkest) 25%, transparent)}.app-sim-zone--bench .app-sim-item--rect.app-sim-item--active-move,.app-sim-zone--bench .app-sim-item--rect.app-sim-item--active-target{color:var(--sim-gb-darkest)}.app-sim-item--circle{border-radius:0;min-width:70px;min-height:70px}.app-sim-item--vessel-shell{background:color-mix(in srgb, var(--sim-gb-bg) 64%, transparent);min-width:88px;min-height:52px;box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--sim-gb-dark) 42%, transparent);border-style:solid;border-width:3px;border-radius:0}.app-sim-item--vessel-shell.app-sim-item--active-move,.app-sim-item--vessel-shell.app-sim-item--active-target{background:color-mix(in srgb, var(--sim-gb-dark) 25%, transparent);color:var(--sim-gb-darkest);border-color:var(--sim-gb-darkest);box-shadow:inset 0 0 0 2px var(--sim-gb-mid), 0 0 0 3px color-mix(in srgb, var(--sim-gb-dark) 28%, transparent)}.app-sim-item--rect{background-image:repeating-linear-gradient(45deg, color-mix(in srgb, var(--sim-gb-dark) 24%, transparent) 0 2px, transparent 2px 6px);background-size:8px 8px;border-radius:0;min-width:104px;min-height:58px}.app-sim-item--rect.app-sim-item--active-move,.app-sim-item--rect.app-sim-item--active-target{background-image:none}.app-sim-item--hosted{background:color-mix(in srgb, var(--sim-gb-light) 78%, #d7eaa5);border-color:var(--sim-gb-darkest);min-width:72px;min-height:42px;font-size:.8rem}.app-sim-item--vessel{min-width:82px}.app-sim-item--hosted-feed{min-width:52px;min-height:28px;padding:.12rem .28rem;font-size:.74rem}.app-sim-item--hosted-feed .app-sim-item__text-units{font-size:.75em}.app-sim-actor{z-index:20;image-rendering:pixelated;justify-items:center;gap:.2rem;transition:left .9s cubic-bezier(.2,.8,.2,1),top .9s cubic-bezier(.2,.8,.2,1);display:grid;position:absolute;transform:translate(-50%,-50%)}.app-sim-cloud{background:color-mix(in srgb, var(--sim-gb-bg) 88%, #f8fce7);border:2px solid var(--sim-gb-darkest);color:var(--sim-gb-darkest);text-align:center;max-width:230px;box-shadow:inset 0 0 0 1px var(--sim-gb-mid), 3px 3px 0 color-mix(in srgb, var(--sim-gb-darkest) 24%, transparent);text-transform:none;border-radius:0;padding:.4rem .55rem;font-size:.82rem;line-height:1.3}.app-sim-cloud-ellipsis{align-items:baseline;min-width:1.8ch;margin-left:.12em;display:inline-flex}.app-sim-cloud-ellipsis>span{opacity:0;animation:1.2s step-end infinite sim-cloud-dots}.app-sim-move-icon{vertical-align:text-bottom;width:.86rem;height:.86rem;color:var(--sim-gb-darkest);flex-shrink:0;margin-right:.28rem}.app-sim-cloud-ellipsis>span:nth-child(2){animation-delay:.2s}.app-sim-cloud-ellipsis>span:nth-child(3){animation-delay:.4s}@keyframes sim-cloud-dots{0%,19%{opacity:0}20%,to{opacity:1}}.app-sim-thought-trail{transform-origin:bottom;pointer-events:none;justify-self:center;place-items:end center;width:36px;height:24px;margin-top:-.16rem;margin-bottom:-.34rem;display:grid;position:relative;transform:rotate(-45deg)}.app-sim-thought-dot{border:2px solid var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-bg) 96%, #fff);box-shadow:inset 0 0 0 1px var(--sim-gb-mid);opacity:0;border-radius:2px;animation:1.45s steps(5,end) infinite sim-thought-rise;position:absolute;left:50%;transform:translate(-50%,5px)scale(.7)}.app-sim-thought-dot--sm{width:4px;height:4px;animation-delay:0s;bottom:0}.app-sim-thought-dot--md{width:6px;height:6px;animation-delay:.21s;bottom:7px}.app-sim-thought-dot--lg{width:8px;height:8px;animation-delay:.42s;bottom:14px}@keyframes sim-thought-rise{0%{opacity:0;transform:translate(-50%,5px)scale(.7)}16%{opacity:.95;transform:translate(-62%,1px)scale(.82)}58%{opacity:.92;transform:translate(-86%,-6px)scale(1)}to{opacity:0;transform:translate(-116%,-13px)scale(1.05)}}.app-sim-character{width:72px;height:96px;position:relative}.app-sim--fun .app-sim-thought-trail{z-index:0;position:absolute;top:-14px;left:50%}.app-sim--fun .app-sim-cloud{z-index:3;position:relative}.app-sim--fun .app-sim-character{z-index:1}.app-sim-character-svg{width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;filter:drop-shadow(2px 3px 0 color-mix(in srgb, var(--sim-gb-darkest) 24%, transparent));display:block}.app-sim-actor--moving .app-sim-cloud{border-color:var(--sim-gb-darkest);box-shadow:inset 0 0 0 1px var(--sim-gb-mid), 4px 4px 0 color-mix(in srgb, var(--sim-gb-darkest) 30%, transparent)}.app-sim-actor--moving .app-sim-thought-dot{animation-duration:1.2s}.app-sim-finale{z-index:26;pointer-events:none;animation:.52s ease-out sim-finale-fade-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.app-sim-finale__clapper{image-rendering:pixelated;filter:drop-shadow(0 8px 18px #00000038);justify-items:center;display:grid}.app-sim-finale__clapper-top{border:2px solid var(--sim-gb-darkest);background:repeating-linear-gradient(-45deg, var(--sim-gb-darkest) 0 10px, color-mix(in srgb, var(--sim-gb-light) 82%, #fff) 10px 20px);transform-origin:0 100%;border-bottom:none;border-radius:0;width:150px;height:24px;animation:1.35s ease-in-out infinite sim-finale-clap}.app-sim-finale__clapper-body{border:2px solid var(--sim-gb-darkest);background:linear-gradient(180deg, color-mix(in srgb, var(--sim-gb-bg) 90%, #fff), color-mix(in srgb, var(--sim-gb-light) 78%, #e8e8e8));width:150px;min-height:76px;color:var(--sim-gb-darkest);letter-spacing:.04em;text-transform:uppercase;text-shadow:1px 1px 0 color-mix(in srgb, var(--sim-gb-light) 30%, transparent);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--sim-gb-mid) 42%, transparent), 4px 4px 0 color-mix(in srgb, var(--sim-gb-darkest) 22%, transparent);border-radius:0;place-items:center;font-family:VT323,Times New Roman,serif;font-size:1.55rem;display:grid}.app-sim--fun .app-sim-finale__clapper-body{letter-spacing:.02em;text-transform:none;font-family:Snell Roundhand,Apple Chancery,Brush Script MT,Lucida Handwriting,cursive;font-size:2rem;font-weight:600}.app-sim--normal .app-sim-finale__clapper-top{background:repeating-linear-gradient(-45deg,#111 0 10px,#f3f4f6 10px 20px);border-color:#111}.app-sim--normal .app-sim-finale__clapper-body{color:#111;text-shadow:1px 1px #ffffff73;background:linear-gradient(#f7f7f7,#e4e4e4);border-color:#111;box-shadow:inset 0 0 0 2px #11111124,4px 4px #1113}@keyframes sim-finale-fade-in{0%{opacity:0;transform:translate(-50%,-44%)scale(.92)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes sim-finale-clap{0%,45%,to{transform:rotate(0)}20%{transform:rotate(-18deg)}}@media (prefers-reduced-motion:reduce){.app-sim-thought-dot{opacity:.82;animation:none;transform:none}.app-sim-finale,.app-sim-finale__clapper-top{animation:none}}.app-sim-carry{color:var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-light) 74%, #d6e8a8);border:2px solid var(--sim-gb-darkest);text-transform:none;border-radius:0;padding:.18rem .45rem;font-size:.8rem;font-weight:700}.app-sim-steps-panel{border:2px solid var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-bg) 88%, #f6fae4);max-height:360px;box-shadow:inset 0 0 0 1px var(--sim-gb-mid);border-radius:0;padding:.55rem;overflow:auto}.app-sim-steps-panel__head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.45rem;display:flex}.app-sim-steps-panel__head h4{text-transform:none;color:var(--sim-gb-darkest);margin:0;font-size:.84rem}.app-sim-steps-panel__view-toggle{gap:.3rem;display:inline-flex}.app-sim-steps-panel__view-btn{padding:.14rem .45rem;font-size:.72rem}.app-sim-steps-panel__view-btn--active{outline:2px solid color-mix(in srgb, var(--sim-gb-darkest) 25%, transparent);outline-offset:1px;font-weight:700}.app-sim-steps{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.app-sim-step{border:2px solid color-mix(in srgb, var(--sim-gb-darkest) 66%, var(--sim-gb-mid));color:var(--sim-gb-dark);text-transform:none;border-radius:0;padding:.45rem .55rem;font-size:.82rem;line-height:1.3}.app-sim-step--active{border-color:var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-light) 86%, #d9eaa8);color:var(--sim-gb-darkest)}.app-sim-step--done{color:color-mix(in srgb, var(--sim-gb-dark) 65%, var(--sim-gb-mid))}.app-sim-controls{border:2px solid var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-bg) 85%, #f7fbe6);box-shadow:inset 0 0 0 1px var(--sim-gb-mid);border-radius:0;grid-template-columns:auto auto auto auto auto minmax(220px,1fr) auto auto;place-items:center start;gap:.6rem;padding:.5rem .6rem;display:grid}.app-sim-theme-toggle{white-space:nowrap;min-height:1.9rem;padding:.1rem .55rem;font-size:.78rem}.app-sim--fun .app-sim-theme-toggle,.app-sim--fun .app-sim-zone--bench .app-sim-bench-label-toggle,.app-sim--fun .app-sim-steps-panel__view-btn,.app-sim--fun .app-sim-moves__print{border:2px solid var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-light) 86%, #ecf4cf);color:var(--sim-gb-darkest);box-shadow:2px 2px 0 color-mix(in srgb, var(--sim-gb-darkest) 22%, transparent);text-transform:uppercase;letter-spacing:.02em;border-radius:0}.app-sim--fun .app-sim-theme-toggle:hover,.app-sim--fun .app-sim-zone--bench .app-sim-bench-label-toggle:hover,.app-sim--fun .app-sim-steps-panel__view-btn:hover,.app-sim--fun .app-sim-moves__print:hover{background:color-mix(in srgb, var(--sim-gb-light) 92%, #f6fbe6)}.app-sim--fun .app-sim-theme-toggle:active,.app-sim--fun .app-sim-zone--bench .app-sim-bench-label-toggle:active,.app-sim--fun .app-sim-steps-panel__view-btn:active,.app-sim--fun .app-sim-moves__print:active{box-shadow:1px 1px 0 color-mix(in srgb, var(--sim-gb-darkest) 20%, transparent);transform:translate(1px,1px)}.app-sim--fun .app-sim-steps-panel__view-btn--active{background:color-mix(in srgb, var(--sim-gb-dark) 18%, var(--sim-gb-light));outline:none}.app-sim-ctrl-btn{border:2px solid var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-light) 88%, #e2f0b9);width:1.9rem;height:1.9rem;color:var(--sim-gb-darkest);box-shadow:2px 2px 0 color-mix(in srgb, var(--sim-gb-darkest) 24%, transparent);border-radius:0;justify-content:center;align-items:center;padding:.12rem .28rem;font-size:.9rem;line-height:1;display:inline-flex}.app-sim-slider{width:min(100%,460px);min-width:260px;height:1.15rem}.app-sim--fun .app-sim-slider{appearance:none;background:0 0;height:1.1rem}.app-sim--fun .app-sim-slider::-webkit-slider-runnable-track{border:2px solid var(--sim-gb-darkest);background:linear-gradient(180deg, var(--sim-gb-bg), var(--sim-gb-light));border-radius:0;height:.52rem}.app-sim--fun .app-sim-slider::-webkit-slider-thumb{-webkit-appearance:none;border:2px solid var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-light) 92%, #fff);width:.86rem;height:1rem;box-shadow:1px 1px 0 color-mix(in srgb, var(--sim-gb-darkest) 26%, transparent);border-radius:0;margin-top:-.34rem}.app-sim--fun .app-sim-slider::-moz-range-track{border:2px solid var(--sim-gb-darkest);background:linear-gradient(180deg, var(--sim-gb-bg), var(--sim-gb-light));border-radius:0;height:.52rem}.app-sim--fun .app-sim-slider::-moz-range-thumb{border:2px solid var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-light) 92%, #fff);width:.86rem;height:1rem;box-shadow:1px 1px 0 color-mix(in srgb, var(--sim-gb-darkest) 26%, transparent);border-radius:0}.app-sim-controls__step{color:var(--sim-gb-dark);text-transform:none;font-size:.82rem}.app-sim-controls__time-input{color:var(--sim-gb-dark);white-space:nowrap;text-transform:none;align-items:center;gap:.4rem;font-size:.82rem;display:inline-flex}.app-sim-controls__time-input input{border:2px solid var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-bg) 92%, #f9fce9);width:4.6rem;color:var(--sim-gb-darkest);border-radius:0;padding:.2rem .35rem;font-family:inherit;font-size:.82rem}.app-sim-moves{border:2px solid var(--sim-gb-darkest);background:color-mix(in srgb, var(--sim-gb-bg) 90%, #f6fbe3);box-shadow:inset 0 0 0 1px var(--sim-gb-mid);border-radius:0;padding:.65rem}.app-sim-moves__head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.4rem;display:flex}.app-sim-moves h4{text-transform:none;color:var(--sim-gb-darkest);margin:0;font-size:.84rem}.app-sim-moves__print{padding:.1rem .45rem;font-size:.75rem}.app-sim-moves p,.app-sim-moves ul{color:var(--sim-gb-dark);text-transform:none;margin:0;font-size:.82rem;line-height:1.35}.app-sim-moves ul{padding-left:1rem}.app-sim-moves__list{max-height:5rem;overflow-y:auto}@media (width<=980px){.app-sim-stage{min-height:0}.app-sim-controls{grid-template-columns:1fr;justify-items:start}.app-sim-slider{min-width:0}.app-sim-map{min-height:640px}.app-sim-zone--shelf,.app-sim-zone--table,.app-sim-zone--bench,.app-sim-zone--cleaning{width:auto;min-height:130px;max-height:none;margin:.45rem;position:static}.app-sim-zone--cleaning{min-height:72px}.app-sim-zone--cleaning .app-sim-zone__items{flex-wrap:wrap;max-height:none;overflow:visible}.app-sim-map{align-content:start;gap:.55rem;padding-top:.35rem;display:grid}.app-sim-track{display:none}.app-sim-actor{margin:.2rem auto .6rem;transition:none;position:static;transform:none}}.app-sim--normal{background:radial-gradient(circle at 12% 14%, color-mix(in srgb, var(--accent-soft) 65%, transparent), transparent 40%), radial-gradient(circle at 92% 83%, color-mix(in srgb, var(--accent-soft) 40%, transparent), transparent 45%), var(--bg);font-family:var(--sans);image-rendering:auto}.app-sim--normal .app-sim-map{border:1px solid color-mix(in srgb, var(--accent) 24%, var(--border));background:linear-gradient(135deg, color-mix(in srgb, var(--surface) 92%, var(--bg)), color-mix(in srgb, var(--surface) 75%, var(--bg)));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent-soft) 45%, transparent), 0 16px 38px #0000001a;border-radius:14px}.app-sim--normal .app-sim-zone h4{letter-spacing:.04em;color:var(--text-muted);text-shadow:none;font-size:.74rem}.app-sim--normal .app-sim-vessel-stack__label{color:var(--text-h);font-size:.62rem;font-weight:600}.app-sim--normal .app-sim-zone{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 85%, var(--bg));box-shadow:none;border-radius:12px}.app-sim--normal .app-sim-zone--shelf,.app-sim--normal .app-sim-zone--table{border-radius:8px}.app-sim--normal .app-sim-zone--shelf{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 92%, var(--bg)), color-mix(in srgb, var(--surface) 80%, var(--bg)));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border) 75%, transparent), inset 0 -62px 0 color-mix(in srgb, var(--border) 28%, transparent), inset 0 -132px 0 color-mix(in srgb, var(--border) 22%, transparent), inset 0 -202px 0 color-mix(in srgb, var(--border) 18%, transparent)}.app-sim--normal .app-sim-zone--table{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 90%, var(--bg)), color-mix(in srgb, var(--surface) 78%, var(--bg)));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border) 75%, transparent), inset 0 -62px 0 color-mix(in srgb, var(--border) 26%, transparent), inset 0 -132px 0 color-mix(in srgb, var(--border) 20%, transparent), inset 0 -202px 0 color-mix(in srgb, var(--border) 16%, transparent)}.app-sim--normal .app-sim-zone--cleaning{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 88%, var(--bg)), color-mix(in srgb, var(--surface) 76%, var(--bg)))}.app-sim--normal .app-sim-zone--cleaning-active{border-color:color-mix(in srgb, var(--accent) 42%, var(--border));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent-soft) 55%, transparent), 0 0 0 2px color-mix(in srgb, var(--accent) 22%, transparent)}.app-sim--normal .app-sim-item{color:var(--text-h);background:color-mix(in srgb, var(--accent-soft) 56%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 25%, var(--border));box-shadow:none;text-transform:none;border-radius:0;font-size:.72rem}.app-sim--normal .app-sim-item span.app-sim-item__text-units,.app-sim--normal .app-sim-item__caption-stack .app-sim-item__text-units{font-size:.68em}.app-sim--normal .app-sim-item--active-move{background:#111827;background:color-mix(in srgb, var(--accent) 38%, #0f172a);color:#f9fafb;border-color:color-mix(in srgb, #fff 22%, var(--accent));box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 28%, #0f172a)}.app-sim--normal .app-sim-item--active-target{background:#111827;background:color-mix(in srgb, #111827 88%, var(--accent));color:#f9fafb;border-color:color-mix(in srgb, #fff 20%, var(--accent));box-shadow:0 0 0 2px #11182738}.app-sim--normal .app-sim-zone--bench .app-sim-item--rect.app-sim-item--active-move,.app-sim--normal .app-sim-zone--bench .app-sim-item--rect.app-sim-item--active-target{color:#f9fafb}.app-sim--normal .app-sim-item--circle{border-radius:999px}.app-sim--normal .app-sim-item--vessel-shell{box-shadow:none;background:0 0;border-radius:14px}.app-sim--normal .app-sim-item--vessel-shell.app-sim-item--active-move,.app-sim--normal .app-sim-item--vessel-shell.app-sim-item--active-target{color:var(--text-h);border-color:color-mix(in srgb, #fff 24%, var(--accent));box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 22%, transparent);background:0 0}.app-sim--normal .app-sim-item--rect{background-image:repeating-linear-gradient(135deg, color-mix(in srgb, var(--accent) 12%, transparent) 0 2px, transparent 2px 8px);background-size:10px 10px;border-radius:10px}.app-sim--normal .app-sim-item--hosted{background:color-mix(in srgb, var(--accent-soft) 72%, var(--surface));border-color:color-mix(in srgb, var(--accent) 45%, var(--border));font-size:.64rem}.app-sim--normal .app-sim-item--hosted-feed{font-size:.58rem}.app-sim--normal .app-sim-actor{image-rendering:auto}.app-sim--normal .app-sim-cloud{background:var(--surface);border:1px solid var(--border);color:var(--text-h);border-radius:14px;font-size:.75rem;box-shadow:0 8px 24px #0000001f}.app-sim--normal .app-sim-cloud:before,.app-sim--normal .app-sim-cloud:after,.app-sim--normal .app-sim-thought-trail,.app-sim--normal .app-sim-character-svg,.app-sim--normal .app-sim-move-icon{display:none}.app-sim--normal .app-sim-character{filter:drop-shadow(0 4px 6px #0003);width:52px;height:88px}.app-sim--normal .app-sim-character__head{background:#ffd9b8;border:1px solid #0000002e;border-radius:999px;width:20px;height:20px;position:absolute;top:0;left:50%;transform:translate(-50%)}.app-sim--normal .app-sim-character__torso{background:color-mix(in srgb, var(--accent) 72%, #fff);border:1px solid #0000001f;border-radius:8px;width:24px;height:36px;position:absolute;top:19px;left:50%;transform:translate(-50%)}.app-sim--normal .app-sim-character__arm{background:color-mix(in srgb, var(--accent) 35%, #fff);transform-origin:top;border-radius:8px;width:7px;height:26px;position:absolute;top:24px}.app-sim--normal .app-sim-character__arm--left{left:10px;transform:rotate(14deg)}.app-sim--normal .app-sim-character__arm--right{right:10px;transform:rotate(-14deg)}.app-sim--normal .app-sim-character__leg{background:color-mix(in srgb, #1f2937 78%, var(--accent));border-radius:8px;width:8px;height:31px;position:absolute;top:53px}.app-sim--normal .app-sim-character__leg--left{left:17px}.app-sim--normal .app-sim-character__leg--right{right:17px}.app-sim--normal .app-sim-actor--moving .app-sim-cloud{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));box-shadow:0 10px 28px #00000029}.app-sim--normal .app-sim-carry{color:var(--text-h);background:color-mix(in srgb, var(--accent-soft) 70%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));border-radius:999px;font-size:.68rem}.app-sim--normal .app-sim-steps-panel{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 90%, var(--bg));box-shadow:none;border-radius:12px}.app-sim--normal .app-sim-steps-panel__view-btn{font-size:.7rem}.app-sim--normal .app-sim-steps-panel__head h4{color:var(--text-h);font-size:.78rem}.app-sim--normal .app-sim-step{border:1px solid var(--border);color:var(--text-muted);border-radius:8px;font-size:.76rem}.app-sim--normal .app-sim-step--active{border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 58%, var(--surface));color:var(--text-h)}.app-sim--normal .app-sim-step--done{color:color-mix(in srgb, var(--text-muted) 82%, var(--text-h))}.app-sim--normal .app-sim-controls{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 85%, var(--bg));box-shadow:none;border-radius:12px}.app-sim--normal .app-sim-ctrl-btn{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, var(--bg));width:1.9rem;height:1.9rem;color:var(--text-h);box-shadow:none;border-radius:8px;justify-content:center;align-items:center;padding:.12rem .28rem;font-size:.82rem;line-height:1;display:inline-flex}.app-sim--normal .app-sim-controls__step,.app-sim--normal .app-sim-controls__time-input{color:var(--text-muted);font-size:.78rem}.app-sim--normal .app-sim-controls__time-input input{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;font-size:.78rem}.app-sim--normal .app-sim-moves{border:1px solid var(--border);background:var(--surface);box-shadow:none;border-radius:10px}.app-sim--normal .app-sim-moves h4{color:var(--text-h);font-size:.78rem}.app-sim--normal .app-sim-moves p,.app-sim--normal .app-sim-moves ul{color:var(--text-muted);font-size:.78rem}.auth-page{background:var(--bg);place-items:center;min-height:100svh;padding:1.25rem;display:grid}.library-page{max-width:none;margin:0;padding:1rem 1.25rem 2rem}.library-page__header{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1rem;display:flex}.library-page__title{margin:0;font-size:1.6rem}.library-page__subtitle{opacity:.85;margin:.35rem 0 0}.library-page__actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;width:min(100%,52rem);display:flex}.library-page__search{border:1px solid var(--border);background:var(--surface);width:100%;min-width:12rem;max-width:none;color:var(--text-h);font:inherit;border-radius:8px;padding:.42rem .55rem}.library-page__search-wrap{flex:1;min-width:16rem}.library-page__action-buttons{flex-wrap:nowrap;justify-content:flex-end;gap:.45rem;display:flex}.library-shelf{border:1px solid var(--panel-border);background:var(--panel-bg);border-radius:12px;overflow:auto}.library-shelf__table{border-collapse:collapse;width:100%;min-width:760px}.library-shelf__table th,.library-shelf__table td{text-align:left;border-bottom:1px solid var(--panel-border);padding:.75rem .85rem;font-size:.95rem}.library-shelf__table thead th{background:var(--surface-2);z-index:1;position:sticky;top:0}.library-shelf__sort-btn{appearance:none;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-weight:600}.library-shelf__sort-btn:hover{text-decoration:underline}.library-shelf__table tbody tr{cursor:pointer}.library-shelf__table tbody tr:hover{background:color-mix(in oklab, var(--accent) 8%, transparent)}.library-shelf__row--selected{background:color-mix(in oklab, var(--accent) 16%, transparent)}.library-page__content{grid-template-columns:minmax(0,1fr) 30rem;align-items:stretch;gap:.7rem;display:grid}.library-preview{border:1px solid var(--panel-border);background:var(--panel-bg);border-radius:12px;flex-direction:column;min-height:26rem;display:flex;overflow:hidden}.library-preview__head{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--panel-border);padding:.55rem .7rem;font-size:.78rem;font-weight:700}.library-preview__content{white-space:pre-wrap;word-break:break-word;font-size:.82rem;line-height:1.4;font-family:var(--mono);color:var(--text-h);margin:0;padding:.7rem;overflow:auto}.library-preview__empty,.library-preview__error{color:var(--text-muted);margin:0;padding:.7rem;font-size:.9rem}.library-preview__error{color:#c13d3d}@media (width<=1100px){.library-page__content{grid-template-columns:minmax(0,1fr)}.library-preview{min-height:16rem}}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;gap:.6rem;width:min(420px,100%);padding:1rem;display:grid}.auth-title{color:var(--text-h);margin:0;font-size:1.4rem}.auth-subtitle{color:var(--text-muted);margin:0}.auth-label{color:var(--text-h);font-size:.85rem}.auth-input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:8px;padding:.55rem .65rem}.auth-button,.auth-link,.auth-session-bar__button{border:1px solid var(--border);font:inherit;cursor:pointer;border-radius:8px;padding:.5rem .7rem}.auth-button{background:var(--accent);color:#fff;border-color:var(--accent)}.auth-button:disabled{opacity:.7;cursor:wait}.auth-link{color:var(--text);background:0 0}.auth-error{color:var(--danger);margin:0}.auth-message{color:var(--validation-ok);margin:0}.auth-oauth-buttons{gap:.45rem;display:grid}.auth-provider-label{justify-content:center;align-items:center;gap:.45rem;display:inline-flex}.auth-provider-icon{flex:none;width:1rem;height:1rem}.auth-session-bar{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem 1.25rem;display:flex}.auth-session-bar__left{align-items:center;gap:.75rem;min-width:0;display:inline-flex}.auth-session-bar__brand{color:var(--text-h);align-items:center;gap:.4rem;font-weight:700;display:inline-flex}.auth-session-bar__brand-icon{display:block}.auth-session-bar__user{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.auth-session-bar__center{flex:1;justify-content:center;align-items:center;display:inline-flex}.auth-session-bar__actions{align-items:center;gap:.5rem;display:inline-flex}.auth-nav-segment{border-bottom:1px solid var(--border);align-items:center;gap:.55rem;padding-bottom:.1rem;display:inline-flex}.auth-nav-segment__btn{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:.4rem .75rem .5rem;font-weight:600;transition:color .16s;position:relative}.auth-nav-segment__btn:hover{color:var(--text-h)}.auth-nav-segment__btn:after{content:"";background:0 0;border-radius:2px;height:2px;transition:background-color .16s;position:absolute;bottom:-.22rem;left:.35rem;right:.35rem}.auth-nav-segment__btn--active{color:var(--text-h)}.auth-nav-segment__btn--active:after{background:var(--accent)}.auth-session-bar__button{color:var(--text);background:0 0}.auth-session-bar__button--active{border-color:color-mix(in srgb, var(--accent) 36%, var(--border));background:color-mix(in srgb, var(--accent-soft) 72%, var(--surface))}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}
