pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}:root{--color-bg: #f8fafc;--color-bg-secondary: #ffffff;--color-bg-tertiary: #f1f5f9;--color-text: #0f172a;--color-text-secondary: #475569;--color-text-muted: #94a3b8;--color-border: #e2e8f0;--color-border-hover: #cbd5e1;--color-primary: #6366f1;--color-primary-hover: #4f46e5;--color-primary-light: #e0e7ff;--color-success: #10b981;--color-success-light: #d1fae5;--color-danger: #ef4444;--color-danger-light: #fee2e2;--color-warning: #f59e0b;--color-warning-light: #fef3c7;--color-code-bg: #1e293b;--color-code-text: #e2e8f0;--color-line-number: #64748b;--color-line-number-bg: #0f172a;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--radius-sm: .25rem;--radius: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--transition: .15s ease;--transition-slow: .3s ease}[data-theme=dark]{--color-bg: #0f172a;--color-bg-secondary: #1e293b;--color-bg-tertiary: #334155;--color-text: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-muted: #64748b;--color-border: #334155;--color-border-hover: #475569;--color-primary-light: #312e81;--color-success-light: #064e3b;--color-danger-light: #7f1d1d;--color-warning-light: #78350f}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100vh}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--color-primary-hover)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;margin-bottom:.5em}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.page{padding:2rem 0}.card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition),border-color var(--transition)}.card:hover{box-shadow:var(--shadow);border-color:var(--color-border-hover)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;transition:all var(--transition);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff;outline:none}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);color:#fff}.btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-border)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-bg-tertiary);color:var(--color-text)}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.btn-icon{padding:.5rem;border-radius:var(--radius)}.form-group{margin-bottom:1.25rem}.form-label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.375rem;color:var(--color-text)}.form-input,.form-select,.form-textarea{width:100%;padding:.625rem .875rem;font-size:.9375rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);transition:border-color var(--transition),box-shadow var(--transition)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-input::placeholder{color:var(--color-text-muted)}.form-error{font-size:.8125rem;color:var(--color-danger);margin-top:.25rem}.table-container{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg)}table{width:100%;border-collapse:collapse}th,td{padding:.875rem 1rem;text-align:left;border-bottom:1px solid var(--color-border)}th{background:var(--color-bg-tertiary);font-weight:600;font-size:.8125rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}tbody tr:hover{background:var(--color-bg-tertiary)}tbody tr:last-child td{border-bottom:none}.navbar{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);padding:.75rem 1.5rem;position:sticky;top:0;z-index:100;width:100%}.navbar-content{display:flex;justify-content:space-between;align-items:center;width:100%}.navbar-brand{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:700;color:var(--color-text)}.navbar-brand:hover{color:var(--color-text)}.navbar-brand svg{width:32px;height:32px}.navbar-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.breadcrumb{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--color-bg-tertiary);border-radius:var(--radius);font-size:.875rem;margin-bottom:1.5rem;flex-wrap:wrap}.breadcrumb-separator{color:var(--color-text-muted)}.code-container{background:var(--color-code-bg);border-radius:var(--radius-lg);overflow:hidden}.code-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#0003;border-bottom:1px solid rgba(255,255,255,.1)}.code-filename{font-family:JetBrains Mono,Fira Code,monospace;font-size:.875rem;color:var(--color-code-text)}.code-actions{display:flex;gap:.5rem}.code-wrapper{display:flex;overflow-x:auto}.line-numbers{flex-shrink:0;padding:1rem 0;background:var(--color-line-number-bg);text-align:right;-webkit-user-select:none;user-select:none;font-family:JetBrains Mono,Fira Code,monospace;font-size:.8125rem;line-height:1.6;color:var(--color-line-number)}.line-numbers span{display:block;padding:0 1rem}.code-content{flex:1;padding:1rem;overflow-x:auto}.code-content pre{margin:0;font-family:JetBrains Mono,Fira Code,monospace;font-size:.8125rem;line-height:1.6;color:var(--color-code-text)}.code-content code{font-family:inherit}.file-list{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.file-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--color-border);transition:background var(--transition)}.file-item:last-child{border-bottom:none}.file-item:hover{background:var(--color-bg-tertiary)}.file-icon{flex-shrink:0;width:20px;height:20px;color:var(--color-text-muted)}.file-icon.folder{color:var(--color-primary)}.file-name{flex:1;font-size:.9375rem}.file-size{font-size:.8125rem;color:var(--color-text-muted)}.empty-state{text-align:center;padding:4rem 2rem}.empty-state-icon{width:64px;height:64px;margin:0 auto 1.5rem;color:var(--color-text-muted)}.empty-state h3{color:var(--color-text);margin-bottom:.5rem}.empty-state p{color:var(--color-text-secondary);margin-bottom:1.5rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:var(--color-bg-secondary);border-radius:var(--radius-xl);width:100%;max-width:480px;box-shadow:var(--shadow-lg)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border)}.modal-header h2{margin:0;font-size:1.125rem}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--color-border)}.alert{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border-radius:var(--radius);margin-bottom:1rem}.alert-success{background:var(--color-success-light);color:var(--color-success)}.alert-danger{background:var(--color-danger-light);color:var(--color-danger)}.alert-warning{background:var(--color-warning-light);color:var(--color-warning)}.spinner{width:24px;height:24px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-page{display:flex;align-items:center;justify-content:center;min-height:50vh}.badge{display:inline-flex;align-items:center;padding:.25rem .625rem;font-size:.75rem;font-weight:500;border-radius:9999px}.badge-primary{background:var(--color-primary-light);color:var(--color-primary)}.badge-success{background:var(--color-success-light);color:var(--color-success)}.badge-muted{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.text-center{text-align:center}.text-sm{font-size:.875rem}.text-muted{color:var(--color-text-secondary)}@media(max-width:768px){.container{padding:0 1rem}.card{padding:1rem}.navbar-content{flex-wrap:wrap;gap:.75rem}.table-container{font-size:.875rem}th,td{padding:.625rem .75rem}.modal{margin:.5rem}h1{font-size:1.5rem}h2{font-size:1.25rem}}.hljs{background:transparent!important;padding:0!important}
