:root{--bg: #f7f4ef;--ink: #1a1a1a;--line: #d9d2c5;--card: #ffffff;--accent: #111111;--muted: #6b655c;font-family:Segoe UI,system-ui,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}.shell{height:100vh;max-height:100vh;display:flex;flex-direction:column;overflow:hidden}.layout{display:grid;grid-template-columns:220px 1fr;flex:1;min-height:0;overflow:hidden}.side{border-right:1px solid var(--line);padding:1rem .9rem;background:#f1ebe3;display:flex;flex-direction:column;gap:.75rem;overflow:auto;min-height:0}.side-brand{display:flex;align-items:center;gap:.65rem;padding:.2rem .35rem .85rem;margin:0 0 .15rem;border-bottom:1px solid var(--line);border-radius:0;color:inherit;text-decoration:none;min-width:0}.side-brand:hover,.side a.side-brand:hover,.side a.side-brand.active{background:transparent}.side-brand-mark{flex-shrink:0;display:grid;place-items:center;width:2rem;height:2rem;color:var(--ink)}.side-brand-mark svg{display:block}.side-brand-text{display:flex;flex-direction:column;gap:.1rem;min-width:0;line-height:1.2}.side-brand-text strong{letter-spacing:.02em;font-size:1.08rem;font-weight:650}.side-brand-text .muted{font-size:.78rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-nav{display:flex;flex-direction:column;gap:.2rem;flex:1;min-height:0}.side-link,.side-logout{display:flex;align-items:center;gap:.6rem;width:100%;padding:.5rem .65rem;border-radius:6px;border:0;background:transparent;color:inherit;font:inherit;font-size:1rem;line-height:1.3;text-align:left;cursor:pointer;text-decoration:none}.side-nav-icon{flex-shrink:0;width:1.15rem;height:1.15rem;color:var(--muted)}.side-link:hover,.side-logout:hover{background:var(--card)}.side-link.active{background:var(--card);font-weight:600}.side-link.active .side-nav-icon,.side-logout:hover .side-nav-icon{color:var(--ink)}.side-footer{margin-top:auto;padding-top:.55rem;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.2rem}.side-account{display:flex;flex-direction:column;gap:.2rem}.lang-switcher{padding:.5rem .65rem;border-radius:6px}.lang-switcher:hover,.lang-switcher:focus-within{background:var(--card)}.lang-switcher-select{width:100%;padding:0;border:0;border-radius:0;background:transparent;color:var(--muted);font:inherit;font-size:1rem;line-height:1.3;cursor:pointer;outline:none}.lang-switcher:hover .lang-switcher-select,.lang-switcher:focus-within .lang-switcher-select{color:var(--ink)}.side-logout{margin-top:.35rem;padding-top:.65rem;border-top:1px solid var(--line);color:var(--muted)}.side-logout:hover{color:var(--ink)}.auth-page{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse 80% 50% at 50% -10%,#e8dfd0 0%,transparent 55%),var(--bg)}.auth-topbar{display:flex;justify-content:flex-end;padding:1rem 1.25rem 0}.auth-topbar .lang-switcher{width:auto;min-width:9.5rem;padding:.45rem .75rem;border:1px solid var(--line);border-radius:8px;background:var(--card)}.auth-topbar .lang-switcher:hover,.auth-topbar .lang-switcher:focus-within{border-color:#c9c0b2}.auth-main{flex:1;display:grid;place-items:center;padding:1rem 1.25rem 2.5rem}.auth-card{width:min(420px,calc(100vw - 2rem));margin-bottom:0;padding:1.75rem 1.5rem 1.35rem}.auth-brand{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.35rem;padding-bottom:1.25rem;margin-bottom:1.15rem;border-bottom:1px solid var(--line)}.auth-brand-row{display:flex;align-items:center;justify-content:center;gap:.65rem}.auth-brand-mark{flex-shrink:0;display:grid;place-items:center;width:2rem;height:2rem;color:var(--ink)}.auth-brand-row h1{margin:0;font-size:1.35rem;font-weight:650;letter-spacing:.02em;line-height:1.2}.auth-brand-tagline{margin:0;font-size:.82rem;line-height:1.35}.auth-heading{margin:0 0 1.15rem;font-size:1.02rem;font-weight:600;line-height:1.35}.auth-field{margin-bottom:.95rem}.auth-field label{display:block;margin:0 0 .35rem;font-size:.88rem;color:var(--muted)}.auth-field input{width:100%;margin:0}.auth-card input:focus-visible{outline:2px solid rgba(26,26,26,.12);outline-offset:0;border-color:var(--ink)}.auth-error{margin:.15rem 0 1rem;padding:.65rem .75rem;border:1px solid #e8c9c5;border-radius:8px;background:#fdf6f5;color:#8b1a1a;font-size:.9rem;line-height:1.45}.auth-success{margin:.15rem 0 1rem;padding:.65rem .75rem;border:1px solid #c5dcc8;border-radius:8px;background:#f4faf5;color:#1a5c2e;font-size:.9rem;line-height:1.45}.auth-hint{margin:0 0 1rem;color:var(--muted);font-size:.92rem;line-height:1.5}.auth-forgot-link{margin:.45rem 0 0;text-align:right;font-size:.88rem}.auth-forgot-link a{color:var(--muted);text-decoration:none}.auth-forgot-link a:hover{color:var(--ink);text-decoration:underline}.auth-turnstile{display:flex;justify-content:center;margin:.75rem 0 .25rem;min-height:65px}.auth-submit{width:100%;margin-top:.35rem;padding:.65rem 1rem;font-size:1rem;font-weight:500}.auth-submit:disabled{opacity:.72;cursor:not-allowed}.auth-footer{margin:1.25rem 0 0;padding-top:1.15rem;border-top:1px solid var(--line);text-align:center;font-size:.9rem;line-height:1.45}.auth-footer a{font-weight:500;text-decoration:underline;text-underline-offset:2px}.main{padding:1.25rem;min-height:0;overflow:auto}.main:has(.console-page){padding:0;overflow:hidden;display:flex;flex-direction:column}.main:has(.reviews-page){padding:0;overflow:hidden;display:flex;flex-direction:column}.main:has(.tickets-page){padding:0;overflow:hidden;display:flex;flex-direction:column}.main:has(.tasks-page){padding:0;overflow:hidden;display:flex;flex-direction:column}.main:has(.settings-page),.main:has(.billing-page),.main:has(.publish-page){padding:0;overflow:hidden;display:flex;flex-direction:column}.ops-chrome{flex-shrink:0;padding:.65rem 1.25rem;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;align-items:center;background:#faf8f5}.ops-chrome-brand{flex:1;min-width:0}.ops-chrome-title{margin:0;font-size:1.15rem;font-weight:600}.ops-chrome-desc{margin:.25rem 0 0;max-width:52rem;line-height:1.45;font-size:.88rem}.ops-chrome-actions{flex:0 0 auto;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.settings-page{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;overflow:hidden;background:var(--bg)}.settings-page-body{flex:1;min-height:0;overflow:auto;padding:1.25rem}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}.account-card{padding:1.1rem 1.15rem 1.25rem;display:flex;flex-direction:column;gap:.15rem}.account-card-loading{min-height:8rem;justify-content:center}.account-card-title{margin:0 0 .35rem;font-size:1rem;font-weight:600}.account-card-lead{margin:0 0 .65rem;font-size:.85rem;line-height:1.45}.account-card-msg{margin:.35rem 0 0;font-size:.85rem}.account-field{display:flex;flex-direction:column;gap:.25rem;margin:.45rem 0 0;font-size:.88rem;color:var(--muted)}.account-field input{width:100%;margin:0;color:var(--ink)}.account-card .btn{margin-top:.85rem;align-self:flex-start}@media (max-width: 720px){.settings-grid{grid-template-columns:1fr}}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:1rem;margin-bottom:1rem}.btn{background:var(--accent);color:#fff;border:0;border-radius:8px;padding:.55rem .9rem;cursor:pointer}.btn.secondary{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn.ghost{background:transparent;color:var(--ink);border:0;padding:.25rem .5rem}.panel{background:var(--card);border:1px solid var(--line);border-radius:8px}input,textarea{width:100%;padding:.55rem .7rem;border:1px solid var(--line);border-radius:8px;background:#fff;margin:.35rem 0 .75rem}.input{width:100%;padding:.55rem .7rem;border:1px solid var(--line);border-radius:8px;background:#fff;margin:0;font:inherit;color:inherit}label{font-size:.85rem;color:var(--muted)}.muted{color:var(--muted);font-size:.9rem}.row{display:flex;gap:.75rem;align-items:center}.error{color:#a11;margin:.5rem 0}.notice{color:#167;margin:.5rem 0}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.5rem;border-bottom:1px solid var(--line);font-size:.92rem}.console-page{display:grid;grid-template-columns:minmax(0,1fr);gap:0;flex:1;min-height:0;height:100%;overflow:hidden;border:0;background:var(--card);border-radius:0}.console-chat-column{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.console-header{flex-shrink:0;display:flex;align-items:center;gap:.65rem;flex-wrap:nowrap;padding:.45rem .85rem;border-bottom:1px solid var(--line);min-width:0}.console-header-title{margin:0;font-size:.95rem;font-weight:650;white-space:nowrap;flex-shrink:0}.console-header-meta{margin:0;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex-shrink:0}.console-thread-switcher{display:flex;align-items:center;gap:.45rem;flex:1;min-width:0}.console-thread-select{flex:1;min-width:0;max-width:28rem;margin:0;padding:.35rem .55rem;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;font-size:.85rem;color:var(--ink)}.console-thread-new{flex-shrink:0;padding:.35rem .7rem;font-size:.85rem;white-space:nowrap}.console-messages-wrap{flex:1;min-height:0;overflow:auto;padding:1rem 1.1rem}.console-message-list{display:flex;flex-direction:column;gap:.85rem}.console-message-row{display:flex;flex-direction:column;gap:.2rem;max-width:48rem;min-width:0}.console-message-row-agent{align-self:flex-start;align-items:flex-start}.console-message-row-user{align-self:flex-end;align-items:flex-end}.console-message-row-tool{align-self:stretch;max-width:48rem}.console-message-row-compaction{align-self:stretch;max-width:48rem;justify-content:center}.console-message-row-plan{align-self:stretch;max-width:48rem;justify-content:flex-start}.console-message-plan{width:100%;padding:.55rem .75rem;border-radius:8px;border:1px solid var(--line);background:#f7f7f5;font-size:.85rem}.console-plan-header{display:flex;flex-wrap:wrap;gap:.35rem .6rem;align-items:baseline;margin-bottom:.45rem;color:var(--muted)}.console-plan-label{font-weight:600;color:var(--ink)}.console-plan-explain{flex:1 1 12rem;min-width:0}.console-plan-at{font-size:.75rem;opacity:.75}.console-plan-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.console-plan-item{display:grid;grid-template-columns:3.5rem 1fr;gap:.5rem;align-items:start}.console-plan-status{color:var(--muted);font-size:.75rem}.console-plan-item.is-in_progress .console-plan-status{color:#1a5f2a;font-weight:600}.console-plan-item.is-completed .console-plan-step{color:var(--muted);text-decoration:line-through}.console-message-compaction{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .6rem;width:100%;padding:.55rem .75rem;border-radius:8px;border:1px dashed var(--line);background:#f5f3ef;color:var(--muted);font-size:.85rem}.console-compaction-label{font-weight:600;color:var(--ink)}.console-compaction-preview{flex:1 1 12rem;min-width:0}.console-compaction-at{font-size:.75rem;opacity:.75}.console-message{max-width:100%;padding:.7rem .85rem;border-radius:10px;border:1px solid var(--line);background:#faf8f4}.console-message-user{background:#111;color:#fff;border-color:#111}.console-message-user .console-message-meta{color:#cfcfcf}.console-message-tool{align-self:stretch;max-width:100%;background:#f3efe8;border-style:dashed;border-color:#cfc6b6;color:var(--muted);font-size:.88rem}.console-message-tool .console-message-meta{color:#8a8276}.console-message-tool .console-message-body{white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem;color:#5c564c}.console-message-tool.is-running{border-color:#b8a88e;background:#f7f2e9}.console-message-tool.is-running .console-message-meta{color:#6a5e4c;font-weight:600}.console-message-tool.is-running .console-message-body{font-family:inherit;font-style:italic;color:#8a8276}.console-message-meta{font-size:.75rem;color:var(--muted);margin-bottom:.3rem}.console-message-body{line-height:1.55;font-size:.95rem}.console-message-tool .console-message-body{white-space:pre-wrap}.console-md{overflow-wrap:anywhere}.console-md>*:first-child{margin-top:0}.console-md>*:last-child{margin-bottom:0}.console-md p{margin:.45em 0}.console-md h1,.console-md h2,.console-md h3,.console-md h4{margin:.75em 0 .35em;line-height:1.3;font-weight:650}.console-md h1{font-size:1.25rem}.console-md h2{font-size:1.12rem}.console-md h3{font-size:1.02rem}.console-md ul,.console-md ol{margin:.4em 0;padding-left:1.35em}.console-md li{margin:.15em 0}.console-md blockquote{margin:.5em 0;padding:.15em 0 .15em .75em;border-left:3px solid var(--line);color:var(--muted)}.console-message-user .console-md blockquote{border-left-color:#555;color:#ddd}.console-md code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88em;padding:.1em .35em;border-radius:4px;background:#0000000f}.console-message-user .console-md code{background:#ffffff24}.console-md pre{margin:.55em 0;padding:.65em .75em;overflow:auto;border-radius:8px;background:#0000000f}.console-message-user .console-md pre{background:#ffffff1a}.console-md pre code{padding:0;background:transparent}.console-md table{width:100%;border-collapse:collapse;margin:.55em 0;font-size:.9em}.console-md th,.console-md td{border:1px solid var(--line);padding:.35em .5em;text-align:left}.console-message-user .console-md th,.console-message-user .console-md td{border-color:#444}.console-md a{text-decoration:underline}.console-md hr{border:0;border-top:1px solid var(--line);margin:.75em 0}.console-md-img{display:block;max-width:100%;height:auto;margin:.55em 0;border:1px solid var(--line);border-radius:6px;background:#fafafa}.console-md-img-status,.console-md-img-error{display:block;font-size:.85rem;margin:.4em 0}.console-md-img-error{color:#a11}.console-md-img-ref{display:block;margin:.45em 0;font-size:.88rem;line-height:1.45}.console-md-img-ref-alt{display:block;margin-bottom:.2em}.console-md-img-ref code{font-size:.92em;word-break:break-all}.console-copy-row{display:flex;min-height:1.6rem}.console-copy-row-start{justify-content:flex-start}.console-copy-row-end{justify-content:flex-end}.console-copy-row-hover{opacity:0;pointer-events:none;transition:opacity .12s ease}.console-message-row-user:hover .console-copy-row-hover,.console-message-row-user:focus-within .console-copy-row-hover{opacity:1;pointer-events:auto}.console-copy-btn{border:0;background:transparent;color:var(--muted);width:1.6rem;height:1.6rem;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:5px;opacity:.8}.console-copy-btn:hover{color:var(--ink);background:#0000000f;opacity:1}.console-copy-btn.is-copied{color:#2f6b3a;opacity:1}.console-stream-cursor{display:inline-block;width:.45em;height:1em;margin-left:2px;background:currentColor;animation:console-blink 1s step-end infinite;vertical-align:text-bottom}@keyframes console-blink{50%{opacity:0}}.console-empty{margin-top:2rem}.console-dock{flex-shrink:0;position:sticky;bottom:0;z-index:2;border-top:1px solid var(--line);padding:.75rem 1.1rem 1rem;background:#fcfbf8;box-shadow:0 -6px 16px #1a1a1a0a}.console-status-line{margin-bottom:.35rem}.console-composer textarea{margin-bottom:.5rem}.console-composer-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.console-composer-btns{display:flex;gap:.5rem;align-items:center}.btn-ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}.btn-ghost:hover{background:#f3f1ec}@media (max-width: 1100px){.console-page-with-asset{grid-template-columns:minmax(0,1fr) minmax(320px,360px)}}@media (max-width: 800px){.console-page,.console-page-with-asset{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) minmax(240px,40vh)}.console-asset-panel{border-left:0;border-top:1px solid var(--line)}.console-thread-select{max-width:none}}.tools-page-header{margin-bottom:1.1rem}.badge{display:inline-block;padding:.15rem .5rem;border-radius:6px;background:#f1ebe3;color:var(--muted);border:1px solid var(--line);font-size:.72rem;font-weight:500;line-height:1.3}.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.asset-card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:1.15rem 1.2rem;display:flex;flex-direction:column;text-align:left;color:inherit;box-shadow:0 1px 2px #1a1a1a0a;transition:border-color .12s ease,box-shadow .12s ease}.asset-card:hover{border-color:#c4bbaa;box-shadow:0 2px 8px #1a1a1a0f}.asset-card.is-disabled{opacity:.62}.asset-card-mark{width:2.5rem;height:2.5rem;border-radius:8px;display:grid;place-items:center;font-weight:700;font-size:1rem;background:#f1ebe3;color:var(--ink);flex-shrink:0;border:1px solid var(--line)}.asset-card-title{margin:.65rem 0 .25rem;font-size:1.05rem;font-weight:650;line-height:1.3}.asset-card-desc{margin:0;min-height:2.6em;font-size:.9rem;line-height:1.5;flex:1}.asset-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;font-size:.82rem;margin-top:.7rem}.asset-card-meta code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;padding:.12rem .4rem;border-radius:4px;background:#f1ebe3;border:1px solid var(--line)}.console-page-with-asset{grid-template-columns:minmax(0,1fr) minmax(380px,440px)}.console-asset-panel{border-left:1px solid var(--line);background:#faf8f5;padding:.85rem 1rem;overflow:auto;display:flex;flex-direction:column;gap:.75rem;min-height:0;min-width:0;position:sticky;top:0;align-self:stretch;height:100%;max-height:100%}.console-asset-panel-header{display:flex;flex-direction:column;gap:.2rem}.console-asset-doc-path{font-family:ui-monospace,monospace;font-size:.78rem;color:var(--muted)}.console-asset-doc-title{font-weight:600;font-size:.95rem}.console-asset-version-badge{display:inline-block;font-size:.78rem;border:1px solid var(--line);border-radius:999px;padding:.1rem .45rem;width:fit-content}.console-asset-section-label,.console-asset-versions-label{font-size:.78rem;color:var(--muted);letter-spacing:.04em;margin-bottom:.35rem}.console-asset-version-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.console-asset-version-btn{width:100%;display:flex;justify-content:space-between;gap:.5rem;border:1px solid var(--line);background:var(--card);border-radius:8px;padding:.35rem .5rem;cursor:pointer;font-size:.85rem}.console-asset-version-btn.is-active{border-color:var(--accent);background:#f1ebe3}.console-asset-version-btn-main{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.console-asset-review-pill{font-size:.68rem;border-radius:999px;padding:.05rem .35rem;border:1px solid var(--line);background:var(--card)}.console-asset-review-pill.is-pending{border-color:#c9a227;color:#8a6d00;background:#fff8e6}.console-asset-review-pill.is-approved{border-color:#6a9f6a;color:#2d6a2d;background:#eef8ee}.console-asset-review-pill.is-needs_revision{border-color:#c97a27;color:#8a4d00;background:#fff3e6}.console-asset-review-bar{border:1px solid var(--line);border-radius:8px;background:var(--card);padding:.65rem}.console-asset-review-bar.is-readonly{background:#f5f2ed}.console-asset-review-hint{margin:0 0 .5rem;font-size:.82rem;line-height:1.45}.console-asset-review-comment-label{display:block;font-size:.8rem;color:var(--muted);margin-bottom:.35rem}.console-asset-review-comment{width:100%;box-sizing:border-box;margin-bottom:.5rem;border:1px solid var(--line);border-radius:6px;padding:.4rem .5rem;font:inherit;resize:vertical}.console-asset-review-actions{display:flex;gap:.4rem;flex-wrap:wrap}.console-asset-review-status{font-size:.88rem;font-weight:600}.console-asset-review-status.is-approved{color:#2d6a2d}.console-asset-review-status.is-pending{color:#8a6d00}.console-asset-review-status.is-needs_revision{color:#8a4d00}.console-asset-review-status.is-rejected{color:#a33}.console-asset-body-preview{border:1px solid var(--line);border-radius:8px;background:var(--card);padding:.65rem;flex:1;min-height:12rem;max-height:none;overflow:visible;font-size:.88rem}.console-asset-body-section,.console-asset-diff-section,.console-asset-versions{flex-shrink:0}.console-asset-body-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.15rem}.console-asset-body-header .console-asset-section-label{margin-bottom:0}.console-asset-body-header .console-copy-row{margin:0}.asset-diff{margin:0;border:1px solid var(--line);border-radius:8px;overflow:auto;background:#fff;font-family:ui-monospace,monospace;font-size:.78rem;line-height:1.45}.asset-diff-compact{max-height:160px}.asset-diff-line{display:flex;gap:.35rem;padding:0 .35rem;white-space:pre-wrap;word-break:break-word}.asset-diff-line.is-add{background:#dafbe1}.asset-diff-line.is-del{background:#ffebe9}.asset-diff-line.is-ctx{background:#fff}.asset-diff-gutter{flex:0 0 1rem;-webkit-user-select:none;user-select:none;opacity:.7}.asset-diff-more{padding:.25rem .5rem;font-size:.75rem}.console-message-row-asset{justify-content:stretch}.asset-change-card{width:100%;border:1px solid var(--line);border-radius:10px;padding:.65rem .75rem;background:#faf8f5}.asset-change-card.is-error{border-color:#e8b4b4;background:#fff6f6}.asset-change-header{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-bottom:.35rem}.asset-change-badge{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.asset-change-title{font-weight:600;font-size:.92rem}.asset-change-version{font-size:.78rem;border:1px solid var(--line);border-radius:999px;padding:0 .35rem}.asset-change-at{margin-left:auto;font-size:.75rem;color:var(--muted)}.asset-change-error{color:#a11;font-size:.88rem;margin-bottom:.35rem}.asset-change-diff-toggle summary{cursor:pointer;font-size:.85rem;margin:.35rem 0}.asset-change-summary{font-size:.78rem;margin-top:.35rem}.console-message-row-image{justify-content:stretch}.generated-image-card{width:100%;border:1px solid var(--line);border-radius:10px;padding:.65rem .75rem;background:#f7f9f8}.generated-image-card.is-error{border-color:#e8b4b4;background:#fff6f6}.generated-image-header{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-bottom:.45rem}.generated-image-badge{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.generated-image-title{font-weight:600;font-size:.92rem}.generated-image-at{margin-left:auto;font-size:.75rem;color:var(--muted)}.generated-image-error{color:#a11;font-size:.88rem;margin-bottom:.35rem}.generated-image-stub{font-size:.85rem;margin-bottom:.35rem}.generated-image-frame{margin:.35rem 0;border-radius:8px;overflow:hidden;background:#eef1ef;min-height:2rem}.generated-image-img{display:block;width:100%;max-height:420px;object-fit:contain;background:#eef1ef}.generated-image-status{padding:.75rem;font-size:.85rem}.generated-image-caption{font-size:.85rem;margin-top:.25rem}.generated-image-summary{font-size:.78rem;margin-top:.35rem}.review-preview-panel{border:1px solid var(--line);border-radius:10px;padding:.75rem;background:#faf8f5}.review-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.review-diff-wrap{margin-bottom:.75rem}.review-body-wrap{border:1px solid var(--line);border-radius:8px;background:#fff;padding:.75rem;max-height:360px;overflow:auto}.reviews-page{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;overflow:hidden;background:var(--bg)}.reviews-page-error{flex-shrink:0;margin:.5rem 1.25rem 0}.reviews-split{display:grid;grid-template-columns:minmax(260px,300px) minmax(0,1fr);flex:1;min-height:0;overflow:hidden}.reviews-queue{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line);background:#f1ebe3}.reviews-queue-header{flex-shrink:0;padding:.55rem .65rem .5rem;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:.4rem}.reviews-filter-row{display:grid;grid-template-columns:2rem 1fr;gap:.35rem;align-items:center}.reviews-filter-row-label{font-size:.72rem;color:var(--muted);line-height:1.2}.reviews-queue-summary{margin:0;font-size:.72rem;line-height:1.3;padding-left:2.35rem;font-weight:400}.reviews-filter{display:flex;gap:.25rem;min-width:0;flex-wrap:nowrap}.reviews-filter-btn{flex:1;border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:5px;padding:.22rem .35rem;font-size:.75rem;cursor:pointer;min-width:0;position:relative;line-height:1.25}.reviews-filter-btn.is-active{background:var(--card);border-color:var(--ink);font-weight:600}.reviews-filter-btn.has-dot-slot{padding-right:.55rem}.reviews-filter-count{margin-left:.2rem;font-variant-numeric:tabular-nums;font-weight:600;color:#c62828}.reviews-filter-dot{position:absolute;top:3px;right:4px;width:6px;height:6px;border-radius:50%;background:#c62828;pointer-events:none}.reviews-queue-section+.reviews-queue-section{margin-top:.35rem}.reviews-queue-section-title{display:flex;align-items:center;justify-content:space-between;font-size:.7rem;font-weight:600;color:var(--muted);padding:.3rem .4rem .2rem;position:sticky;top:0;background:#f1ebe3;z-index:1}.reviews-origin-badge{display:inline-block;font-size:.68rem;padding:.05rem .35rem;border:1px solid var(--line);border-radius:4px;color:var(--muted);vertical-align:middle;font-weight:500}.reviews-origin-badge.is-console{border-color:#8a96a3;color:#3a4a58}.reviews-origin-badge.is-tasks{border-color:#8a9a7a;color:#3f4f35}.reviews-queue-list{flex:1;min-height:0;overflow:auto;padding:.35rem;display:flex;flex-direction:column;gap:.25rem}.reviews-queue-empty{padding:1rem .65rem;text-align:center;font-size:.8rem;line-height:1.45}.reviews-queue-item{display:flex;align-items:flex-start;gap:.4rem;width:100%;text-align:left;border:1px solid transparent;border-radius:6px;background:transparent;padding:.4rem .45rem;cursor:pointer;color:inherit;font:inherit}.reviews-queue-item:hover{background:#ffffff8c}.reviews-queue-item.is-selected{background:var(--card);border-color:var(--line);box-shadow:inset 3px 0 0 var(--ink)}.reviews-queue-item-main{display:flex;flex-direction:column;gap:.12rem;min-width:0;flex:1}.reviews-queue-item-title{font-size:.8rem;font-weight:500;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.reviews-queue-item-meta{font-size:.7rem;line-height:1.2}.reviews-status-badge{flex-shrink:0;font-size:.72rem;padding:.12rem .4rem;border-radius:4px;border:1px solid var(--line);background:#fff;color:var(--muted);white-space:nowrap}.reviews-status-badge.is-pending{color:#8a6d00;border-color:#e0d4a8;background:#fbf6e4}.reviews-status-badge.is-approved{color:#2d6a2d;border-color:#c5dfc5;background:#eef6ee}.reviews-status-badge.is-needs_revision{color:#8a4d00;border-color:#e5c9a8;background:#faf0e4}.reviews-status-badge.is-rejected{color:#a33;border-color:#e5b8b8;background:#f8ecec}.reviews-detail{display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--card)}.reviews-detail-empty{flex:1;display:grid;place-items:center;padding:2rem}.reviews-detail-header{flex-shrink:0;padding:.4rem .85rem;border-bottom:1px solid var(--line);background:#faf8f5}.reviews-detail-bar{display:flex;align-items:center;justify-content:space-between;gap:.65rem;min-height:1.75rem}.reviews-detail-bar-main{display:flex;align-items:center;gap:.4rem;min-width:0;flex:1}.reviews-detail-title{margin:0;font-size:.88rem;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:42%}.reviews-detail-meta-inline{flex-shrink:0;font-size:.75rem;white-space:nowrap}.reviews-console-text-link{flex-shrink:0;margin:0;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.75rem;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.reviews-console-text-link:hover:not(:disabled){color:var(--ink)}.reviews-console-text-link:disabled{opacity:.5;cursor:default}.reviews-detail-bar>.review-publish-panel{flex-shrink:0}.reviews-detail-scroll{flex:1;min-height:0;overflow:auto;padding:.75rem .85rem 1.25rem;background:#f3efe8}.reviews-diff-wrap{margin-bottom:.75rem;padding:.65rem .75rem;background:var(--card);border:1px solid var(--line);border-radius:8px}.reviews-preview{display:flex;flex-direction:column;gap:.55rem;min-height:0}.reviews-preview-toolbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin:-.15rem -.15rem 0;padding:.4rem .35rem;background:transparent;border-bottom:0;pointer-events:none}.reviews-preview-toolbar>*{pointer-events:auto}.reviews-preview-toolbar-label{font-size:.75rem;font-weight:600;color:var(--muted);text-shadow:0 0 6px #f3efe8,0 0 10px #f3efe8}.reviews-preview-tabs{display:inline-flex;align-items:center;gap:.45rem}.reviews-preview-devices{display:inline-flex;gap:.2rem;padding:.15rem;border:1px solid var(--line);border-radius:8px;background:var(--card)}.reviews-preview-device{display:inline-flex;align-items:center;gap:.28rem;border:0;background:transparent;color:var(--muted);border-radius:6px;padding:.28rem .5rem;font:inherit;font-size:.75rem;cursor:pointer;line-height:1}.reviews-preview-device:hover{color:var(--ink);background:#f7f4ef}.reviews-preview-device.is-active{color:var(--ink);background:#ebe4d8;font-weight:600}.reviews-preview-diff-pane{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:.65rem .75rem;overflow:auto}.reviews-preview-diff-pane .asset-diff{margin:0;max-height:none}.reviews-preview-stage{display:flex;justify-content:center;align-items:flex-start;padding:.35rem 0 .5rem;min-height:12rem}.reviews-preview-frame{width:100%;background:var(--card);border:1px solid var(--line);transition:width .2s ease,max-width .2s ease,border-radius .2s ease}.reviews-preview-frame.is-desktop{width:min(960px,100%);max-width:960px;border-radius:8px;box-shadow:0 1px #0000000a}.reviews-preview-frame.is-tablet{width:min(768px,100%);max-width:768px;border-radius:14px;border-width:2px;box-shadow:0 8px 24px #0000000f}.reviews-preview-frame.is-mobile{width:min(390px,100%);max-width:390px;border-radius:22px;border-width:2px;box-shadow:0 10px 28px #00000014}.reviews-preview-screen{padding:1.1rem 1.25rem 1.5rem;line-height:1.65}.reviews-preview-frame.is-tablet .reviews-preview-screen{padding:1rem 1.1rem 1.35rem}.reviews-preview-frame.is-mobile .reviews-preview-screen{padding:.9rem .95rem 1.2rem}.reviews-preview-frame.is-mobile .console-md{font-size:.92rem}.reviews-preview-frame.is-mobile .console-md h1{font-size:1.15rem}.reviews-preview-frame.is-mobile .console-md h2{font-size:1.05rem}.reviews-preview-frame.is-tablet .console-md{font-size:.96rem}.reviews-preview-frame .console-md-img,.reviews-preview-frame .console-md img{max-width:100%;height:auto;border-radius:6px}.reviews-detail-footer{flex-shrink:0;border-top:1px solid var(--line);padding:.75rem 1.25rem .9rem;background:#faf8f5}@media (max-width: 899px){.reviews-preview-device span{display:none}.reviews-preview-device{padding:.32rem .45rem}.reviews-split{grid-template-columns:1fr;grid-template-rows:minmax(180px,38vh) minmax(0,1fr)}.reviews-queue{border-right:0;border-bottom:1px solid var(--line)}}.tickets-page{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;overflow:hidden;background:var(--bg)}.tickets-page-error{flex-shrink:0;margin:.5rem 1.25rem 0}.tickets-split{display:grid;grid-template-columns:minmax(260px,300px) minmax(0,1fr);flex:1;min-height:0;overflow:hidden}.tickets-queue{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line);background:#f1ebe3}.tickets-queue-header{flex-shrink:0;padding:.65rem .75rem .55rem;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:.45rem}.tickets-queue-title-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tickets-queue-title-row .btn{padding:.28rem .65rem;font-size:.8rem}.tickets-toolbar{display:flex;flex-wrap:wrap;gap:.35rem}.tickets-select{flex:1;min-width:0;padding:.28rem .4rem;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:inherit;font-size:.78rem;line-height:1.3;margin:0}.tickets-queue-summary{margin:0;font-size:.72rem;line-height:1.3}.tickets-queue-list{flex:1;min-height:0;overflow:auto;padding:.35rem;display:flex;flex-direction:column;gap:.15rem}.tickets-queue-empty{margin:.75rem .5rem;font-size:.85rem}.tickets-queue-item{display:flex;gap:.55rem;align-items:flex-start;text-align:left;width:100%;border:1px solid transparent;background:transparent;border-radius:6px;padding:.5rem .55rem;cursor:pointer;color:inherit}.tickets-queue-item:hover{background:#ffffff8c}.tickets-queue-item.is-selected{background:var(--card);border-color:var(--line)}.tickets-status-dot{flex-shrink:0;width:.45rem;height:.45rem;border-radius:50%;margin-top:.4rem;background:var(--muted)}.tickets-status-dot.is-open{background:#b45309}.tickets-status-dot.is-in_progress{background:#1d4ed8}.tickets-status-dot.is-resolved{background:#15803d}.tickets-status-dot.is-closed{background:#a8a29a}.tickets-queue-item-main{display:flex;flex-direction:column;gap:.18rem;min-width:0;flex:1}.tickets-queue-item-title{font-size:.88rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.tickets-queue-item-meta{font-size:.72rem;line-height:1.3}.tickets-detail{display:flex;flex-direction:column;min-height:0;overflow:auto;padding:1.15rem 1.35rem 1.5rem;gap:1.1rem;background:var(--card)}.tickets-detail-empty{justify-content:center;align-items:center}.tickets-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.85rem;border-bottom:1px solid var(--line)}.tickets-detail-header-main{min-width:0;flex:1}.tickets-detail-header-actions{flex-shrink:0;display:flex;align-items:center;gap:.5rem}.tickets-detail-title{margin:0;font-size:1.2rem;font-weight:650;line-height:1.35}.tickets-detail-sub{margin:.35rem 0 0;font-size:.82rem;line-height:1.4}.tickets-status-select{display:flex;align-items:center;gap:.4rem;font-size:.82rem}.tickets-status-select .tickets-select{min-width:7.5rem;flex:0 0 auto}.tickets-section-label{margin:0 0 .55rem;font-size:.78rem;font-weight:600;color:var(--muted);letter-spacing:.02em}.tickets-detail-body{padding-bottom:.25rem}.tickets-body-text,.tickets-message-body{margin:0;white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:.92rem;line-height:1.6;color:var(--ink)}.tickets-messages-empty{margin:0;font-size:.85rem}.tickets-message-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line)}.tickets-message{padding:.75rem 0;border-bottom:1px solid var(--line);background:transparent}.tickets-message.is-staff{background:transparent}.tickets-message-meta{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin-bottom:.35rem;font-size:.8rem}.tickets-staff-tag{font-size:.68rem;padding:.05rem .3rem;border-radius:3px;border:1px solid var(--line);background:#faf8f5;color:var(--muted)}.tickets-reply,.tickets-compose{display:flex;flex-direction:column;gap:.55rem;width:100%;max-width:none}.tickets-compose-pane .tickets-compose{max-width:36rem}.tickets-field{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:var(--muted)}.tickets-field .tickets-select,.tickets-field input,.tickets-field textarea{width:100%;padding:.55rem .7rem;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:inherit;margin:0}.tickets-reply{margin-top:auto;padding-top:.75rem;border-top:1px solid var(--line)}.tickets-reply textarea{width:100%;margin:0;resize:vertical;min-height:4.5rem;border:1px solid var(--line);border-radius:6px;padding:.55rem .7rem;font:inherit;background:#fff}.tickets-reply-actions,.tickets-compose-actions{display:flex;gap:.5rem}@media (max-width: 899px){.tickets-split{grid-template-columns:1fr;grid-template-rows:minmax(180px,38vh) minmax(0,1fr)}.tickets-queue{border-right:0;border-bottom:1px solid var(--line)}.tickets-detail-header{flex-direction:column}}.tasks-page{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;background:var(--bg)}.tasks-page-header{flex-shrink:0;padding:.65rem 1.25rem;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;align-items:center;background:#faf8f5}.tasks-page-header-brand{flex:1;min-width:0}.tasks-page-header-actions{flex:0 0 auto;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.tasks-page-save{flex-shrink:0;white-space:nowrap}.tasks-page-tabs{gap:.35rem}.tasks-page-tabs .btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}.tasks-page-title{margin:0;font-size:1.15rem;font-weight:600}.tasks-page-desc{margin:.25rem 0 0;max-width:52rem;line-height:1.45}.tasks-split{display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr);flex:1;min-height:0;overflow:hidden}.tasks-queue{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line);background:#f1ebe3}.tasks-queue-header{flex-shrink:0;padding:.75rem .85rem;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tasks-queue-summary{font-size:.88rem;font-weight:500}.tasks-queue-list{flex:1;min-height:0;overflow:auto;padding:.5rem;display:flex;flex-direction:column;gap:.35rem}.tasks-queue-empty{padding:1rem .5rem;text-align:center}.tasks-queue-item{display:block;width:100%;text-align:left;border:1px solid transparent;background:transparent;border-radius:6px;padding:.55rem .65rem;cursor:pointer;color:inherit;font:inherit}.tasks-queue-item:hover{background:#ffffff8c}.tasks-queue-item.is-selected{background:var(--card);border-color:var(--line);box-shadow:inset 3px 0 0 var(--ink)}.tasks-queue-item-title{display:block;font-size:.88rem;font-weight:500}.tasks-queue-item-meta{display:block;font-size:.75rem;margin-top:.15rem}.tasks-workflow-pane{display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--bg)}.tasks-workflow-empty{padding:2rem;text-align:center}.tasks-workflow-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,320px);overflow:hidden}.wf-side-panel{display:flex;flex-direction:column;gap:10px}.wf-side-panel-title{margin:0;font-size:1rem;font-weight:600}.wf-side-panel-hint{margin:0;font-size:.85rem;line-height:1.45}.wf-run-inputs{gap:8px}.wf-run-result{gap:10px;margin-top:4px;padding-top:10px;border-top:1px solid var(--line)}.wf-run-step-renders{margin:0;padding-left:1.25rem;font-size:.85rem;line-height:1.45}.wf-run-body-preview{max-height:280px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:.8rem}.tasks-workflow-steps{min-height:0;overflow:auto;border-right:1px solid var(--line);background:var(--bg)}.tasks-workflow-config{min-height:0;overflow:auto;padding:1rem;background:var(--card)}.wf-builder-aside .input,.wf-builder-aside textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.step-list-editor{display:flex;flex-direction:column;gap:12px;padding:12px 16px}.wf-palette{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.wf-palette-tool{position:relative;display:inline-flex}.wf-palette-tool select{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.wf-empty-hint{padding:1.25rem;text-align:center;border:1px dashed var(--line);border-radius:8px;background:#ffffff73}.wf-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.wf-steps-nested{margin-top:6px}.wf-child-palette{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin-top:6px}.wf-child-palette .btn{font-size:13px;padding:.25rem .5rem}.wf-warnings{padding:10px 12px;border:1px solid #e8c97a;background:#fff9e8;border-radius:8px;font-size:13px}.wf-warnings-list{margin:6px 0 0;padding-left:1.1rem}.wf-warnings-list li{margin:4px 0}.wf-step-branches{margin-top:8px;margin-left:16px;display:flex;flex-direction:column;gap:8px}.wf-step-branch-label{font-size:13px;margin-bottom:4px}.wf-add-child{font-size:14px;align-self:flex-start;margin-top:4px}.step-row{display:flex;gap:.75rem;align-items:flex-start;justify-content:space-between;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--card);cursor:pointer;transition:border-color .12s ease,background .12s ease;min-width:0;width:100%;height:auto}.step-row:hover{border-color:#c9c0b0}.step-row.selected{border-color:var(--ink);background:#faf8f5;box-shadow:0 0 0 1px var(--ink)}.wf-step-row-main{min-width:0;flex:1 1 auto;overflow:hidden}.step-row>.btn{flex:0 0 auto}.step-row-head{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .55rem;min-width:0}.step-row-index{font-variant-numeric:tabular-nums;min-width:1.25rem;font-size:.8rem}.step-io{margin-top:.55rem;display:flex;flex-direction:column;gap:.35rem;min-width:0}.step-io-line{display:flex;gap:.5rem;align-items:flex-start;min-width:0}.step-io-tag{flex:0 0 auto;min-width:2.25rem;font-size:.72rem;font-weight:700;letter-spacing:.02em;color:var(--muted);line-height:1.6}.step-io-body{min-width:0;flex:1;font-size:.8rem;line-height:1.45;color:var(--ink)}.step-io-chips{display:flex;flex-wrap:wrap;gap:.35rem}.step-io-chip{display:inline-flex;align-items:baseline;gap:.3rem;max-width:100%;padding:.15rem .45rem;border-radius:4px;border:1px solid var(--line);background:#f7f4ef;font-size:.78rem;line-height:1.4}.step-io-chip em{font-style:normal;font-weight:600;color:var(--muted);flex-shrink:0}.step-io-chip span{min-width:0;overflow-wrap:anywhere;word-break:break-word}.step-io-chip.out{background:#faf8f5}.step-io-chip.empty{border-style:dashed;opacity:.75}.step-row.selected .step-io-chip{background:#fff}.step-fn-panel{display:flex;flex-direction:column;gap:14px}.step-fn-empty-state{padding:1.25rem .25rem;line-height:1.5}.step-fn-hero{display:flex;flex-direction:column;gap:6px;padding-bottom:4px;border-bottom:1px solid var(--line)}.step-fn-hero-title{font-size:16px;font-weight:650;color:var(--ink);line-height:1.3}.step-fn-section{display:flex;flex-direction:column;gap:10px;padding:12px;background:#f7f4ef;border:1px solid var(--line);border-radius:8px}.step-fn-section-head{display:flex;flex-direction:column;gap:2px}.step-fn-section-title{margin:0;font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--ink)}.step-fn-section-hint{margin:0;font-size:12px;color:var(--muted);line-height:1.4}.step-fn-section-body{display:flex;flex-direction:column;gap:10px}.step-fn-field{display:flex;flex-direction:column;gap:4px}.step-fn-field-inline{flex-direction:row;align-items:center;gap:8px}.step-fn-field-inline .step-fn-field-label{margin:0}.step-fn-port-row{display:flex;align-items:flex-end;gap:10px;width:100%;min-width:0}.step-fn-field-grow{flex:1;min-width:0}.step-fn-required{flex:0 0 auto;flex-direction:row;align-items:center;gap:6px;padding-bottom:6px;white-space:nowrap}.step-fn-required .step-fn-field-label{margin:0}.step-fn-field-label,.step-fn-port-field-label{font-size:12px;color:var(--muted)}.step-fn-ports{display:flex;flex-direction:column;gap:8px}.step-fn-port{display:flex;flex-direction:column;gap:8px;padding:10px;background:var(--card);border:1px solid var(--line);border-radius:6px}.step-fn-port-out{gap:4px}.step-fn-port-compact{gap:8px;padding:8px}.step-fn-port-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.step-fn-port-toolbar .step-fn-port-name{flex:1 1 7rem;min-width:5.5rem;max-width:100%}.step-fn-port-type{flex:0 1 6.5rem;min-width:5rem;max-width:100%;margin:0;padding:.35rem .45rem;font-size:.82rem}.step-fn-required-inline{flex:0 0 auto;display:inline-flex;flex-direction:row;align-items:center;gap:4px;padding:0;margin:0;font-size:.78rem;color:var(--muted);white-space:nowrap}.step-fn-required-inline input{margin:0}.step-fn-field-default{gap:3px}.step-fn-field-default .input{font-size:.85rem}.step-fn-port-head{display:flex;align-items:center;gap:8px}.step-fn-port-badge{flex:0 0 auto;font-size:11px;font-weight:700;line-height:1;padding:4px 6px;border-radius:4px;border:1px solid #c9c0b0;background:#f7f4ef;color:var(--ink)}.step-fn-port-badge.out{border-color:var(--ink)}.step-fn-port-name{flex:1;min-width:0;font-weight:600}.step-fn-port-name-text{flex:1;font-size:14px}.step-fn-port-fixed{flex:0 0 auto;font-size:11px;font-weight:600;line-height:1;padding:3px 6px;border-radius:3px;border:1px solid var(--line);background:#f0eeea;color:var(--muted);letter-spacing:.02em}.step-fn-port-body{display:flex;flex-direction:column;gap:8px}.step-fn-port-body>*{width:100%;min-width:0}.step-fn-port-hint{margin:0;font-size:12px}.step-fn-port-hint-wrap{display:flex;flex-direction:column;gap:2px;padding-left:2px}.step-fn-port-hint-wrap .step-fn-port-hint{margin:0}.step-fn-port-error{margin:0;font-size:12px;color:#a33;line-height:1.35}.step-fn-empty{margin:0;font-size:13px}.step-fn-port-remove{margin-left:auto;min-width:28px;padding:0 8px;font-size:18px;line-height:1}.step-fn-add{align-self:flex-start;margin-top:4px}.value-source-field{display:flex;flex-direction:column;gap:6px}.value-source-modes{display:flex;flex-wrap:wrap;gap:4px}.value-source-modes .btn{padding:2px 8px;font-size:13px}.value-source-hint{margin:0;font-size:12px}.value-source-insert{display:flex;flex-wrap:wrap;gap:4px}.value-source-insert .btn{padding:2px 8px;font-size:12px}.value-source-preview{padding:8px 10px;font-size:14px;line-height:1.5;border:1px solid var(--line);border-radius:6px;background:#faf8f5}.value-source-template details{margin-top:6px}.value-source-template summary{font-size:12px;cursor:pointer}.prompt-var-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px}.prompt-var-chip{font-size:12px!important;padding:2px 8px!important;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.prompt-var-used{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.prompt-var-tag{font-size:12px;padding:2px 6px;border-radius:4px;border:1px solid var(--line);background:#faf8f5;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.prompt-var-tag.warn{border-style:dashed;color:#8a5a00}.wf-field{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem;font-size:.85rem}.wf-field.inline{flex:1;min-width:160px;margin-bottom:0}.wf-field.inline.brief{flex:1.4;min-width:220px}.wf-field span{color:var(--muted);font-size:.78rem}.tool-io-help{border:1px solid var(--line);border-radius:6px;padding:.65rem .75rem;background:#faf8f5}.tool-io-help-title{font-size:.88rem;font-weight:600;margin-bottom:.25rem}.tool-io-help-desc{font-size:.78rem;margin:0 0 .5rem}.tool-io-help-block{margin-bottom:.45rem}.tool-io-help-list{margin:0;padding-left:1.1rem;font-size:.8rem;line-height:1.45}@media (max-width: 1100px){.tasks-workflow-body{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) minmax(220px,42%)}.tasks-workflow-steps{border-right:0;border-bottom:1px solid var(--line)}}@media (max-width: 899px){.tasks-split{grid-template-columns:1fr;grid-template-rows:minmax(160px,32vh) minmax(0,1fr)}.tasks-queue{border-right:0;border-bottom:1px solid var(--line)}}.publish-page{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;overflow:hidden;background:var(--bg)}.publish-page-error{flex-shrink:0;margin:.5rem 1.25rem 0}.publish-split{display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr);flex:1;min-height:0;overflow:hidden}.publish-queue{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line);background:#f1ebe3}.publish-queue-header{flex-shrink:0;padding:.55rem .65rem .5rem;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:.35rem}.publish-queue-title-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.publish-queue-title-row .btn{padding:.28rem .65rem;font-size:.8rem}.publish-queue-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.publish-queue-summary{margin:0;font-size:.72rem;line-height:1.3}.publish-queue-list{flex:1;min-height:0;overflow:auto;padding:.35rem;display:flex;flex-direction:column;gap:.25rem}.publish-queue-empty{margin:.75rem .5rem;font-size:.85rem;line-height:1.45}.publish-queue-item{display:flex;gap:.35rem;align-items:flex-start;width:100%;border:1px solid transparent;background:transparent;border-radius:8px;padding:.3rem .35rem;color:inherit}.publish-queue-item:hover{background:#ffffff8c}.publish-queue-item.is-selected{background:var(--card);border-color:var(--line)}.publish-queue-item.is-editing{border-color:var(--ink)}.publish-queue-item-select{display:flex;gap:.45rem;align-items:flex-start;text-align:left;flex:1;min-width:0;border:0;background:transparent;padding:.2rem .15rem;cursor:pointer;color:inherit;font:inherit}.publish-queue-item-main{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1}.publish-queue-item-title{font-size:.88rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.publish-queue-item-meta{font-size:.72rem}.publish-queue-edit{flex-shrink:0;padding:.22rem .45rem!important;font-size:.72rem!important;margin-top:.1rem}.publish-queue-edit.is-active{border-color:var(--ink);font-weight:600}.publish-history-panel.is-primary{margin-top:0;padding-top:0;border-top:0;flex:1}.publish-status-badge{flex-shrink:0;font-size:.68rem;padding:.12rem .35rem;border-radius:4px;border:1px solid var(--line);background:#fff;line-height:1.2}.publish-status-badge.is-on{border-color:#15803d;color:#15803d}.publish-status-badge.is-off{color:var(--muted)}.publish-platform-badge,.publish-meta-badge{font-size:.72rem;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:.1rem .35rem;background:#fff}.publish-meta-badge.is-warn{border-color:#b45309;color:#b45309}.publish-detail{display:flex;flex-direction:column;min-height:0;overflow:auto;padding:1rem 1.25rem 1.5rem;gap:1rem;background:var(--card)}.publish-detail-empty{flex:1;display:flex;justify-content:center;align-items:center;min-height:10rem}.publish-detail-panel{display:flex;flex-direction:column;gap:.85rem}.publish-detail-header{display:flex;flex-direction:column;gap:.35rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}.publish-detail-badges{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.publish-detail-title{margin:0;font-size:1.2rem;font-weight:650;line-height:1.3}.publish-detail-sub{margin:0;font-size:.82rem}.publish-detail-actions{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.25rem}.publish-detail-actions .btn{padding:.35rem .7rem;font-size:.82rem}.publish-history-panel{margin-top:auto;padding-top:.85rem;border-top:1px solid var(--line)}.publish-history-title{margin:0;font-size:.92rem;font-weight:600}.publish-section-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.65rem}.publish-history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.publish-history-item{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;justify-content:space-between;padding:.65rem .75rem;border:1px solid var(--line);border-radius:8px;background:#faf8f5}.publish-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.65rem .85rem;margin-bottom:.75rem}.publish-form label,.publish-fieldset label{display:flex;flex-direction:column;gap:.25rem;font-size:.82rem}.publish-form input,.publish-form select,.publish-fieldset input{padding:.45rem .55rem;border:1px solid var(--line);border-radius:6px;background:#fff;font:inherit;margin:0}.publish-form-check{flex-direction:row!important;align-items:center;gap:.4rem!important;margin-top:1.4rem}.publish-fieldset{border:1px solid var(--line);border-radius:6px;padding:.65rem .75rem .85rem;margin:0 0 .75rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.55rem}.publish-fieldset legend{padding:0 .35rem;font-size:.82rem}.publish-hint{grid-column:1 / -1;margin:0;font-size:.8rem}.publish-form-actions{display:flex;gap:.5rem}.publish-token-banner{border:1px solid var(--line);background:#fff8e8;border-radius:8px;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.4rem;flex-shrink:0}.publish-token-banner code{word-break:break-all;font-size:.85rem}.publish-history-error{width:100%;margin:0;font-size:.82rem;color:#b45309}@media (max-width: 899px){.publish-split{grid-template-columns:1fr;grid-template-rows:minmax(180px,36vh) minmax(0,1fr)}.publish-queue{border-right:0;border-bottom:1px solid var(--line)}}.review-publish-panel{display:flex;align-items:center;gap:.35rem}.review-publish-toolbar{display:flex;align-items:center;gap:.3rem}.review-publish-select{max-width:9.5rem;padding:.15rem .3rem;border:1px solid var(--line);border-radius:4px;background:#fff;font:inherit;font-size:.75rem;line-height:1.3}.review-publish-select.is-status{max-width:5.2rem}.review-publish-submit{padding:.15rem .55rem!important;font-size:.75rem!important;border-radius:5px;line-height:1.35}.review-publish-manage{font-size:.78rem;line-height:1;text-decoration:none;padding:.1rem .2rem}.review-publish-manage:hover{color:var(--ink)}.review-publish-chip-msg{font-size:.72rem;max-width:10rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-publish-success{color:#2a6b3f}@media (max-width: 900px){.reviews-detail-title{max-width:28%}.review-publish-select{max-width:7.5rem}}.billing-page{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;overflow:hidden;background:var(--bg)}.billing-page-body{flex:1;min-height:0;overflow:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1.15rem}.billing-error{margin:0}.billing-balance{padding:1.1rem 1.25rem;border:1px solid var(--line);border-radius:8px;background:#faf8f5}.billing-balance-main{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}.billing-balance-label{font-size:.9rem;color:var(--muted)}.billing-balance-num{font-size:2.1rem;letter-spacing:-.02em;font-weight:650}.billing-balance-hint{margin:.45rem 0 0;font-size:.85rem}.billing-meter-hint{margin:.35rem 0 0;font-size:.8rem;max-width:36rem;line-height:1.45}.billing-section{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:.9rem 1rem 1.1rem}.billing-section h2{margin:0 0 .35rem;font-size:1rem;font-weight:600}.billing-section-desc{margin:.15rem 0 .75rem;font-size:.85rem;line-height:1.45}.billing-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;flex-wrap:wrap;margin-bottom:.35rem}.billing-section-head h2{margin:0}.billing-section-head .billing-section-desc{margin:.25rem 0 0}.billing-interval-tabs{display:flex;gap:.25rem;flex-shrink:0}.billing-chip{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:5px;padding:.28rem .55rem;font-size:.78rem;cursor:pointer;line-height:1.25}.billing-chip.is-active{background:#fff;border-color:var(--ink);font-weight:600}.billing-packs{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.billing-pack{border:1px solid var(--line);border-radius:8px;padding:.9rem;display:flex;flex-direction:column;gap:.3rem;background:#faf8f5;min-height:100%}.billing-pack-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.billing-pack-title{font-weight:600;line-height:1.3}.billing-pack-badge{flex-shrink:0;font-size:.68rem;background:#2a6b3f;color:#fff;padding:.12rem .4rem;border-radius:4px;white-space:nowrap;line-height:1.2}.billing-pack-credits{font-size:1.15rem}.billing-pack-meta{font-size:.78rem;line-height:1.35;margin-bottom:.1rem}.billing-pack-price{color:var(--muted);margin-bottom:.15rem}.billing-pack-save{font-size:.78rem;margin-bottom:.15rem;min-height:1.2em}.billing-pack-save-spacer{min-height:1.2em;margin-bottom:.15rem}.billing-pack--featured{border-color:#2a6b3f;background:#f3f8f4}.billing-pack-cta{margin-top:auto;width:100%}.billing-checkout-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.billing-checkout-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;padding:0;margin:0;background:#1a1a1a73;cursor:default}.billing-checkout-panel{position:relative;z-index:1;width:min(100%,28rem);max-height:min(90vh,640px);overflow:auto;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:1.1rem 1.25rem 1.25rem;box-shadow:0 12px 40px #1a1a1a1f}.billing-checkout-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.billing-checkout-head h2{margin:0;font-size:1.05rem;font-weight:600;line-height:1.35}.billing-checkout-close{flex-shrink:0;width:2rem;height:2rem;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--muted);font-size:1.25rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.billing-checkout-close:hover{color:var(--ink);border-color:var(--ink)}.billing-checkout-desc{margin:0 0 .85rem;font-size:.85rem;line-height:1.45}.billing-checkout-manual{margin:0 0 .75rem;font-size:.85rem;line-height:1.45}.billing-checkout-actions{margin-top:.75rem}.billing-checkout-actions .btn{width:100%}.billing-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:6px}.billing-table{width:100%;border-collapse:collapse;font-size:.88rem}.billing-table th,.billing-table td{text-align:left;padding:.55rem .65rem;border-bottom:1px solid var(--line);vertical-align:middle}.billing-table tr:last-child td{border-bottom:0}.billing-table th{background:#faf8f5;font-weight:600;font-size:.8rem;color:var(--muted)}.billing-empty{margin:.35rem 0 0}.list-pagination{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;margin-top:.75rem;flex-wrap:wrap}.list-pagination-btn{padding:.35rem .75rem;font-size:.82rem}.list-pagination-meta{font-size:.82rem;min-width:6.5rem;text-align:center}.tickets-queue .list-pagination{margin:.5rem .65rem .75rem;justify-content:center}.billing-grant-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end}.billing-grant-row label{display:flex;flex-direction:column;gap:.25rem;font-size:.82rem;flex:1;min-width:10rem}.billing-grant-row input{width:100%;margin:0;padding:.45rem .55rem}.billing-paypal-wrap{width:100%;margin:.5rem 0 .25rem}
