.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}:root{--bg: #FFFFFF;--surface: #FFFFFF;--surface2: #FAFBFA;--surface3: #F0F3F1;--line: #E4E8E5;--line2: #D0D8D3;--ink: #131A16;--ink2: #4B5852;--muted: #78857F;--muted2: #9CA8A2;--brand: #0E6B45;--brand-dk: #0A5537;--brand-lt: #128556;--brand-tint: #E9F4EE;--brand-tint2: #D6EBDF;--amber: #A96C00;--amber-ink: #7A4E00;--amber-tint: #FDF3E1;--amber-line: #F0DDB4;--red: #B4231C;--red-ink: #8E1C16;--red-tint: #FCEDEC;--red-line: #F3CFCD;--blue: #2F6FED;--blue-ink: #1D4ED8;--blue-tint: #EAF1FD;--blue-line: #C9DBFB;--violet: #7C5CFC;--violet-ink: #5B3DE0;--violet-tint: #F1EEFE;--violet-line: #DCD3FC;--font-display: "Barlow Condensed", sans-serif;--font-body: "IBM Plex Sans", sans-serif;--font-mono: "IBM Plex Mono", monospace;--shadow-sm: 0 1px 2px rgba(19, 26, 22, .05), 0 1px 3px rgba(19, 26, 22, .04);--shadow-md: 0 2px 6px rgba(19, 26, 22, .06), 0 8px 20px rgba(19, 26, 22, .08);--shadow-lg: 0 8px 16px rgba(19, 26, 22, .08), 0 20px 44px rgba(19, 26, 22, .16);--radius-sm: 7px;--radius-md: 10px;--radius-lg: 16px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:14px;line-height:1.45}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;margin:0}button{font-family:var(--font-body)}a{color:var(--brand)}code,.mono{font-family:var(--font-mono)}.tower-modal-backdrop{background:#131a1673}.tower-modal-panel{border-radius:var(--radius-lg)}.btn-primary,.btn-secondary{border-radius:var(--radius-sm);padding:8px 18px;font-weight:600;font-size:13px;cursor:pointer;border:1px solid transparent;transition:background-color .12s ease,border-color .12s ease,transform .12s cubic-bezier(.34,1.4,.64,1),box-shadow .12s ease}.btn-primary:hover:not(:disabled),.btn-secondary:hover:not(:disabled){transform:translateY(-1.5px)}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled){transform:translateY(0) scale(.97)}.btn-primary{background:var(--brand);color:#fff;box-shadow:0 1px 2px color-mix(in srgb,var(--brand-dk) 35%,transparent)}.btn-primary:hover:not(:disabled){background:var(--brand-dk);box-shadow:0 6px 16px color-mix(in srgb,var(--brand-dk) 40%,transparent)}.btn-primary:disabled{opacity:.6;cursor:default;box-shadow:none}.btn-secondary{background:var(--surface);color:var(--ink2);border-color:var(--line2)}.btn-secondary:hover:not(:disabled){background:var(--surface3);border-color:var(--muted2);box-shadow:var(--shadow-md)}.btn-danger{background:var(--red);color:#fff;border-radius:var(--radius-sm);padding:8px 18px;font-weight:600;font-size:13px;cursor:pointer;border:none;box-shadow:0 1px 2px color-mix(in srgb,var(--red-ink) 35%,transparent);transition:background-color .12s ease,transform .12s cubic-bezier(.34,1.4,.64,1),box-shadow .12s ease}.btn-danger:hover:not(:disabled){background:var(--red-ink);box-shadow:0 6px 16px color-mix(in srgb,var(--red-ink) 40%,transparent);transform:translateY(-1.5px)}.btn-danger:active:not(:disabled){transform:translateY(0) scale(.97)}.btn-danger:disabled{opacity:.6;cursor:default;box-shadow:none}button:not(:disabled,.btn-primary,.btn-secondary,.btn-danger,.clickable),[role=button]:not([aria-disabled=true],.clickable){transition:transform .12s cubic-bezier(.34,1.4,.64,1),background-color .12s ease,box-shadow .12s ease}button:not(:disabled,.btn-primary,.btn-secondary,.btn-danger,.clickable):hover,[role=button]:not([aria-disabled=true],.clickable):hover{transform:translateY(-1px)}button:not(:disabled,.btn-primary,.btn-secondary,.btn-danger,.clickable):active,[role=button]:not([aria-disabled=true],.clickable):active{transform:scale(.96)}[data-tooltip]{position:relative}[data-tooltip]:after,[data-tooltip]:before{position:absolute;top:calc(100% + 8px);left:50%;opacity:0;pointer-events:none;z-index:60;transition:opacity .12s ease,transform .12s ease}[data-tooltip]:after{content:attr(data-tooltip);transform:translate(-50%,-4px);padding:6px 12px;border-radius:8px;background:linear-gradient(135deg,var(--violet) 0%,var(--brand) 130%);color:#fff;font-family:var(--font-body);font-size:11.5px;font-weight:600;letter-spacing:.01em;white-space:nowrap;box-shadow:var(--shadow-md)}[data-tooltip]:before{content:"";top:100%;transform:translate(-50%,-1px);border:5px solid transparent;border-bottom-color:var(--violet)}[data-tooltip]:hover:after,[data-tooltip]:hover:before,[data-tooltip]:focus-visible:after,[data-tooltip]:focus-visible:before{opacity:1;transform:translate(-50%);transition:opacity .15s ease .35s,transform .15s ease .35s}@media (prefers-reduced-motion: reduce){[data-tooltip]:hover:after,[data-tooltip]:hover:before,[data-tooltip]:focus-visible:after,[data-tooltip]:focus-visible:before{transition-delay:0s}}.clickable{transition:background-color .1s ease}.clickable:active{background:var(--surface3)}.form-error{color:var(--red-ink);font-size:13px;margin:0 0 8px}.modal-note{background:var(--surface2);border:1px solid var(--line2);border-radius:8px;padding:11px 14px;margin:0 0 16px;font-size:13px;line-height:1.5;color:var(--ink2)}.modal-note strong{color:var(--ink);font-weight:650}.modal-note .raw{display:inline-block;margin-top:3px;font-size:12px;color:var(--ink2)}.form-note{display:flex;align-items:flex-start;gap:10px;background:var(--amber-tint);border:1px solid var(--amber-line);border-left:3px solid var(--amber);border-radius:8px;padding:12px 15px;font-size:12.5px;color:var(--amber-ink);line-height:1.55;margin:0 0 16px;box-shadow:0 1px 3px #131a160d}.form-note strong{color:var(--amber-ink);font-weight:700}.form-note:before{content:"!";flex-shrink:0;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--amber);color:#fff;font-size:12px;font-weight:800;font-family:var(--font-display);margin-top:1px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.segments{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.segment{display:inline-flex;align-items:center;gap:7px;padding:6px 13px;border-radius:999px;border:1px solid var(--line2);background:var(--surface);color:var(--ink2);font-family:var(--font-body);font-size:12.5px;font-weight:600;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.segment:hover:not(.on){background:var(--surface3)}.segment.on{background:var(--brand);border-color:var(--brand);color:#fff}.segment .seg-count{font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--surface3);color:var(--ink2)}.segment.on .seg-count{background:#ffffff38;color:#fff}.detail-card{grid-column:span 1;background:linear-gradient(165deg,color-mix(in srgb,var(--accent) 7%,var(--surface)) 0%,var(--surface) 55%);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius-md);padding:16px 18px;box-shadow:var(--shadow-sm);transition:box-shadow .18s ease,transform .18s ease,border-left-width .18s ease}.detail-card:hover{box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 20%,transparent);transform:translateY(-2px)}.detail-card.full-width,.detail-card.span-all{grid-column:1/-1;width:100%}.detail-card.accent-brand{--accent: var(--brand)}.detail-card.accent-blue{--accent: var(--blue)}.detail-card.accent-amber{--accent: var(--amber)}.detail-card.accent-violet{--accent: var(--violet)}.detail-card.accent-red{--accent: var(--red)}.detail-card.accent-slate{--accent: var(--ink2)}.detail-card h3{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink2)}.detail-card h3 .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex-shrink:0;transition:box-shadow .18s ease}.detail-card:hover h3 .dot{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 20%,transparent)}.filter-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:16px}.search-input{width:220px;padding:9px 12px;border:1px solid var(--line2);border-radius:6px;background:var(--surface);color:var(--ink);font-size:13px}.search-input:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.filter-select{min-width:160px}.filter-count{font-size:12.5px;color:var(--muted);white-space:nowrap}.checkbox-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:4px 10px;max-height:260px;overflow-y:auto;border:1px solid var(--line2);border-radius:6px;padding:10px;background:var(--surface)}.checkbox-list label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink);cursor:pointer;padding:5px 8px;border-radius:4px;transition:background-color .12s ease}.checkbox-list label:hover{background:var(--surface3)}.checkbox-list label input[type=checkbox]{accent-color:var(--brand);width:15px;height:15px;flex-shrink:0}.checkbox-list label:has(input:checked){background:var(--brand-tint);color:var(--brand-dk);font-weight:600}.table-section{margin-bottom:28px}.table-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.table-section-head h2{font-size:18px}
