:root{--color-accent: #dc4c3e;--color-accent-hover: #b03d32;--color-accent-dim: rgba(220, 76, 62, .1);--color-bg-app: #ffffff;--color-bg-sidebar: #f5f5f5;--color-bg-card: #ffffff;--color-border: #e6e6e6;--color-text-primary: #202020;--color-text-secondary: #666666;--color-text-dim: #999999;--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--spacing-unit: 4px;--spacing-xs: calc(var(--spacing-unit) * 1);--spacing-sm: calc(var(--spacing-unit) * 2);--spacing-md: calc(var(--spacing-unit) * 3);--spacing-lg: calc(var(--spacing-unit) * 4);--spacing-xl: calc(var(--spacing-unit) * 6);--spacing-xxl: calc(var(--spacing-unit) * 8);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--font-family: system-ui, -apple-system, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--sidebar-width: 280px;--touch-target-size: 44px;--z-index-nav: 100;--z-index-modal: 1000;--z-index-toast: 2000;--z-index-dropdown: 500}@media(prefers-color-scheme:dark){:root{--color-bg-app: #1a1a1a;--color-bg-sidebar: #222222;--color-bg-card: #282828;--color-border: #333333;--color-text-primary: #e0e0e0;--color-text-secondary: #aaaaaa;--color-text-dim: #777777;--color-accent: #e44332;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .5)}}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-between{justify-content:space-between}.flex-1{flex:1}.w-full{width:100%}.fixed{position:fixed}.grid{display:grid}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.px-md{padding-inline:var(--spacing-md)}.py-md{padding-block:var(--spacing-md)}.px-lg{padding-inline:var(--spacing-lg)}.py-lg{padding-block:var(--spacing-lg)}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-dim{color:var(--color-text-dim)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-md{font-size:var(--font-size-md)}.font-bold{font-weight:700}.font-medium{font-weight:500}.text-left{text-align:left}.text-danger{color:var(--color-danger)}.pointer{cursor:pointer}.interactive:hover{background-color:var(--color-bg-sidebar)}.hover-bg:hover{background-color:var(--color-bg-sidebar);cursor:pointer}.radius-sm{border-radius:var(--radius-sm)}.radius-md{border-radius:var(--radius-md)}.border{border:1px solid var(--color-border)}.shadow{box-shadow:var(--shadow-sm)}.shadow-lg{box-shadow:var(--shadow-md)}.bg-card{background-color:var(--color-bg-card)}.z-dropdown{z-index:var(--z-index-dropdown)}.hidden{display:none!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-dim)}.app-root{display:grid;grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:100vh;inline-size:100%;block-size:100vh;background-color:var(--color-bg-app);overflow:hidden;transition:grid-template-columns .3s cubic-bezier(.4,0,.2,1)}.sidebar-area{grid-column:1;background-color:var(--color-bg-sidebar);border-inline-end:1px solid var(--color-border);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}.main-area{grid-column:2;display:flex;flex-direction:column;overflow-y:auto;background-color:var(--color-bg-app);position:relative}.app-root[data-sidebar-open=false]{grid-template-columns:0px 1fr}@media(max-width:768px){.app-root{grid-template-columns:0px 1fr}.app-root[data-sidebar-open=true]{grid-template-columns:100% 0px}}.modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background-color:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:var(--z-index-modal);padding:var(--spacing-md);opacity:0;animation:fadeIn .2s ease-out forwards}.modal-content{background-color:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-md);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;padding:var(--spacing-xl);transform:translateY(10px);animation:slideUp .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeIn{to{opacity:1}}@keyframes slideUp{to{transform:translateY(0)}}
