/* Shared collection primitives. Scoped so user-created apps keep their own canvas. */
.product-tabs { display:flex; gap:24px; border-bottom:1px solid var(--line); margin:24px 0; overflow-x:auto; }
.product-tabs [role=tab] { appearance:none; border:0; border-bottom:2px solid transparent; border-radius:0; background:none; color:var(--ink-2); padding:12px 2px; font:inherit; white-space:nowrap; cursor:pointer; }
.product-tabs [aria-selected=true] { color:var(--ink); border-bottom-color:currentColor; font-weight:600; }
.product-tabs [role=tab]:focus-visible { outline:2px solid currentColor; outline-offset:-4px; }
.product-rows { display:flex; flex-direction:column; }
.product-rows .tc-app-card { border:0; border-bottom:1px solid var(--line); border-radius:0; padding:20px 0; background:none; }
.integration-marketplace .connections-intro { border:0; padding:0; background:none; align-items:center; }
.integration-marketplace .connections-intro h2 { font-size:18px; font-weight:500; }
.integration-marketplace .tc-app-search { width:min(100%,520px); }
.integration-marketplace .tc-catalog-head { justify-content:flex-start; }
.integration-marketplace .int-grid { display:flex; flex-direction:column; }
.integration-marketplace .int-card { background:none; border:0; border-bottom:1px solid var(--line); border-radius:0; }
.integration-marketplace .int-name,.integration-marketplace .tc-app-main strong { white-space:normal; overflow-wrap:anywhere; }
.integration-marketplace .tc-app-main { min-width:0; }
.plugin-methods { display:flex; flex-direction:column; gap:12px; margin-top:20px; }
.plugin-account-row { padding:12px 0; border-bottom:1px solid var(--line); }
.plugin-account-row p { color:var(--ink-2); margin:4px 0; }
.sb-resources { margin-top:20px; }
.sb-resources > summary { color:var(--ink-2); padding:8px 12px; cursor:pointer; font-size:13px; }
.sb-scroll { min-height:0; overflow-y:auto; }
.sb-group-title { text-transform:none; }
.account-menu { max-height:min(70vh,650px); overflow-y:auto; }
.theme-setting { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:22px 0; border-bottom:1px solid var(--line); margin-bottom:24px; }
.theme-setting h3 { margin:0 0 5px; font-size:16px; }
.theme-setting p { margin:0; font-size:13px; color:var(--ink-2); }
.theme-switch { --toggle-size:18px; --container-width:5.625em; --container-height:2.5em; --container-radius:6.25em; --container-light-bg:#3D7EAE; --container-night-bg:#1D1F2C; --circle-container-diameter:3.375em; --sun-moon-diameter:2.125em; --sun-bg:#ECCA2F; --moon-bg:#C4C9D1; --spot-color:#959DB1; --circle-container-offset:calc((var(--circle-container-diameter) - var(--container-height)) / 2 * -1); --stars-color:#fff; --clouds-color:#F3FDFF; --back-clouds-color:#AACADF; --transition:.5s cubic-bezier(0,-.02,.4,1.25); --circle-transition:.3s cubic-bezier(0,-.02,.35,1.17); display:inline-block; position:relative; flex-shrink:0; }
.theme-switch,.theme-switch *,.theme-switch *::before,.theme-switch *::after { box-sizing:border-box; margin:0; padding:0; font-size:var(--toggle-size); }
.theme-switch__container { display:block; width:var(--container-width); height:var(--container-height); background:var(--container-light-bg); border-radius:var(--container-radius); overflow:hidden; cursor:pointer; box-shadow:0 -.062em .062em #0004,0 .062em .125em #fffffff0; transition:var(--transition); position:relative; }
.theme-switch__container::before { content:""; position:absolute; z-index:1; inset:0; box-shadow:0 .05em .187em #0004 inset; border-radius:inherit; }
/* Keep the native input focusable; display:none in the supplied demo hid it from keyboards. */
.theme-switch__checkbox { position:absolute; width:1px; height:1px; opacity:0; }
.theme-switch__checkbox:focus-visible + .theme-switch__container { outline:3px solid var(--ink); outline-offset:5px; }
.theme-switch__circle-container { width:var(--circle-container-diameter); height:var(--circle-container-diameter); background:#ffffff1a; position:absolute; left:var(--circle-container-offset); top:var(--circle-container-offset); border-radius:var(--container-radius); box-shadow:inset 0 0 0 3.375em #ffffff1a,0 0 0 .625em #ffffff1a,0 0 0 1.25em #ffffff1a; display:flex; transition:var(--circle-transition); pointer-events:none; }
.theme-switch__sun-moon-container { position:relative; z-index:2; width:var(--sun-moon-diameter); height:var(--sun-moon-diameter); margin:auto; border-radius:var(--container-radius); background:var(--sun-bg); box-shadow:.062em .062em .062em #feffef9c inset,0 -.062em .062em #a1872a inset; filter:drop-shadow(.062em .125em .125em #0004); overflow:hidden; transition:var(--transition); }
.theme-switch__moon { display:block; transform:translateX(100%); width:100%; height:100%; background:var(--moon-bg); border-radius:inherit; box-shadow:.062em .062em .062em #feffef9c inset,0 -.062em .062em #969696 inset; transition:var(--transition); position:relative; }
.theme-switch__spot { position:absolute; top:.75em; left:.312em; width:.75em; height:.75em; border-radius:var(--container-radius); background:var(--spot-color); box-shadow:0 .0312em .062em #0004 inset; }
.theme-switch__spot:nth-of-type(2) { width:.375em; height:.375em; top:.937em; left:1.375em; }
.theme-switch__spot:nth-of-type(3) { width:.25em; height:.25em; top:.312em; left:.812em; }
.theme-switch__clouds { width:1.25em; height:1.25em; background:var(--clouds-color); border-radius:var(--container-radius); position:absolute; bottom:-.625em; left:.312em; box-shadow:.937em .312em var(--clouds-color),-.312em -.312em var(--back-clouds-color),1.437em .375em var(--clouds-color),.5em -.125em var(--back-clouds-color),2.187em 0 var(--clouds-color),1.25em -.062em var(--back-clouds-color),2.937em .312em var(--clouds-color),2em -.312em var(--back-clouds-color),3.625em -.062em var(--clouds-color),2.625em 0 var(--back-clouds-color),4.5em -.312em var(--clouds-color),3.375em -.437em var(--back-clouds-color),4.625em -1.75em 0 .437em var(--clouds-color),4em -.625em var(--back-clouds-color),4.125em -2.125em 0 .437em var(--back-clouds-color); transition:var(--transition); }
.theme-switch__stars-container { position:absolute; color:var(--stars-color); top:-100%; left:.312em; width:2.75em; height:auto; transition:var(--transition); }
.theme-switch__stars-container svg { display:block; width:100%; }
.theme-switch__checkbox:checked + .theme-switch__container { background:var(--container-night-bg); }
.theme-switch__checkbox:checked + .theme-switch__container .theme-switch__circle-container { left:calc(100% - var(--circle-container-offset) - var(--circle-container-diameter)); }
.theme-switch__checkbox:checked + .theme-switch__container .theme-switch__moon { transform:translateX(0); }
.theme-switch__checkbox:checked + .theme-switch__container .theme-switch__clouds { bottom:-4.062em; }
.theme-switch__checkbox:checked + .theme-switch__container .theme-switch__stars-container { top:50%; transform:translateY(-50%); }
@media (hover:hover) { .theme-switch:hover .theme-switch__circle-container { left:calc(var(--circle-container-offset) + .187em); } .theme-switch:hover .theme-switch__checkbox:checked + .theme-switch__container .theme-switch__circle-container { left:calc(100% - var(--circle-container-offset) - var(--circle-container-diameter) - .187em); } }
@media (prefers-reduced-motion:reduce) { .theme-switch * { transition:none !important; } }
@media (max-width:600px) { .product-tabs { gap:20px; } .product-rows .tc-app-card { flex-wrap:wrap; } .product-rows .tc-app-main { flex:1; } .product-rows .tc-app-card > .btn { min-height:44px; } .theme-setting { gap:12px; } .connections-intro { flex-wrap:wrap; } }
.product-page-intro p { color:var(--ink-2); font-size:16px; margin:0; }
.product-agent-row { display:flex; align-items:center; gap:22px; padding:24px 0; border-bottom:1px solid var(--line); min-width:0; }
.product-agent-avatar { display:grid; place-items:center; width:70px; height:70px; flex-shrink:0; text-decoration:none; }
.product-agent-avatar > * { width:64px!important; height:64px!important; }
.product-agent-copy { flex:1; min-width:0; }
.product-agent-name { color:var(--ink); font-size:17px; font-weight:600; text-decoration:none; overflow-wrap:anywhere; }
.product-agent-name:hover { text-decoration:underline; }
.product-agent-copy p { color:var(--ink-2); margin:6px 0; font-size:14px; overflow-wrap:anywhere; }
.product-agent-copy > span { color:var(--ink-2); font-size:13px; }
.product-row-actions { display:flex; gap:8px; align-items:center; }
.product-row-actions > .btn,.product-row-actions summary { min-height:40px; }
.home-brand-line { color:var(--ink-2); font-size:13px; letter-spacing:.03em; margin:12px 0 24px; }
.home-start .ce-title { font-size:clamp(28px,3.2vw,42px); line-height:1.2; text-wrap:balance; }
.home-start .home-brand-lockup { margin-bottom:28px; }
.integration-marketplace .tc-app-card { display:flex; align-items:center; gap:18px; }
.integration-marketplace .tc-app-card > .integration-logo { width:44px; height:44px; flex-shrink:0; }
.integration-marketplace .tc-app-main { flex:1; display:flex; flex-direction:column; gap:6px; }
.integration-marketplace .tc-app-main span { color:var(--ink-2); font-size:14px; }
.integration-marketplace .int-card { padding:22px 0; }
.integration-marketplace .int-sub { overflow-wrap:anywhere; white-space:normal; }
.integration-marketplace .tc-actions { flex-wrap:wrap; }
.product-tabs [role=tab] { min-height:44px; }
@media (max-width:600px) {
 .product-agent-row { gap:14px; align-items:flex-start; flex-wrap:wrap; padding:22px 0; }
 .product-agent-avatar { width:52px; height:52px; }
 .product-agent-avatar > * { width:48px!important; height:48px!important; }
 .product-agent-copy { flex-basis:calc(100% - 70px); }
 .product-row-actions { margin-left:66px; }
 .product-row-actions > .btn,.product-row-actions summary { min-height:44px; }
 .integration-marketplace .tc-app-card > .btn { margin-left:62px; }
 .integration-marketplace .tc-app-main { flex-basis:calc(100% - 62px); }
 .integration-marketplace .connections-intro .grow { flex-basis:100%; }
}
.product-agent-cover { width:76px; height:56px; border-radius:10px; background-position:center; background-size:cover; flex-shrink:0; }
.product-row-actions .btn,.product-rows .tc-app-card > .btn { background:transparent; color:var(--ink); border:1px solid var(--line); }
.product-row-actions .btn:hover,.product-rows .tc-app-card > .btn:hover { background:var(--hover); }
@media(max-width:600px) { .product-agent-cover { width:100%; height:80px; } }
@media(max-width:600px) { .product-row-actions { margin-left:auto; } .product-row-actions .library-option-actions { max-width:calc(100vw - 40px); } }
.product-pin-manage,.product-update{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.product-pin-manage>a,.product-update>div{min-width:0;overflow-wrap:anywhere}.product-pin-manage>span{display:flex;gap:4px;flex-shrink:0}
.product-update a{display:block;margin-top:4px}.product-update.read{opacity:.7}.product-update small{color:var(--muted)}
.product-library-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0}.product-library-tools select{max-width:100%;margin-left:6px}.product-library-row{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.product-library-row .grow{min-width:0;overflow-wrap:anywhere}.product-library-row p{margin:6px 0 0}.product-library-row>button{flex-shrink:0}
.creation-choices{display:grid;gap:12px;margin:20px 0}.creation-choices>.btn{padding:20px;text-align:left}.product-discover-strip{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 0;margin-bottom:12px;border-bottom:1px solid var(--line)}.product-discover-strip>a{flex-shrink:0}.portable-package{white-space:pre-wrap;overflow-wrap:anywhere;max-height:45vh;overflow:auto;padding:16px;border:1px solid var(--line);border-radius:8px}.product-library-row .library-options{flex-shrink:0}
.product-app-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.product-app-toolbar>strong{flex:1;min-width:0;overflow-wrap:anywhere}.saved-app-frame{width:100%;height:calc(100dvh - 210px);min-height:400px;border:1px solid var(--line);border-radius:10px;background:white}

.routine-focused{outline:2px solid var(--ink);outline-offset:3px}

[data-sidebar-section] > summary{cursor:pointer;list-style:none}[data-sidebar-section] > summary::-webkit-details-marker{display:none}[data-sidebar-section] > summary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
/* Keep resource headings readable when mobile actions wrap. */
@media(max-width:600px){.topbar:has(.btn.primary) h1{flex:1 1 calc(100% - 54px);min-width:calc(100% - 54px);white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}}
