:root{--bg: #f8fafc;--surface: #ffffff;--ink: #0f172a;--muted: #64748b;--line: #e2e8f0;--line-soft: #f1f5f9;--accent: #2563eb;--accent-soft: #eff6ff;--accent-ink: #1d4ed8;--danger: #dc2626;--danger-soft: #fef2f2;--ok: #15803d;--radius: 10px;--sidebar-w: 16rem;--sidebar-w-collapsed: 4.5rem;--font: "DM Sans", "Segoe UI", sans-serif;--chart-1: #3b82f6;--shadow: 0 1px 2px rgba(15, 23, 42, .06)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--font);color:var(--ink);background:var(--bg)}a{color:var(--accent-ink)}button,input,select,textarea{font:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.55rem .95rem;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;font-weight:600;cursor:pointer;text-decoration:none}.btn:hover{background:var(--accent-ink)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--line)}.btn-ghost:hover{background:var(--line-soft)}.btn-tiny{padding:.3rem .55rem;font-size:.8rem}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:radial-gradient(800px 400px at 10% 0%,rgba(37,99,235,.08),transparent 60%),linear-gradient(180deg,#f8fafc,#eef2ff 120%)}.auth-card{width:min(420px,100%);background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:1.75rem;display:grid;gap:.85rem;box-shadow:var(--shadow)}.auth-brand{text-align:center;margin-bottom:.25rem}.auth-brand h1{margin:.65rem 0 .25rem;font-size:1.6rem}.auth-card label,.stack-form label,.inline-form label,.page-stack label{display:grid;gap:.3rem;font-size:.85rem;color:var(--muted)}.auth-card input,.stack-form input,.stack-form textarea,.stack-form select,.inline-form input,.toolbar input,.page-stack input,.page-stack textarea,.page-stack select,.topbar select{border:1px solid var(--line);border-radius:8px;padding:.55rem .7rem;background:#fff;color:var(--ink)}.auth-switch{text-align:center}.linkish{background:none;border:0;color:var(--accent-ink);cursor:pointer;font:inherit}.brand-mark{width:2.5rem;height:2.5rem;border-radius:12px;background:linear-gradient(145deg,#3b82f6,#1d4ed8);display:grid;place-items:center;flex-shrink:0}.brand-mark.lg{width:3rem;height:3rem;margin:0 auto}.brand-mark span{width:1.1rem;height:.85rem;border-radius:2px;background:#ffffffeb;box-shadow:0 .35rem #ffffff8c}.app-shell{display:flex;min-height:100vh;max-width:100%;min-width:0;overflow-x:hidden}.sidebar{width:var(--sidebar-w);background:var(--surface);border-right:1px solid var(--line-soft);display:flex;flex-direction:column;position:relative;z-index:30}.app-shell.collapsed .sidebar{width:var(--sidebar-w-collapsed)}.sidebar-brand{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1rem;border-bottom:1px solid var(--line-soft)}.brand-name{font-weight:700;font-size:1.05rem;line-height:1.1}.brand-sub{font-size:.72rem;color:var(--muted);margin-top:.15rem}.sidebar-collapse{position:absolute;top:1.35rem;right:-.75rem;width:1.5rem;height:1.5rem;border-radius:999px;border:1px solid var(--line);background:#fff;cursor:pointer;z-index:2}.sidebar-nav{flex:1;overflow:auto;padding:.85rem .65rem;display:grid;gap:.25rem;align-content:start}.nav-item{display:flex;align-items:center;gap:.65rem;padding:.65rem .75rem;border-radius:8px;color:#475569;text-decoration:none;border:0;background:transparent;width:100%;text-align:left;cursor:pointer;font-weight:500;font-size:.92rem}.nav-item:hover{background:var(--line-soft);color:var(--ink)}.nav-item.active{background:var(--accent-soft);color:var(--accent-ink)}.nav-item.danger{color:var(--danger)}.nav-item.danger:hover{background:var(--danger-soft)}.app-shell.collapsed .nav-label,.app-shell.collapsed .brand-name,.app-shell.collapsed .brand-sub,.app-shell.collapsed .role-hint{display:none}.sidebar-footer{border-top:1px solid var(--line-soft);padding:.75rem}.role-hint{margin:0 0 .5rem;font-size:.75rem;color:var(--muted);padding:0 .5rem}.main-col{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;background:var(--surface);border-bottom:1px solid var(--line-soft);min-width:0;flex-wrap:nowrap}.topbar-org,.topbar-context,.topbar-user{min-width:0}.topbar-org{flex:1 1 auto}.topbar-user{margin-left:auto;flex:0 1 auto}.org-select-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--muted);min-width:0;max-width:100%}.org-select-label select{min-width:0;max-width:100%}.topbar-org-name,.topbar-email,.sidebar-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;min-width:0}.mobile-only{display:none}.desktop-only{display:block}.page{padding:1.25rem 1.5rem 2.5rem;min-width:0;overflow-x:hidden}.page-stack{display:grid;gap:1rem;max-width:1100px}.page-header h1{margin:0 0 .35rem;font-size:1.55rem}.page-header .muted,.muted{color:var(--muted)}.error,.error-inline{color:var(--danger)}.error details{margin-top:.4rem;color:var(--ink)}.agent-tech-details{margin:.35rem 0 0;white-space:pre-wrap;word-break:break-word;font-size:.85rem}.ok{color:var(--ok)}.action-status{margin:0 0 .75rem;padding:.55rem .75rem;border-radius:8px;border:1px solid var(--line);background:var(--surface);font-size:.92rem;line-height:1.35}.action-status.is-error{color:var(--danger);border-color:#fecaca;background:var(--danger-soft)}.action-status.is-ok{color:var(--ok);border-color:#bbf7d0;background:#f0fdf4}.save-row{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}.touch-target{min-height:44px;min-width:44px;box-sizing:border-box}.btn-tiny.touch-target{min-height:44px;padding-top:.55rem;padding-bottom:.55rem}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.1rem;box-shadow:var(--shadow)}.panel h2{margin:0 0 .75rem;font-size:1rem}.card-list,.plain-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.list-card{display:flex;justify-content:space-between;gap:.75rem;align-items:center;padding:.75rem;border:1px solid var(--line);border-radius:8px;background:#fff;min-width:0}.list-card>.lib-item,.list-card>.list-card-main{flex:1 1 auto;min-width:0}.list-card>.btn-row{flex:0 0 auto;max-width:100%}.list-card-stack{flex-direction:column;align-items:stretch}.list-card-main{display:flex;justify-content:space-between;gap:.75rem;align-items:center;min-width:0}.lib-item{display:grid;gap:.15rem;width:100%;min-width:0;text-align:left;border:1px solid transparent;border-radius:8px;padding:.65rem .7rem;background:transparent;cursor:pointer;color:inherit}.lib-item:hover,.lib-item.active{border-color:#bfdbfe;background:var(--accent-soft)}.lib-name,.list-row-title{font-weight:600;overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%}.lib-meta{color:var(--muted);font-size:.8rem;overflow-wrap:anywhere;word-break:break-word;min-width:0}.badge{display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:999px;background:var(--line-soft);color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.badge-pii{background:color-mix(in srgb,#b45309 18%,var(--surface));color:#92400e;text-transform:none;letter-spacing:0;margin:.15rem .25rem 0 0}.field-pii-row{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem;margin-top:.35rem}.toolbar{display:flex;gap:.5rem;align-items:center}.toolbar.wrap,.btn-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.split{display:grid;grid-template-columns:minmax(240px,340px) 1fr;gap:1rem;align-items:start}.stack-form,.inline-form{display:grid;gap:.75rem}.check-row{display:flex!important;align-items:center;gap:.5rem;color:var(--ink)!important}.chart-figure{margin:0}.chart-figure figcaption{font-weight:600;margin-bottom:.65rem}.chart-figure.compact figcaption{font-size:.95rem}.bar-chart{display:grid;gap:.45rem}.bar-row{display:grid;grid-template-columns:minmax(3.5rem,7rem) 1fr auto;gap:.55rem;align-items:center}.bar-label{font-size:.82rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{height:.55rem;background:var(--line-soft);border-radius:3px;overflow:hidden}.bar-fill{display:block;height:100%;background:var(--chart-1)}.bar-value{font-variant-numeric:tabular-nums;font-size:.82rem;min-width:2rem;text-align:right}.pie-wrap{display:grid;grid-template-columns:minmax(7rem,9rem) 1fr;gap:.85rem;align-items:center}.pie-svg,.line-svg{width:100%;height:auto;display:block}.line-svg{background:var(--line-soft);border-radius:6px}.chart-table{width:100%;border-collapse:collapse;font-size:.88rem}.chart-table th,.chart-table td{text-align:left;padding:.35rem .45rem;border-bottom:1px solid var(--line)}.pie-legend{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}.pie-legend li{display:grid;grid-template-columns:auto 1fr auto;gap:.5rem;align-items:center}.swatch{width:.75rem;height:.75rem;border-radius:2px}.render-note,.notes-block{color:var(--muted);font-size:.85rem}.tile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem;margin-top:.75rem}.tile{border:1px solid var(--line);border-radius:8px;padding:.75rem;background:#fff}.chat-layout{min-height:60vh}.chat-log{display:grid;gap:.65rem;margin:.75rem 0;max-height:50vh;overflow:auto}.bubble{border:1px solid var(--line);border-radius:10px;padding:.65rem .8rem;background:#fff}.bubble.user{background:var(--accent-soft)}.bubble p{margin:.35rem 0 0;white-space:pre-wrap}.chat-compose{display:grid;gap:.5rem}.run-panel .steps,.steps{list-style:none;margin:.5rem 0 0;padding:0}.steps li{display:flex;gap:.65rem;padding:.4rem 0;border-bottom:1px solid var(--line-soft);font-size:.9rem}.step-kind{color:var(--accent);text-transform:uppercase;font-size:.72rem;letter-spacing:.04em}.order-list{margin:0;padding:0;list-style:none;display:grid;gap:.45rem}.order-list li,.key-row{display:flex;justify-content:space-between;gap:.75rem;align-items:center;padding:.55rem 0;border-bottom:1px solid var(--line-soft)}.key-row{flex-wrap:wrap}.key-row label{flex:1;min-width:220px}.slide-editor{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.crumb{margin:0 0 .35rem;font-size:.85rem}.present-root{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b1220;color:#f8fafc;z-index:50;display:grid;grid-template-rows:1fr auto}.present-root.presenter{grid-template-columns:1fr 280px;grid-template-rows:1fr auto}.present-stage{padding:2rem;display:grid;place-items:center;overflow:auto}.present-stage .chart-figure{width:min(880px,100%);background:#fff;color:var(--ink);border-radius:12px;padding:1.25rem}.slide-title h1{font-size:clamp(2rem,5vw,3.5rem);margin:0}.slide-content{max-width:40rem;line-height:1.55}.slide-content p,.slide-content h2,.present-stage{overflow-wrap:anywhere;word-break:break-word}.presenter-notes{background:#111827;padding:1rem;border-left:1px solid #1f2937}.present-controls{display:flex;gap:.75rem;align-items:center;justify-content:center;padding:.85rem;background:#00000059;grid-column:1 / -1}.mobile-nav-btn,.nav-backdrop{display:none}@media(max-width:900px){html,body,#root{overflow-x:hidden;max-width:100%}.app-shell,.main-col,.page,.page-stack,.panel,.split,.chat-layout{max-width:100%;min-width:0}.split{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(18rem,88vw);max-width:100%;transform:translate(-105%);transition:transform .2s ease;box-shadow:0 10px 40px #0f172a2e}.app-shell.collapsed .sidebar{width:min(18rem,88vw)}.sidebar.open{transform:translate(0)}.mobile-nav-btn{display:inline-flex;flex:0 0 auto}.desktop-only{display:none!important}.mobile-only{display:block}.topbar{gap:.5rem;padding:.65rem .85rem}.topbar-context{flex:1 1 auto;min-width:0}.sidebar-account{padding:.75rem .85rem;border-bottom:1px solid var(--line-soft);display:grid;gap:.55rem}.sidebar-account .org-select-label{flex-direction:column;align-items:stretch;gap:.3rem}.sidebar-email{font-size:.82rem;color:var(--muted);margin:0}.nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;border:0;background:#0f172a59;z-index:25}.sidebar-collapse{display:none}.page{padding:1rem;padding-bottom:70vh}.btn-row,.toolbar{flex-wrap:wrap}.order-list,.key-row,.list-card,.chat-compose,.bar-row{max-width:100%}.bar-row{grid-template-columns:minmax(2.5rem,5rem) 1fr auto}.action-status{position:sticky;top:.5rem;z-index:5;box-shadow:var(--shadow)}.nav-item,.mobile-nav-btn,.btn,.btn-tiny,.page-stack input,.page-stack textarea,.page-stack select,.toolbar input,.inline-form input,.stack-form input,.stack-form textarea,.stack-form select,.topbar select,.sidebar-account select,.org-select-label select{min-height:44px;box-sizing:border-box}.btn-tiny{padding-top:.55rem;padding-bottom:.55rem}}
