*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--tn-color-bg);color:var(--tn-color-text);font-family:var(--tn-font-body);font-size:var(--tn-text-md);-webkit-font-smoothing:antialiased;line-height:1.5}a{color:var(--tn-color-primary)}h1,h2,h3{margin:0;line-height:1.25}code{font-family:var(--tn-font-mono)}.tn-page{width:100%;max-width:var(--tn-layout-content-width);gap:var(--tn-space-5);grid-template-columns:minmax(0,1fr);margin:0 auto;display:grid}.tn-page[data-width=narrow]{max-width:760px}.tn-page[data-width=full]{max-width:none}.tn-page-header{justify-content:space-between;align-items:flex-end;gap:var(--tn-space-3) var(--tn-space-6);flex-wrap:wrap;display:flex}.tn-page-heading{gap:var(--tn-space-1);min-width:0;display:grid}.tn-page-title{font-size:var(--tn-text-2xl);font-weight:var(--tn-weight-semibold);letter-spacing:-.01em;margin:0;line-height:1.2}.tn-page-description{color:var(--tn-color-text-muted);max-width:72ch;margin:0}.tn-page-actions{gap:var(--tn-space-2);flex-wrap:wrap;align-items:center;display:flex}.tn-back{align-items:center;gap:var(--tn-space-1);font-size:var(--tn-text-sm);color:var(--tn-color-text-muted);width:fit-content;text-decoration:none;display:inline-flex}.tn-back:hover{color:var(--tn-color-primary)}.tn-stack{flex-direction:column;min-width:0;display:flex}.tn-stack[data-direction=row]{flex-direction:row}.tn-grid{grid-template-columns:repeat(auto-fit, minmax(min(var(--tn-grid-min,240px), 100%), 1fr));display:grid}.tn-divider{border:0;border-top:1px solid var(--tn-color-border);margin:0}.tn-card{background:var(--tn-color-surface);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-lg);box-shadow:var(--tn-shadow-sm);flex-direction:column;min-width:0;display:flex}.tn-card-header{justify-content:space-between;align-items:flex-start;gap:var(--tn-space-3);padding:var(--tn-space-4) var(--tn-space-5) 0;display:flex}.tn-card-title{font-size:var(--tn-text-lg);font-weight:var(--tn-weight-semibold);margin:0}.tn-card-description{color:var(--tn-color-text-muted);font-size:var(--tn-text-sm);margin:var(--tn-space-1) 0 0}.tn-card-body{padding:var(--tn-space-4) var(--tn-space-5) var(--tn-space-5);flex:1;min-width:0}.tn-card-body:first-child{padding-top:var(--tn-space-5)}.tn-details{border:1px dashed var(--tn-color-border-strong);border-radius:var(--tn-radius-lg);background:var(--tn-color-surface-muted);min-width:0}.tn-details-summary{align-items:center;gap:var(--tn-space-2);padding:var(--tn-space-3) var(--tn-space-4);cursor:pointer;color:var(--tn-color-text-muted);font-size:var(--tn-text-sm);font-weight:var(--tn-weight-medium);border-radius:var(--tn-radius-lg);list-style:none;display:flex}.tn-details-summary::-webkit-details-marker{display:none}.tn-details-summary:hover{color:var(--tn-color-text)}.tn-details-chevron{flex-shrink:0;transition:transform .15s}.tn-details[open]>.tn-details-summary .tn-details-chevron{transform:rotate(90deg)}.tn-details-title{min-width:0}.tn-details-body{gap:var(--tn-space-4);padding:0 var(--tn-space-4) var(--tn-space-4);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.tn-details-description{color:var(--tn-color-text-muted);font-size:var(--tn-text-sm);margin:0}.tn-card[data-padding=none]>.tn-card-body{padding:var(--tn-space-3) 0 0}.tn-card[data-padding=none]>.tn-card-body:first-child{padding-top:0}.tn-card-footer{border-top:1px solid var(--tn-color-border);padding:var(--tn-space-3) var(--tn-space-5);background:var(--tn-color-surface-muted);border-radius:0 0 var(--tn-radius-lg) var(--tn-radius-lg)}.tn-button{--tn-button-bg:var(--tn-color-surface);--tn-button-fg:var(--tn-color-text);--tn-button-border:var(--tn-color-border-strong);--tn-button-hover:var(--tn-color-surface-hover);justify-content:center;align-items:center;gap:var(--tn-space-2);height:var(--tn-control-md);padding:0 var(--tn-space-4);font:inherit;font-weight:var(--tn-weight-medium);white-space:nowrap;color:var(--tn-button-fg);background:var(--tn-button-bg);border:1px solid var(--tn-button-border);border-radius:var(--tn-radius-sm);box-shadow:var(--tn-shadow-sm);cursor:pointer;transition:background var(--tn-motion-fast), border-color var(--tn-motion-fast), box-shadow var(--tn-motion-fast);line-height:1;text-decoration:none;display:inline-flex}.tn-button:hover:not(:disabled){background:var(--tn-button-hover)}.tn-button:disabled{opacity:.55;cursor:not-allowed}.tn-button[data-variant=primary]{--tn-button-bg:var(--tn-color-primary);--tn-button-fg:var(--tn-color-primary-text);--tn-button-border:var(--tn-color-primary);--tn-button-hover:var(--tn-color-primary-hover)}.tn-button[data-variant=danger]{--tn-button-bg:var(--tn-color-danger);--tn-button-fg:var(--tn-color-primary-text);--tn-button-border:var(--tn-color-danger);--tn-button-hover:var(--tn-color-danger-hover)}.tn-button[data-variant=ghost]{--tn-button-bg:transparent;--tn-button-border:transparent;box-shadow:none}.tn-button[data-variant=ghost-danger]{--tn-button-bg:transparent;--tn-button-fg:var(--tn-color-danger);--tn-button-border:transparent;--tn-button-hover:var(--tn-color-danger-soft);box-shadow:none}.tn-button[data-size=sm]{height:var(--tn-control-sm);padding:0 var(--tn-space-3);font-size:var(--tn-text-sm);gap:var(--tn-space-1)}.tn-button[data-block]{width:100%}.tn-button[data-icon-only]{width:var(--tn-control-md);padding:0}.tn-button[data-icon-only][data-size=sm]{width:var(--tn-control-sm)}.tn-button svg{flex:none;width:16px;height:16px}.tn-button:focus-visible,.tn-input:focus-visible,.tn-select select:focus-visible,.tn-check input:focus-visible,.tn-switch input:focus-visible+.tn-switch-track,.tn-chip:focus-visible,.tn-tab:focus-visible,.tn-menu-item:focus-visible,.tn-row-link:focus-visible,.tn-nav-link:focus-visible,.tn-details-summary:focus-visible,.tn-pagination button:focus-visible{box-shadow:0 0 0 3px var(--tn-color-focus);outline:none}.tn-field{gap:var(--tn-space-1);min-width:0;display:grid}.tn-field-label{font-size:var(--tn-text-sm);font-weight:var(--tn-weight-medium);color:var(--tn-color-text)}.tn-field-required{color:var(--tn-color-danger);margin-left:2px}.tn-field-hint{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted)}.tn-field-error{font-size:var(--tn-text-xs);color:var(--tn-color-danger)}.tn-input{width:100%;min-width:0;height:var(--tn-control-md);padding:0 var(--tn-space-3);font:inherit;color:var(--tn-color-text);background:var(--tn-color-surface);border:1px solid var(--tn-color-border-strong);border-radius:var(--tn-radius-sm);transition:border-color var(--tn-motion-fast), box-shadow var(--tn-motion-fast)}.tn-input::placeholder{color:var(--tn-color-text-subtle)}.tn-input:hover:not(:disabled){border-color:var(--tn-color-text-subtle)}.tn-input:focus-visible{border-color:var(--tn-color-primary)}.tn-input[aria-invalid=true]{border-color:var(--tn-color-danger)}.tn-input:disabled{background:var(--tn-color-surface-muted);color:var(--tn-color-text-muted)}textarea.tn-input{height:auto;min-height:calc(var(--tn-control-md) * 2);padding:var(--tn-space-2) var(--tn-space-3);resize:vertical;line-height:1.5}.tn-input[data-mono]{font-family:var(--tn-font-mono);font-size:var(--tn-text-sm)}.tn-input-wrap{align-items:center;min-width:0;display:flex;position:relative}.tn-input-wrap>.tn-input-icon{left:var(--tn-space-3);color:var(--tn-color-text-subtle);pointer-events:none;width:16px;height:16px;position:absolute}.tn-input-wrap>.tn-input[data-with-icon]{padding-left:calc(var(--tn-space-3) + 16px + var(--tn-space-2))}.tn-input-wrap>.tn-input-clear{right:var(--tn-space-1);position:absolute}.tn-select{min-width:0;display:flex;position:relative}.tn-select select{appearance:none;padding-right:calc(var(--tn-space-3) + 16px + var(--tn-space-2));cursor:pointer}.tn-select>svg{right:var(--tn-space-3);width:16px;height:16px;color:var(--tn-color-text-muted);pointer-events:none;position:absolute;top:50%;translate:0 -50%}.tn-check{align-items:flex-start;gap:var(--tn-space-2);cursor:pointer;line-height:1.4;display:inline-flex}.tn-check input{appearance:none;border:1px solid var(--tn-color-border-strong);background:var(--tn-color-surface);cursor:pointer;border-radius:4px;flex:none;place-content:center;width:16px;height:16px;margin:2px 0 0;display:grid}.tn-check input:checked{background:var(--tn-color-primary);border-color:var(--tn-color-primary)}.tn-check input:checked:after{content:"";border:2px solid var(--tn-color-primary-text);border-top:0;border-right:0;width:9px;height:5px;translate:0 -1px;rotate:-45deg}.tn-check input:disabled,.tn-check input:disabled+span{opacity:.55;cursor:not-allowed}.tn-check-hint{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);display:block}.tn-switch{align-items:center;gap:var(--tn-space-2);cursor:pointer;display:inline-flex}.tn-switch input{opacity:0;width:1px;height:1px;position:absolute}.tn-switch-track{border-radius:var(--tn-radius-full);background:var(--tn-color-border-strong);width:34px;height:20px;transition:background var(--tn-motion-fast);flex:none;position:relative}.tn-switch-track:after{content:"";background:var(--tn-color-surface);width:16px;height:16px;box-shadow:var(--tn-shadow-sm);transition:translate var(--tn-motion-fast);border-radius:50%;position:absolute;top:2px;left:2px}.tn-switch input:checked+.tn-switch-track{background:var(--tn-color-primary)}.tn-switch input:checked+.tn-switch-track:after{translate:14px}.tn-switch input:disabled+.tn-switch-track{opacity:.55}.tn-form-grid{gap:var(--tn-space-4);grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));display:grid}.tn-fieldset{border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);padding:var(--tn-space-3) var(--tn-space-4) var(--tn-space-4);min-width:0;margin:0}.tn-fieldset[data-bare]{border:0;border-radius:0;padding:0}.tn-fieldset legend{padding:0 var(--tn-space-1);font-size:var(--tn-text-sm);font-weight:var(--tn-weight-medium)}.tn-form-actions{align-items:center;gap:var(--tn-space-2);flex-wrap:wrap;display:flex}.tn-form-actions>[data-push]{margin-left:auto}.tn-table-scroll{min-width:0;overflow-x:auto}.tn-table{border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums;width:100%}.tn-table th{z-index:1;text-align:left;font-size:var(--tn-text-xs);font-weight:var(--tn-weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--tn-color-text-muted);background:var(--tn-color-surface-muted);padding:var(--tn-space-2) var(--tn-space-4);border-top:1px solid var(--tn-color-border);border-bottom:1px solid var(--tn-color-border);white-space:nowrap;position:sticky;top:0}.tn-table td{padding:var(--tn-space-3) var(--tn-space-4);border-bottom:1px solid var(--tn-color-border);vertical-align:middle}.tn-table tbody tr:last-child td{border-bottom:0}.tn-table tbody tr:hover td{background:var(--tn-color-surface-muted)}.tn-table tr[data-clickable]{cursor:pointer}.tn-table tr[data-muted] td{color:var(--tn-color-text-muted)}.tn-table [data-align=right]{text-align:right}.tn-table [data-align=center]{text-align:center}.tn-table [data-nowrap]{white-space:nowrap}.tn-table [data-shrink]{white-space:nowrap;width:1%}.tn-table-state{padding:var(--tn-space-6) var(--tn-space-4)}.tn-table-footer{border-top:1px solid var(--tn-color-border);padding:var(--tn-space-3) var(--tn-space-4)}.tn-row-link{color:inherit;font-weight:var(--tn-weight-medium);border-radius:2px;text-decoration:none}.tn-row-link:hover{color:var(--tn-color-primary)}.tn-table-frame{background:var(--tn-color-surface);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-lg);box-shadow:var(--tn-shadow-sm);overflow:hidden}.tn-table-frame .tn-table th{border-top:0}.tn-badge{--tn-badge-bg:var(--tn-color-neutral-soft);--tn-badge-fg:var(--tn-color-text-muted);max-width:100%;padding:2px var(--tn-space-2);font-size:var(--tn-text-xs);font-weight:var(--tn-weight-medium);white-space:nowrap;color:var(--tn-badge-fg);background:var(--tn-badge-bg);border-radius:var(--tn-radius-full);border:1px solid #0000;align-items:center;gap:6px;width:fit-content;line-height:1.5;display:inline-flex}.tn-badge[data-tone=info]{--tn-badge-bg:var(--tn-color-primary-soft);--tn-badge-fg:var(--tn-color-primary-soft-text)}.tn-badge[data-tone=success]{--tn-badge-bg:var(--tn-color-success-soft);--tn-badge-fg:var(--tn-color-success)}.tn-badge[data-tone=warning]{--tn-badge-bg:var(--tn-color-warning-soft);--tn-badge-fg:var(--tn-color-warning)}.tn-badge[data-tone=danger]{--tn-badge-bg:var(--tn-color-danger-soft);--tn-badge-fg:var(--tn-color-danger)}.tn-badge[data-variant=outline]{background:0 0;border-color:currentColor}.tn-badge-dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.tn-avatar{width:28px;height:28px;font-size:var(--tn-text-xs);font-weight:var(--tn-weight-semibold);color:var(--tn-color-primary-text);background:var(--tn-avatar-color,var(--tn-color-chart-1));-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-content:center;display:inline-grid}.tn-avatar>img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.tn-avatar[data-size=lg]{width:40px;height:40px;font-size:var(--tn-text-md)}.tn-person{align-items:center;gap:var(--tn-space-2);min-width:0;display:inline-flex}.tn-person-text{min-width:0;line-height:1.3;display:grid}.tn-person-text>:last-child:not(:first-child){font-size:var(--tn-text-xs);color:var(--tn-color-text-muted)}.tn-code{font-family:var(--tn-font-mono);background:var(--tn-color-neutral-soft);color:var(--tn-color-text);overflow-wrap:anywhere;border-radius:4px;padding:1px 5px;font-size:.92em}.tn-muted{color:var(--tn-color-text-muted)}.tn-visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tn-small{font-size:var(--tn-text-sm)}.tn-stat{gap:var(--tn-space-1);padding:var(--tn-space-4) var(--tn-space-5);background:var(--tn-color-surface);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-lg);box-shadow:var(--tn-shadow-sm);display:grid}.tn-stat-label{align-items:center;gap:var(--tn-space-2);font-size:var(--tn-text-sm);color:var(--tn-color-text-muted);display:flex}.tn-stat-label svg{width:16px;height:16px}.tn-stat-value{font-size:var(--tn-text-2xl);font-weight:var(--tn-weight-semibold);font-variant-numeric:tabular-nums;line-height:1.2}.tn-stat-delta{font-size:var(--tn-text-sm);color:var(--tn-color-text-muted)}.tn-stat-delta[data-tone=good]>b{color:var(--tn-color-success)}.tn-stat-delta[data-tone=bad]>b{color:var(--tn-color-danger)}.tn-stat-delta>b{font-weight:var(--tn-weight-semibold)}.tn-kv{gap:var(--tn-space-2) var(--tn-space-4);grid-template-columns:fit-content(40%) minmax(0,1fr);margin:0;display:grid}.tn-kv dt{color:var(--tn-color-text-muted);font-size:var(--tn-text-sm);overflow-wrap:anywhere;min-width:0}.tn-kv dd{overflow-wrap:anywhere;min-width:0;margin:0}.tn-timeline{margin:0;padding:0;list-style:none;display:grid}.tn-timeline-item{gap:var(--tn-space-3);padding-bottom:var(--tn-space-4);grid-template-columns:24px 1fr;display:grid;position:relative}.tn-timeline-item:not(:last-child):before{content:"";background:var(--tn-color-border);width:2px;position:absolute;top:24px;bottom:0;left:11px}.tn-timeline-marker{background:var(--tn-color-neutral-soft);width:24px;height:24px;color:var(--tn-color-text-muted);border-radius:50%;place-content:center;display:grid}.tn-timeline-marker svg{width:13px;height:13px}.tn-timeline-marker[data-tone=info]{background:var(--tn-color-primary-soft);color:var(--tn-color-primary-soft-text)}.tn-timeline-marker[data-tone=success]{background:var(--tn-color-success-soft);color:var(--tn-color-success)}.tn-timeline-marker[data-tone=warning]{background:var(--tn-color-warning-soft);color:var(--tn-color-warning)}.tn-timeline-marker[data-tone=danger]{background:var(--tn-color-danger-soft);color:var(--tn-color-danger)}.tn-timeline-head{justify-content:space-between;align-items:baseline;gap:0 var(--tn-space-3);flex-wrap:wrap;min-height:24px;display:flex}.tn-timeline-title{font-weight:var(--tn-weight-medium)}.tn-timeline-meta{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);white-space:nowrap}.tn-timeline-body{margin-top:var(--tn-space-1);color:var(--tn-color-text-muted);overflow-wrap:anywhere}.tn-json{gap:var(--tn-space-1);font-size:var(--tn-text-xs);flex-wrap:wrap;display:flex}.tn-json-pair{background:var(--tn-color-neutral-soft);border-radius:4px;gap:4px;max-width:100%;padding:1px 6px;display:inline-flex}.tn-json-pair>span:first-child{color:var(--tn-color-text-muted)}.tn-json-pair>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:28ch;overflow:hidden}.tn-json-pre{font-family:var(--tn-font-mono);font-size:var(--tn-text-xs);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--tn-color-surface-muted);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-sm);padding:var(--tn-space-2) var(--tn-space-3);margin:0}.tn-empty{text-align:center;justify-items:center;gap:var(--tn-space-2);padding:var(--tn-space-8) var(--tn-space-4);display:grid}.tn-empty-icon{background:var(--tn-color-neutral-soft);width:44px;height:44px;color:var(--tn-color-text-muted);margin-bottom:var(--tn-space-1);border-radius:50%;place-content:center;display:grid}.tn-empty-icon svg{width:20px;height:20px}.tn-empty-title{font-weight:var(--tn-weight-semibold)}.tn-empty-text{color:var(--tn-color-text-muted);max-width:46ch;font-size:var(--tn-text-sm)}.tn-empty-action{margin-top:var(--tn-space-2)}.tn-skeleton{background:linear-gradient(90deg, var(--tn-color-neutral-soft) 25%, var(--tn-color-surface-hover) 50%, var(--tn-color-neutral-soft) 75%);background-size:200% 100%;border-radius:4px;height:12px;animation:1.4s ease-in-out infinite tn-shimmer;display:block}@keyframes tn-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.tn-spinner{flex:none;width:16px;height:16px;animation:.8s linear infinite tn-spin}.tn-spinner[data-size=lg]{width:28px;height:28px}@keyframes tn-spin{to{rotate:360deg}}.tn-center{place-items:center;gap:var(--tn-space-3);min-height:160px;color:var(--tn-color-text-muted);display:grid}@media (prefers-reduced-motion:reduce){.tn-skeleton,.tn-spinner{animation:none}}.tn-alert{--tn-alert-bg:var(--tn-color-primary-soft);--tn-alert-fg:var(--tn-color-primary-soft-text);gap:var(--tn-space-3);padding:var(--tn-space-3) var(--tn-space-4);border-radius:var(--tn-radius-md);background:var(--tn-alert-bg);color:var(--tn-color-text);border:1px solid color-mix(in srgb, var(--tn-alert-fg) 18%, transparent);grid-template-columns:20px 1fr auto;align-items:start;display:grid}.tn-alert>svg{width:18px;height:18px;color:var(--tn-alert-fg);margin-top:1px}.tn-alert[data-tone=success]{--tn-alert-bg:var(--tn-color-success-soft);--tn-alert-fg:var(--tn-color-success)}.tn-alert[data-tone=warning]{--tn-alert-bg:var(--tn-color-warning-soft);--tn-alert-fg:var(--tn-color-warning)}.tn-alert[data-tone=danger]{--tn-alert-bg:var(--tn-color-danger-soft);--tn-alert-fg:var(--tn-color-danger)}.tn-alert-title{font-weight:var(--tn-weight-semibold)}.tn-alert-body{font-size:var(--tn-text-sm);overflow-wrap:anywhere}.tn-tabs{gap:var(--tn-space-1);border-bottom:1px solid var(--tn-color-border);scrollbar-width:none;display:flex;overflow-x:auto}.tn-tab{align-items:center;gap:var(--tn-space-2);padding:var(--tn-space-2) var(--tn-space-3);color:var(--tn-color-text-muted);font-weight:var(--tn-weight-medium);white-space:nowrap;border-radius:var(--tn-radius-sm) var(--tn-radius-sm) 0 0;border-bottom:2px solid #0000;margin-bottom:-1px;text-decoration:none;display:inline-flex}button.tn-tab{font:inherit;font-weight:var(--tn-weight-medium);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000}.tn-tab:hover{color:var(--tn-color-text)}.tn-tab.active,.tn-tab[aria-selected=true]{color:var(--tn-color-primary);border-bottom-color:var(--tn-color-primary)}.tn-tab svg{width:16px;height:16px}.tn-count{font-size:var(--tn-text-xs);font-weight:var(--tn-weight-medium);border-radius:var(--tn-radius-full);background:var(--tn-color-neutral-soft);color:var(--tn-color-text-muted);font-variant-numeric:tabular-nums;padding:0 6px}.tn-chips{gap:var(--tn-space-2);flex-wrap:wrap;display:flex}.tn-chip{align-items:center;gap:var(--tn-space-2);height:var(--tn-control-sm);padding:0 var(--tn-space-3);font:inherit;font-size:var(--tn-text-sm);font-weight:var(--tn-weight-medium);color:var(--tn-color-text-muted);background:var(--tn-color-surface);border:1px solid var(--tn-color-border-strong);border-radius:var(--tn-radius-full);cursor:pointer;white-space:nowrap;display:inline-flex}.tn-chip:hover{color:var(--tn-color-text);background:var(--tn-color-surface-hover)}.tn-chip[aria-pressed=true]{color:var(--tn-color-primary-soft-text);background:var(--tn-color-primary-soft);border-color:var(--tn-color-primary)}.tn-chip[aria-pressed=true] .tn-count{background:var(--tn-color-surface);color:var(--tn-color-primary-soft-text)}.tn-filter-bar{align-items:flex-end;gap:var(--tn-space-3);flex-wrap:wrap;display:flex}.tn-filter-bar>.tn-field,.tn-filter-more>.tn-field{flex:180px;max-width:260px}.tn-filter-bar>[data-grow],.tn-filter-more>[data-grow]{flex:3 260px;max-width:none}.tn-filter-more{display:contents}.tn-filter-toggle{display:none}.tn-sort{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.tn-sort svg{opacity:.45;width:13px;height:13px}.tn-sort:hover,.tn-sort[data-active]{color:var(--tn-color-text)}.tn-sort[data-active] svg{opacity:1}.tn-sort:focus-visible{box-shadow:0 0 0 3px var(--tn-color-focus);border-radius:2px;outline:none}.tn-columns-layout{grid-template-columns:var(--tn-aside-width) minmax(0, 1fr);align-items:start;display:grid}.tn-columns-layout[data-side=right]{grid-template-columns:minmax(0, 1fr) var(--tn-aside-width)}.tn-columns-layout[data-side=right]>.tn-columns-aside{order:2}.tn-columns-aside,.tn-columns-main{gap:inherit;min-width:0;display:grid}.tn-toolbar{justify-content:space-between;align-items:flex-end;gap:var(--tn-space-3) var(--tn-space-4);flex-wrap:wrap;display:flex}.tn-toolbar>.tn-filter-bar{flex:420px}.tn-toolbar-actions{gap:var(--tn-space-2);flex-wrap:wrap;margin-left:auto;display:flex}.tn-pagination{justify-content:space-between;align-items:center;gap:var(--tn-space-3);font-size:var(--tn-text-sm);color:var(--tn-color-text-muted);flex-wrap:wrap;display:flex}.tn-pagination-buttons{gap:var(--tn-space-2);display:flex}.tn-dialog{width:min(520px, calc(100vw - 2 * var(--tn-space-4)));max-height:calc(100dvh - 2 * var(--tn-space-6));border-radius:var(--tn-radius-lg);background:var(--tn-color-surface);color:var(--tn-color-text);box-shadow:var(--tn-shadow-lg);border:0;padding:0;overflow:hidden}.tn-dialog[open]{animation:tn-pop var(--tn-motion-normal) ease-out;flex-direction:column;display:flex}.tn-dialog[data-size=lg]{width:min(760px, calc(100vw - 2 * var(--tn-space-4)))}.tn-dialog::backdrop{background:var(--tn-color-overlay);animation:tn-fade var(--tn-motion-normal) ease-out}.tn-dialog-header{justify-content:space-between;align-items:flex-start;gap:var(--tn-space-3);padding:var(--tn-space-5) var(--tn-space-5) 0;display:flex}.tn-dialog-title{font-size:var(--tn-text-lg);font-weight:var(--tn-weight-semibold);margin:0}.tn-dialog-description{margin:var(--tn-space-1) 0 0;color:var(--tn-color-text-muted);font-size:var(--tn-text-sm)}.tn-dialog-body{padding:var(--tn-space-4) var(--tn-space-5);gap:var(--tn-space-4);display:grid;overflow-y:auto}.tn-dialog-header:last-child{padding-bottom:var(--tn-space-5)}.tn-dialog-header:has(+.tn-dialog-footer){padding-bottom:var(--tn-space-5)}.tn-dialog-footer{justify-content:flex-end;gap:var(--tn-space-2);padding:var(--tn-space-3) var(--tn-space-5);border-top:1px solid var(--tn-color-border);background:var(--tn-color-surface-muted);flex-wrap:wrap;display:flex}@keyframes tn-pop{0%{opacity:0;translate:0 8px;scale:.98}}@keyframes tn-fade{0%{opacity:0}}.tn-popover{z-index:40;min-width:180px;max-width:320px;padding:var(--tn-space-1);background:var(--tn-color-surface);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);box-shadow:var(--tn-shadow-md);animation:tn-fade var(--tn-motion-fast) ease-out;position:fixed}.tn-menu-item{align-items:center;gap:var(--tn-space-2);width:100%;padding:var(--tn-space-2) var(--tn-space-3);font:inherit;color:var(--tn-color-text);text-align:left;border-radius:var(--tn-radius-sm);cursor:pointer;background:0 0;border:0;text-decoration:none;display:flex}.tn-menu-item:hover,.tn-menu-item:focus-visible{background:var(--tn-color-surface-hover)}.tn-menu-item[data-danger]{color:var(--tn-color-danger)}.tn-menu-item:disabled{opacity:.55;cursor:not-allowed}.tn-menu-item svg{color:currentColor;width:16px;height:16px}.tn-menu-label{padding:var(--tn-space-2) var(--tn-space-3) var(--tn-space-1);font-size:var(--tn-text-xs);color:var(--tn-color-text-muted)}.tn-menu-separator{height:1px;margin:var(--tn-space-1) 0;background:var(--tn-color-border)}.tn-tooltip{z-index:70;max-width:280px;padding:var(--tn-space-1) var(--tn-space-2);font-size:var(--tn-text-xs);color:var(--tn-color-tooltip-text);background:var(--tn-color-tooltip-bg);border-radius:var(--tn-radius-sm);pointer-events:none;animation:tn-fade var(--tn-motion-fast) ease-out;position:fixed}.tn-toasts{z-index:60;right:var(--tn-space-4);bottom:var(--tn-space-4);gap:var(--tn-space-2);width:min(360px, calc(100vw - 2 * var(--tn-space-4)));display:grid;position:fixed}.tn-toast{gap:var(--tn-space-3);padding:var(--tn-space-3) var(--tn-space-3) var(--tn-space-3) var(--tn-space-4);background:var(--tn-color-surface);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);box-shadow:var(--tn-shadow-md);animation:tn-pop var(--tn-motion-normal) ease-out;grid-template-columns:20px 1fr auto;align-items:start;display:grid}.tn-toast>svg{width:18px;height:18px;color:var(--tn-color-primary);margin-top:1px}.tn-toast[data-tone=success]>svg{color:var(--tn-color-success)}.tn-toast[data-tone=danger]>svg{color:var(--tn-color-danger)}.tn-toast[data-tone=warning]>svg{color:var(--tn-color-warning)}.tn-toast-title{font-weight:var(--tn-weight-semibold)}.tn-toast-text{font-size:var(--tn-text-sm);color:var(--tn-color-text-muted)}.tn-shell{grid-template-columns:var(--tn-layout-nav-width) minmax(0, 1fr);min-height:100%;display:grid}.tn-sidebar{gap:var(--tn-space-4);height:100dvh;padding:var(--tn-space-4) var(--tn-space-3);background:var(--tn-color-nav-bg);color:var(--tn-color-nav-text);border-right:1px solid var(--tn-color-nav-border);flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.tn-brand{align-items:center;gap:var(--tn-space-2);padding:var(--tn-space-1) var(--tn-space-2);font-weight:var(--tn-weight-semibold);font-size:var(--tn-text-lg);color:var(--tn-color-text);text-decoration:none;display:flex}.tn-brand-mark{border-radius:var(--tn-radius-sm);background:var(--tn-color-primary);width:30px;height:30px;color:var(--tn-color-primary-text);flex:none;place-content:center;display:grid}.tn-brand-mark svg{width:18px;height:18px}.tn-nav{gap:var(--tn-space-4);display:grid}.tn-nav-group,.tn-nav-group-items{gap:2px;display:grid}.tn-nav-group-title{width:100%;min-height:32px;padding:0 var(--tn-space-3);font:inherit;font-size:var(--tn-text-xs);font-weight:var(--tn-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--tn-color-text-subtle);border-radius:var(--tn-radius-sm);cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;display:flex}.tn-nav-group-title:hover{color:var(--tn-color-text)}.tn-nav-group-title:focus-visible{box-shadow:0 0 0 3px var(--tn-color-focus);outline:none}.tn-nav-group-title svg{width:14px;height:14px;transition:rotate var(--tn-motion-normal) ease-out}.tn-nav-group[data-collapsed] .tn-nav-group-title svg{rotate:-90deg}.tn-nav-link{align-items:center;gap:var(--tn-space-3);padding:var(--tn-space-2) var(--tn-space-3);border-radius:var(--tn-radius-sm);color:inherit;font-weight:var(--tn-weight-medium);text-decoration:none;display:flex}.tn-nav-link svg{opacity:.85;flex:none;width:18px;height:18px}.tn-nav-link:hover{background:color-mix(in srgb, var(--tn-color-text) 6%, transparent);color:var(--tn-color-text)}.tn-nav-link.active{background:var(--tn-color-nav-active-bg);color:var(--tn-color-nav-active-text);box-shadow:inset 3px 0 0 var(--tn-color-primary)}.tn-nav-link.active svg{opacity:1}.tn-sidebar-footer{gap:var(--tn-space-2);margin-top:auto;display:grid}.tn-main{flex-direction:column;min-width:0;display:flex}.tn-topbar{z-index:20;align-items:center;gap:var(--tn-space-3);height:var(--tn-layout-header-height);padding:0 var(--tn-space-6);background:color-mix(in srgb, var(--tn-color-bg) 85%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--tn-color-border);display:flex;position:sticky;top:0}.tn-topbar-spacer{flex:1}.tn-topbar-menu-button{display:none}.tn-content{padding:var(--tn-space-6);flex:1;min-width:0}.tn-banner{padding:var(--tn-space-2) var(--tn-space-6)}.tn-banner:empty{display:none}.tn-user-button{align-items:center;gap:var(--tn-space-2);height:var(--tn-control-md);padding:0 var(--tn-space-2) 0 var(--tn-space-1);font:inherit;color:var(--tn-color-text);border-radius:var(--tn-radius-full);cursor:pointer;background:0 0;border:1px solid #0000;display:inline-flex}.tn-user-button:hover{background:var(--tn-color-surface-hover)}.tn-user-button:focus-visible{box-shadow:0 0 0 3px var(--tn-color-focus);outline:none}.tn-sidebar-scrim{display:none}@media (width<=900px){.tn-shell{grid-template-columns:minmax(0,1fr)}.tn-sidebar{z-index:50;width:min(var(--tn-layout-nav-width), 85vw);transition:translate var(--tn-motion-normal) ease-out;box-shadow:var(--tn-shadow-lg);position:fixed;inset:0 auto 0 0;translate:-100%}.tn-shell[data-nav-open] .tn-sidebar{translate:0}.tn-shell[data-nav-open] .tn-sidebar-scrim{z-index:45;background:var(--tn-color-overlay);display:block;position:fixed;inset:0}.tn-topbar{padding:0 var(--tn-space-4)}.tn-topbar-menu-button{display:inline-flex}.tn-content{padding:var(--tn-space-4)}.tn-banner{padding:var(--tn-space-2) var(--tn-space-4)}.tn-page-title{font-size:var(--tn-text-xl)}.tn-card-header,.tn-card-body{padding-left:var(--tn-space-4);padding-right:var(--tn-space-4)}.tn-filter-bar>.tn-field,.tn-filter-more>.tn-field{max-width:none}.tn-filter-bar[data-collapsible] .tn-filter-toggle{display:inline-flex}.tn-filter-bar[data-collapsible]:not([data-open])>.tn-filter-more{display:none}.tn-filter-bar[data-collapsible][data-open]>.tn-filter-more{gap:var(--tn-space-3);flex-wrap:wrap;width:100%;display:flex}.tn-columns-layout,.tn-columns-layout[data-side=right]{grid-template-columns:minmax(0,1fr)}.tn-columns-layout>.tn-columns-aside{order:0}.tn-columns-layout[data-mobile-first=main]>.tn-columns-aside{order:2}}@media (width<=640px){.tn-table[data-mobile=cards] thead{display:none}.tn-table[data-mobile=cards],.tn-table[data-mobile=cards] tbody,.tn-table[data-mobile=cards] tr{width:100%;display:block}.tn-table[data-mobile=cards] tr{gap:var(--tn-space-1);padding:var(--tn-space-3) var(--tn-space-4);border-bottom:1px solid var(--tn-color-border);display:grid}.tn-table[data-mobile=cards] tbody tr:last-child{border-bottom:0}.tn-table[data-mobile=cards] td{justify-content:space-between;align-items:baseline;gap:var(--tn-space-3);text-align:right;white-space:normal;border:0;width:auto;padding:0;display:flex}.tn-table[data-mobile=cards] td[data-label]:before{content:attr(data-label);font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);text-align:left;flex:none}.tn-table[data-mobile=cards] td>*{min-width:0}.tn-table[data-mobile=cards] .tn-json-pair>span:last-child{white-space:normal;overflow-wrap:anywhere;max-width:none}.tn-table[data-mobile=cards] td[data-block]{text-align:left;flex-direction:column;align-items:stretch;gap:2px}.tn-table[data-mobile=cards] td[data-primary]{text-align:left;margin-bottom:var(--tn-space-1);justify-content:flex-start}.tn-table[data-mobile=cards] td[data-primary]:before{content:none}.tn-table[data-mobile=cards] td[data-shrink]{justify-content:flex-end}.tn-table[data-mobile=cards] td[data-shrink]:before{content:none}.tn-table[data-mobile=cards] tbody tr:hover td{background:0 0}}.tn-auth{min-height:100%;padding:var(--tn-space-6) var(--tn-space-4);background:radial-gradient(1200px 600px at 10% -10%, var(--tn-color-primary-soft), transparent 60%), var(--tn-color-bg);place-items:center;display:grid}.tn-auth-card{gap:var(--tn-space-5);width:min(400px,100%);padding:var(--tn-space-8) var(--tn-space-6);background:var(--tn-color-surface);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-lg);box-shadow:var(--tn-shadow-md);display:grid}.tn-auth-head{justify-items:center;gap:var(--tn-space-3);text-align:center;display:grid}.tn-auth-head h1{font-size:var(--tn-text-xl);font-weight:var(--tn-weight-semibold);margin:0}.tn-auth-head p{color:var(--tn-color-text-muted);font-size:var(--tn-text-sm);margin:0}.tn-fullscreen{min-height:100%;padding:var(--tn-space-6);place-items:center;display:grid}.tn-input-wrap>.tn-input[data-with-action]{padding-right:calc(var(--tn-control-sm) + var(--tn-space-2))}.tn-date-range{align-items:center;gap:var(--tn-space-2);color:var(--tn-color-text-muted);display:flex}.tn-date-range .tn-input{flex:1;min-width:0}.tn-barlist{gap:var(--tn-space-2);margin:0;padding:0;list-style:none;display:grid}.tn-barlist-row{align-items:center;gap:var(--tn-space-3);font-size:var(--tn-text-sm);grid-template-columns:minmax(80px,34%) 1fr auto;display:grid}.tn-barlist-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tn-barlist-track{border-radius:var(--tn-radius-full);background:var(--tn-color-neutral-soft);height:8px;overflow:hidden}.tn-barlist-bar{border-radius:inherit;min-width:2px;height:100%;display:block}.tn-barlist-value{font-variant-numeric:tabular-nums;font-weight:var(--tn-weight-medium);text-align:right;min-width:3ch}.tn-columns{gap:var(--tn-space-2);grid-template-columns:minmax(0,1fr);display:grid}.tn-columns-plot{height:var(--tn-columns-height);border-bottom:1px solid var(--tn-color-border);align-items:flex-end;gap:4px;display:flex}.tn-column{border-radius:4px 4px 0 0;outline:none;flex:1;align-items:flex-end;min-width:0;height:100%;display:flex;position:relative}.tn-column:hover,.tn-column:focus{background:var(--tn-color-surface-muted)}.tn-column-bar{width:100%;max-width:var(--tn-column-max,none);border-radius:4px 4px 0 0;min-height:2px;margin:0 auto;display:block;position:relative}.tn-column-bar[data-zero]{opacity:.25}.tn-column:hover:after,.tn-column:focus:after{content:attr(data-tip);z-index:2;padding:var(--tn-space-1) var(--tn-space-2);font-size:var(--tn-text-xs);white-space:nowrap;color:var(--tn-color-tooltip-text);background:var(--tn-color-tooltip-bg);border-radius:var(--tn-radius-sm);pointer-events:none;position:absolute;bottom:calc(100% + 6px);left:50%;translate:-50%}.tn-columns-axis{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);gap:4px;display:flex}.tn-columns-axis>span{white-space:nowrap;text-align:center;flex:1;min-width:0;overflow:visible}.tn-column-value{font-size:var(--tn-text-xs);font-weight:var(--tn-weight-medium);color:var(--tn-color-text-muted);white-space:nowrap;position:absolute;bottom:calc(100% + 2px);left:50%;translate:-50%}.tn-columns[data-values] .tn-column:hover:after,.tn-columns[data-values] .tn-column:focus:after{content:none}.tn-columns[data-values] .tn-columns-plot{padding-top:var(--tn-space-5)}.tn-chart-legend{margin:0 0 var(--tn-space-3);gap:var(--tn-space-1) var(--tn-space-4);font-size:var(--tn-text-sm);color:var(--tn-color-text-muted);flex-wrap:wrap;padding:0;list-style:none;display:flex}.tn-chart-legend>li{align-items:center;gap:var(--tn-space-2);display:inline-flex}.tn-chart-key{border-radius:3px;flex:none;width:10px;height:10px;display:inline-block}.tn-chart-key[data-kind=line]{border-radius:2px;width:16px;height:3px}.tn-chart-tip{top:var(--tn-space-2);z-index:3;min-width:150px;max-width:280px;padding:var(--tn-space-2) var(--tn-space-3);font-size:var(--tn-text-xs);color:var(--tn-color-text);background:var(--tn-color-surface);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-sm);box-shadow:var(--tn-shadow-md);pointer-events:none;position:absolute}.tn-chart-tip-title{margin-bottom:var(--tn-space-1);font-weight:var(--tn-weight-medium);color:var(--tn-color-text-muted);white-space:nowrap}.tn-chart-tip-row{align-items:center;gap:var(--tn-space-2);white-space:nowrap;display:flex}.tn-chart-tip-row>b{min-width:3ch;font-size:var(--tn-text-sm);font-variant-numeric:tabular-nums;text-align:right}.tn-chart-tip-row>span:last-child{color:var(--tn-color-text-muted)}.tn-line{grid-template-columns:minmax(0,1fr);display:grid}.tn-line-box{min-width:0;position:relative}.tn-line-box>svg{border-radius:var(--tn-radius-sm);outline:none;display:block;overflow:visible}.tn-line-box>svg:focus-visible{box-shadow:0 0 0 3px var(--tn-color-focus)}.tn-line-grid{stroke:var(--tn-color-border);stroke-width:1px;shape-rendering:crispedges}.tn-line-tick{fill:var(--tn-color-text-muted);font-variant-numeric:tabular-nums;font-size:11px}.tn-line-path{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.tn-line-path[data-muted]{stroke-width:1.5px}.tn-line-dot{stroke:var(--tn-color-surface);stroke-width:2px}.tn-line-cross{stroke:var(--tn-color-text-subtle);stroke-width:1px;shape-rendering:crispedges}.tn-line-hit{fill:#0000;cursor:crosshair;touch-action:pan-y}.tn-compare-list{gap:var(--tn-space-4);margin:0;padding:0;list-style:none;display:grid}.tn-compare-head{justify-content:space-between;align-items:baseline;gap:var(--tn-space-1) var(--tn-space-3);flex-wrap:wrap;display:flex}.tn-compare-label{font-size:var(--tn-text-sm)}.tn-compare-value{align-items:baseline;gap:var(--tn-space-2);white-space:nowrap;display:inline-flex}.tn-compare-value>b{font-size:var(--tn-text-lg);font-weight:var(--tn-weight-semibold)}.tn-compare-delta{font-size:var(--tn-text-xs);font-weight:var(--tn-weight-medium);color:var(--tn-color-text-muted)}.tn-compare-delta[data-tone=good]{color:var(--tn-color-success)}.tn-compare-delta[data-tone=bad]{color:var(--tn-color-danger)}.tn-compare-bars{margin-top:var(--tn-space-2);gap:3px;display:grid}.tn-compare-bars>span{border-radius:0 3px 3px 0;min-width:2px;height:6px;display:block}.tn-compare-was{margin-top:var(--tn-space-1);font-size:var(--tn-text-xs);color:var(--tn-color-text-muted)}.tn-funnel{gap:var(--tn-space-2);margin:0;padding:0;list-style:none;display:grid}.tn-funnel-step{gap:6px;display:grid}.tn-funnel-drop{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);align-items:center;gap:6px;display:flex}.tn-funnel-drop>svg{width:14px;height:14px;color:var(--tn-color-text-subtle);flex:none}.tn-funnel-head{justify-content:space-between;align-items:flex-end;gap:var(--tn-space-3);display:flex}.tn-funnel-label{min-width:0;font-size:var(--tn-text-sm);font-weight:var(--tn-weight-medium);display:grid}.tn-funnel-label>small{font-size:var(--tn-text-xs);font-weight:var(--tn-weight-regular);color:var(--tn-color-text-muted)}.tn-funnel-value{justify-content:flex-end;align-items:baseline;gap:0 var(--tn-space-2);font-size:var(--tn-text-sm);color:var(--tn-color-text-muted);white-space:nowrap;flex-wrap:wrap;display:inline-flex}.tn-funnel-value>b{font-size:var(--tn-text-lg);font-weight:var(--tn-weight-semibold);color:var(--tn-color-text)}.tn-funnel-was{font-size:var(--tn-text-xs)}.tn-funnel-track{background:var(--tn-color-neutral-soft);border-radius:0 4px 4px 0;height:20px;overflow:hidden}.tn-funnel-bar{border-radius:0 4px 4px 0;min-width:2px;height:100%;display:block}.tn-funnel-bar[data-zero]{opacity:.3}.tn-flow{min-width:0;position:relative}.tn-flow-canvas{position:relative}.tn-flow-links{position:absolute;inset:0;overflow:visible}.tn-flow-column-title,.tn-flow-stage-title{font-size:var(--tn-text-xs);font-weight:var(--tn-weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--tn-color-text-muted)}.tn-flow-column-title{position:absolute;top:0}.tn-flow-band{fill-opacity:.2;transition:fill-opacity var(--tn-motion-fast) ease-out;outline:none}.tn-flow-band:hover,.tn-flow-band:focus-visible,.tn-flow-band[data-active]{fill-opacity:.42}.tn-flow-band-label{fill:var(--tn-color-text);font-size:12px;font-weight:var(--tn-weight-semibold);paint-order:stroke;stroke:var(--tn-color-surface);stroke-width:3px;stroke-linejoin:round;pointer-events:none}.tn-flow-node{background:var(--tn-color-surface);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);min-width:0;box-shadow:var(--tn-shadow-sm);flex-direction:column;justify-content:center;gap:2px;padding:6px 10px 6px 14px;display:flex;position:absolute;overflow:hidden}.tn-flow-node:before{content:"";background:var(--tn-flow-tone);width:4px;position:absolute;inset:0 auto 0 0}.tn-flow-node-label{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);white-space:nowrap;text-overflow:ellipsis;line-height:1.3;overflow:hidden}.tn-flow-node-value{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);white-space:nowrap;line-height:1.3}.tn-flow-node-value>b{font-size:var(--tn-text-lg);font-weight:var(--tn-weight-semibold);color:var(--tn-color-text)}.tn-flow-stages{gap:var(--tn-space-2);margin:0;padding:0;list-style:none;display:grid}.tn-flow-stage{gap:var(--tn-space-2);display:grid}.tn-flow-stage-nodes{gap:var(--tn-space-2);grid-template-columns:repeat(auto-fill,minmax(136px,1fr));display:grid}.tn-flow-stage-nodes>.tn-flow-node{min-height:58px;position:relative}.tn-flow-arrow{color:var(--tn-color-text-subtle);justify-content:center;display:flex}.tn-flow-arrow>svg{width:18px;height:18px}.tn-text[data-tone=muted]{color:var(--tn-color-text-muted)}.tn-text[data-tone=success]{color:var(--tn-color-success)}.tn-text[data-tone=warning]{color:var(--tn-color-warning)}.tn-text[data-tone=danger]{color:var(--tn-color-danger)}.tn-text[data-size=xs]{font-size:var(--tn-text-xs)}.tn-text[data-size=sm]{font-size:var(--tn-text-sm)}.tn-text[data-clamp]{-webkit-line-clamp:var(--tn-clamp);line-clamp:var(--tn-clamp);overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tn-period{align-items:flex-end;gap:var(--tn-space-3);flex-wrap:wrap;display:flex}.tn-progress{gap:var(--tn-space-1);display:grid}.tn-progress-head{justify-content:space-between;gap:var(--tn-space-2);font-size:var(--tn-text-sm);display:flex}.tn-progress-head>:last-child{color:var(--tn-color-text-muted);font-variant-numeric:tabular-nums}.tn-progress-track{border-radius:var(--tn-radius-full);background:var(--tn-color-neutral-soft);height:8px;overflow:hidden}.tn-progress-bar{border-radius:inherit;background:var(--tn-color-primary);height:100%;transition:width var(--tn-motion-normal);display:block}.tn-progress-bar[data-tone=warning]{background:var(--tn-color-warning)}.tn-progress-bar[data-tone=danger]{background:var(--tn-color-danger)}.tn-chat{gap:var(--tn-space-3);margin:0;padding:0;list-style:none;display:grid}.tn-chat-scroll{max-height:var(--tn-chat-height,60vh);overscroll-behavior:contain;padding-right:var(--tn-space-1);overflow-y:auto}.tn-chat-row{justify-items:start;gap:2px;display:grid}.tn-chat-row[data-direction=out]{justify-items:end}.tn-chat-bubble{max-width:min(78%,560px);padding:var(--tn-space-2) var(--tn-space-3);border-radius:var(--tn-radius-lg) var(--tn-radius-lg) var(--tn-radius-lg) 4px;background:var(--tn-color-neutral-soft);overflow-wrap:anywhere;white-space:pre-wrap}.tn-chat-row[data-direction=out] .tn-chat-bubble{border-radius:var(--tn-radius-lg) var(--tn-radius-lg) 4px var(--tn-radius-lg);background:var(--tn-color-primary);color:var(--tn-color-primary-text)}.tn-chat-row .tn-chat-bubble[data-failed]{background:var(--tn-color-danger-soft);color:var(--tn-color-danger)}.tn-chat-author{font-size:var(--tn-text-xs);font-weight:var(--tn-weight-semibold);opacity:.8;margin-bottom:2px}.tn-chat-system{max-width:80%;padding:2px var(--tn-space-3);font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);text-align:center;background:var(--tn-color-neutral-soft);border-radius:var(--tn-radius-full);justify-self:center}.tn-chat-extra{gap:var(--tn-space-1);flex-wrap:wrap;max-width:min(78%,560px);display:flex}.tn-chat-meta{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);padding:0 var(--tn-space-1)}.tn-chat-composer{align-items:flex-end;gap:var(--tn-space-2);display:flex}.tn-chat-composer textarea{min-height:var(--tn-control-md);resize:none;flex:1}.tn-chat-composer-wrap{gap:var(--tn-space-2);flex-direction:column;display:flex}.tn-chat-file{align-items:center;gap:var(--tn-space-2);min-width:0;max-width:100%;padding:var(--tn-space-2) var(--tn-space-3);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);background:var(--tn-color-surface);color:var(--tn-color-text);flex-wrap:wrap;display:flex}.tn-chat-file-icon{color:var(--tn-color-text-muted);flex:none}.tn-chat-file-body{flex-direction:column;flex:140px;min-width:0;display:flex}.tn-chat-file-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.tn-chat-file-details{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted)}.tn-chat-file-download{align-items:center;gap:var(--tn-space-1);font-size:var(--tn-text-sm);flex:none;display:inline-flex}.tn-radio-group{gap:var(--tn-space-2);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.tn-radio-group[data-direction=row]{gap:var(--tn-space-2) var(--tn-space-5);flex-flow:wrap}.tn-radio-group>legend{margin-bottom:var(--tn-space-2);padding:0}.tn-check[data-radio] input{border-radius:50%}.tn-check[data-radio] input:checked{background:var(--tn-color-surface);border:5px solid var(--tn-color-primary)}.tn-check[data-radio] input:checked:after{content:none}.tn-copy-field{align-items:center;gap:var(--tn-space-2);min-width:0;padding:var(--tn-space-1) var(--tn-space-1) var(--tn-space-1) var(--tn-space-3);background:var(--tn-color-surface-muted);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-sm);display:flex}.tn-copy-field code{min-width:0;font-family:var(--tn-font-mono);font-size:var(--tn-text-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tn-copy-block{align-items:flex-start;gap:var(--tn-space-2);min-width:0;padding:var(--tn-space-2) var(--tn-space-1) var(--tn-space-2) var(--tn-space-3);background:var(--tn-color-surface-muted);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-sm);display:flex}.tn-copy-block pre{min-width:0;font-family:var(--tn-font-mono);font-size:var(--tn-text-sm);white-space:pre;flex:1;margin:0;overflow-x:auto}.tn-swatch{gap:var(--tn-space-1);font-size:var(--tn-text-xs);display:grid}.tn-swatch-color{border-radius:var(--tn-radius-sm);border:1px solid var(--tn-color-border);height:44px}.tn-select-cell{padding-right:0!important}.tn-select-box{width:16px;height:16px;accent-color:var(--tn-color-primary);cursor:pointer;vertical-align:middle}.tn-table tr[data-selected] td{background:var(--tn-color-primary-soft)}.tn-bulk-bar{z-index:2;align-items:center;gap:var(--tn-space-3);padding:var(--tn-space-2) var(--tn-space-4);background:var(--tn-color-primary-soft);color:var(--tn-color-primary-soft-text);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);flex-wrap:wrap;display:flex;position:sticky;top:0}.tn-bulk-count{font-weight:var(--tn-weight-semibold)}.tn-bulk-actions{gap:var(--tn-space-2);flex-wrap:wrap;flex:1;display:flex}.tn-bulk-clear{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.tn-color-dot{border-radius:var(--tn-radius-full);vertical-align:middle;flex:none;width:10px;height:10px;display:inline-block}.tn-board{gap:var(--tn-space-3);padding-bottom:var(--tn-space-2);grid-auto-columns:minmax(260px,1fr);grid-auto-flow:column;align-items:start;display:grid;overflow-x:auto}.tn-board-column{background:var(--tn-color-surface-muted);border:1px solid var(--tn-color-border);border-top:3px solid var(--tn-color-chart-1);border-radius:var(--tn-radius-lg);flex-direction:column;min-width:0;transition:box-shadow .15s;display:flex}.tn-board-column[data-over]{box-shadow:0 0 0 2px var(--tn-color-focus)}.tn-board-head{padding:var(--tn-space-3) var(--tn-space-3) var(--tn-space-2)}.tn-board-title{font-weight:var(--tn-weight-semibold)}.tn-board-meta{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);margin-top:2px}.tn-board-items{gap:var(--tn-space-2);padding:0 var(--tn-space-2) var(--tn-space-2);min-height:48px;max-height:calc(100vh - 260px);display:grid;overflow-y:auto}.tn-board-card{gap:var(--tn-space-1);padding:var(--tn-space-3);background:var(--tn-color-surface);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);box-shadow:var(--tn-shadow-sm);min-width:0;display:grid}.tn-board-card[draggable=true]{cursor:grab}.tn-board-card[data-dragging]{opacity:.5}.tn-board-empty{padding:var(--tn-space-3);font-size:var(--tn-text-sm);color:var(--tn-color-text-subtle);text-align:center}.tn-board-footer{padding:0 var(--tn-space-3) var(--tn-space-3);font-size:var(--tn-text-sm)}@media (width<=640px){.tn-board{scroll-snap-type:x mandatory;grid-auto-columns:85%}.tn-board-column{scroll-snap-align:start}.tn-table[data-mobile=cards] td.tn-select-cell{justify-content:flex-start}}@media (pointer:coarse){.tn-input,.tn-select select,textarea.tn-input{font-size:16px}.tn-input,.tn-select select,.tn-button,.tn-tab,.tn-nav-link,.tn-nav-group-title{min-height:44px}.tn-button[data-size=sm]{min-height:40px}}@media (width<=640px){.tn-user-button>span:not(.tn-avatar),.tn-user-button>svg{display:none}.tn-topbar{padding:0 var(--tn-space-3)}.tn-content{padding:var(--tn-space-3)}.tn-dialog,.tn-dialog[data-size=lg]{border-radius:var(--tn-radius-lg) var(--tn-radius-lg) 0 0;width:100vw;max-width:100vw;max-height:92dvh;margin:auto 0 0}.tn-dialog-header{padding:var(--tn-space-4) var(--tn-space-4) 0}.tn-dialog-body,.tn-dialog-footer{padding:var(--tn-space-3) var(--tn-space-4)}.tn-dialog-footer>.tn-button{flex:auto}.tn-page-actions{width:100%}.tn-page-actions>.tn-button{flex:auto}.tn-form-actions{flex-wrap:wrap}}.page{gap:var(--tn-space-4);max-width:var(--tn-layout-content-width);margin:0 auto;display:grid}.page h1{font-size:var(--tn-text-2xl);font-weight:var(--tn-weight-semibold);letter-spacing:-.01em}.muted{color:var(--tn-color-text-muted)}.hp-prose{gap:var(--tn-space-3);overflow-wrap:break-word;line-height:1.6;display:grid}.hp-prose>p,.hp-prose>ul,.hp-prose>ol{max-width:76ch}.hp-prose>h2,.hp-prose>h3{margin:var(--tn-space-4) 0 0;scroll-margin-top:calc(var(--tn-layout-header-height) + var(--tn-space-4));line-height:1.3}.hp-prose>h2{font-size:var(--tn-text-xl);font-weight:var(--tn-weight-semibold);padding-top:var(--tn-space-3);border-top:1px solid var(--tn-color-border)}.hp-prose>h2:first-child,.hp-prose>h3:first-child{border-top:0;margin-top:0;padding-top:0}.hp-prose>h3{font-size:var(--tn-text-lg);font-weight:var(--tn-weight-semibold)}.hp-prose p:not([class]),.hp-prose ul:not([class]),.hp-prose ol:not([class]){margin:0}.hp-prose ul:not([class]),.hp-prose ol:not([class]){padding-left:var(--tn-space-6);gap:var(--tn-space-2);display:grid}.hp-prose li>ul,.hp-prose li>ol{margin-top:var(--tn-space-2)}.hp-prose a:not([class]){color:var(--tn-color-primary)}.hp-prose strong{font-weight:var(--tn-weight-semibold)}.hp-prose .tn-alert p+p{margin-top:var(--tn-space-2)}.hp-table{margin:var(--tn-space-1) 0}.hp-table .tn-table td{vertical-align:top;line-height:1.5}.hp-table .tn-table th{position:static}.hp-pre{padding:var(--tn-space-3) var(--tn-space-4);font-family:var(--tn-font-mono);font-size:var(--tn-text-sm);background:var(--tn-color-surface-muted);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);margin:0;line-height:1.5;overflow-x:auto}.hp-flow-wrap{margin:var(--tn-space-2) 0;container-type:inline-size}.hp-flow{align-items:stretch;gap:var(--tn-space-1);margin:0;padding:0;list-style:none;display:flex}.hp-flow-step{align-content:start;justify-items:center;gap:var(--tn-space-1);min-width:0;padding:var(--tn-space-3) var(--tn-space-2);text-align:center;background:var(--tn-color-surface-muted);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);flex:1 1 0;display:grid}.hp-flow-icon{border-radius:var(--tn-radius-full);width:36px;height:36px;color:var(--tn-color-primary-soft-text);background:var(--tn-color-primary-soft);place-items:center;display:inline-grid}.hp-flow-icon svg{width:18px;height:18px}.hp-flow-title{font-size:var(--tn-text-md);line-height:1.3}.hp-flow-text{font-size:var(--tn-text-sm);color:var(--tn-color-text-muted);line-height:1.4}.hp-flow-arrow{width:56px;color:var(--tn-color-text-subtle);flex:none;align-content:center;justify-items:center;gap:2px;display:grid}.hp-flow-arrow-icon{width:20px;height:20px}.hp-flow-arrow-label{font-size:var(--tn-text-xs);text-align:center;color:var(--tn-color-text-muted);line-height:1.2}@container (width<=860px){.hp-flow{flex-direction:column}.hp-flow-step{justify-items:start;column-gap:var(--tn-space-3);text-align:left;padding:var(--tn-space-3);grid-template-columns:auto 1fr}.hp-flow-icon{grid-row:span 2}.hp-flow-arrow{gap:var(--tn-space-2);width:auto;padding:var(--tn-space-1) 0 var(--tn-space-1) var(--tn-space-5);grid-auto-flow:column;justify-content:start}.hp-flow-arrow-icon{transform:rotate(90deg)}}.hp-search{max-width:640px}.hp-group-title{font-size:var(--tn-text-lg);font-weight:var(--tn-weight-semibold);margin:0}.hp-card-link{color:inherit;border-radius:var(--tn-radius-lg);text-decoration:none;display:block}.hp-card-link>.tn-card{height:100%;transition:border-color var(--tn-motion-fast)}.hp-card-link:hover>.tn-card{border-color:var(--tn-color-primary)}.hp-card-link:focus-visible{box-shadow:0 0 0 3px var(--tn-color-focus);outline:none}.hp-results{margin:0;padding:0;list-style:none}.hp-results>li+li{border-top:1px solid var(--tn-color-border)}.hp-result{padding:var(--tn-space-3) var(--tn-space-5);color:inherit;text-decoration:none;display:block}.hp-result:hover{background:var(--tn-color-surface-hover)}.hp-result-icon{width:16px;height:16px;color:var(--tn-color-text-subtle)}.hp-results mark{color:inherit;background:var(--tn-color-warning-soft);border-radius:2px}.hp-toc,.hp-links{margin:var(--tn-space-1) 0 0;gap:var(--tn-space-1);font-size:var(--tn-text-sm);padding:0;list-style:none;display:grid}.hp-toc a{padding:2px var(--tn-space-2);margin:0 calc(-1 * var(--tn-space-2));color:var(--tn-color-text);border-radius:var(--tn-radius-sm);text-decoration:none;display:block}.hp-toc a:hover{background:var(--tn-color-surface-hover)}.hp-toc a[aria-current=page]{color:var(--tn-color-nav-active-text);background:var(--tn-color-nav-active-bg);font-weight:var(--tn-weight-medium)}.hp-links{gap:var(--tn-space-3);font-size:var(--tn-text-md)}.hp-links>li{gap:2px;display:grid}.hp-links a{color:var(--tn-color-primary)}.hp-progress{gap:var(--tn-space-2);display:grid}.hp-progress-track{border-radius:var(--tn-radius-full);background:var(--tn-color-neutral-soft);height:6px;overflow:hidden}.hp-progress-bar{border-radius:inherit;background:var(--tn-color-success);height:100%;transition:width var(--tn-motion-normal)}.hp-checklist{margin:0;padding:0;list-style:none}.hp-check{align-items:center;gap:var(--tn-space-3);padding:var(--tn-space-3) 0;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.hp-check+.hp-check{border-top:1px solid var(--tn-color-border)}.hp-check-icon{width:24px;height:24px;color:var(--tn-color-text-subtle);place-items:center;display:inline-grid}.hp-check-icon svg{width:20px;height:20px}.hp-check[data-state=done] .hp-check-icon{color:var(--tn-color-success)}.hp-check[data-state=attention] .hp-check-icon{color:var(--tn-color-warning)}.hp-check[data-state=error] .hp-check-icon{color:var(--tn-color-danger)}.hp-check-text{gap:2px;display:grid}.hp-check[data-state=done] .hp-check-text>:first-child{color:var(--tn-color-text-muted)}@media (width<=640px){.hp-check{grid-template-columns:auto minmax(0,1fr);align-items:start}.hp-check>.tn-stack{grid-column:2}}.ai-range{width:100%;accent-color:var(--tn-color-primary)}.bb-step{gap:var(--tn-space-1);width:100%;min-width:0;padding:var(--tn-space-2) var(--tn-space-3);font:inherit;color:var(--tn-color-text);text-align:left;background:var(--tn-color-surface-muted);border:1px solid var(--tn-color-border);border-left:3px solid var(--tn-color-border-strong);border-radius:var(--tn-radius-sm);cursor:pointer;transition:background var(--tn-motion-fast), border-color var(--tn-motion-fast);display:grid}.bb-step:hover{background:var(--tn-color-surface-hover)}.bb-step:focus-visible{box-shadow:0 0 0 3px var(--tn-color-focus);outline:none}.bb-step[aria-current=true]{background:var(--tn-color-primary-soft);border-color:var(--tn-color-primary)}.bb-step[data-type=question],.bb-step[data-type=consent]{border-left-color:var(--tn-color-primary)}.bb-step[data-type=action]{border-left-color:var(--tn-color-success)}.bb-step[data-type=end]{border-left-color:var(--tn-color-text-subtle)}.bb-step-head{align-items:center;gap:var(--tn-space-1) var(--tn-space-2);flex-wrap:wrap;display:flex}.bb-step-name{overflow-wrap:anywhere}.bb-step-links{gap:2px var(--tn-space-2);font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);flex-wrap:wrap;display:flex}.bb-step-links [data-broken]{color:var(--tn-color-danger)}.bb-step[data-type=goto]{border-left-color:var(--tn-color-warning)}.bb-graph{overscroll-behavior:contain;background-color:var(--tn-color-surface-muted);background-image:radial-gradient(var(--tn-color-border) 1px, transparent 1px);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);background-size:16px 16px;max-height:min(70vh,42rem);overflow:auto}.bb-graph-canvas{position:relative}.bb-graph-links{pointer-events:none;position:absolute;inset:0;overflow:visible}.bb-link{fill:none;stroke:var(--tn-color-text-subtle);stroke-width:1.5px}.bb-link[data-kind=yes]{stroke:var(--tn-color-success)}.bb-link[data-kind=no]{stroke:var(--tn-color-danger)}.bb-link[data-kind=option],.bb-link[data-kind=rule]{stroke:var(--tn-color-primary)}.bb-link[data-kind=timeout],.bb-link[data-kind=otherwise]{stroke-dasharray:5 4}.bb-link[data-active]{stroke-width:2.5px}.bb-arrowhead{fill:var(--tn-color-text-subtle)}.bb-arrowhead[data-kind=yes]{fill:var(--tn-color-success)}.bb-arrowhead[data-kind=no]{fill:var(--tn-color-danger)}.bb-arrowhead[data-kind=option],.bb-arrowhead[data-kind=rule]{fill:var(--tn-color-primary)}.bb-link-label{max-width:9.5rem;padding:1px var(--tn-space-1);font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);white-space:nowrap;text-overflow:ellipsis;background:var(--tn-color-surface);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-sm);pointer-events:auto;line-height:1.3;position:absolute;overflow:hidden;transform:translate(-50%,-50%)}.bb-link-label[data-kind=yes]{color:var(--tn-color-success)}.bb-link-label[data-kind=no]{color:var(--tn-color-danger)}.bb-link-label[data-kind=option],.bb-link-label[data-kind=rule]{color:var(--tn-color-primary-text)}.bb-node{padding:var(--tn-space-1) var(--tn-space-2);font:inherit;color:var(--tn-color-text);text-align:left;background:var(--tn-color-surface);border:1px solid var(--tn-color-border-strong);border-left:4px solid var(--tn-color-border-strong);border-radius:var(--tn-radius-sm);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;grid-template-rows:auto 1fr auto;gap:2px;display:grid;position:absolute;overflow:hidden;box-shadow:0 1px 2px #0000000f}.bb-node:hover{background:var(--tn-color-surface-hover)}.bb-node:focus-visible{box-shadow:0 0 0 3px var(--tn-color-focus);outline:none}.bb-node[aria-current=true]{background:var(--tn-color-primary-soft);border-color:var(--tn-color-primary)}.bb-node[data-dragging]{z-index:1;cursor:grabbing;box-shadow:0 6px 16px #0000002e}.bb-node[data-type=question],.bb-node[data-type=consent]{border-left-color:var(--tn-color-primary)}.bb-node[data-type=action]{border-left-color:var(--tn-color-success)}.bb-node[data-type=goto]{border-left-color:var(--tn-color-warning);border-style:dashed solid}.bb-node[data-type=end]{border-left-color:var(--tn-color-text-subtle)}.bb-node-head{align-items:center;gap:var(--tn-space-1);white-space:nowrap;min-width:0;display:flex;overflow:hidden}.bb-node-type{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted)}.bb-node-name{font-size:var(--tn-text-sm);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}.bb-node-exit{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:2px;display:flex;overflow:hidden}.bb-node-exit svg{flex:none;width:.9em;height:.9em}.bb-problems{gap:var(--tn-space-2);margin:0;padding:0;list-style:none;display:grid}.bb-problems li{align-items:center;gap:var(--tn-space-1) var(--tn-space-2);flex-wrap:wrap;display:flex}.bb-problem-text{flex:14rem;min-width:0}.bb-anchor{min-width:0;scroll-margin-top:var(--tn-space-4)}.bb-row{align-items:center;gap:var(--tn-space-2);flex-wrap:wrap;display:flex}.bb-row>*{flex:8rem}.bb-row>span,.bb-row>button{flex:none}.bb-hint{display:block}.bb-plain{border:0;min-width:0;margin:0;padding:0}.bb-chat{height:28rem;padding:var(--tn-space-3);background:var(--tn-color-surface-muted);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);overflow-y:auto}.bb-bubble-step{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.bb-keyboard{gap:var(--tn-space-1);margin-top:var(--tn-space-2);white-space:normal;display:grid}.bb-keyboard-row{gap:var(--tn-space-1);display:flex}.bb-keyboard-row>*{min-width:0;height:auto;min-height:var(--tn-control-sm);padding-block:var(--tn-space-1);white-space:normal;flex:1 1 0}.cw-chart{min-width:0;overflow-x:auto}.cw-media{gap:var(--tn-space-2);grid-template-columns:repeat(auto-fill,minmax(min(7.5rem,100%),1fr));max-height:20rem;padding:2px;display:grid;overflow-y:auto}.cw-media-item{gap:var(--tn-space-1);padding:var(--tn-space-1);font:inherit;text-align:left;color:var(--tn-color-text);background:var(--tn-color-surface);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);cursor:pointer;align-content:start;display:grid}.cw-media-item:hover{border-color:var(--tn-color-border-strong)}.cw-media-item[aria-checked=true]{border-color:var(--tn-color-primary);box-shadow:0 0 0 2px var(--tn-color-primary)}.cw-media-item:focus-visible{outline:2px solid var(--tn-color-primary);outline-offset:2px}.cw-media-item img,.cw-media-blank{aspect-ratio:1;object-fit:cover;border-radius:var(--tn-radius-sm);background:var(--tn-color-bg);width:100%}.cw-media-caption{font-size:var(--tn-text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cw-media-date{font-size:var(--tn-text-xs);color:var(--tn-color-text-muted)}.pub-bad{color:var(--tn-color-danger)}.pub-list{padding-left:var(--tn-space-5);margin:0}.pub-month{text-align:center;text-transform:capitalize;min-width:132px}.pub-quota{gap:var(--tn-space-1);min-width:220px;display:grid}.pub-planner{gap:var(--tn-space-4);grid-template-columns:minmax(0,1fr) 280px;align-items:start;display:grid}.pub-planner[aria-busy=true]{opacity:.7;transition:opacity var(--tn-motion-normal)}.pub-calendar{background:var(--tn-color-border);border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.pub-weekday{padding:var(--tn-space-2);background:var(--tn-color-surface-muted);color:var(--tn-color-text-muted);font-size:var(--tn-text-xs);font-weight:var(--tn-weight-medium)}.pub-day{min-width:0;min-height:116px;padding:var(--tn-space-1);background:var(--tn-color-surface);flex-direction:column;gap:2px;display:flex}.pub-day[data-outside]{background:var(--tn-color-surface-muted)}.pub-day[data-past] .pub-day-head span{color:var(--tn-color-text-subtle)}.pub-day[data-today] .pub-day-head span{padding:0 var(--tn-space-2);border-radius:var(--tn-radius-full);background:var(--tn-color-primary);color:var(--tn-color-primary-text)}.pub-day[data-over]{outline:2px dashed var(--tn-color-primary);outline-offset:-3px;background:var(--tn-color-primary-soft)}.pub-day-head{min-height:var(--tn-control-sm);font-size:var(--tn-text-sm);justify-content:space-between;align-items:center;display:flex}.pub-day-head .tn-button{opacity:0}.pub-day:hover .pub-day-head .tn-button,.pub-day-head .tn-button:focus-visible{opacity:1}.pub-chip{align-items:center;gap:var(--tn-space-1);border-left:3px solid var(--tn-color-border-strong);border-radius:var(--tn-radius-sm);background:var(--tn-color-surface-muted);min-width:0;color:inherit;font-size:var(--tn-text-xs);padding:2px;text-decoration:none;display:flex}.pub-chip:hover{background:var(--tn-color-surface-hover)}.pub-chip[draggable=true]{cursor:grab}.pub-chip[data-status=scheduled]{border-left-color:var(--tn-color-primary)}.pub-chip[data-status=publishing]{border-left-color:var(--tn-color-warning)}.pub-chip[data-status=published]{border-left-color:var(--tn-color-success)}.pub-chip[data-status=failed]{border-left-color:var(--tn-color-danger)}.pub-chip-thumb{object-fit:cover;background:var(--tn-color-neutral-soft);border-radius:4px;flex:0 0 28px;width:28px;height:28px}.pub-chip-body{min-width:0;display:grid}.pub-chip-line{align-items:center;gap:var(--tn-space-1);white-space:nowrap;min-width:0;display:flex}.pub-chip-caption{color:var(--tn-color-text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pub-editor{gap:var(--tn-space-6);grid-template-columns:minmax(0,1fr) 360px;align-items:start;display:grid}.pub-strip{gap:var(--tn-space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.pub-strip li{border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-sm);background:var(--tn-color-neutral-soft);width:96px;height:96px;position:relative;overflow:hidden}.pub-strip li[draggable=true]{cursor:grab}.pub-strip img,.pub-strip video{object-fit:cover;width:100%;height:100%}.pub-strip-index{top:var(--tn-space-1);left:var(--tn-space-1);min-width:20px;padding:0 var(--tn-space-1);border-radius:var(--tn-radius-full);background:var(--tn-color-primary);color:var(--tn-color-primary-text);font-size:var(--tn-text-xs);text-align:center;position:absolute}.pub-strip-remove{top:var(--tn-space-1);right:var(--tn-space-1);position:absolute}.pub-tags{align-items:center;gap:var(--tn-space-1);min-height:var(--tn-control-md);padding:var(--tn-space-1) var(--tn-space-2);border:1px solid var(--tn-color-border-strong);border-radius:var(--tn-radius-sm);background:var(--tn-color-surface);flex-wrap:wrap;display:flex}.pub-tags:focus-within{border-color:var(--tn-color-primary);box-shadow:0 0 0 3px var(--tn-color-focus)}.pub-tags input{min-width:140px;color:inherit;font:inherit;background:0 0;border:none;outline:none;flex:1}.pub-tag{padding:0 var(--tn-space-2);border-radius:var(--tn-radius-full);background:var(--tn-color-primary-soft);color:var(--tn-color-primary-soft-text);font-size:var(--tn-text-sm);align-items:center;gap:2px;display:inline-flex}.pub-tag button{color:inherit;cursor:pointer;background:0 0;border:none;padding:0;display:inline-flex}.pub-preview{top:var(--tn-space-4);position:sticky}.pub-phone{border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-lg);background:var(--tn-color-surface);box-shadow:var(--tn-shadow-sm);font-size:var(--tn-text-sm);overflow:hidden}.pub-phone-head{align-items:center;gap:var(--tn-space-2);padding:var(--tn-space-2) var(--tn-space-3);display:flex}.pub-phone-avatar{border-radius:var(--tn-radius-full);background:var(--tn-color-neutral-soft);width:28px;height:28px;font-size:var(--tn-text-xs);place-items:center;display:grid;overflow:hidden}.pub-phone-avatar img{object-fit:cover;width:100%;height:100%}.pub-phone-media{aspect-ratio:4/5;background:var(--tn-color-neutral-soft);place-items:center;display:grid;position:relative}.pub-phone-media[data-tall]{aspect-ratio:9/16}.pub-phone-media img,.pub-phone-media video{object-fit:cover;width:100%;height:100%}.pub-phone-nav{border-radius:var(--tn-radius-full);background:var(--tn-color-surface);width:28px;height:28px;box-shadow:var(--tn-shadow-sm);cursor:pointer;border:none;place-items:center;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.pub-phone-nav[data-side=left]{left:var(--tn-space-2)}.pub-phone-nav[data-side=right]{right:var(--tn-space-2)}.pub-phone-nav:disabled{display:none}.pub-phone-counter{top:var(--tn-space-2);right:var(--tn-space-2);padding:0 var(--tn-space-2);border-radius:var(--tn-radius-full);background:var(--tn-color-overlay);color:var(--tn-color-primary-text);font-size:var(--tn-text-xs);position:absolute}.pub-phone-dots{justify-content:center;gap:var(--tn-space-1);padding-top:var(--tn-space-2);display:flex}.pub-phone-dots span{border-radius:var(--tn-radius-full);background:var(--tn-color-border-strong);width:6px;height:6px}.pub-phone-dots span[data-active]{background:var(--tn-color-primary)}.pub-phone-caption{padding:var(--tn-space-2) var(--tn-space-3) var(--tn-space-3)}.pub-phone-caption p{margin:0 0 var(--tn-space-1);overflow-wrap:anywhere;white-space:pre-wrap}.pub-phone-comment{color:var(--tn-color-text-muted)}.pub-phone-token{color:var(--tn-color-primary)}.pub-phone-more{color:var(--tn-color-text-muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.pub-library{gap:var(--tn-space-3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin:0;padding:0;list-style:none;display:grid}.pub-library-item{border:1px solid var(--tn-color-border);border-radius:var(--tn-radius-md);background:var(--tn-color-surface);width:100%;color:inherit;font:inherit;text-align:left;padding:0;display:grid;position:relative;overflow:hidden}button.pub-library-item{cursor:pointer}.pub-library-item[aria-pressed=true]{border-color:var(--tn-color-primary);box-shadow:0 0 0 2px var(--tn-color-primary)}.pub-library-item img,.pub-library-item video{aspect-ratio:1;object-fit:cover;background:var(--tn-color-neutral-soft);width:100%;display:block}.pub-library-meta{padding:var(--tn-space-2);color:var(--tn-color-text-muted);font-size:var(--tn-text-xs);display:grid;overflow:hidden}.pub-library-name{color:var(--tn-color-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pub-library-delete{top:var(--tn-space-1);right:var(--tn-space-1);background:var(--tn-color-surface);position:absolute}.pub-dropzone{justify-content:center;align-items:center;gap:var(--tn-space-2);padding:var(--tn-space-6);border:2px dashed var(--tn-color-border-strong);border-radius:var(--tn-radius-md);background:var(--tn-color-surface);color:var(--tn-color-text-muted);display:flex}.pub-dropzone[data-over]{border-color:var(--tn-color-primary);background:var(--tn-color-primary-soft);color:var(--tn-color-primary-soft-text)}@media (width<=1100px){.pub-planner,.pub-editor{grid-template-columns:minmax(0,1fr)}.pub-preview{max-width:360px;position:static}}@media (width<=720px){.pub-calendar{overflow-x:auto}.pub-day{min-height:64px}.pub-chip-thumb,.pub-chip-caption,.pub-chip-line span{display:none}}
