:root{--color-primary:#06c;--color-primary-hover:#0052a3;--color-bg:#f5f6f8;--color-text:#1a1a2e;--color-text-secondary:#5a5a7a;--color-surface:#fff;--color-border:#dfe1e6;--color-danger:#d32f2f;--color-danger-hover:#b71c1c;--color-success:#2e7d32;--admin-bg:#1a1a2e;--admin-sidebar:#16162a;--admin-surface:#222240;--admin-text:#e0e0f0;--admin-text-secondary:#9898b8;--admin-border:#335;--admin-input-bg:#2a2a4a;--font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--border-radius:6px;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 12px #0000001f;--shadow-lg:0 8px 24px #00000029;--transition:.2s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{font-family:var(--font-family);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;line-height:1.5}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;font-size:inherit;cursor:pointer;border-radius:var(--border-radius);transition:background var(--transition), color var(--transition);border:none;padding:8px 16px}input,textarea,select{font-family:inherit;font-size:inherit;border:1px solid var(--color-border);border-radius:var(--border-radius);transition:border-color var(--transition);outline:none;padding:8px 12px}input:focus,textarea:focus,select:focus{border-color:var(--color-primary)}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--color-border);padding:10px 14px}.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:#c8cad0}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
