:root{--ti-green:#1db489;--ti-green-mid:#2cb287;--ti-green-dark:#126c4f;--ti-teal-light:#b8e6db;--ti-teal-50:#e8f6f1;--ti-navy:#3e4d67;--ti-navy-mid:#425369;--ti-navy-slate:#4e5c6f;--ti-navy-dark:#313f4f;--ti-green-80:#4ac3a1;--ti-green-60:#77d2b8;--ti-green-40:var(--ti-teal-light);--ti-green-20:var(--ti-teal-50);--ti-navy-80:#657185;--ti-navy-60:#8b94a4;--ti-navy-40:#b2b8c2;--ti-navy-20:#d8dbe1;--ti-green-bright:#00b050;--ti-navy-deep:var(--ti-navy);--ti-navy-ink:var(--ti-navy-dark);--table-row-alt:#f1f3f4;--table-row-hover:var(--ti-teal-50);--ti-black:#000;--ti-ink:#313f4f;--ti-ink-soft:#46506a;--ti-grey:#6b7280;--ti-line:#e2e6ec;--ti-offwhite:#f7f7fa;--ti-paper:#fbfcfd;--ti-white:#fff;--fg-1:var(--ti-ink);--fg-2:var(--ti-ink-soft);--fg-3:var(--ti-grey);--fg-on-dark:var(--ti-white);--fg-on-dark-2:var(--ti-teal-light);--bg-1:var(--ti-white);--bg-2:var(--ti-offwhite);--bg-dark:var(--ti-navy-deep);--accent:var(--ti-green);--accent-quiet:var(--ti-teal-50);--link:var(--ti-navy-ink);--link-hover:var(--ti-green);--border:var(--ti-line);--font-sans:"Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:var(--font-sans);--font-mono:"SFMono-Regular", "Menlo", "Consolas", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.375rem;--text-xl:1.75rem;--text-2xl:2.25rem;--text-3xl:3rem;--text-4xl:4rem;--w-regular:400;--w-medium:500;--w-semi:600;--w-bold:700;--w-heavy:800;--w-black:800;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--shadow-sm:0 1px 2px #3e4d670f, 0 1px 3px #3e4d6714;--shadow-md:0 4px 12px #3e4d6714, 0 2px 4px #3e4d670d;--shadow-lg:0 16px 40px #3e4d671f, 0 4px 12px #3e4d670f;--ok:var(--ti-green-bright);--warn:#e0a04e;--warn-wash:#fbf3e6;--warn-ink:#7a4d00;--crit:#c0483c;--crit-wash:#fbeeec;--fg:var(--fg-1);--ti-border:var(--ti-line);--border-strong:#cbd3dd;--radius-card:var(--radius-lg);--ease:cubic-bezier(.22, .61, .36, 1);--dur-fast:.14s;--dur:.22s;--dur-slow:.42s}.ti-type{font-family:var(--font-sans);color:var(--fg-1);font-weight:var(--w-regular);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.6}.ti-type h1,.ti-h1{font-family:var(--font-display);font-weight:var(--w-heavy);font-size:var(--text-4xl);letter-spacing:-.02em;color:var(--ti-navy-deep);text-wrap:balance;line-height:1.04}.ti-type h2,.ti-h2{font-family:var(--font-display);font-weight:var(--w-heavy);font-size:var(--text-2xl);letter-spacing:-.01em;color:var(--ti-navy-deep);text-wrap:balance;line-height:1.1}.ti-type h3,.ti-h3{font-weight:var(--w-bold);font-size:var(--text-lg);color:var(--ti-navy-deep);line-height:1.25}.ti-eyebrow{font-weight:var(--w-heavy);font-size:var(--text-sm);letter-spacing:.14em;text-transform:uppercase;color:var(--ti-green)}.ti-type p,.ti-body{font-size:var(--text-base);color:var(--fg-1);text-wrap:pretty;line-height:1.65}.ti-lead{font-size:var(--text-md);color:var(--fg-2);line-height:1.6}.ti-caption{font-size:var(--text-sm);color:var(--fg-3)}.ti-stat{font-family:var(--font-display);font-weight:var(--w-black);font-size:var(--text-3xl);letter-spacing:-.02em;color:var(--ti-green);font-variant-numeric:tabular-nums;line-height:1}.ti-quote{font-style:italic;font-weight:var(--w-medium);font-size:var(--text-xl);color:var(--ti-navy-deep);line-height:1.4}.ti-type a,.ti-link{color:var(--link);border-bottom:1px solid color-mix(in srgb, var(--link) 30%, transparent);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease);text-decoration:none}.ti-type a:hover,.ti-link:hover{color:var(--link-hover);border-color:var(--link-hover)}.ti-rule{border-radius:var(--radius-pill);background:var(--ti-green);width:56px;height:4px;margin:var(--space-4) 0;border:0}*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Montserrat,system-ui,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1280px}}@media (width>=1536px){.container{max-width:1536px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-3{gap:.75rem}.rounded{border-radius:.25rem}.border{border-width:1px}.py-16{padding-top:4rem;padding-bottom:4rem}.text-ti-grey{color:var(--ti-grey)}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.\[--name\:value\]{--name:value}:root{--green:var(--ti-green);--navy:var(--ti-navy-deep);--ink:var(--ti-ink);--muted:var(--ti-grey);--border:var(--ti-line);--surface:var(--ti-white);--bg:var(--ti-offwhite);--wash:var(--ti-teal-50);--topbar-h:60px;--sidebar-w:244px;--rail-w:64px;font-family:var(--font-sans);color:var(--fg-1)}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg-1);margin:0}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0}.center{height:100vh;color:var(--muted);justify-content:center;align-items:center;display:flex}.section-title{font-size:var(--text-lg);color:var(--navy);font-weight:var(--w-bold);margin:26px 0 12px}.link{color:var(--link);font-weight:var(--w-semi);font-size:var(--text-sm)}.link:hover{color:var(--link-hover)}.login{background:var(--navy);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:28px;min-height:100vh;padding:32px 16px;display:flex}.login__brand{flex-direction:column;align-items:center;display:flex}.login__tile{border-radius:var(--radius-lg);background:var(--green);width:64px;height:64px;color:var(--ti-white);justify-content:center;align-items:center;margin-bottom:20px;display:inline-flex}.login__title{font-family:var(--font-display);font-weight:var(--w-heavy);font-size:var(--text-lg);color:var(--ti-white);margin:0}.login__tagline{font-size:var(--text-sm);color:var(--ti-green-40);margin:6px 0 0}.login__card{background:var(--ti-white);border-radius:var(--radius-lg);text-align:left;width:100%;max-width:384px;box-shadow:var(--shadow-lg);padding:24px}.login__card h2{font-size:var(--text-md);font-weight:var(--w-bold);color:var(--ti-navy-dark);margin:0 0 4px}.login__card p{font-size:var(--text-sm);color:var(--muted);margin:0 0 20px;line-height:1.5}.login__microsoft{font:inherit;font-size:var(--text-sm);font-weight:var(--w-semi);border:1px solid var(--ti-navy-20);border-radius:var(--radius-md);background:var(--ti-white);width:100%;color:var(--ti-navy-dark);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);justify-content:center;align-items:center;gap:10px;padding:11px 16px;display:flex}.login__microsoft:hover{background:var(--bg);border-color:var(--ti-navy-40)}.login__microsoft:focus-visible{outline:2px solid var(--green);outline-offset:2px}.login__note{font-size:var(--text-xs);color:var(--ti-navy-40);margin:0}.btn{font:inherit;font-weight:var(--w-semi);cursor:pointer;white-space:nowrap;border:1px solid var(--border);background:var(--surface);color:var(--navy);border-radius:var(--radius-pill);box-shadow:none;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);flex-direction:row;justify-content:center;align-items:center;gap:8px;line-height:1.25;display:inline-flex}.btn svg{flex-shrink:0;display:inline-block}.btn:focus-visible{outline:2px solid var(--green);outline-offset:2px}.btn--md{padding:9px 18px}.btn--sm{font-size:var(--text-sm);padding:6px 14px}.btn--primary{background:var(--green);border-color:var(--green);color:var(--ti-white)}.btn--primary:hover:not(:disabled){background:var(--ti-green-dark);border-color:var(--ti-green-dark)}.btn--outline{background:var(--surface)}.btn--outline:hover:not(:disabled){border-color:var(--green);color:var(--green)}.btn--ghost{background:0 0;border-color:#0000}.btn--ghost:hover:not(:disabled){color:var(--green);background:var(--ti-green-20)}.btn--danger{background:var(--crit);border-color:var(--crit);color:var(--ti-white)}.btn--danger:hover:not(:disabled){filter:brightness(.92)}.btn--icon{justify-content:center;width:40px;height:40px;padding:0}.btn--icon:hover:not(:disabled){border-color:var(--green);color:var(--green)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn.is-loading{opacity:.7}.badge{font-size:10px;font-weight:var(--w-bold);border-radius:var(--radius-pill);letter-spacing:.04em;padding:2px 8px}.badge--admin{color:var(--green);background:var(--wash)}.badge--soon{color:var(--ti-navy-slate);background:var(--ti-teal-light)}.pill{font-size:var(--text-xs);font-weight:var(--w-bold);border-radius:var(--radius-pill);white-space:nowrap;padding:3px 10px;display:inline-block}.pill--green{color:#fff;background:var(--green)}.pill--navy{color:#fff;background:var(--navy)}.pill--amber{color:var(--warn-ink);background:#ffedcc}.pill--red{color:#7a1a1a;background:#fbe3e3}.pill--neutral{color:var(--fg-2);background:var(--bg);border:1px solid var(--border)}.chip{font-size:var(--text-xs);font-weight:var(--w-medium);color:var(--fg-2);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-pill);padding:2px 9px;display:inline-block}.portal{grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;transition:grid-template-columns .2s var(--ease);display:grid}.portal__main{flex-direction:column;min-width:0;display:flex}.portal__content{padding:26px 30px;overflow:auto}.portal--flush,.portal--flush .portal__main{height:100dvh;min-height:0}.portal__content--flush{flex:1;min-height:0;padding:0;overflow:hidden}.utility-bar__slot{display:contents}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;height:100vh;display:flex;position:sticky;top:0}.sidebar__brand{height:var(--topbar-h);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:0 18px;display:flex}.sidebar__brand-main{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.sidebar__logo{width:auto;height:26px}.sidebar__brand-text{font-weight:var(--w-heavy);color:var(--navy);font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar__collapse{border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:0;flex:none;padding:4px;display:inline-flex}.sidebar__collapse:hover{background:var(--bg);color:var(--navy)}.sidebar__expand{border-radius:var(--radius-sm);width:40px;height:40px;color:var(--navy);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:none}.sidebar__expand>*{transition:opacity var(--dur-fast) var(--ease);grid-area:1/1}.sidebar__expand-icon{opacity:0}.sidebar__expand:hover,.sidebar__expand:focus-visible{background:var(--bg)}.sidebar__expand:hover .sidebar__logo,.sidebar__expand:focus-visible .sidebar__logo{opacity:0}.sidebar__expand:hover .sidebar__expand-icon,.sidebar__expand:focus-visible .sidebar__expand-icon{opacity:1}.sidebar__scroll{--scroll-thumb:transparent;flex:1;padding:8px 12px;overflow-y:auto}.sidebar__scroll:hover,.sidebar__scroll:focus-within{--scroll-thumb:color-mix(in srgb, var(--muted) 35%, transparent)}.sidebar__scroll::-webkit-scrollbar{width:6px}.sidebar__scroll::-webkit-scrollbar-track{background:0 0}.sidebar__scroll::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:999px}.sidebar__scroll::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--muted) 60%, transparent)}.sidebar__scroll::-webkit-scrollbar-button{display:none}@supports not selector(::-webkit-scrollbar){.sidebar__scroll{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}}.nav-group{margin-bottom:18px}.nav-group__label{font-size:10px;font-weight:var(--w-bold);letter-spacing:.1em;text-transform:uppercase;color:var(--ti-grey);padding:6px 10px}.nav-item{border-radius:var(--radius-sm);color:var(--navy);font-weight:var(--w-semi);font-size:var(--text-sm);transition:background var(--dur-fast) var(--ease);align-items:center;gap:10px;padding:9px 10px;display:flex}.nav-item:hover{background:var(--bg)}.nav-item.is-active{background:var(--green);color:#fff;font-weight:var(--w-bold)}.nav-item__icon{flex:none}.nav-item--deep{padding-left:14px}.nav-item--deep .nav-item__icon{display:none}.nav-item.is-disabled{color:var(--ti-grey);cursor:not-allowed;opacity:.7}.nav-item__flag{font-size:9px;font-weight:var(--w-bold);text-transform:uppercase;color:var(--ti-navy-slate);background:var(--ti-teal-light);border-radius:var(--radius-pill);margin-left:auto;padding:1px 6px}.sidebar__account{border-top:1px solid var(--border);padding:8px;position:relative}.sidebar__user{border-radius:var(--radius-sm);width:100%;font:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease);background:0 0;border:0;align-items:center;gap:10px;padding:8px;display:flex}.sidebar__user:hover,.sidebar__user[aria-expanded=true]{background:var(--bg)}.sidebar__user-chevron{color:var(--muted);flex:none;margin-left:auto}.account-menu{z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:6px;position:absolute;bottom:calc(100% + 4px);left:8px;right:8px}.account-menu__head{border-bottom:1px solid var(--border);flex-direction:column;margin-bottom:4px;padding:8px 10px 10px;display:flex}.account-menu__item{border-radius:var(--radius-sm);width:100%;font:inherit;font-size:var(--text-sm);font-weight:var(--w-semi);color:var(--navy);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;display:flex}.account-menu__item:hover,.account-menu__item:focus-visible{background:var(--bg);outline:none}.sidebar__user-meta{flex-direction:column;min-width:0;display:flex}.sidebar__user-name{font-weight:var(--w-semi);font-size:var(--text-sm);color:var(--navy);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar__user-email{font-size:var(--text-xs);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (width>=721px){.portal--rail{grid-template-columns:var(--rail-w) 1fr}.sidebar--rail .sidebar__brand{justify-content:center;padding:0}.sidebar--rail .sidebar__brand-main,.sidebar--rail .sidebar__collapse,.sidebar--rail .nav-item__flag,.sidebar--rail .sidebar__user .badge,.sidebar--rail .sidebar__user-chevron{display:none}.sidebar--rail .sidebar__expand{display:grid}.sidebar--rail .sidebar__scroll{padding:8px 10px;overflow-x:hidden}.sidebar--rail .nav-group__label{color:#0000;background:var(--border);height:1px;margin:4px 6px 10px;padding:0;overflow:hidden}.sidebar--rail .nav-group:first-child .nav-group__label{background:0 0;margin-bottom:4px}.sidebar--rail .nav-item{justify-content:center;gap:0;padding:10px 0}.sidebar--rail .nav-item--deep .nav-item__icon{display:block}.sidebar--rail .nav-item__label,.sidebar--rail .sidebar__user-meta{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sidebar--rail .sidebar__user{justify-content:center;padding:6px 0}.sidebar--rail .account-menu{width:240px;bottom:8px;left:calc(100% + 8px);right:auto}}.rail-tip{left:calc(var(--rail-w) + 10px);z-index:60;border-radius:var(--radius-sm);background:var(--navy);color:#fff;font-size:var(--text-xs);font-weight:var(--w-semi);letter-spacing:.02em;white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-lg);animation:rail-tip-in var(--dur-fast) var(--ease);align-items:center;gap:6px;padding:6px 12px;display:flex;position:fixed;transform:translateY(-50%)}.rail-tip:before{content:"";background:var(--navy);border-radius:1px;width:8px;height:8px;position:absolute;top:50%;left:-4px;transform:translateY(-50%)rotate(45deg)}.rail-tip:after{content:"";border-radius:var(--radius-pill);background:var(--green);order:-1;width:6px;height:6px}@keyframes rail-tip-in{0%{opacity:0;transform:translate(-4px,-50%)}}.avatar{border-radius:var(--radius-pill);background:var(--wash);width:34px;height:34px;color:var(--green);font-weight:var(--w-bold);font-size:var(--text-xs);flex:none;justify-content:center;align-items:center;display:flex}.utility-bar{z-index:45;height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:0 30px;display:flex;position:sticky;top:0}.utility-bar__left,.utility-bar__right{align-items:center;gap:10px;display:flex}.utility-bar__stamp{font-size:var(--text-xs);color:var(--muted)}.select{font:inherit;font-size:var(--text-sm);color:var(--fg-1);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 10px}.select:focus{border-color:var(--green);outline:none}.status-pill{font-size:var(--text-xs);font-weight:var(--w-semi);color:var(--fg-2);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-pill);align-items:center;gap:7px;padding:5px 11px;display:inline-flex}.status-pill__dot{background:var(--ti-green-bright);border-radius:50%;width:8px;height:8px}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.page-header__title,.ti-page-title{font-family:var(--font-display);font-weight:var(--w-heavy);color:var(--navy);font-size:var(--text-xl);letter-spacing:-.01em;overflow-wrap:break-word;line-height:1.2}@media (width<=640px){.page-header__title,.ti-page-title{font-size:1.5rem}}.page-header__subtitle{color:var(--muted);margin-top:4px}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.card-grid{gap:16px;display:grid}.card-grid--3{grid-template-columns:repeat(3,1fr)}.chart-row{grid-template-columns:1fr 1fr;gap:16px;margin:16px 0;display:grid}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:22px}.kpi-card__top{justify-content:space-between;align-items:flex-start;display:flex}.kpi-card__label{font-size:var(--text-sm);color:var(--muted);font-weight:var(--w-semi)}.kpi-card__value{font-family:var(--font-display);font-weight:var(--w-black);color:var(--navy);margin-top:12px;font-size:34px}.kpi-card__foot{align-items:center;gap:8px;margin-top:6px;display:flex}.kpi-card__caption{font-size:var(--text-xs);color:var(--muted)}.kpi-card__delta{font-size:var(--text-xs);font-weight:var(--w-bold);border-radius:var(--radius-pill);padding:1px 7px}.kpi-card__delta--up{color:var(--ti-green-bright);background:var(--wash)}.kpi-card__delta--down{color:var(--crit);background:var(--crit-wash)}.kpi-card__delta--flat{color:var(--muted);background:var(--bg)}.icon-badge{background:var(--wash);color:var(--green);border-radius:var(--radius-md);flex:none;justify-content:center;align-items:center;display:inline-flex}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:16px;padding:22px;display:flex}.project-card__head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.project-card__name{font-size:var(--text-md);font-weight:var(--w-bold);color:var(--navy)}.project-card__sub{font-size:var(--text-sm);color:var(--muted);margin-top:2px}.project-card__metrics{grid-template-columns:1fr 1fr;gap:12px;display:grid}.metric{flex-direction:column;display:flex}.metric__label{font-size:var(--text-xs);color:var(--muted)}.metric__value{font-weight:var(--w-bold);color:var(--fg-1)}.project-card__spend-row{font-size:var(--text-xs);color:var(--muted);justify-content:space-between;margin-bottom:6px;display:flex}.project-card__tags{flex-wrap:wrap;gap:6px;display:flex}.progress{background:var(--bg);border-radius:var(--radius-pill);height:8px;overflow:hidden}.progress__fill{border-radius:var(--radius-pill);height:100%}.progress__fill--green{background:var(--green)}.progress__fill--amber{background:#e0a04e}.progress__fill--red{background:#d65c5c}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin:16px 0;padding:20px}.panel__head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.panel__title{font-size:var(--text-md);font-weight:var(--w-semi);color:var(--navy)}.panel--placeholder{color:var(--muted);border-style:dashed}.table-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin:16px 0;overflow:hidden}.table-card__head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.table-card__title{font-size:var(--text-md);font-weight:var(--w-bold);color:var(--navy)}.table-card__scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.data-table th{text-align:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:var(--w-bold);background:var(--bg);padding:11px 20px}.data-table td{border-top:1px solid var(--border);padding:12px 20px}.data-table tbody tr:nth-child(2n){background:var(--table-row-alt)}.data-table tbody tr:hover{background:var(--table-row-hover)}.data-table__sort{cursor:pointer;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.data-table__sort:hover{color:var(--green)}.data-table th[aria-sort] .quote{margin-top:3px;font-style:italic;display:block}.chip__remove{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:0;align-items:center;margin-left:5px;padding:0;display:inline-flex}.chip__remove:hover{opacity:1}.chip-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.selection-bar{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px;display:flex}.callout{border-radius:var(--radius-md);font-size:var(--text-sm);align-items:flex-start;gap:8px;margin:12px 0;padding:10px 12px;display:flex}.callout--warn{color:var(--warn-ink);background:#fff7e6;border:1px solid #f0c36d}.link-strong{font-weight:var(--w-bold);color:inherit;text-decoration:none}.link-strong:hover,.data-table__sort{color:var(--green)}.msf{display:inline-block;position:relative}.msf__trigger{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-pill);font-size:var(--text-sm);color:var(--fg-2);cursor:pointer;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.msf__trigger[aria-expanded=true],.msf__trigger:hover{border-color:var(--green);color:var(--green)}.msf__count{background:var(--green);color:#fff;border-radius:var(--radius-pill);font-size:var(--text-xs);padding:0 6px}.msf__menu{z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:240px;max-height:320px;box-shadow:var(--shadow-lg);padding:6px;position:fixed;overflow-y:auto}.msf__option{border-radius:var(--radius-sm);width:100%;font-size:var(--text-sm);color:var(--fg);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:7px 8px;display:flex}.msf__option:hover{background:var(--bg)}.msf__option-count{color:var(--muted);font-size:var(--text-xs);margin-left:auto}.msf__empty{color:var(--muted);font-size:var(--text-sm);padding:10px 8px}.barchart{flex-direction:column;gap:12px;display:flex}.barchart__row{font-size:var(--text-sm);grid-template-columns:140px 1fr auto;align-items:center;gap:12px;display:grid}.barchart__label{color:var(--fg-2)}.barchart__track{background:var(--bg);border-radius:var(--radius-pill);height:12px;overflow:hidden}.barchart__bar{background:var(--green);border-radius:var(--radius-pill);height:100%}.barchart__sub{font-size:var(--text-xs);color:var(--muted);margin:6px 0 0}.trendchart svg{width:100%;height:auto;display:block}.trendchart__labels{font-size:var(--text-xs);color:var(--muted);justify-content:space-between;margin-top:6px;display:flex}.timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.timeline__row{border-top:1px solid var(--border);grid-template-columns:110px 1fr auto;align-items:center;gap:12px;padding:12px 0;display:grid}.timeline__row:first-child{border-top:none}.timeline__date{font-size:var(--text-sm);font-weight:var(--w-semi);color:var(--navy)}.timeline__body{flex-direction:column;display:flex}.timeline__meta{font-size:var(--text-xs);color:var(--muted)}.segmented{scrollbar-width:none;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-pill);align-items:center;gap:2px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.segmented::-webkit-scrollbar{display:none}.segmented__item{font:inherit;font-size:var(--text-sm);font-weight:var(--w-semi);white-space:nowrap;color:var(--navy);border-radius:var(--radius-pill);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:none;flex-shrink:0;align-items:center;gap:6px;padding:6px 14px;display:inline-flex}.segmented__item svg{flex-shrink:0;display:inline-block}.segmented--sm .segmented__item{font-size:var(--text-xs);padding:4px 11px}@media (pointer:coarse){.segmented__item{min-height:44px}}.segmented__item:hover:not(:disabled):not(.is-active){color:var(--green)}.segmented__item:focus-visible{outline:2px solid var(--green);outline-offset:1px}.segmented__item:disabled{opacity:.5;cursor:not-allowed}.segmented__item.is-active{background:var(--ti-white);color:var(--green);box-shadow:var(--shadow-sm)}.segmented__count{font-size:var(--text-xs);font-weight:var(--w-bold);border-radius:var(--radius-pill);background:var(--ti-navy-20);min-width:18px;color:var(--navy);text-align:center;padding:0 6px}.segmented__item.is-active .segmented__count{background:var(--ti-green-20);color:var(--ti-green-dark)}.empty-state{text-align:center;color:var(--muted);padding:64px 24px}.empty-state__icon{border-radius:var(--radius-lg);background:var(--wash);width:56px;height:56px;color:var(--green);justify-content:center;align-items:center;margin-bottom:14px;display:inline-flex}.empty-state__title{color:var(--navy);font-size:var(--text-lg);margin-bottom:6px}.assistant{justify-content:center;align-items:center;min-height:520px;display:flex;position:relative;overflow:hidden}.assistant__glow{background:var(--ti-teal-light);opacity:.5;z-index:0;filter:blur(4px);border-radius:50%;position:absolute}.assistant__glow--1{width:320px;height:320px;top:-120px;right:-60px}.assistant__glow--2{background:var(--wash);width:200px;height:200px;top:-60px;right:180px}.assistant__stage{z-index:1;text-align:center;max-width:760px;padding:24px;position:relative}.assistant__eyebrow{font-size:var(--text-xs);font-weight:var(--w-bold);letter-spacing:.12em;color:var(--green);align-items:center;gap:7px;margin-bottom:16px;display:inline-flex}.assistant__headline{font-family:var(--font-display);font-weight:var(--w-black);color:var(--navy);font-size:clamp(2rem,5vw,3.25rem);line-height:1.05}.assistant__sub{color:var(--fg-2);font-size:var(--text-md);max-width:620px;margin:16px auto 28px}.assistant__ask{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);box-shadow:var(--shadow-md);align-items:center;gap:10px;padding:8px 8px 8px 18px;display:flex}.assistant__ask-icon{color:var(--green);flex:none}.assistant__input{font:inherit;font-size:var(--text-md);color:var(--fg-1);background:0 0;border:none;outline:none;flex:1}.assistant__send{background:var(--navy);color:#fff;cursor:pointer;width:40px;height:40px;transition:background var(--dur-fast) var(--ease);border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.assistant__send:hover{background:var(--green)}.assistant__chips{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px;display:flex}.assistant__chip{font:inherit;font-size:var(--text-sm);color:var(--fg-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;transition:all var(--dur-fast) var(--ease);padding:8px 14px}.assistant__chip:hover{border-color:var(--green);color:var(--green)}.map-card{border-radius:var(--radius-lg);border:1px solid var(--border);background:linear-gradient(135deg, var(--ti-teal-50), var(--ti-navy-20));height:560px;position:relative;overflow:hidden}.map-card__canvas{width:100%;height:100%}.map-card__overlay{background:var(--surface);border-radius:var(--radius-md);width:308px;box-shadow:var(--shadow-lg);z-index:500;flex-direction:column;max-height:calc(100% - 32px);padding:16px;display:flex;position:absolute;top:16px;left:16px}.map-card__overlay-title{font-size:var(--text-md);font-weight:var(--w-bold);color:var(--navy)}.map-card__overlay-hint{font-size:var(--text-xs);color:var(--muted);margin-top:6px}.map-card__list{margin:12px 0 0;padding:0;list-style:none;overflow-y:auto}.map-card__list-item{border-top:1px solid var(--border);padding:8px 0}.map-card__list-name{font-size:var(--text-sm);font-weight:var(--w-semi);color:var(--navy);display:block}.map-card__list-meta{font-size:var(--text-xs);color:var(--muted);display:block}.timeline{margin:0;padding:0;list-style:none}.timeline__item{border-bottom:1px solid var(--border);align-items:baseline;gap:14px;padding:10px 0;display:flex}.timeline__date{width:110px;font-size:var(--text-xs);color:var(--muted);flex:none}.timeline__label{font-size:var(--text-sm);color:var(--fg-1)}.assistant__form{gap:10px;margin-bottom:18px;display:flex}.assistant__input{font:inherit;font-size:var(--text-sm);color:var(--fg-1);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);flex:1;padding:10px 14px}.assistant__input:focus{border-color:var(--green);outline:none}.assistant__answer{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card,var(--radius-lg));padding:20px}.assistant__question{font-size:var(--text-sm);font-weight:var(--w-semi);color:var(--muted);margin:0 0 10px}.assistant__text{color:var(--fg-1);white-space:pre-wrap;margin:0;line-height:1.6}.assistant__citations{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.assistant__citations-label{font-size:10px;font-weight:var(--w-bold);letter-spacing:.1em;text-transform:uppercase;color:var(--ti-grey)}.assistant__citations ul{font-size:var(--text-sm);color:var(--fg-2);margin:8px 0 0;padding-left:18px}.modal-overlay{z-index:100;background:#313f4f73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;width:100%;max-width:440px;max-height:90vh;display:flex}.modal__head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal__title{font-size:var(--text-md);font-weight:var(--w-bold);color:var(--navy)}.modal__close{cursor:pointer;color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:none;padding:4px}.modal__close:hover{color:var(--green)}.modal__body{padding:20px;overflow-y:auto}.modal__foot{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field__label{font-size:var(--text-sm);font-weight:var(--w-semi);color:var(--fg-2)}.field__input{font:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg-1);padding:9px 11px}.field__input:focus{border-color:var(--green);outline:none}.chip{align-items:center;gap:5px;display:inline-flex}.quote{margin-top:3px;font-style:italic;display:block}.pagination__size{font-size:var(--text-sm);color:var(--muted);align-items:center;gap:6px;margin-left:10px;display:inline-flex}.planner-bar{-webkit-user-select:none;user-select:none}.planner-bar:active{cursor:grabbing}.planner-bar.is-reassigning{outline:2px solid var(--green);outline-offset:1px}.planner-bar:focus-visible{outline:2px solid var(--green);outline-offset:2px}.update-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.scope-row{grid-template-columns:minmax(180px,1.4fr) 1fr 1fr auto;align-items:start;gap:10px;display:grid}.scope-row__item{flex-direction:column;gap:3px;display:flex}.pick-list{flex-direction:column;gap:6px;max-height:50vh;list-style:none;display:flex;overflow-y:auto}.pick-list li{font-size:var(--text-sm);justify-content:space-between;align-items:center;gap:12px;display:flex}.input--inline{font-size:var(--text-sm);padding:3px 6px}.perm-group{margin-bottom:14px}.perm-group h4{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px}.perm-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px 12px;display:grid}.inline-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline-form .input{flex:160px}.input--date{font-size:var(--text-sm);padding:4px 6px}.is-done{color:var(--muted);text-decoration:line-through}.row-with-dot{align-items:center;gap:8px;display:inline-flex}.colour-dot{border-radius:3px;flex:none;width:10px;height:10px;display:inline-block}.back-link{font-size:var(--text-sm);color:var(--muted);align-items:center;gap:6px;margin-bottom:10px;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--green)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);margin-bottom:16px;padding:18px 22px}.panel__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.panel__head-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.panel__title{font-size:var(--text-md);font-weight:var(--w-semi);color:var(--navy);margin-bottom:8px}.detail-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;display:grid}.detail-grid dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:3px}.detail-grid dd{font-size:var(--text-sm);color:var(--fg);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.inline-panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);margin-top:12px;padding:14px 16px}.inline-panel__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.timeline{flex-direction:column;gap:8px;list-style:none;display:flex}.timeline__card{text-align:left;border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;width:100%;font:inherit;background:0 0;align-items:center;gap:12px;padding:10px 12px;display:flex}.timeline__card:hover{border-color:var(--green)}.timeline__date{color:var(--muted);font-size:var(--text-xs);min-width:92px}.timeline__title{font-weight:var(--w-semi)}.timeline__type{color:var(--muted);font-size:var(--text-xs);margin-left:auto}.timeline__summary{font-size:var(--text-sm);padding:10px 12px 2px}.doc-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;list-style:none;display:grid}.doc-card{border:1px solid var(--border);border-radius:var(--radius-md);padding:12px}.doc-card__main{cursor:pointer;width:100%;font:inherit;text-align:left;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:4px;padding:0;display:flex}.doc-card__name{font-weight:var(--w-semi);word-break:break-word}.doc-card__actions{gap:6px;margin-top:8px;display:flex}.queue-list{flex-direction:column;gap:10px;list-style:none;display:flex}.queue-item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:12px 14px}.queue-item__main{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.queue-item__actions{gap:8px;margin-top:8px;display:flex}.segment-list{font-size:var(--text-sm);flex-direction:column;gap:6px;margin-top:8px;list-style:none;display:flex}.segment-list li{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.split-halves{grid-template-columns:1fr 1fr;gap:14px;display:grid}.split-halves fieldset{border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 12px}.split-review{flex-direction:column;gap:8px;margin:10px 0;list-style:none;display:flex}.split-review li{justify-content:space-between;align-items:center;gap:10px;display:flex}.split-review em{font-style:normal;font-size:var(--text-xs);display:block}.dropzone{border:2px dashed var(--border);border-radius:var(--radius-card);color:var(--muted);flex-direction:column;align-items:center;gap:8px;margin-bottom:16px;padding:32px;display:flex}.dropzone.is-dragging{border-color:var(--green);color:var(--green)}.upload-list{flex-direction:column;gap:8px;list-style:none;display:flex}.upload-list li{font-size:var(--text-sm);align-items:center;gap:10px;display:flex}.mapping-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;list-style:none;display:grid}.mapping-list li{font-size:var(--text-sm);flex-direction:column;gap:4px;display:flex}.checkbox-row{font-size:var(--text-sm);align-items:flex-start;gap:8px;display:flex}.chat{flex-direction:column;gap:16px;margin-bottom:16px;display:flex}.chat__exchange{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);padding:14px 16px}.chat__question{font-weight:var(--w-semi);align-items:center;gap:8px;margin-bottom:8px;display:flex}.chat__answer{font-size:var(--text-sm);line-height:1.6}.chat__answer--refused{color:var(--muted)}.chat__visual{margin-top:12px}.chat__composer{background:var(--bg);align-items:center;gap:8px;padding:10px 0;display:flex;position:sticky;bottom:0}.chat__composer .input{flex:1}.citation-pill{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:var(--text-xs);color:var(--fg-2);align-items:center;gap:4px;margin:0 2px;padding:1px 8px;text-decoration:none;display:inline-flex}.citation-pill:hover{border-color:var(--green);color:var(--green)}.linklike{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.linklike:hover{color:var(--green)}.pdf-frame{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;height:70vh}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chip__remove{cursor:pointer;color:var(--muted);background:0 0;border:none;padding:0;display:inline-flex}.chip__remove:hover{color:var(--crit)}.breadcrumb{font-size:var(--text-sm);color:var(--muted);align-items:center;gap:8px;margin-bottom:8px;display:flex}.breadcrumb__link{color:var(--muted)}.breadcrumb__link:hover{color:var(--green)}.breadcrumb__sep{color:var(--border-strong)}.preview-notice{font-size:var(--text-sm);color:var(--warn-ink);background:var(--warn-wash);border:1px solid color-mix(in srgb, var(--warn) 30%, transparent);border-radius:var(--radius-md);align-items:center;gap:8px;margin-bottom:14px;padding:8px 12px;display:flex}.utility-bar__menu{cursor:pointer;color:var(--navy);border-radius:var(--radius-sm);background:0 0;border:none;padding:5px;display:none}.utility-bar__menu:hover{color:var(--green)}.portal__overlay{z-index:46;background:#313f4f66;position:fixed;inset:0}body:not(.pm-app) :focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:reduce){*{transition:none!important}}@media (width<=1100px){.kpi-grid,.card-grid--3{grid-template-columns:repeat(2,1fr)}.chart-row{grid-template-columns:1fr}}@media (width<=720px){.portal{grid-template-columns:1fr}.sidebar{height:100vh;width:var(--sidebar-w);z-index:47;transition:transform .2s var(--ease);position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar--open{box-shadow:var(--shadow-lg);transform:translate(0)}.sidebar__collapse{display:none}.utility-bar__menu{display:inline-flex}.kpi-grid,.card-grid--3{grid-template-columns:1fr}.utility-bar__left{display:none}}.toast-viewport{bottom:var(--space-4,16px);right:var(--space-4,16px);z-index:1000;flex-direction:column;gap:8px;max-width:min(380px,100vw - 32px);display:flex;position:fixed}.toast{border-radius:var(--radius-md);box-shadow:var(--shadow-lg,0 8px 24px #0000001f);border-left:3px solid var(--ti-navy-slate);background:#fff;align-items:flex-start;gap:10px;padding:12px 14px;animation:.16s cubic-bezier(.22,.61,.36,1) ti-toast-in;display:flex}.toast--success{border-left-color:var(--green)}.toast--error{border-left-color:#c4453b}.toast--info{border-left-color:var(--ti-navy-slate)}.toast__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.toast__body strong{font-size:14px}.toast__body span{color:var(--ti-navy-slate);overflow-wrap:anywhere;font-size:13px}.toast button{cursor:pointer;color:var(--ti-navy-slate);background:0 0;border:0;padding:2px;line-height:0}@keyframes ti-toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.pagination{color:var(--ti-navy-slate);justify-content:flex-end;align-items:center;gap:12px;padding:10px 0;font-size:13px;display:flex}.pagination__summary{margin-right:auto}.pagination button{border:1px solid var(--ti-border);border-radius:var(--radius-sm,6px);cursor:pointer;width:30px;height:30px;color:inherit;background:#fff;justify-content:center;align-items:center;display:inline-flex}.pagination button:disabled{opacity:.4;cursor:default}.search-input{border:1px solid var(--ti-border);border-radius:var(--radius-sm,6px);color:var(--ti-navy-slate);background:#fff;align-items:center;gap:8px;min-width:240px;padding:7px 10px;display:inline-flex}.search-input input{font:inherit;background:0 0;border:0;outline:none;flex:1;min-width:0}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.toolbar__spacer{margin-left:auto}.toolbar select{border:1px solid var(--ti-border);border-radius:var(--radius-sm,6px);font:inherit;color:inherit;background:#fff;padding:7px 10px}.form{flex-direction:column;gap:14px;display:flex}.form__field{flex-direction:column;gap:5px;display:flex}.form__label{color:var(--navy);font-size:13px;font-weight:600}.form__field input,.form__field select,.form__field textarea{border:1px solid var(--ti-border);border-radius:var(--radius-sm,6px);font:inherit;color:inherit;background:#fff;padding:8px 10px}.form__field input:focus-visible,.form__field select:focus-visible,.form__field textarea:focus-visible{outline:2px solid var(--green);outline-offset:1px}.form__error{color:#c4453b;font-size:12px}.form__actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.row-actions{justify-content:flex-end;gap:6px;display:inline-flex}.toolbar__archived{align-items:center;gap:6px;font-size:13px;display:inline-flex}.section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.board{align-items:flex-start;gap:12px;padding-bottom:8px;display:flex;overflow-x:auto}.board__column{background:var(--ti-teal-50);border-radius:var(--radius-md);flex-direction:column;flex:0 0 260px;gap:8px;min-height:120px;padding:10px;display:flex}.board__column--won{background:var(--ti-green-20)}.board__column--lost{background:#f6eceb}.board__head{justify-content:space-between;align-items:baseline;gap:8px;font-size:13px;display:flex}.board__card{border-radius:var(--radius-sm,6px);box-shadow:var(--shadow-sm,0 1px 2px #0000000f);cursor:grab;background:#fff;flex-direction:column;gap:3px;padding:10px;font-size:13px;display:flex}.board__card:active{cursor:grabbing}.board__empty{color:var(--ti-navy-slate);opacity:.7;margin:4px 2px;font-size:12px}.text-overdue{color:#c4453b;font-weight:600}.tag-chips{flex-wrap:wrap;gap:6px;display:inline-flex}.tag-chip{border-radius:var(--radius-pill,999px);border:1px solid var(--ti-border);background:var(--ti-teal-50);color:var(--navy);align-items:center;gap:4px;padding:2px 8px;font-size:12px;line-height:1.6;display:inline-flex}.tag-chip--archived{opacity:.55;text-decoration:line-through}.tag-chip__system{opacity:.6}.tag-chip button{cursor:pointer;color:inherit;background:0 0;border:0;padding:0;line-height:0}.notification-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.notification{border:1px solid var(--ti-border);border-radius:var(--radius-md);background:#fff;align-items:center;gap:12px;padding:12px 14px;display:flex}.notification--unread{border-left:3px solid var(--green)}.notification__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notification__meta{color:var(--ti-navy-slate);font-size:12px}.unread-badge{background:var(--green);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:600;display:inline-flex}.export-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.export-card{flex-direction:column;gap:8px;display:flex}.export-card__actions{gap:8px;margin-top:auto;padding-top:6px;display:flex}.rule-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.rule-card{flex-direction:column;gap:10px;display:flex}.rule-card__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.rule-card__toggle{white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:inline-flex}.rule-card__params{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.run-report{margin:0;padding:0;font-size:13px;list-style:none}.run-report li{border-top:1px solid var(--ti-border);justify-content:space-between;gap:12px;padding:4px 0;display:flex}.run-report li:first-child{border-top:0}.timeline-rows{flex-direction:column;gap:10px;display:flex}.timeline-card{flex-direction:column;gap:8px;display:flex}.timeline-card__head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.push-counts{flex-wrap:wrap;align-items:center;gap:12px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.push-items{max-height:220px;margin:0;padding:0;font-size:13px;list-style:none;overflow-y:auto}.push-items li{border-top:1px solid var(--ti-border);justify-content:space-between;gap:12px;padding:4px 0;display:flex}.agent-key{background:var(--ti-teal-50);border-radius:var(--radius-sm,6px);overflow-wrap:anywhere;padding:10px 12px;font-size:12px;display:block}.stage-list{flex-direction:column;gap:8px;display:flex}.stage-row{grid-template-columns:auto 1fr 130px 120px auto;align-items:end;gap:8px;display:grid}.stage-row__order{color:var(--ti-navy-slate);align-items:center;gap:2px;display:flex}.stage-row__order button{cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:13px}.stage-row__order button:disabled{opacity:.35;cursor:default}.data-table tbody tr.is-selected{background:var(--ti-green-20)}.tag-picker{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tag-picker__add{position:relative}.tag-picker__menu{z-index:20;border:1px solid var(--ti-border);border-radius:var(--radius-md);min-width:180px;box-shadow:var(--shadow-md,0 4px 12px #00000014);background:#fff;flex-direction:column;max-height:240px;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.tag-picker__menu button{text-align:left;cursor:pointer;border-radius:var(--radius-sm,6px);font:inherit;color:inherit;background:0 0;border:0;padding:6px 8px}.tag-picker__menu button:hover{background:var(--ti-teal-50)}.import-map{flex-direction:column;gap:8px;max-height:320px;display:flex;overflow-y:auto}.import-map__row{grid-template-columns:130px 1fr 140px;align-items:center;gap:8px;display:grid}.import-map__row select,.import-map__row input{border:1px solid var(--ti-border);border-radius:var(--radius-sm,6px);font:inherit;padding:6px 8px}.import-map__row input:disabled{background:var(--ti-offwhite);color:var(--ti-navy-60)}@keyframes skel-shimmer{0%{background-position:100%}to{background-position:0}}.skel{background:linear-gradient(90deg, var(--border) 25%, var(--bg) 37%, var(--border) 63%);background-size:400% 100%;border-radius:6px;animation:1.4s infinite skel-shimmer;display:block}.page-skel{animation:skel-in var(--dur,.2s) ease both;flex-direction:column;gap:22px;display:flex}.portal__content--flush .page-skel{padding:26px 30px}.page-skel__header{flex-direction:column;gap:10px;display:flex}.page-skel__kpis{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.page-skel__card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);flex-direction:column;gap:10px;padding:18px 20px;display:flex}.page-skel__table{gap:0;padding:0;overflow:hidden}.page-skel__row{border-top:1px solid var(--border);align-items:center;gap:24px;padding:15px 20px;display:flex}.page-skel__row:nth-child(odd):not(.page-skel__row--head){background:var(--table-row-alt)}.page-skel__row--head{border-top:0;padding-block:13px}.page-skel__row--head>.skel,.page-skel__cell{flex:1}@keyframes skel-in{0%{opacity:0}to{opacity:1}}.app-splash{background:radial-gradient(circle at 50% 42%, var(--surface) 0%, var(--bg) 70%);flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:100vh;padding:32px 16px;animation:.3s both skel-in;display:flex}.app-splash__mark{place-items:center;width:112px;height:112px;display:grid;position:relative}.app-splash__tile{background:var(--surface);width:64px;height:64px;box-shadow:var(--shadow-md);border-radius:18px;place-items:center;animation:2s ease-in-out infinite splash-breathe;display:grid;position:relative}.app-splash__tile img{width:38px;height:auto}.app-splash__ring{border:2px solid var(--green);opacity:0;border-radius:50%;animation:2.4s cubic-bezier(.22,.61,.36,1) infinite splash-ring;position:absolute;inset:0}.app-splash__ring--late{animation-delay:1.2s}.app-splash__label{font-size:var(--text-sm);font-weight:var(--w-semi);color:var(--navy);margin:0}.app-splash__bar{background:var(--border);border-radius:999px;width:160px;height:3px;position:relative;overflow:hidden}.app-splash__bar>span{border-radius:inherit;background:var(--green);width:40%;animation:1.3s ease-in-out infinite splash-bar;position:absolute;inset:0 auto 0 0}@keyframes splash-ring{0%{opacity:.5;transform:scale(.55)}to{opacity:0;transform:scale(1.35)}}@keyframes splash-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes splash-bar{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media (width<=1100px){.page-skel__kpis{grid-template-columns:repeat(2,1fr)}}@media (width<=720px){.page-skel__kpis{grid-template-columns:1fr}.page-skel__row>:nth-child(n+3){display:none}}@media (prefers-reduced-motion:reduce){.skel,.app-splash__tile,.app-splash__ring,.app-splash__bar>span,.page-skel,.app-splash{animation:none}.app-splash__bar>span{opacity:.5;width:100%}}
