:root{--color-fg-default: #1f2328;--color-fg-muted: #656d76;--color-fg-subtle: #6e7781;--color-fg-on-emphasis: #ffffff;--color-canvas-default: #ffffff;--color-canvas-inset: #fbfcfd;--color-canvas-subtle: #f6f8fa;--color-canvas-overlay: #ffffff;--color-border-default: #d0d7de;--color-border-muted: #d8dee4;--color-border-subtle: #eaeef2;--color-neutral-muted: rgba(175, 184, 193, .2);--color-neutral-subtle: rgba(234, 238, 242, .5);--color-neutral-emphasis: #6e7781;--color-neutral-emphasis-plus: #24292f;--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-accent-muted: rgba(84, 174, 255, .4);--color-accent-subtle: #ddf4ff;--color-success-fg: #1a7f37;--color-success-emphasis: #1f883d;--color-success-muted: rgba(74, 194, 107, .4);--color-success-subtle: #dafbe1;--color-attention-fg: #9a6700;--color-attention-emphasis: #bf8700;--color-attention-muted: rgba(212, 167, 44, .4);--color-attention-subtle: #fff8c5;--color-danger-fg: #cf222e;--color-danger-emphasis: #cf222e;--color-danger-muted: rgba(255, 129, 130, .4);--color-danger-subtle: #ffebe9;--color-bg-accent: #0969da;--color-bg-accent-hover: #0860ca;--color-bg-success: #1f883d;--color-bg-success-hover: #1a7f37;--color-bg-attention: #bf8700;--color-bg-attention-hover: #9a6700;--color-bg-danger: #cf222e;--color-bg-danger-hover: #a40e26;--spacing-0: 0;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-7: 28px;--spacing-8: 32px;--spacing-9: 36px;--spacing-10: 40px;--spacing-12: 48px;--spacing-16: 64px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif;--font-family-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 32px;--font-weight-normal: 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;--border-width-default: 2px;--border-width-emphasis: 3px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1);--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500;--header-height: 56px;--sidebar-width: 250px;--content-max-width: 1200px;--duration-fast: .1s;--duration-normal: .2s;--duration-slow: .3s;--easing-default: ease-out}[data-theme=dark]{--color-fg-default: #e6edf3;--color-fg-muted: #8d96a0;--color-fg-subtle: #6e7681;--color-fg-on-emphasis: #ffffff;--color-canvas-default: #000000;--color-canvas-inset: #0b0e11;--color-canvas-subtle: #161b22;--color-canvas-overlay: #161b22;--color-border-default: #30363d;--color-border-muted: #21262d;--color-border-subtle: #21262d;--color-neutral-muted: rgba(110, 118, 129, .4);--color-neutral-subtle: rgba(110, 118, 129, .1);--color-neutral-emphasis: #6e7681;--color-neutral-emphasis-plus: #e6edf3;--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-accent-muted: rgba(56, 139, 253, .4);--color-accent-subtle: rgba(56, 139, 253, .15);--color-success-fg: #3fb950;--color-success-emphasis: #238636;--color-success-muted: rgba(46, 160, 67, .4);--color-success-subtle: rgba(46, 160, 67, .15);--color-attention-fg: #d29922;--color-attention-emphasis: #9e6a03;--color-attention-muted: rgba(187, 128, 9, .4);--color-attention-subtle: rgba(187, 128, 9, .15);--color-danger-fg: #f85149;--color-danger-emphasis: #da3633;--color-danger-muted: rgba(248, 81, 73, .4);--color-danger-subtle: rgba(248, 81, 73, .15);--color-bg-accent: #1f6feb;--color-bg-accent-hover: #388bfd;--color-bg-success: #238636;--color-bg-success-hover: #2ea043;--color-bg-attention: #9e6a03;--color-bg-attention-hover: #bb8009;--color-bg-danger: #da3633;--color-bg-danger-hover: #f85149}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;font-family:var(--font-family);font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-fg-default);background-color:var(--color-canvas-default);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{height:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;line-height:1;color:var(--color-fg-default);background-color:var(--color-canvas-subtle);border:var(--border-width-default) solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--duration-fast) var(--easing-default)}.btn:hover:not(:disabled){background-color:var(--color-canvas-inset)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:var(--color-fg-on-emphasis);background-color:var(--color-bg-success);border-color:var(--color-bg-success)}.btn-primary:hover:not(:disabled){background-color:var(--color-bg-success-hover);border-color:var(--color-bg-success-hover)}.btn-secondary{color:var(--color-fg-default);background-color:var(--color-canvas-default);border-color:var(--color-border-default)}.btn-secondary:hover:not(:disabled){background-color:var(--color-canvas-subtle)}.btn-danger{color:var(--color-fg-on-emphasis);background-color:var(--color-bg-danger);border-color:var(--color-bg-danger)}.btn-danger:hover:not(:disabled){background-color:var(--color-bg-danger-hover);border-color:var(--color-bg-danger-hover)}.btn-accent{color:var(--color-fg-on-emphasis);background-color:var(--color-bg-accent);border-color:var(--color-bg-accent)}.btn-accent:hover:not(:disabled){background-color:var(--color-bg-accent-hover);border-color:var(--color-bg-accent-hover)}.btn-attention{color:var(--color-fg-on-emphasis);background-color:var(--color-bg-attention);border-color:var(--color-bg-attention)}.btn-attention:hover:not(:disabled){background-color:var(--color-bg-attention-hover);border-color:var(--color-bg-attention-hover)}.card{background-color:var(--color-canvas-subtle);border:var(--border-width-emphasis) solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--spacing-4)}.card-header{padding-bottom:var(--spacing-3);border-bottom:var(--border-width-default) solid var(--color-border-muted);margin-bottom:var(--spacing-3)}.card-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin:0}.item-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.item-card{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-canvas-subtle);border:var(--border-width-default) solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--duration-fast) var(--easing-default)}.item-card:hover{border-color:var(--color-accent-emphasis)}.item-card-content{flex:1;min-width:0}.item-card-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-fg-default);margin:0 0 var(--spacing-1) 0}.item-card-description{font-size:var(--font-size-xs);color:var(--color-fg-muted);margin:0}.form-group{margin-bottom:var(--spacing-4)}.label{display:block;margin-bottom:var(--spacing-1);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-fg-default)}.input{width:100%;padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);font-family:inherit;color:var(--color-fg-default);background-color:var(--color-canvas-default);border:var(--border-width-default) solid var(--color-border-default);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--easing-default)}.input:focus{outline:none;border-color:var(--color-accent-emphasis);box-shadow:0 0 0 3px var(--color-accent-muted)}.input::placeholder{color:var(--color-fg-muted)}.select{width:100%;padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);font-family:inherit;color:var(--color-fg-default);background-color:var(--color-canvas-default);border:var(--border-width-default) solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing-1)}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}.gap-8{gap:var(--spacing-8)}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.p-0{padding:var(--spacing-0)}.p-1{padding:var(--spacing-1)}.p-2{padding:var(--spacing-2)}.p-3{padding:var(--spacing-3)}.p-4{padding:var(--spacing-4)}.p-6{padding:var(--spacing-6)}.p-8{padding:var(--spacing-8)}.m-0{margin:var(--spacing-0)}.m-1{margin:var(--spacing-1)}.m-2{margin:var(--spacing-2)}.m-3{margin:var(--spacing-3)}.m-4{margin:var(--spacing-4)}.mt-0{margin-top:var(--spacing-0)}.mt-2{margin-top:var(--spacing-2)}.mt-4{margin-top:var(--spacing-4)}.mb-0{margin-bottom:var(--spacing-0)}.mb-2{margin-bottom:var(--spacing-2)}.mb-4{margin-bottom:var(--spacing-4)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-md{font-size:var(--font-size-md)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-default{color:var(--color-fg-default)}.text-muted{color:var(--color-fg-muted)}.text-subtle{color:var(--color-fg-subtle)}.text-accent{color:var(--color-accent-fg)}.text-success{color:var(--color-success-fg)}.text-danger{color:var(--color-danger-fg)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.hidden{display:none}.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}.w-full{width:100%}.h-full{height:100%}.min-h-0{min-height:0}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-y-auto{overflow-y:auto}
