:root{--brand: #1E5B47;--primary-50: color-mix(in oklab, var(--brand) 6%, white);--primary-100: color-mix(in oklab, var(--brand) 12%, white);--primary-200: color-mix(in oklab, var(--brand) 26%, white);--primary-300: color-mix(in oklab, var(--brand) 45%, white);--primary-400: color-mix(in oklab, var(--brand) 70%, white);--primary-500: var(--brand);--primary-600: color-mix(in oklab, var(--brand) 90%, black);--primary-700: color-mix(in oklab, var(--brand) 78%, black);--primary-800: color-mix(in oklab, var(--brand) 62%, black);--primary-900: color-mix(in oklab, var(--brand) 46%, black);--primary-950: color-mix(in oklab, var(--brand) 26%, black);--primary: var(--primary-500);--primary-foreground: #fff;--background: #fff;--canvas: #f4f6f8;--surface: #fff;--card: #fff;--foreground: #1f2933;--muted: #eef1f4;--muted-foreground: #5b6673;--border: #d9dee3;--ring: color-mix(in srgb, var(--brand) 35%, transparent);--success: #1f8a4c;--warning: #b7791f;--danger: #c53030;--radius: .5rem;--shadow-card: 0 1px 3px rgb(0 0 0 / 8%), 0 1px 2px rgb(0 0 0 / 6%)}:root{--font-family-base: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-family-heading: var(--font-family-base);--font-family-mono: ui-monospace, "SFMono-Regular", Menlo, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--letter-spacing-wide: .05rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--transition-fast: .12s ease;--transition-base: .2s ease;--transition-slow: .32s ease;--content-max-width: 1400px;--drawer-width: max(25vw, 500px);--color-brand-gradient: linear-gradient(135deg, var(--primary-700), var(--primary-400));--color-brand-gradient-shadow: 0 10px 15px rgb(0 0 0 / .1), 0 4px 6px rgb(0 0 0 / .08)}.btn{display:inline-flex;gap:var(--spacing-xs);align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-md);font:inherit;color:var(--foreground);cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:background var(--transition-fast)}.btn:hover:not(:disabled){background:var(--muted)}.btn:disabled{cursor:not-allowed;opacity:.6}.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--ring);outline-offset:1px}.btn--primary{color:var(--primary-foreground);background:var(--primary);border-color:var(--primary)}.btn--primary:hover:not(:disabled){background:var(--primary-700)}.btn--danger{color:var(--danger)}.btn--small{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.card{display:block;padding:var(--spacing-lg);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card)}.badge{display:inline-block;padding:.1rem var(--spacing-sm);font-size:var(--font-size-xs);color:var(--primary-800);background:var(--primary-100);border-radius:999px}.badge--secondary{color:var(--muted-foreground);background:var(--muted)}.form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form__field{display:flex;flex-direction:column;gap:var(--spacing-xs);font-size:var(--font-size-sm)}.form__field input,.form__field select,.form__field textarea{padding:var(--spacing-sm);font:inherit;border:1px solid var(--border);border-radius:var(--radius)}.form__field input.ng-invalid.ng-touched,.form__field textarea.ng-invalid.ng-touched{border-color:var(--danger)}.form__error{margin:0;color:var(--danger)}.form__actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.drawer{width:var(--drawer-width);max-width:100vw;height:100vh;max-height:100vh;padding:var(--spacing-lg);margin:0 0 0 auto;border:none;box-shadow:-4px 0 16px #0000001f}.drawer::backdrop{background:#00000059}.drawer__title{margin:0 0 var(--spacing-lg);font-size:var(--font-size-xl)}.page{display:flex;flex-direction:column;gap:var(--spacing-lg)}.page__header{display:flex;gap:var(--spacing-md);align-items:center;justify-content:space-between}.page__title{margin:0;font-size:var(--font-size-2xl)}.page__empty{padding:var(--spacing-xl);color:var(--muted-foreground);text-align:center}.page__empty-title{font-weight:var(--font-weight-semibold);color:var(--foreground)}.data-table__search{width:min(100%,20rem);padding:var(--spacing-sm);margin-bottom:var(--spacing-sm);font:inherit;border:1px solid var(--border);border-radius:var(--radius)}.data-table{width:100%;overflow:hidden;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);border-collapse:collapse}.data-table th,.data-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--border)}.data-table th{font-size:var(--font-size-sm);color:var(--muted-foreground);background:var(--muted)}.data-table__sort{padding:0;font:inherit;color:inherit;cursor:pointer;background:none;border:none}.data-table__actions{display:flex;gap:var(--spacing-xs);justify-content:flex-end}.data-table__pager{display:flex;gap:var(--spacing-sm);align-items:center;justify-content:flex-end;margin-top:var(--spacing-sm)}.whypo-page{display:flex;flex-direction:column;gap:var(--spacing-xl);height:100%;overflow:hidden}.whypo-page__header{display:flex;justify-content:end;align-items:flex-start}.whypo-page__title{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--foreground)}.whypo-page__title-row{display:flex;align-items:center;gap:var(--spacing-sm)}.whypo-page__subtitle{margin:var(--spacing-xs) 0 0;font-size:var(--font-size-sm);color:var(--muted-foreground)}.whypo-page__header-left,.whypo-page__header-right{display:flex;align-items:center;gap:var(--spacing-md)}.whypo-page__loading{display:flex;justify-content:center;padding:var(--spacing-3xl)}.whypo-page__error{text-align:center;padding:var(--spacing-3xl);color:var(--danger)}.whypo-page__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:var(--spacing-lg)}.whypo-page__info-card{background:var(--background);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);padding:var(--spacing-xl)}.whypo-page__info-card h3{margin:0 0 var(--spacing-lg);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.whypo-page__details{display:grid;grid-template-columns:10rem 1fr;gap:var(--spacing-sm) var(--spacing-lg)}.whypo-page__details dt{font-weight:var(--font-weight-medium);color:var(--muted-foreground)}.whypo-page__details dd{margin:0;color:var(--foreground)}.whypo-page__section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.whypo-page__section-header h3{margin:0}.whypo-page__meta{margin:var(--spacing-xs) 0 0;font-size:var(--font-size-sm);color:var(--muted-foreground)}*,*:before,*:after{box-sizing:border-box}html{font-size:16px}body{margin:0;font-family:var(--font-family-base);line-height:var(--line-height-normal);color:var(--foreground);background-color:var(--canvas)}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
