:root{--tp-font:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--tp-navy-950:#071226;--tp-navy-900:#0b1b33;--tp-navy-800:#132a4d;--tp-navy-700:#1d3a66;--tp-amber-400:#fbbf24;--tp-amber-500:#f59e0b;--tp-primary:#1f4fc4;--tp-primary-hover:#1a43a8;--tp-primary-soft:#e8efff;--tp-primary-text:#fff;--tp-bg:#f4f6fa;--tp-surface:#fff;--tp-surface-muted:#f8fafc;--tp-surface-sunken:#eef2f7;--tp-border:#e2e8f0;--tp-border-strong:#cbd5e1;--tp-text:#0f172a;--tp-text-muted:#556274;--tp-text-subtle:#8391a5;--tp-success:#047857;--tp-success-soft:#e7f7ef;--tp-warning:#a15c07;--tp-warning-soft:#fdf3dc;--tp-danger:#b42318;--tp-danger-soft:#fdecea;--tp-info:#0369a1;--tp-info-soft:#e5f3fb;--tp-accent:#6d28d9;--tp-accent-soft:#f1eafe;--tp-neutral:#475569;--tp-neutral-soft:#eef2f6;--tp-radius-sm:8px;--tp-radius:12px;--tp-radius-lg:16px;--tp-shadow-sm:0 1px 2px #0f172a0d;--tp-shadow:0 1px 3px #0f172a0f, 0 6px 16px #0f172a0d;--tp-shadow-lg:0 24px 60px -16px #07122659;--tp-focus:0 0 0 3px #1f4fc447;--tp-sidebar-w:260px;--tp-topbar-h:64px;font-family:var(--tp-font);color:var(--tp-text);background:var(--tp-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-feature-settings:"cv11", "ss01"}*,:before,:after{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--tp-text);background:var(--tp-bg);margin:0;font-size:15px;line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;line-height:1.25}p{margin:0}a{color:var(--tp-primary)}a:hover{color:var(--tp-primary-hover)}:focus-visible{box-shadow:var(--tp-focus);border-radius:6px;outline:none}.tp-visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.tp-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.tp-muted{color:var(--tp-text-muted)}.tp-text-danger{color:var(--tp-danger)}.tp-checkbox{align-items:center;gap:.5rem;font-weight:600;display:inline-flex}.tp-num{font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.tp-button{border:1px solid var(--tp-border-strong);border-radius:var(--tp-radius-sm);background:var(--tp-surface);min-height:38px;color:var(--tp-text);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:.45rem;padding:.45rem .9rem;font-size:.92rem;font-weight:600;line-height:1.2;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.tp-button:hover:not(:disabled){background:var(--tp-surface-sunken)}.tp-button:focus-visible{box-shadow:var(--tp-focus)}.tp-button:disabled{cursor:not-allowed;opacity:.5}.tp-button[data-size=sm]{min-height:32px;padding:.3rem .65rem;font-size:.85rem}.tp-button[data-variant=primary]{border-color:var(--tp-primary);background:var(--tp-primary);color:var(--tp-primary-text);box-shadow:0 1px 2px #1f4fc44d}.tp-button[data-variant=primary]:hover:not(:disabled){background:var(--tp-primary-hover);border-color:var(--tp-primary-hover)}.tp-button[data-variant=ghost]{color:var(--tp-text-muted);background:0 0;border-color:#0000}.tp-button[data-variant=ghost]:hover:not(:disabled){background:var(--tp-surface-sunken);color:var(--tp-text)}.tp-button[data-variant=danger]{border-color:var(--tp-danger);background:var(--tp-danger);color:#fff}.tp-button[data-variant=danger]:hover:not(:disabled){background:#912018}.tp-button__icon{display:inline-flex}a.tp-button{text-decoration:none}a.tp-button:not([data-variant=primary]):not([data-variant=danger]){color:var(--tp-text)}.tp-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite tp-spin}@keyframes tp-spin{to{transform:rotate(360deg)}}.tp-link-button{color:var(--tp-primary);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.tp-link-button:hover{text-decoration:underline}.tp-back-link{color:var(--tp-text-muted);align-items:center;gap:.3rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.tp-back-link:hover{color:var(--tp-text)}.tp-field{gap:.35rem;min-width:0;display:grid}.tp-field__label{color:var(--tp-text);font-size:.88rem;font-weight:600}.tp-field__control{border:1px solid var(--tp-border-strong);border-radius:var(--tp-radius-sm);background:var(--tp-surface);width:100%;min-height:40px;color:var(--tp-text);padding:.5rem .75rem;transition:border-color .15s,box-shadow .15s}.tp-field__control:hover:not(:disabled){border-color:#94a3b8}.tp-field__control:focus{border-color:var(--tp-primary);box-shadow:var(--tp-focus);outline:none}.tp-field__control:disabled{background:var(--tp-surface-sunken);color:var(--tp-text-muted);cursor:not-allowed}.tp-field__control[aria-invalid=true]{border-color:var(--tp-danger)}textarea.tp-field__control{resize:vertical;min-height:96px}.tp-field__control--select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23556274' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .7rem center;background-repeat:no-repeat;padding-right:2.25rem}.tp-field__hint{color:var(--tp-text-muted);font-size:.82rem}.tp-field__error{color:var(--tp-danger);font-size:.82rem;font-weight:550}.tp-form{gap:1rem;max-width:44rem;display:grid}.tp-form .tp-button{justify-self:start}.tp-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.25rem;display:grid}.tp-form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.tp-form-grid .tp-span-all{grid-column:1/-1}.tp-fieldset{border:0;gap:.75rem;min-width:0;margin:0;padding:0;display:grid}.tp-fieldset>legend{margin-bottom:.25rem;padding:0;font-weight:600}.tp-stop-editor{counter-reset:tp-stop;gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.tp-stop-editor__item{border:1px solid var(--tp-border);border-radius:var(--tp-radius);gap:.75rem;padding:.9rem;display:grid}.tp-form-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.tp-status-badge{--tone:var(--tp-neutral);--tone-soft:var(--tp-neutral-soft);background:var(--tone-soft);width:fit-content;max-width:100%;color:var(--tone);white-space:nowrap;border-radius:999px;align-items:center;gap:.4rem;padding:.18rem .6rem .18rem .5rem;font-size:.8rem;font-weight:650;line-height:1.4;display:inline-flex}.tp-status-badge__dot{background:currentColor;border-radius:50%;flex:none;width:7px;height:7px}.tp-status-badge[data-tone=success]{--tone:var(--tp-success);--tone-soft:var(--tp-success-soft)}.tp-status-badge[data-tone=warning]{--tone:var(--tp-warning);--tone-soft:var(--tp-warning-soft)}.tp-status-badge[data-tone=danger]{--tone:var(--tp-danger);--tone-soft:var(--tp-danger-soft)}.tp-status-badge[data-tone=info]{--tone:var(--tp-info);--tone-soft:var(--tp-info-soft)}.tp-status-badge[data-tone=accent]{--tone:var(--tp-accent);--tone-soft:var(--tp-accent-soft)}.tp-chip-list{flex-wrap:wrap;gap:.4rem;display:flex}.tp-chip{border:1px solid var(--tp-border);background:var(--tp-surface);color:var(--tp-text-muted);border-radius:999px;align-items:center;gap:.3rem;padding:.15rem .55rem;font-size:.8rem;font-weight:600;display:inline-flex}.tp-table-wrap{border:1px solid var(--tp-border);border-radius:var(--tp-radius);background:var(--tp-surface);box-shadow:var(--tp-shadow-sm);overflow-x:auto}.tp-table{border-collapse:collapse;width:100%;font-size:.92rem}.tp-table caption{text-align:left;padding:.9rem 1rem .2rem;font-size:.95rem;font-weight:700}.tp-table th{border-bottom:1px solid var(--tp-border);background:var(--tp-surface-muted);color:var(--tp-text-muted);letter-spacing:.04em;text-align:left;text-transform:uppercase;white-space:nowrap;padding:.65rem 1rem;font-size:.75rem;font-weight:700}.tp-table caption:not(.tp-visually-hidden)+thead th{border-top:1px solid var(--tp-border)}.tp-table td{border-top:1px solid var(--tp-border);vertical-align:middle;padding:.75rem 1rem}.tp-table tbody tr:first-child td{border-top:0}.tp-table [data-align=end]{text-align:right}.tp-table tbody tr:hover td{background:var(--tp-surface-muted)}.tp-table__row--clickable{cursor:pointer}.tp-table__empty{text-align:center;color:var(--tp-text-muted);padding:2rem 1rem!important}.tp-table a{font-weight:600;text-decoration:none}.tp-table a:hover{text-decoration:underline}.tp-cell-title{gap:.1rem;display:grid}.tp-cell-title strong{font-weight:650}.tp-cell-title span{color:var(--tp-text-muted);font-size:.82rem}.tp-state{border:1px dashed var(--tp-border-strong);border-radius:var(--tp-radius-lg);text-align:center;background:var(--tp-surface);justify-items:center;gap:.5rem;padding:2.5rem 1.5rem;display:grid}.tp-state h2{font-size:1.05rem}.tp-state p{max-width:32rem;color:var(--tp-text-muted)}.tp-state__icon{background:var(--tp-primary-soft);width:52px;height:52px;color:var(--tp-primary);border-radius:14px;place-items:center;margin-bottom:.25rem;display:grid}.tp-state__action{margin-top:.5rem}.tp-state--error{background:var(--tp-danger-soft);color:var(--tp-danger);border-style:solid;border-color:#f5c2bd}.tp-state--error p{color:#7a271a}.tp-loading{gap:.6rem;display:grid}.tp-skeleton{border-radius:var(--tp-radius-sm);background:linear-gradient(90deg,#e9eef5 25%,#f4f7fb 50%,#e9eef5 75%) 0 0/200% 100%;animation:1.4s ease-in-out infinite tp-shimmer;display:block}@keyframes tp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.tp-callout{--tone:var(--tp-info);--tone-soft:var(--tp-info-soft);border:1px solid color-mix(in srgb, var(--tone) 25%, transparent);border-left:4px solid var(--tone);border-radius:var(--tp-radius-sm);background:var(--tone-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;padding:.85rem 1rem;display:flex}.tp-callout__title{color:var(--tone);display:block}.tp-callout__body{color:var(--tp-text);font-size:.92rem}.tp-callout__body ul{margin:.35rem 0 0;padding-left:1.1rem}.tp-callout[data-tone=success]{--tone:var(--tp-success);--tone-soft:var(--tp-success-soft)}.tp-callout[data-tone=warning]{--tone:var(--tp-warning);--tone-soft:var(--tp-warning-soft)}.tp-callout[data-tone=danger]{--tone:var(--tp-danger);--tone-soft:var(--tp-danger-soft)}.tp-callout[data-tone=neutral]{--tone:var(--tp-neutral);--tone-soft:var(--tp-neutral-soft)}.tp-page{align-content:start;gap:1.25rem;max-width:1440px;padding:1.75rem 2rem 3rem;display:grid}.tp-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem 1.5rem;display:flex}.tp-page-header__text{gap:.3rem;min-width:0;display:grid}.tp-page-header h1{letter-spacing:-.02em;font-size:1.6rem;font-weight:750}.tp-page-header__eyebrow{color:var(--tp-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:700}.tp-page-header__description{color:var(--tp-text-muted);max-width:52rem}.tp-page-header__meta{color:var(--tp-text-muted);flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:.2rem;font-size:.9rem;display:flex}.tp-page-header__actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.tp-page-header__back{margin-bottom:.15rem}.tp-subnav{border-bottom:1px solid var(--tp-border);flex-wrap:wrap;gap:.25rem;display:flex}.tp-subnav__link{color:var(--tp-text-muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:.55rem .85rem;font-weight:600;text-decoration:none}.tp-subnav__link:hover{color:var(--tp-text)}.tp-subnav__link[aria-current=page]{border-bottom-color:var(--tp-primary);color:var(--tp-text)}.tp-toolbar{border:1px solid var(--tp-border);border-radius:var(--tp-radius);background:var(--tp-surface);flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;padding:.9rem 1rem;display:flex}.tp-toolbar .tp-field{flex:0 15rem;min-width:12rem}.tp-toolbar__spacer{flex:1}.tp-segmented{background:var(--tp-surface-sunken);border-radius:10px;padding:3px;display:inline-flex}.tp-segmented button{min-height:32px;color:var(--tp-text-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:.3rem .8rem;font-size:.88rem;font-weight:600}.tp-segmented button[aria-pressed=true]{background:var(--tp-surface);color:var(--tp-text);box-shadow:var(--tp-shadow-sm)}.tp-pagination{justify-content:flex-end;gap:.5rem;display:flex}.tp-actions-row,.tp-inline-form{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.tp-inline-form{align-items:flex-end}.tp-inline-form .tp-field{min-width:14rem}.tp-card{border:1px solid var(--tp-border);border-radius:var(--tp-radius-lg);background:var(--tp-surface);box-shadow:var(--tp-shadow-sm);align-content:start;min-width:0;display:grid}.tp-card__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem 0;display:flex}.tp-card__title{font-size:1rem;font-weight:700}.tp-card__description{color:var(--tp-text-muted);margin-top:.15rem;font-size:.88rem}.tp-card__actions{flex-wrap:wrap;gap:.5rem;display:flex}.tp-card__body{gap:1rem;min-width:0;padding:1rem 1.25rem 1.25rem;display:grid}.tp-card__body>.tp-table-wrap{margin-inline:-1.25rem;border:0;border-top:1px solid var(--tp-border);border-radius:0 0 var(--tp-radius-lg) var(--tp-radius-lg);box-shadow:none;margin-bottom:-1.25rem}.tp-kv{grid-template-columns:repeat(var(--cols,2), minmax(0, 1fr));gap:.9rem 1.5rem;margin:0;display:grid}.tp-kv[data-columns="1"]{--cols:1}.tp-kv[data-columns="3"]{--cols:3}.tp-kv[data-columns="4"]{--cols:4}.tp-kv__item{gap:.15rem;min-width:0;display:grid}.tp-kv dt{color:var(--tp-text-muted);font-size:.8rem;font-weight:600}.tp-kv dd{overflow-wrap:anywhere;margin:0;font-weight:550}.tp-stat-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;display:grid}.tp-stat{--tone:var(--tp-text);border:1px solid var(--tp-border);border-radius:var(--tp-radius-lg);background:var(--tp-surface);box-shadow:var(--tp-shadow-sm);transition:border-color .15s,box-shadow .15s,transform .15s;position:relative}.tp-stat>.tp-stat__link{color:inherit;gap:.35rem;padding:1rem 1.15rem;text-decoration:none;display:grid}.tp-stat:not(:has(.tp-stat__link)){color:inherit;gap:.35rem;padding:1rem 1.15rem;text-decoration:none;display:grid}.tp-stat:has(.tp-stat__link):hover{border-color:var(--tp-border-strong);box-shadow:var(--tp-shadow);transform:translateY(-1px)}.tp-stat__top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.tp-stat__label{color:var(--tp-text-muted);font-size:.88rem;font-weight:600}.tp-stat__icon{background:var(--tp-neutral-soft);width:34px;height:34px;color:var(--tp-neutral);border-radius:10px;place-items:center;display:grid}.tp-stat__value{letter-spacing:-.02em;color:var(--tone);font-variant-numeric:tabular-nums;font-size:2rem;font-weight:750;line-height:1.1}.tp-stat__hint{color:var(--tp-text-muted);font-size:.82rem}.tp-stat[data-tone=warning]{--tone:var(--tp-warning)}.tp-stat[data-tone=warning] .tp-stat__icon{background:var(--tp-warning-soft);color:var(--tp-warning)}.tp-stat[data-tone=danger]{--tone:var(--tp-danger)}.tp-stat[data-tone=danger] .tp-stat__icon{background:var(--tp-danger-soft);color:var(--tp-danger)}.tp-stat[data-tone=success] .tp-stat__icon{background:var(--tp-success-soft);color:var(--tp-success)}.tp-stat[data-tone=info] .tp-stat__icon,.tp-stat[data-tone=accent] .tp-stat__icon{background:var(--tp-primary-soft);color:var(--tp-primary)}.tp-tabs{gap:1rem;min-width:0;display:grid}.tp-tabs__list{border-bottom:1px solid var(--tp-border);scrollbar-width:thin;gap:.25rem;display:flex;overflow-x:auto}.tp-tabs__tab{color:var(--tp-text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:.45rem;padding:.65rem .9rem;font-weight:600;display:inline-flex;position:relative}.tp-tabs__tab:hover{color:var(--tp-text)}.tp-tabs__tab[aria-selected=true]{color:var(--tp-primary)}.tp-tabs__tab[aria-selected=true]:after{content:"";background:var(--tp-primary);border-radius:2px;height:2px;position:absolute;inset:auto .5rem -1px}.tp-tabs__badge{background:var(--tp-surface-sunken);min-width:1.4rem;color:var(--tp-text-muted);text-align:center;border-radius:999px;padding:0 .4rem;font-size:.75rem}.tp-tabs__panel{gap:1rem;min-width:0;display:grid}.tp-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#07122673;place-items:center;padding:1rem;animation:.15s ease-out tp-fade;display:grid;position:fixed;inset:0}.tp-modal{border-radius:var(--tp-radius-lg);width:min(36rem,100%);max-height:calc(100vh - 2rem);box-shadow:var(--tp-shadow-lg);background:var(--tp-surface);color:var(--tp-text);border:0;gap:0;margin:0;padding:0;animation:.18s ease-out tp-pop;display:grid;position:relative;overflow:auto}.tp-modal[data-size=sm]{width:min(28rem,100%)}.tp-modal[data-size=lg]{width:min(48rem,100%)}.tp-modal__header{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.15rem 1.25rem 0;display:flex}.tp-modal__header h2{font-size:1.1rem}.tp-modal__description,.tp-modal__text{color:var(--tp-text-muted);margin-top:.25rem}.tp-modal__close{width:34px;height:34px;color:var(--tp-text-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:grid}.tp-modal__close:hover{background:var(--tp-surface-sunken);color:var(--tp-text)}.tp-modal__body{padding:1rem 1.25rem 1.25rem}.tp-modal__body .tp-form{max-width:none}.tp-modal__footer{border-top:1px solid var(--tp-border);background:var(--tp-surface-muted);justify-content:flex-end;gap:.6rem;padding:.9rem 1.25rem;display:flex}@keyframes tp-fade{0%{opacity:0}}@keyframes tp-pop{0%{opacity:0;transform:translateY(8px)scale(.98)}}.tp-toasts{z-index:90;gap:.6rem;width:min(24rem,100vw - 2rem);display:grid;position:fixed;bottom:1rem;right:1rem}.tp-toast{--tone:var(--tp-info);border:1px solid var(--tp-border);border-left:4px solid var(--tone);border-radius:var(--tp-radius);background:var(--tp-surface);box-shadow:var(--tp-shadow-lg);justify-content:space-between;gap:.75rem;padding:.85rem 1rem;animation:.2s ease-out tp-pop;display:flex}.tp-toast p{color:var(--tp-text-muted);margin-top:.15rem;font-size:.9rem}.tp-toast[data-tone=success]{--tone:var(--tp-success)}.tp-toast[data-tone=danger]{--tone:var(--tp-danger)}.tp-toast[data-tone=warning]{--tone:var(--tp-warning)}.tp-toast__close{color:var(--tp-text-muted);cursor:pointer;background:0 0;border:0;align-self:start;font-size:1.25rem;line-height:1}.tp-skip-link{z-index:100;background:var(--tp-amber-400);color:var(--tp-navy-950);border-radius:8px;padding:.6rem 1rem;font-weight:700;text-decoration:none;position:absolute;top:-60px;left:1rem}.tp-skip-link:focus{top:.75rem}.tp-bootstrap{min-height:100vh;color:var(--tp-text-muted);place-items:center;padding:2rem;display:grid}.tp-app-shell{grid-template-columns:var(--tp-sidebar-w) minmax(0, 1fr);background:linear-gradient(to right, var(--tp-navy-900) var(--tp-sidebar-w), var(--tp-bg) var(--tp-sidebar-w));min-height:100vh;display:grid}.tp-sidebar{z-index:60;background:var(--tp-navy-900);color:#dbe4f3;flex-direction:column;height:100vh;padding:1rem .75rem;display:flex;position:sticky;top:0;overflow-y:auto}.tp-brand{align-items:center;gap:.7rem;padding:.25rem .5rem 1.25rem;display:flex}.tp-brand__mark{color:var(--tp-primary);display:inline-flex}.tp-brand__text{min-width:0;line-height:1.2;display:grid}.tp-brand__text strong{color:#fff;font-size:.98rem;font-weight:750}.tp-brand__text span{color:#8ea2c3;font-size:.78rem}.tp-sidebar__close{color:#dbe4f3;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:36px;height:36px;margin-left:auto;display:none}.tp-nav{gap:1.1rem;display:grid}.tp-nav__group{gap:.15rem;display:grid}.tp-nav__heading{color:#7287a8;letter-spacing:.09em;text-transform:uppercase;padding:0 .75rem .3rem;font-size:.7rem;font-weight:700}.tp-nav__link{color:#c9d5e8;border-radius:9px;align-items:center;gap:.7rem;padding:.55rem .75rem;font-size:.93rem;font-weight:550;text-decoration:none;transition:background-color .15s,color .15s;display:flex}.tp-nav__link svg{opacity:.8;flex:none}.tp-nav__link:hover{color:#fff;background:#ffffff0f}.tp-nav__link.active{color:#fff;box-shadow:inset 3px 0 0 var(--tp-amber-400);background:#ffffff1a}.tp-nav__link.active svg{opacity:1;color:var(--tp-amber-400)}.tp-sidebar__footer{border-top:1px solid #ffffff14;margin-top:auto;padding-top:1rem}.tp-sidebar__footer .tp-button{color:#c9d5e8;justify-content:flex-start;width:100%}.tp-sidebar__footer .tp-button:hover:not(:disabled){color:#fff;background:#ffffff0f}.tp-scrim{display:none}.tp-app-main{flex-direction:column;min-width:0;display:flex}.tp-main{outline:none;flex:1}.tp-topbar{z-index:40;min-height:var(--tp-topbar-h);border-bottom:1px solid var(--tp-border);-webkit-backdrop-filter:saturate(160%)blur(10px);backdrop-filter:saturate(160%)blur(10px);background:#ffffffeb;align-items:center;gap:1rem;padding:.6rem 2rem;display:flex;position:sticky;top:0}.tp-topbar .tp-field{align-items:center;gap:.6rem;display:flex}.tp-topbar .tp-field__label{color:var(--tp-text-muted);font-size:.85rem}.tp-topbar .tp-field__control{min-width:15rem;min-height:38px;font-weight:600}.tp-topbar__spacer{flex:1}.tp-topbar__menu{border:1px solid var(--tp-border);background:var(--tp-surface);width:40px;height:40px;color:var(--tp-text);cursor:pointer;border-radius:10px;place-items:center;display:none}.tp-live{--tone:var(--tp-neutral);background:var(--tp-surface-sunken);color:var(--tp-text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:.45rem;padding:.3rem .7rem;font-size:.82rem;font-weight:600;display:inline-flex}.tp-live__dot{background:var(--tone);border-radius:50%;width:8px;height:8px}.tp-live[data-tone=success]{--tone:#10b981}.tp-live[data-tone=success] .tp-live__dot{animation:2s infinite tp-ping;box-shadow:0 0 #10b98199}.tp-live[data-tone=warning]{--tone:var(--tp-amber-500)}.tp-live[data-tone=danger]{--tone:var(--tp-danger);color:var(--tp-danger)}.tp-live[data-tone=info]{--tone:var(--tp-info)}.tp-live__warning{color:var(--tp-danger)}@keyframes tp-ping{70%{box-shadow:0 0 0 7px #10b98100}to{box-shadow:0 0 #10b98100}}.tp-company-picker{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.tp-auth-page{background:var(--tp-surface);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh;display:grid}.tp-auth-aside{color:#fff;background:radial-gradient(700px 400px at 90% 0%, #2dd4bf29, transparent 60%), radial-gradient(600px 400px at 0% 100%, #fbbf2424, transparent 60%), linear-gradient(180deg, var(--tp-navy-950), var(--tp-navy-900));flex-direction:column;justify-content:space-between;gap:2rem;padding:2.5rem 3rem;display:flex;position:relative;overflow:hidden}.tp-auth-aside .tp-brand{padding:0}.tp-auth-aside h2{letter-spacing:-.03em;max-width:28rem;font-size:clamp(1.6rem,3vw,2.3rem);font-weight:800}.tp-auth-aside p{color:#ffffffb8;max-width:28rem;margin-top:.75rem}.tp-auth-aside ul{color:#fffc;gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.tp-auth-aside li{align-items:center;gap:.6rem;display:flex}.tp-auth-aside li svg{color:var(--tp-amber-400)}.tp-auth-main{place-items:center;padding:2rem;display:grid}.tp-auth-card{gap:1.5rem;width:min(24rem,100%);display:grid}.tp-auth-card h1{font-size:1.6rem;font-weight:750}.tp-auth-card>div>p{color:var(--tp-text-muted);margin-top:.35rem}.tp-auth-card form{gap:1rem;display:grid}.tp-auth-card .tp-button{width:100%;min-height:44px}.tp-auth-help{color:var(--tp-text-muted);text-align:center;font-size:.85rem}.tp-dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.tp-two-col{grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:start;gap:1.25rem;display:grid}.tp-two-col__aside{top:calc(var(--tp-topbar-h) + 1rem);gap:1.25rem;display:grid;position:sticky}.tp-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1.25rem;display:grid}.tp-admin-split{grid-template-columns:minmax(0,1.2fr) minmax(20rem,.8fr);align-items:start;gap:1.25rem;display:grid}.tp-admin-panel{border:1px solid var(--tp-border);border-radius:var(--tp-radius-lg);background:var(--tp-surface);box-shadow:var(--tp-shadow-sm);gap:1rem;padding:1.15rem 1.25rem;display:grid}.tp-admin-panel h2,.tp-admin-panel h3{font-size:1rem}.tp-list{margin:0;padding:0;list-style:none;display:grid}.tp-list>li{border-top:1px solid var(--tp-border);justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem 0;display:flex}.tp-list>li:first-child{border-top:0}.tp-attention{gap:.15rem;min-width:0;display:grid}.tp-attention strong{font-weight:650}.tp-attention span{color:var(--tp-text-muted);font-size:.85rem}.tp-stop-list{counter-reset:stop;gap:0;margin:0;padding:0;list-style:none;display:grid;position:relative}.tp-stop-list li{grid-template-columns:32px minmax(0,1fr);gap:.75rem;padding:.55rem 0;display:grid;position:relative}.tp-stop-list li:before{counter-increment:stop;content:counter(stop);border:2px solid var(--tp-primary);background:var(--tp-surface);width:28px;height:28px;color:var(--tp-primary);z-index:1;border-radius:50%;place-items:center;font-size:.8rem;font-weight:800;display:grid}.tp-stop-list li:not(:last-child):after{content:"";background:var(--tp-border-strong);width:2px;position:absolute;top:36px;bottom:-6px;left:13px}.tp-stop-list li[data-endpoint=true]:before{border-color:var(--tp-amber-500);background:var(--tp-amber-400);color:var(--tp-navy-950)}.tp-stop-list strong{display:block}.tp-stop-list span{color:var(--tp-text-muted);font-size:.85rem}.tp-map{border-radius:var(--tp-radius);background:var(--tp-surface-sunken);width:100%;height:340px;position:relative;overflow:hidden}.tp-map--tall{height:420px}.tp-map__fallback{color:var(--tp-text-muted);text-align:center;place-items:center;padding:1rem;font-size:.9rem;display:grid;position:absolute;inset:0}.tp-map-marker{background:var(--tp-primary);color:#fff;border:2px solid #fff;border-radius:50%;place-items:center;width:26px;height:26px;font-size:.75rem;font-weight:800;display:grid;box-shadow:0 2px 6px #0000004d}.tp-map-marker[data-endpoint=true]{background:var(--tp-amber-500);color:var(--tp-navy-950)}.tp-map-vehicle{background:#10b981;border:3px solid #fff;border-radius:50%;width:20px;height:20px;box-shadow:0 0 0 6px #10b9814d,0 2px 6px #0000004d}.tp-map-vehicle[data-stale=true]{background:#94a3b8;box-shadow:0 0 0 6px #94a3b84d}.tp-progress{background:var(--tp-surface-sunken);border-radius:999px;height:8px;overflow:hidden}.tp-progress>span{border-radius:inherit;background:var(--tp-primary);height:100%;display:block}.tp-details{border:1px solid var(--tp-border);border-radius:var(--tp-radius);background:var(--tp-surface-muted)}.tp-details summary{color:var(--tp-text-muted);cursor:pointer;padding:.7rem 1rem;font-size:.88rem;font-weight:600}.tp-details>div{padding:0 1rem 1rem}.tp-pipeline{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;display:grid}.tp-pipeline__col{border:1px solid var(--tp-border);border-radius:var(--tp-radius);background:var(--tp-surface);text-align:left;cursor:pointer;gap:.15rem;padding:.75rem .9rem;display:grid}.tp-pipeline__col[aria-pressed=true]{border-color:var(--tp-primary);box-shadow:var(--tp-focus)}.tp-pipeline__col span{color:var(--tp-text-muted);font-size:.82rem;font-weight:600}.tp-pipeline__col strong{font-variant-numeric:tabular-nums;font-size:1.35rem}.tp-money-hero{gap:.2rem;display:grid}.tp-money-hero span{color:var(--tp-text-muted);font-size:.85rem;font-weight:600}.tp-money-hero strong{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.75rem;font-weight:750}.tp-timeline{margin:0;padding:0;list-style:none;display:grid}.tp-timeline li{border-left:2px solid var(--tp-border);gap:.1rem;margin-left:.35rem;padding:0 0 .9rem 1.25rem;display:grid;position:relative}.tp-timeline li:before{content:"";background:var(--tp-border-strong);border-radius:50%;width:10px;height:10px;position:absolute;top:.3rem;left:-6px}.tp-timeline li[data-current=true]:before{background:var(--tp-primary)}.tp-timeline li:last-child{border-left-color:#0000;padding-bottom:0}.tp-timeline span{color:var(--tp-text-muted);font-size:.85rem}@media (width<=1180px){.tp-two-col{grid-template-columns:1fr}.tp-two-col__aside{position:static}.tp-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=980px){.tp-app-shell{background:var(--tp-bg);grid-template-columns:1fr}.tp-sidebar{width:min(var(--tp-sidebar-w), 86vw);box-shadow:var(--tp-shadow-lg);transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.tp-app-shell[data-nav-open] .tp-sidebar{transform:none}.tp-app-shell[data-nav-open] .tp-scrim{z-index:55;background:#07122673;border:0;display:block;position:fixed;inset:0}.tp-sidebar__close{display:grid}.tp-topbar{padding:.6rem 1rem}.tp-topbar__menu{display:grid}.tp-topbar .tp-field__label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tp-topbar .tp-field__control{width:min(15rem,50vw);min-width:0}.tp-page{padding:1.25rem 1rem 2.5rem}.tp-admin-split,.tp-grid-2,.tp-auth-page{grid-template-columns:1fr}.tp-auth-aside{display:none}}@media (width<=640px){.tp-dashboard-grid,.tp-form-grid,.tp-form-grid--3{grid-template-columns:1fr}.tp-kv,.tp-kv[data-columns="3"],.tp-kv[data-columns="4"]{--cols:1}.tp-page-header h1{font-size:1.35rem}.tp-live{padding:.3rem .5rem}.tp-toolbar .tp-field{flex:100%}}.tp-check{cursor:pointer;align-items:center;gap:.55rem;font-weight:550;display:inline-flex}.tp-check input{width:18px;height:18px;accent-color:var(--tp-primary)}.tp-weekdays{border:0;gap:.4rem;min-width:0;margin:0;padding:0;display:grid}.tp-weekdays__options{flex-wrap:wrap;gap:.35rem;display:flex}.tp-weekdays__day{border:1px solid var(--tp-border-strong);border-radius:var(--tp-radius-sm);background:var(--tp-surface);min-width:46px;min-height:38px;color:var(--tp-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;place-items:center;padding:0 .6rem;font-size:.88rem;font-weight:650;display:grid;position:relative}.tp-weekdays__day input{opacity:0;cursor:pointer;position:absolute;inset:0}.tp-weekdays__day[data-checked]{border-color:var(--tp-primary);background:var(--tp-primary-soft);color:var(--tp-primary)}.tp-weekdays__day:has(input:focus-visible){box-shadow:var(--tp-focus)}.tp-location-picker{gap:.75rem;display:grid}.tp-page>*,.tp-card__body>*,.tp-admin-panel>*,.tp-tabs__panel>*,.tp-two-col>*,.tp-grid-2>*,.tp-admin-split>*{min-width:0}.tp-table-wrap{max-width:100%}@media (width<=640px){.tp-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.tp-stat>.tp-stat__link{padding:.85rem}.tp-stat:not(:has(.tp-stat__link)){padding:.85rem}.tp-stat__value{font-size:1.6rem}.tp-stat__icon{display:none}.tp-page-header__actions{width:100%}}@media (width<=980px){.tp-sidebar{box-shadow:none}.tp-app-shell[data-nav-open] .tp-sidebar{box-shadow:var(--tp-shadow-lg)}}.tp-table-wrap:focus-visible{box-shadow:var(--tp-focus)}.tp-code{letter-spacing:.12em;margin:.25rem 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.6rem}
