*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}.app-shell{display:flex;flex-direction:column;block-size:100dvb;overflow:hidden}.app-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;border-bottom:1px solid var(--colorNeutralStroke2);gap:1rem}.app-header .brand{display:flex;align-items:center;gap:.5rem;font-weight:600}.app-body{display:flex;flex:1;min-height:0}.app-nav{inline-size:15rem;padding:.5rem;border-right:1px solid var(--colorNeutralStroke2);overflow-y:auto;flex-shrink:0;transition:inline-size .2s ease}.app-nav--collapsed{inline-size:3rem}.nav-group{margin-bottom:.5rem}.nav-group-header{display:flex;align-items:center;gap:.375rem;width:100%;padding:.375rem .5rem;background:none;border:none;cursor:pointer;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--colorNeutralForeground3)}.nav-tab{display:flex;align-items:center;gap:.5rem;width:100%;padding:.375rem .5rem .375rem 1.25rem;background:none;border:none;border-radius:4px;cursor:pointer;text-align:start;font-size:.875rem;color:var(--colorNeutralForeground1)}.nav-tab:hover{background:var(--colorNeutralBackground1Hover)}.nav-tab--active{background:var(--colorBrandBackground2);color:var(--colorBrandForeground1);font-weight:600}.app-nav--collapsed .nav-tab-label,.app-nav--collapsed .nav-group-title{display:none}.app-main{flex:1;overflow:hidden}.page-root{display:flex;flex-direction:column;flex:1;height:100%;padding:1rem;overflow:hidden}.page-root--scrollable{overflow-y:auto}.page-title-bar{display:flex;align-items:center;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--colorNeutralStroke2);margin-bottom:.75rem}.page-title-bar h1{font-size:1.1rem;margin:0}.title-bar-actions{display:flex;gap:.5rem;margin-left:auto}.page-filters{display:flex;gap:.5rem;align-items:flex-end;margin-bottom:.75rem;flex-wrap:wrap}.page-loading,.page-error,.page-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem;color:var(--colorNeutralForeground3)}.page-error{color:var(--colorPaletteRedForeground1)}.dashboard-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.5rem;margin-bottom:1rem}.summary-card{display:flex;flex-direction:column;gap:.25rem;padding:.625rem .75rem;border:1px solid var(--colorNeutralStroke2);border-radius:6px}.summary-card .label{font-size:.75rem;color:var(--colorNeutralForeground3);text-transform:uppercase;letter-spacing:.03em}.summary-card .value{font-size:1.5rem;font-weight:600;overflow-wrap:anywhere}.summary-card .value.compact{font-size:.95rem;font-weight:500}.header-controls{display:flex;gap:.5rem;align-items:center}.table-scroll-container{flex:1;overflow:auto;min-width:0}.data-table{width:100%;border-collapse:collapse;font-size:.85rem;table-layout:fixed}.data-table th,.data-table td{text-align:start;padding:.375rem .5rem;border-bottom:1px solid var(--colorNeutralStroke2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-table th{color:var(--colorNeutralForeground3);font-weight:600}.data-table tbody tr:hover{background:var(--colorNeutralBackground1Hover)}.row-clickable{cursor:pointer}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem;margin-bottom:1rem}.detail-card{border:1px solid var(--colorNeutralStroke2);border-radius:6px;padding:.75rem}.detail-card h3{margin:0 0 .5rem;font-size:.9rem}.detail-row{display:flex;justify-content:space-between;gap:1rem;padding:.2rem 0;font-size:.85rem}.detail-row .k{color:var(--colorNeutralForeground3)}.detail-row .v{font-family:var(--fontFamilyMonospace);overflow-wrap:anywhere;text-align:end}.future-note,.hint-text{font-size:.8rem;color:var(--colorNeutralForeground3);margin-top:.5rem}.future-badge{color:var(--colorPaletteYellowForeground1)}.text-muted{color:var(--colorNeutralForeground3);font-size:.85rem}.auth-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;block-size:100dvb;padding:2rem;text-align:center}.auth-screen h1{font-size:1.25rem;margin:0}.auth-screen p{max-width:32rem;margin:0;color:var(--colorNeutralForeground2)}.auth-icon{font-size:48px;color:var(--colorBrandForeground1)}
