:root{color-scheme:light;--lu4-bg:#eef1f4;--lu4-bg-soft:#e5e9ee;--lu4-surface:#ffffff;--lu4-surface-raised:#f6f8fa;--lu4-surface-overlay:#eceff3;--lu4-text:#1f2833;--lu4-text-muted:#57626f;--lu4-text-subtle:#7d8894;--lu4-border:#d7dee5;--lu4-border-strong:#bcc6d0;--lu4-teal:#0c8f86;--lu4-teal-strong:#0a736c;--lu4-teal-ink:#ffffff;--lu4-gold:#8a6d24;--lu4-success:#1c874c;--lu4-warning:#96670f;--lu4-danger:#c1454d;--lu4-info:#2f6db0;--lu4-teal-soft:color-mix(in srgb,var(--lu4-teal) 12%,var(--lu4-surface));--lu4-focus-ring:color-mix(in srgb,var(--lu4-teal) 35%,transparent);--lu4-overlay-scrim:rgb(18 26 38/0.45);--lu4-shadow-sm:0 6px 20px rgb(20 30 45/0.08);--lu4-shadow-md:0 16px 44px rgb(20 30 45/0.12);--lu4-shadow-lg:0 30px 80px rgb(20 30 45/0.18);--lu4-grade-ng:#7f8994;--lu4-grade-d:#9aa6b4;--lu4-grade-c:#3f9e63;--lu4-grade-b:#3f7fce;--lu4-grade-a:#9161cf;--lu4-grade-s:#cf8f36;--lu4-grade-s80:#cf5350;--lu4-grade-s84:#2fa9b8;--lu4-radius-xs:0.375rem;--lu4-radius-sm:0.625rem;--lu4-radius-md:0.875rem;--lu4-radius-lg:1.25rem;--lu4-radius-xl:1.75rem;--lu4-space-1:0.25rem;--lu4-space-2:0.5rem;--lu4-space-3:0.75rem;--lu4-space-4:1rem;--lu4-space-5:1.25rem;--lu4-space-6:1.5rem;--lu4-space-8:2rem;--lu4-space-10:2.5rem;--lu4-space-12:3rem;--lu4-space-16:4rem;--lu4-font-ui:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--lu4-font-display:"Montserrat","Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--lu4-text-xs:0.75rem;--lu4-text-sm:0.875rem;--lu4-text-md:1rem;--lu4-text-lg:1.125rem;--lu4-text-xl:clamp(1.35rem,2vw,1.75rem);--lu4-text-2xl:clamp(1.75rem,3vw,2.6rem);--lu4-motion-fast:140ms;--lu4-motion-base:220ms;--lu4-motion-slow:360ms;--lu4-ease:cubic-bezier(0.2,0.8,0.2,1);--lu4-z-dock:50;--lu4-z-popover:70;--lu4-z-dialog:90;font-family:var(--lu4-font-ui);--ui-bg:var(--lu4-bg);--ui-surface:var(--lu4-surface);--ui-surface-2:var(--lu4-surface-raised);--ui-text:var(--lu4-text);--ui-muted:var(--lu4-text-muted);--ui-line:var(--lu4-border);--ui-accent:var(--lu4-gold);--ui-accent-soft:color-mix(in srgb,var(--lu4-gold) 14%,var(--lu4-surface));--ui-blue:var(--lu4-info);--ui-danger:var(--lu4-danger);--ui-shadow:var(--lu4-shadow-sm);--atlas-accent:var(--lu4-gold);--atlas-accent-soft:color-mix(in srgb,var(--lu4-gold) 22%,var(--lu4-surface));--atlas-focus:var(--lu4-focus-ring);--atlas-panel:var(--lu4-surface);--atlas-panel-2:var(--lu4-surface-raised);--atlas-border:var(--lu4-border)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--lu4-bg:#070b11;--lu4-bg-soft:#0b111a;--lu4-surface:#101824;--lu4-surface-raised:#151f2d;--lu4-surface-overlay:#1a2737;--lu4-text:#f3f7fb;--lu4-text-muted:#9aa9b8;--lu4-text-subtle:#718094;--lu4-border:#27384b;--lu4-border-strong:#38506a;--lu4-teal:#55ddd1;--lu4-teal-strong:#8af5ec;--lu4-teal-ink:#031312;--lu4-gold:#d9b66a;--lu4-success:#6ddd9d;--lu4-warning:#f2c76d;--lu4-danger:#f4868b;--lu4-info:#79b8ff;--lu4-overlay-scrim:rgb(2 5 8/0.68);--lu4-shadow-sm:0 8px 24px rgb(0 0 0/0.2);--lu4-shadow-md:0 18px 56px rgb(0 0 0/0.3);--lu4-shadow-lg:0 32px 96px rgb(0 0 0/0.42);--lu4-grade-ng:#8b95a1;--lu4-grade-d:#b7c1cd;--lu4-grade-c:#5cc487;--lu4-grade-b:#5c9ee8;--lu4-grade-a:#b083e8;--lu4-grade-s:#e8b45e;--lu4-grade-s80:#ec7c7a;--lu4-grade-s84:#4fd0e0}}:root[data-theme=dark]{color-scheme:dark;--lu4-bg:#070b11;--lu4-bg-soft:#0b111a;--lu4-surface:#101824;--lu4-surface-raised:#151f2d;--lu4-surface-overlay:#1a2737;--lu4-text:#f3f7fb;--lu4-text-muted:#9aa9b8;--lu4-text-subtle:#718094;--lu4-border:#27384b;--lu4-border-strong:#38506a;--lu4-teal:#55ddd1;--lu4-teal-strong:#8af5ec;--lu4-teal-ink:#031312;--lu4-gold:#d9b66a;--lu4-success:#6ddd9d;--lu4-warning:#f2c76d;--lu4-danger:#f4868b;--lu4-info:#79b8ff;--lu4-overlay-scrim:rgb(2 5 8/0.68);--lu4-shadow-sm:0 8px 24px rgb(0 0 0/0.2);--lu4-shadow-md:0 18px 56px rgb(0 0 0/0.3);--lu4-shadow-lg:0 32px 96px rgb(0 0 0/0.42);--lu4-grade-ng:#8b95a1;--lu4-grade-d:#b7c1cd;--lu4-grade-c:#5cc487;--lu4-grade-b:#5c9ee8;--lu4-grade-a:#b083e8;--lu4-grade-s:#e8b45e;--lu4-grade-s80:#ec7c7a;--lu4-grade-s84:#4fd0e0}:root[data-theme=light]{color-scheme:light}*{box-sizing:border-box}html{background:var(--lu4-bg)}body{margin:0;color:var(--lu4-text);background:radial-gradient(circle at 15% -10%,color-mix(in srgb,var(--lu4-teal) 14%,transparent),transparent 34rem),var(--lu4-bg)}button,input,select,textarea{font:inherit}button{color:inherit}:focus-visible{outline:2px solid var(--lu4-teal);outline-offset:3px}.lu4-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lu4-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:var(--lu4-radius-md);border:1px solid transparent;padding:.72rem 1rem;font-weight:760;cursor:pointer;transition:transform var(--lu4-motion-fast) var(--lu4-ease),background var(--lu4-motion-base),border-color var(--lu4-motion-base),box-shadow var(--lu4-motion-base)}.lu4-button:hover:not(:disabled){transform:translateY(-1px)}.lu4-button:active:not(:disabled){transform:translateY(0) scale(.985)}.lu4-button:disabled{cursor:not-allowed;opacity:.5}.lu4-button--primary{background:linear-gradient(135deg,var(--lu4-teal-strong),var(--lu4-teal));color:var(--lu4-teal-ink);box-shadow:0 10px 28px color-mix(in srgb,var(--lu4-teal) 22%,transparent)}.lu4-button--secondary{background:var(--lu4-surface-raised);border-color:var(--lu4-border)}.lu4-button--ghost{background:transparent;color:var(--lu4-text-muted)}.lu4-button--danger{background:color-mix(in srgb,var(--lu4-danger) 14%,transparent);border-color:color-mix(in srgb,var(--lu4-danger) 38%,transparent);color:var(--lu4-danger)}.lu4-button--sm{min-height:36px;padding:.48rem .75rem;font-size:var(--lu4-text-sm)}.lu4-button--lg{min-height:52px;padding:.9rem 1.25rem}.lu4-button--loading{cursor:progress}.lu4-spinner{width:1em;height:1em;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:lu4-spin .75s linear infinite}@keyframes lu4-spin{to{transform:rotate(1turn)}}.lu4-icon-button{width:44px;height:44px;display:inline-grid;place-items:center;border:1px solid var(--lu4-border);background:linear-gradient(145deg,var(--lu4-surface-raised),var(--lu4-surface));border-radius:var(--lu4-radius-md);cursor:pointer;transition:transform var(--lu4-motion-fast),border-color var(--lu4-motion-base),box-shadow var(--lu4-motion-base)}.lu4-icon-button:hover:not(:disabled){transform:translateY(-2px);border-color:var(--lu4-border-strong);box-shadow:var(--lu4-shadow-sm)}.lu4-icon-button:disabled{opacity:.45;cursor:not-allowed}.lu4-field{display:grid;grid-gap:.45rem;gap:.45rem}.lu4-label{font-size:var(--lu4-text-sm);color:var(--lu4-text-muted);font-weight:650}.lu4-input-wrap{min-height:44px;display:flex;align-items:center;gap:.65rem;padding:0 .85rem;border:1px solid var(--lu4-border);border-radius:var(--lu4-radius-md);background:var(--lu4-surface);transition:border-color var(--lu4-motion-base),box-shadow var(--lu4-motion-base),background var(--lu4-motion-base)}.lu4-input-wrap:focus-within{border-color:var(--lu4-teal);box-shadow:0 0 0 4px var(--lu4-focus-ring);background:var(--lu4-surface)}.lu4-input{width:100%;min-width:0;border:0;outline:0;color:var(--lu4-text);background:transparent}.lu4-input::placeholder{color:var(--lu4-text-subtle)}.lu4-field-help{color:var(--lu4-text-subtle);font-size:var(--lu4-text-xs)}.lu4-field-error{color:var(--lu4-danger);font-size:var(--lu4-text-xs)}.lu4-check{display:inline-flex;align-items:center;gap:.65rem;cursor:pointer;min-height:44px}.lu4-check input{position:absolute;opacity:0;pointer-events:none}.lu4-check__box{width:1.25rem;height:1.25rem;border:1px solid var(--lu4-border-strong);border-radius:.38rem;display:grid;place-items:center;background:var(--lu4-surface);transition:all var(--lu4-motion-base)}.lu4-check input:checked+.lu4-check__box{background:var(--lu4-teal);border-color:var(--lu4-teal);color:var(--lu4-teal-ink)}.lu4-check input:focus-visible+.lu4-check__box{outline:2px solid var(--lu4-teal);outline-offset:3px}.lu4-check input:disabled~*{opacity:.5;cursor:not-allowed}.lu4-select{width:100%;min-height:44px;color:var(--lu4-text);background:var(--lu4-surface);border:1px solid var(--lu4-border);border-radius:var(--lu4-radius-md);padding:.6rem 2.5rem .6rem .85rem}.lu4-range{width:100%;accent-color:var(--lu4-teal)}.lu4-tabs{display:flex;gap:.25rem;padding:.25rem;border:1px solid var(--lu4-border);background:var(--lu4-surface-raised);border-radius:var(--lu4-radius-md);overflow:auto}.lu4-tab{min-height:40px;border:0;border-radius:calc(var(--lu4-radius-md) - .2rem);padding:.55rem .85rem;color:var(--lu4-text-muted);background:transparent;cursor:pointer;white-space:nowrap}.lu4-tab[aria-selected=true]{color:var(--lu4-text)}.lu4-card,.lu4-tab[aria-selected=true]{background:var(--lu4-surface);box-shadow:var(--lu4-shadow-sm)}.lu4-card{border:1px solid var(--lu4-border);border-radius:var(--lu4-radius-lg)}.lu4-card__body,.lu4-card__footer,.lu4-card__header{padding:var(--lu4-space-5)}.lu4-card__header{border-bottom:1px solid var(--lu4-border)}.lu4-card__footer{border-top:1px solid var(--lu4-border)}.lu4-card__title{margin:0;font-size:var(--lu4-text-lg)}.lu4-card__description{margin:.35rem 0 0;color:var(--lu4-text-muted);font-size:var(--lu4-text-sm)}.lu4-badge{display:inline-flex;align-items:center;min-height:26px;padding:.25rem .55rem;border-radius:999px;font-size:var(--lu4-text-xs);font-weight:760;border:1px solid var(--lu4-border);background:var(--lu4-surface-raised)}.lu4-badge--success,.lu4-badge--verified{color:var(--lu4-success);border-color:color-mix(in srgb,var(--lu4-success) 34%,transparent);background:color-mix(in srgb,var(--lu4-success) 12%,transparent)}.lu4-badge--direct,.lu4-badge--info{color:var(--lu4-info);border-color:color-mix(in srgb,var(--lu4-info) 34%,transparent);background:color-mix(in srgb,var(--lu4-info) 12%,transparent)}.lu4-badge--derived,.lu4-badge--warning{color:var(--lu4-warning);border-color:color-mix(in srgb,var(--lu4-warning) 34%,transparent);background:color-mix(in srgb,var(--lu4-warning) 12%,transparent)}.lu4-badge--danger,.lu4-badge--estimated{color:var(--lu4-danger);border-color:color-mix(in srgb,var(--lu4-danger) 34%,transparent);background:color-mix(in srgb,var(--lu4-danger) 12%,transparent)}.lu4-state{min-height:220px;display:grid;place-items:center;text-align:center;padding:var(--lu4-space-8);border:1px dashed var(--lu4-border-strong);border-radius:var(--lu4-radius-lg);background:var(--lu4-surface-raised)}.lu4-state__content{max-width:32rem;display:grid;justify-items:center;grid-gap:.8rem;gap:.8rem}.lu4-state h3{margin:0;font-size:var(--lu4-text-xl)}.lu4-state p{margin:0;color:var(--lu4-text-muted);line-height:1.55}.lu4-skeleton{display:block;border-radius:var(--lu4-radius-sm);background:linear-gradient(90deg,var(--lu4-surface),var(--lu4-surface-overlay),var(--lu4-surface));background-size:220% 100%;animation:lu4-shimmer 1.45s infinite}@keyframes lu4-shimmer{to{background-position:-220% 0}}.lu4-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--lu4-space-6)}.lu4-page-header__text{min-width:0}.lu4-page-header h1{margin:0;font-family:var(--lu4-font-display);font-size:var(--lu4-text-2xl);font-weight:600;letter-spacing:-.025em}.lu4-page-header p{margin:.55rem 0 0;color:var(--lu4-text-muted);max-width:52rem;line-height:1.55}.lu4-section-header{display:flex;justify-content:space-between;gap:1rem;align-items:center}.lu4-section-header h2{margin:0;font-size:var(--lu4-text-xl)}.lu4-section-header p{margin:.3rem 0 0;color:var(--lu4-text-muted)}.lu4-filter-bar{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;padding:.7rem;border:1px solid var(--lu4-border);background:var(--lu4-surface-raised);border-radius:var(--lu4-radius-lg)}.lu4-filter-bar__grow{flex:1 1 16rem}.lu4-entity-row{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:1rem;gap:1rem;min-height:68px;padding:.75rem;border:1px solid transparent;border-radius:var(--lu4-radius-md);background:transparent;color:inherit;text-align:left;cursor:pointer}.lu4-entity-row:hover,.lu4-entity-row[aria-selected=true]{background:var(--lu4-surface-raised);border-color:var(--lu4-border)}.lu4-entity-row__media{width:44px;height:44px;border-radius:var(--lu4-radius-sm);background:var(--lu4-surface-overlay);display:grid;place-items:center;overflow:hidden}.lu4-entity-row__title{font-weight:760}.lu4-entity-row__meta{color:var(--lu4-text-muted);font-size:var(--lu4-text-sm);margin-top:.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu4-inspector{border-left:1px solid var(--lu4-border);background:var(--lu4-bg-soft);min-height:100%}.lu4-inspector__header{position:-webkit-sticky;position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;gap:1rem;padding:1rem;border-bottom:1px solid var(--lu4-border);background:color-mix(in srgb,var(--lu4-bg-soft) 92%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.lu4-inspector__body{padding:1rem}.lu4-dialog-backdrop{position:fixed;inset:0;z-index:var(--lu4-z-dialog);display:grid;place-items:center;padding:1rem;background:var(--lu4-overlay-scrim);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lu4-dialog{width:min(34rem,100%);max-height:min(85vh,52rem);overflow:auto;border:1px solid var(--lu4-border-strong);border-radius:var(--lu4-radius-xl);background:var(--lu4-surface);box-shadow:var(--lu4-shadow-lg)}.lu4-dialog__body,.lu4-dialog__footer,.lu4-dialog__header{padding:1.1rem}.lu4-dialog__header{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--lu4-border)}.lu4-dialog__footer{display:flex;justify-content:flex-end;gap:.65rem;border-top:1px solid var(--lu4-border)}.lu4-drawer-backdrop{position:fixed;inset:0;z-index:var(--lu4-z-dialog);background:var(--lu4-overlay-scrim)}.lu4-drawer{position:absolute;inset-block:0;right:0;width:min(28rem,92vw);overflow:auto;background:var(--lu4-surface);border-left:1px solid var(--lu4-border-strong);box-shadow:var(--lu4-shadow-lg)}.lu4-popover{position:absolute;z-index:var(--lu4-z-popover);min-width:14rem;padding:.5rem;border:1px solid var(--lu4-border);border-radius:var(--lu4-radius-md);background:var(--lu4-surface-raised);box-shadow:var(--lu4-shadow-md)}.lu4-menu{display:grid;grid-gap:.2rem;gap:.2rem}.lu4-menu__item{min-height:40px;border:0;border-radius:var(--lu4-radius-sm);padding:.55rem .7rem;background:transparent;color:inherit;text-align:left;cursor:pointer}.lu4-menu__item:hover{background:var(--lu4-surface-overlay)}.lu4-tooltip{position:absolute;z-index:var(--lu4-z-popover);padding:.35rem .55rem;border:1px solid var(--lu4-border-strong);border-radius:var(--lu4-radius-sm);background:var(--lu4-text);color:var(--lu4-surface);font-size:var(--lu4-text-xs);box-shadow:var(--lu4-shadow-sm);white-space:nowrap}.lu4-toast-region{position:fixed;right:1rem;bottom:1rem;z-index:100;display:grid;grid-gap:.65rem;gap:.65rem;width:min(24rem,calc(100vw - 2rem))}.lu4-toast{padding:.85rem 1rem;border:1px solid var(--lu4-border-strong);border-radius:var(--lu4-radius-md);background:var(--lu4-surface-raised);box-shadow:var(--lu4-shadow-md)}.lu4-floating-dock{position:fixed;left:50%;bottom:max(1rem,env(safe-area-inset-bottom));z-index:var(--lu4-z-dock);transform:translateX(-50%);display:flex;gap:.55rem;align-items:center}.lu4-floating-dock__item{width:52px;height:52px;display:grid;place-items:center;border:1px solid var(--lu4-border-strong);border-radius:1rem;background:var(--lu4-surface);box-shadow:var(--lu4-shadow-md);cursor:pointer;transition:transform var(--lu4-motion-base) var(--lu4-ease),border-color var(--lu4-motion-base)}.lu4-floating-dock__item:hover,.lu4-floating-dock__item[aria-current=page]{transform:translateY(-7px) scale(1.06);border-color:var(--lu4-teal)}.lu4-floating-dock__toggle{width:34px;height:34px;border-radius:999px;border:1px solid var(--lu4-border);background:var(--lu4-surface);cursor:pointer}@media (max-width:720px){.lu4-page-header{align-items:stretch;flex-direction:column}.lu4-page-header__actions{display:flex}.lu4-page-header__actions>*{flex:1 1}.lu4-floating-dock{width:min(94vw,25rem);display:grid;grid-template-columns:repeat(4,1fr)}.lu4-floating-dock__item{width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}