*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#f9fafb;--color-surface:#fff;--color-sidebar:#1f2937;--color-sidebar-hover:#374151;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-danger:#dc2626;--color-danger-hover:#b91c1c;--color-success:#16a34a;--color-warning:#d97706;--color-text:#111827;--color-text-secondary:#6b7280;--color-border:#e5e7eb;--radius:.5rem;--shadow:0 1px 3px rgba(0,0,0,.1)}body{background:var(--color-bg);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}a{color:var(--color-primary);text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:inherit}.btn{align-items:center;border:none;border-radius:var(--radius);display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:background .15s}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover{background:var(--color-danger-hover)}.btn-secondary{background:var(--color-border);color:var(--color-text)}.btn-secondary:hover{background:#d1d5db}.btn-sm{font-size:.75rem;padding:.25rem .5rem}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow)}.form-group{display:flex;flex-direction:column;gap:.25rem}.form-group label{color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.form-input{border:1px solid var(--color-border);border-radius:var(--radius);outline:none;padding:.5rem .75rem;transition:border-color .15s}.form-input:focus{border-color:var(--color-primary)}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.page-header h1{font-size:1.5rem;font-weight:600}.table-container{overflow-x:auto}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid var(--color-border);padding:.75rem 1rem;text-align:left}th{background:var(--color-bg);color:var(--color-text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}tr:hover td{background:#f3f4f6}.pagination{align-items:center;color:var(--color-text-secondary);display:flex;font-size:.875rem;justify-content:space-between;padding:.75rem 1rem}.pagination-btns{display:flex;gap:.5rem}.empty-state{color:var(--color-text-secondary);padding:3rem;text-align:center}.tab-bar{border-bottom:2px solid var(--color-border);display:flex;gap:0;margin-bottom:1.5rem}.tab-bar button{background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-secondary);font-size:.875rem;font-weight:500;margin-bottom:-2px;padding:.5rem 1rem;transition:all .15s}.tab-bar button.active{border-bottom-color:var(--color-primary);color:var(--color-primary)}.loading-spinner{color:var(--color-text-secondary);display:flex;justify-content:center;padding:2rem}.math-frac{align-items:center;display:inline-flex;flex-direction:column;line-height:1;margin:0 .15em;vertical-align:middle}.math-frac-num{border-bottom:1.5px solid;font-size:.85em;padding:0 .2em .1em}.math-frac-den{font-size:.85em;padding:.1em .2em 0}.math-sup{font-size:.75em;vertical-align:super}.math-sub{font-size:.75em;vertical-align:sub}
