*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings: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:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-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{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--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: rgb(59 130 246 / .5);--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: }::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: rgb(59 130 246 / .5);--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: }html{font-family:var(--font-sans, sans-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-light: #eff6ff;--color-success: #16a34a;--color-success-light: #f0fdf4;--color-danger: #dc2626;--color-danger-light: #fef2f2;--color-warning: #ca8a04;--color-warning-light: #fefce8;--color-bg: #ffffff;--color-bg-secondary: #f9fafb;--color-bg-tertiary: #f3f4f6;--color-text: #111827;--color-text-secondary: #4b5563;--color-text-muted: #9ca3af;--color-text-inverse: #ffffff;--color-border: #e5e7eb;--color-border-strong: #d1d5db;--color-border-focus: #3b82f6;--font-sans: Inter, ui-sans-serif, system-ui, sans-serif;--font-mono: ui-monospace, Cascadia Code, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--radius-sm: .125rem;--radius-base: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out}*,*:before,*:after{box-sizing:border-box}body{margin:0;color:var(--color-text);background-color:var(--color-bg);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.6}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.3;color:var(--color-text)}p{margin:0;color:var(--color-text-secondary)}a{color:var(--color-primary);text-decoration:none}a:hover{color:var(--color-primary-hover);text-decoration:underline}img{display:block;max-width:100%}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit}.btn,.btn-ghost,.btn-danger,.btn-secondary,.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:.25rem;padding:.5rem 1rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-radius:var(--radius-base);transition:var(--transition-fast);white-space:nowrap}.btn:focus-visible,.btn-ghost:focus-visible,.btn-danger:focus-visible,.btn-secondary:focus-visible,.btn-primary:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px;ring-color:var(--color-border-focus)}.btn:disabled,.btn-ghost:disabled,.btn-danger:disabled,.btn-secondary:disabled,.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-primary{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));background-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-secondary{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));color:var(--color-text);border:1px solid var(--color-border-strong)}.btn-secondary:hover:not(:disabled){background-color:var(--color-bg-secondary)}.btn-danger{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));background-color:var(--color-danger)}.btn-danger:hover:not(:disabled){background-color:var(--color-danger);filter:brightness(.9)}.btn-ghost{background-color:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background-color:var(--color-bg-tertiary);color:var(--color-text)}.btn-sm{padding:.375rem .75rem;font-size:.875rem;line-height:1.25rem}.btn-lg{padding:.75rem 1.5rem;font-size:1.125rem;line-height:1.75rem}.form-group{display:flex;flex-direction:column;gap:.25rem}.form-label{font-size:.875rem;line-height:1.25rem;font-weight:500;color:var(--color-text)}.form-input{width:100%;border-radius:.25rem;border-width:1px;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;color:var(--color-text);background-color:var(--color-bg);border-color:var(--color-border);border-radius:var(--radius-base)}.form-input::placeholder{color:var(--color-text-muted)}.form-input:hover{border-color:var(--color-border-strong)}.form-input:focus{outline:2px solid transparent;outline-offset:2px;border-color:var(--color-border-focus);box-shadow:0 0 0 3px #3b82f626}.form-input.is-invalid{border-color:var(--color-danger)}.form-input.is-invalid:focus{box-shadow:0 0 0 3px #ef444426}.form-input:disabled{cursor:not-allowed;opacity:.6;background-color:var(--color-bg-tertiary)}.form-error{font-size:.75rem;line-height:1rem;color:var(--color-danger)}.form-hint{font-size:.75rem;line-height:1rem;color:var(--color-text-muted)}.layout-app{display:grid;min-height:100vh;grid-template-columns:240px 1fr;grid-template-rows:auto 1fr;grid-template-areas:"sidebar header" "sidebar main"}.layout-page{display:flex;flex-direction:column;grid-area:main;padding:var(--space-6);max-width:1280px;width:100%;margin:0 auto}.layout-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.layout-stack{display:flex;flex-direction:column;gap:var(--space-4)}.layout-row{display:flex;align-items:center;gap:var(--space-3)}.u-truncate-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.u-truncate-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.u-scrollbar-hide{scrollbar-width:none;-ms-overflow-style:none}.u-scrollbar-hide::-webkit-scrollbar{display:none}.u-text-gradient{background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.table{display:table}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.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)}
